/* =========================================
   ROOT VARIABLES
========================================= */

:root {

    --primary-blue: #19368f;
    --dark-blue: #10266e;
    --yellow: #ffc400;
    --light-yellow: #fff8dc;

    --text-dark: #17213d;
    --text-muted: #69728b;

    --white: #ffffff;

    --border-color: #e9edf5;

    --shadow:
        0 10px 35px rgba(25, 54, 143, 0.08);

}
/* =========================================================
   GLOBAL SECTION
========================================================= */
* {

    margin: 0;
    padding: 0;
    box-sizing: border-box;

}


body {

    font-family: "DM Sans", sans-serif;

    color: var(--text-dark);

    background: #ffffff;

}


a {

    text-decoration: none;

}


/* =========================================
   TOP BAR
========================================= */

.top-bar {

    background: var(--dark-blue);

    color: rgba(255,255,255,0.85);

    font-size: 13px;

}


.top-bar-content {

    min-height: 40px;

    display: flex;

    align-items: center;

    justify-content: space-between;

}


.top-left {

    display: flex;

    align-items: center;

    gap: 28px;

}


.top-left span {

    display: flex;

    align-items: center;

    gap: 7px;

}


.top-left i {

    color: var(--yellow);

}


.top-right {

    display: flex;

    align-items: center;

    gap: 8px;

}


.top-right a {

    width: 28px;

    height: 28px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: white;

    border-radius: 50%;

    transition: 0.3s;

}


.top-right a:hover {

    background: var(--yellow);

    color: var(--dark-blue);

}


/* =========================================
   MAIN HEADER
========================================= */

.main-header {

    position: sticky;

    top: 0;

    z-index: 1000;

    background: rgba(255,255,255,0.96);

    border-bottom: 1px solid var(--border-color);

    transition: all 0.3s ease;

}


.main-header.header-scrolled {

    box-shadow: var(--shadow);

    backdrop-filter: blur(15px);

}


/* =========================================
   NAVBAR
========================================= */

.navbar {

    min-height: 92px;

    padding: 0;

}


.navbar-brand {

    display: flex;

    align-items: center;

    padding: 0;

}


.clinic-logo {

    width: 235px;

    height: auto;

    display: block;

}


/* =========================================
   NAVIGATION
========================================= */

.navbar-nav {

    gap: 5px;

}


.nav-link {

    position: relative;

    color: var(--text-dark) !important;

    font-size: 15px;

    font-weight: 600;

    padding: 35px 14px !important;

    transition: 0.3s;

}


.nav-link:hover,
.nav-link.active {

    color: var(--primary-blue) !important;

}


.nav-link::after {

    content: "";

    position: absolute;

    left: 14px;

    right: 14px;

    bottom: 20px;

    height: 3px;

    background: var(--yellow);

    border-radius: 20px;

    transform: scaleX(0);

    transition: 0.3s;

}


.nav-link:hover::after,
.nav-link.active::after {

    transform: scaleX(1);

}


/* =========================================
   DROPDOWN
========================================= */

.dropdown-menu {

    border: 0;

    border-radius: 15px;

    padding: 12px;

    min-width: 245px;

    box-shadow:
        0 15px 50px rgba(15, 38, 110, 0.15);

}


.dropdown-item {

    padding: 12px 15px;

    border-radius: 9px;

    color: var(--text-dark);

    font-size: 14px;

    font-weight: 500;

    transition: 0.3s;

}


.dropdown-item:hover {

    background: var(--light-yellow);

    color: var(--primary-blue);

}


.dropdown-item i {

    color: var(--primary-blue);

}


.dropdown-divider {

    border-color: var(--border-color);

}


.dropdown-item.view-all {

    font-weight: 700;

    color: var(--primary-blue);

    display: flex;

    justify-content: space-between;

}


/* =========================================
   HEADER ACTIONS
========================================= */

.header-actions {

    display: flex;

    align-items: center;

    gap: 22px;

}


.header-phone {

    display: flex;

    align-items: center;

    gap: 10px;

    color: var(--text-dark);

}


.phone-icon {

    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--light-yellow);

    color: var(--primary-blue);

    border-radius: 50%;

}


.header-phone small {

    display: block;

    color: var(--text-muted);

    font-size: 10px;

}


.header-phone strong {

    display: block;

    font-size: 14px;

}


/* =========================================
   APPOINTMENT BUTTON
========================================= */

.appointment-btn {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    background: var(--primary-blue);

    color: white;

    padding: 14px 20px;

    border-radius: 50px;

    font-size: 14px;

    font-weight: 700;

    transition: 0.3s;

    box-shadow:
        0 8px 20px rgba(25,54,143,0.2);

}


.appointment-btn i {

    width: 25px;

    height: 25px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--yellow);

    color: var(--dark-blue);

    border-radius: 50%;

}


.appointment-btn:hover {

    background: var(--yellow);

    color: var(--dark-blue);

    transform: translateY(-2px);

}


/* =========================================
   MOBILE MENU BUTTON
========================================= */

.navbar-toggler {

    border: 0;

    padding: 8px;

}


.navbar-toggler:focus {

    box-shadow: none;

}


.navbar-toggler-icon {

    width: 25px;

    height: 25px;

}


/* =========================================
   OFFCANVAS
========================================= */

.offcanvas {

    max-width: 360px;

}


.offcanvas-header {

    padding: 25px;

    border-bottom: 1px solid var(--border-color);

}


.mobile-logo {

    width: 190px;

    height: auto;

}


.offcanvas-body {

    padding: 25px;

}


.mobile-nav {

    list-style: none;

    padding: 0;

    margin: 0;

}


.mobile-nav li {

    border-bottom: 1px solid var(--border-color);

}


.mobile-nav a {

    display: flex;

    align-items: center;

/*    justify-content: space-between;*/

    padding: 17px 5px;

    color: var(--text-dark);

    font-size: 16px;

    font-weight: 600;

}


.mobile-nav a:hover {

    color: var(--primary-blue);

}


/* =========================================
   MOBILE CONTACT
========================================= */

.mobile-contact-box {

    margin-top: 35px;

    padding: 22px;

    border-radius: 18px;

    background: var(--light-yellow);

}


.mobile-contact-box span {

    display: block;

    color: var(--text-muted);

    font-size: 13px;

    margin-bottom: 8px;

}


.mobile-contact-box a {

    color: var(--primary-blue);

    font-size: 17px;

    font-weight: 700;

}


.mobile-contact-box i {

    margin-right: 6px;

}


/* =========================================
   MOBILE APPOINTMENT
========================================= */

.mobile-appointment {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-top: 20px;

    padding: 16px 20px;

    border-radius: 50px;

    background: var(--primary-blue);

    color: white;

    font-weight: 700;

}


.mobile-appointment i {

    color: var(--yellow);

}


/* =========================================
   DEMO SECTION
========================================= */

.demo-content {

    min-height: 600px;

    display: flex;

    align-items: center;

    justify-content: center;

    background:
        linear-gradient(
            135deg,
            #f7f9ff,
            #ffffff
        );

}


.demo-content .badge {

    background: var(--light-yellow);

    color: var(--primary-blue);

    padding: 10px 18px;

    border-radius: 50px;

    font-weight: 700;

}


.demo-content h1 {

    font-family: "Playfair Display", serif;

    font-size: clamp(40px, 5vw, 70px);

    color: var(--primary-blue);

    margin-top: 20px;

}


.demo-content p {

    max-width: 650px;

    margin: 20px auto;

    color: var(--text-muted);

    font-size: 18px;

}


/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1399px) {

    .clinic-logo {

        width: 210px;

    }


    .nav-link {

        padding-left: 9px !important;

        padding-right: 9px !important;

    }


    .header-phone {

        display: none;

    }

}


@media (max-width: 1199px) {

    .clinic-logo {

        width: 190px;

    }


    .navbar-nav {

        gap: 0;

    }


    .nav-link {

        font-size: 14px;

    }


    .appointment-btn {

        padding: 12px 16px;

    }

}


@media (max-width: 991px) {

    .top-bar {

        display: none;

    }


    .navbar {

        min-height: 78px;

    }


    .clinic-logo {

        width: 190px;

    }

}


@media (max-width: 575px) {

    .navbar {

        min-height: 70px;

    }


    .clinic-logo {

        width: 165px;

    }


    .offcanvas {

        max-width: 100%;

    }


    .demo-content h1 {

        font-size: 38px;

    }

}

/* =========================================================
   HERO BANNER CSS
   HEAR'N SAY CLINIC
========================================================= */


/* =========================================================
   HERO SECTION
========================================================= */

.clinic-hero {

    position: relative;

    min-height: 720px;

    display: flex;

    align-items: center;

    background:

        radial-gradient(
            circle at 90% 20%,
            rgba(255, 196, 0, 0.08),
            transparent 30%
        ),

        linear-gradient(
            135deg,
            #f7f9ff 0%,
            #ffffff 55%,
            #f8faff 100%
        );

    overflow: hidden;

}


/* =========================================================
   DECORATIVE BACKGROUND SHAPES
========================================================= */

.hero-shape {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

}


.hero-shape-one {

    width: 500px;

    height: 500px;

    top: -250px;

    right: -150px;

    background: rgba(25, 54, 143, 0.035);

}


.hero-shape-two {

    width: 300px;

    height: 300px;

    bottom: -180px;

    left: -100px;

    border: 50px solid rgba(255, 196, 0, 0.05);

}


/* =========================================================
   HERO CONTENT
========================================================= */

.hero-content {

    position: relative;

    z-index: 5;

    max-width: 650px;

}


/* =========================================================
   HERO LABEL
========================================================= */

.hero-label {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 8px 16px 8px 8px;

    margin-bottom: 25px;

    border: 1px solid rgba(25, 54, 143, 0.1);

    border-radius: 50px;

    background: rgba(255, 255, 255, 0.8);

    color: #19368f;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 0.4px;

}


.hero-label-icon {

    width: 30px;

    height: 30px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffc400;

    color: #0c1d50;

}


.hero-label-icon i {

    font-size: 13px;

}


/* =========================================================
   HERO HEADING
========================================================= */

.hero-content h1 {

    margin: 0;

    color: #0c1d50;

    font-family: "Playfair Display", serif;

    font-size: clamp(
        45px,
        5vw,
        72px
    );

    font-weight: 700;

    line-height: 1.1;

    letter-spacing: -1.5px;

}


.hero-content h1 span {

    display: block;

    color: #19368f;

    position: relative;

}


/* Yellow underline */

.hero-content h1 span::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: -10px;

    width: 100px;

    height: 5px;

    border-radius: 10px;

    background: #ffc400;

}


/* =========================================================
   HERO DESCRIPTION
========================================================= */

.hero-description {

    max-width: 600px;

    margin: 30px 0 20px;

    color: #68728b;

    font-size: 16px;

    line-height: 1.9;

}


/* =========================================================
   HERO TAGLINE
========================================================= */

.hero-tagline {

    display: flex;

    flex-wrap: wrap;

    align-items: center;

    gap: 12px;

    margin-bottom: 30px;

}


.hero-tagline span {

    color: #19368f;

    font-size: 15px;

    font-weight: 700;

}


.hero-tagline span:not(:last-child)::after {

    content: "â€¢";

    margin-left: 12px;

    color: #ffc400;

}


/* =========================================================
   HERO BUTTONS
========================================================= */

.hero-buttons {

    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 15px;

}


.hero-primary-btn {

    display: inline-flex;

    align-items: center;

    gap: 14px;

    padding: 7px 8px 7px 22px;

    border-radius: 50px;

    background: #19368f;

    color: #ffffff;

    font-size: 14px;

    font-weight: 700;

    box-shadow:

        0 12px 30px rgba(
            25,
            54,
            143,
            0.2
        );

    transition: all 0.3s ease;

}


.hero-primary-btn span {

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffc400;

    color: #0c1d50;

}


.hero-primary-btn:hover {

    transform: translateY(-3px);

    background: #0c1d50;

    color: #ffffff;

    box-shadow:

        0 18px 35px rgba(
            25,
            54,
            143,
            0.25
        );

}


.hero-secondary-btn {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 15px 20px;

    border-radius: 50px;

    color: #19368f;

    font-size: 14px;

    font-weight: 700;

    transition: all 0.3s ease;

}


.hero-secondary-btn i {

    transition: transform 0.3s ease;

}


.hero-secondary-btn:hover {

    color: #0c1d50;

}


.hero-secondary-btn:hover i {

    transform: translateX(5px);

}


/* =========================================================
   HERO TRUST
========================================================= */

.hero-trust {

    display: flex;

    align-items: center;

    gap: 25px;

    margin-top: 40px;

}


.trust-item {

    display: flex;

    align-items: center;

    gap: 12px;

}


.trust-icon {

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #fff8dc;

    color: #19368f;

}


.trust-item strong {

    display: block;

    color: #17213d;

    font-size: 13px;

}


.trust-item small {

    display: block;

    margin-top: 3px;

    color: #8991a5;

    font-size: 10px;

}


.trust-divider {

    width: 1px;

    height: 38px;

    background: #dfe4ef;

}


/* =========================================================
   PREMIUM CLINIC HERO SLIDER
   FULL WIDTH | COMPACT | PREMIUM | RESPONSIVE
========================================================= */

.clinic-hero {

    position: relative;

    width: 100%;

    min-height: 680px;

    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #071638 0%,
            #0d2158 55%,
            #193b96 100%
        );

}


/* =========================================================
   DECORATIVE BACKGROUND SHAPES
========================================================= */

.hero-shape {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

    z-index: 1;

}


.hero-shape-one {

    width: 500px;

    height: 500px;

    top: -280px;

    right: -180px;

    background:
        rgba(255, 196, 0, 0.08);

}


.hero-shape-two {

    width: 420px;

    height: 420px;

    bottom: -300px;

    left: -180px;

    background:
        rgba(255, 255, 255, 0.04);

}


/* =========================================================
   SWIPER
========================================================= */

.clinicHeroSwiper {

    position: relative;

    width: 100%;

    z-index: 3;

}


.clinicHeroSwiper .swiper-wrapper {

    display: flex;

    align-items: stretch;

}


.clinicHeroSwiper .swiper-slide {

    height: auto;

    display: flex;

}


/* =========================================================
   SLIDE
========================================================= */

.clinic-hero-slide {

    position: relative;

    width: 100%;

    min-height: 680px;

    display: flex;

    align-items: center;

    padding: 45px 0 75px;

}


/* =========================================================
   CONTAINER
========================================================= */

.clinic-hero .container {

    position: relative;

    z-index: 5;

}


/* =========================================================
   HERO CONTENT
========================================================= */

.hero-content {

    position: relative;

    z-index: 10;

    padding: 0;

}


/* =========================================================
   HERO LABEL
========================================================= */

.hero-label {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 18px;

    padding: 7px 14px 7px 7px;

    border: 1px solid
        rgba(255,255,255,0.14);

    border-radius: 50px;

    background:
        rgba(255,255,255,0.07);

    color: rgba(255,255,255,0.88);

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 0.7px;

}


.hero-label-icon {

    width: 30px;

    height: 30px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffc400;

    color: #071638;

    font-size: 13px;

}


/* =========================================================
   HERO HEADING
========================================================= */

.hero-content h1 {

    max-width: 650px;

    margin: 0 0 18px;

    color: #ffffff;

    font-size: clamp(42px, 4.5vw, 68px);

    line-height: 1.08;

    font-weight: 700;

    letter-spacing: -2px;

}


.hero-content h1 span {

    display: block;

    color: #ffc400;

}


/* =========================================================
   DESCRIPTION
========================================================= */

.hero-description {

    max-width: 590px;

    margin: 0 0 20px;

    color:
        rgba(255,255,255,0.72);

    font-size: 16px;

    line-height: 1.7;

}


/* =========================================================
   TAGLINE
========================================================= */

.hero-tagline {

    display: flex;

    flex-wrap: wrap;

    align-items: center;

    gap: 0;

    margin-bottom: 25px;

}


.hero-tagline span {

    position: relative;

    padding-right: 18px;

    margin-right: 18px;

    color: #ffffff;

    font-size: 14px;

    font-weight: 700;

}


.hero-tagline span:not(:last-child)::after {

    content: "";

    position: absolute;

    top: 50%;

    right: 0;

    width: 4px;

    height: 4px;

    border-radius: 50%;

    background: #ffc400;

    transform: translateY(-50%);

}


/* =========================================================
   HERO BUTTONS
========================================================= */

.hero-buttons {

    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 12px;

    margin-bottom: 27px;

}


.hero-primary-btn {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    padding: 11px 12px 11px 20px;

    border-radius: 50px;

    background: #ffc400;

    color: #071638;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    transition:
        transform 0.3s ease,
        background 0.3s ease;

}


.hero-primary-btn span {

    width: 31px;

    height: 31px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #071638;

    color: #ffffff;

}


.hero-primary-btn:hover {

    color: #071638;

    background: #ffffff;

    transform: translateY(-3px);

}


.hero-secondary-btn {

    display: inline-flex;

    align-items: center;

    gap: 9px;

    padding: 13px 19px;

    border: 1px solid
        rgba(255,255,255,0.25);

    border-radius: 50px;

    color: #ffffff;

    background:
        rgba(255,255,255,0.05);

    font-size: 14px;

    font-weight: 600;

    text-decoration: none;

    transition:
        0.3s ease;

}


.hero-secondary-btn:hover {

    border-color: #ffc400;

    background: #ffc400;

    color: #071638;

}


/* =========================================================
   TRUST ITEMS
========================================================= */

.hero-trust {

    display: flex;

    align-items: center;

    gap: 22px;

}


.trust-item {

    display: flex;

    align-items: center;

    gap: 10px;

}


.trust-icon {

    width: 36px;

    height: 36px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 10px;

    background:
        rgba(255,196,0,0.12);

    color: #ffc400;

    font-size: 16px;

}


.trust-item strong {

    display: block;

    margin-bottom: 2px;

    color: #ffffff;

    font-size: 13px;

    font-weight: 700;

}


.trust-item small {

    display: block;

    color:
        rgba(255,255,255,0.55);

    font-size: 11px;

}


.trust-divider {

    width: 1px;

    height: 34px;

    background:
        rgba(255,255,255,0.15);

}


/* =========================================================
   HERO VISUAL
========================================================= */

.hero-visual {

    position: relative;

    width: 100%;

    min-height: 510px;

    display: flex;

    align-items: center;

    justify-content: center;

}


/* =========================================================
   MAIN IMAGE
========================================================= */

.hero-image-wrapper {

    position: relative;

    z-index: 3;

    width: 100%;

    max-width: 550px;

    overflow: hidden;

    border-radius: 30px;

    border: 6px solid
        rgba(255,255,255,0.10);

    box-shadow:
        0 25px 70px
        rgba(0,0,0,0.30);

}


.hero-main-image {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.8s ease;

}


.clinicHeroSwiper
.swiper-slide-active
.hero-main-image {

    transform: scale(1.02);

}


/* =========================================================
   YELLOW DECORATIVE CIRCLE
========================================================= */

.hero-yellow-circle {

    position: absolute;

    z-index: 1;

    width: 240px;

    height: 240px;

    right: -25px;

    bottom: -25px;

    border-radius: 50%;

    background: #ffc400;

    opacity: 0.95;

}


/* =========================================================
   FLOATING CARD
========================================================= */

.hero-floating-card {

    position: absolute;

    z-index: 8;

    left: -25px;

    top: 65px;

    display: flex;

    align-items: center;

    gap: 11px;

    min-width: 190px;

    padding: 13px 16px;

    border:
        1px solid
        rgba(255,255,255,0.3);

    border-radius: 15px;

    background:
        rgba(255,255,255,0.94);

    box-shadow:
        0 15px 35px
        rgba(0,0,0,0.20);

    backdrop-filter: blur(12px);

}


.floating-icon {

    width: 40px;

    height: 40px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 11px;

    background: #071638;

    color: #ffc400;

    font-size: 17px;

}


.hero-floating-card strong {

    display: block;

    margin-bottom: 2px;

    color: #071638;

    font-size: 13px;

    font-weight: 800;

}


.hero-floating-card span {

    display: block;

    color: #687386;

    font-size: 11px;

}


/* =========================================================
   APPOINTMENT FLOATING CARD
========================================================= */

.hero-appointment-card {

    position: absolute;

    z-index: 8;

    right: -25px;

    bottom: 55px;

    display: flex;

    align-items: center;

    gap: 11px;

    max-width: 245px;

    padding: 13px 16px;

    border:
        1px solid
        rgba(255,255,255,0.25);

    border-radius: 15px;

    background:
        rgba(7,22,56,0.92);

    box-shadow:
        0 15px 35px
        rgba(0,0,0,0.25);

    backdrop-filter: blur(12px);

}


.appointment-card-icon {

    width: 40px;

    height: 40px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 11px;

    background: #ffc400;

    color: #071638;

    font-size: 16px;

}


.hero-appointment-card small {

    display: block;

    margin-bottom: 3px;

    color:
        rgba(255,255,255,0.55);

    font-size: 10px;

}


.hero-appointment-card strong {

    display: block;

    color: #ffffff;

    font-size: 12px;

    font-weight: 700;

}


/* =========================================================
   SLIDER CONTROLS
========================================================= */

.hero-slider-controls {

    position: absolute;

    z-index: 20;

    left: 50%;

    bottom: 22px;

    width: calc(100% - 30px);

    max-width: 1320px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    transform: translateX(-50%);

}


/* =========================================================
   PAGINATION
========================================================= */

.hero-pagination {

    position: static !important;

    width: auto !important;

    display: flex;

    align-items: center;

    gap: 6px;

}


.hero-pagination
.swiper-pagination-bullet {

    width: 7px;

    height: 7px;

    margin: 0 !important;

    opacity: 1;

    border-radius: 10px;

    background:
        rgba(255,255,255,0.35);

    transition:
        width 0.3s ease,
        background 0.3s ease;

}


.hero-pagination
.swiper-pagination-bullet-active {

    width: 28px;

    background: #ffc400;

}


/* =========================================================
   NAVIGATION
========================================================= */

.hero-navigation {

    display: flex;

    gap: 8px;

}


.hero-navigation button {

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    border:
        1px solid
        rgba(255,255,255,0.2);

    border-radius: 50%;

    background:
        rgba(255,255,255,0.07);

    color: #ffffff;

    cursor: pointer;

    transition:
        0.3s ease;

}


.hero-navigation button:hover {

    border-color: #ffc400;

    background: #ffc400;

    color: #071638;

}


/* =========================================================
   SWIPER ARROW RESET
========================================================= */

.hero-prev::after,
.hero-next::after {

    display: none;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) {

    .clinic-hero,
    .clinic-hero-slide {

        min-height: 650px;

    }


    .hero-image-wrapper {

        height: 470px;

    }


    .hero-visual {

        min-height: 470px;

    }


    .hero-floating-card {

        left: -10px;

    }


    .hero-appointment-card {

        right: -10px;

    }

}


/* =========================================================
   MOBILE / TABLET
========================================================= */

@media (max-width: 991px) {

    .clinic-hero {

        min-height: auto;

    }


    .clinic-hero-slide {

        min-height: auto;

        padding:
            55px
            0
            85px;

    }


    .hero-content {

        text-align: center;

    }


    .hero-label {

        margin-left: auto;

        margin-right: auto;

    }


    .hero-content h1 {

        font-size: 46px;

        letter-spacing: -1.5px;

    }


    .hero-description {

        margin-left: auto;

        margin-right: auto;

    }


    .hero-tagline {

        justify-content: center;

    }


    .hero-buttons {

        justify-content: center;

    }


    .hero-trust {

        justify-content: center;

    }


    .hero-visual {

        min-height: 430px;

        margin-top: 5px;

    }


    .hero-image-wrapper {

        height: 430px;

        max-width: 600px;

    }


    .hero-yellow-circle {

        right: 5%;

        bottom: -20px;

    }


    .hero-floating-card {

        left: 2%;

        top: 40px;

    }


    .hero-appointment-card {

        right: 2%;

        bottom: 35px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .clinic-hero-slide {

        padding:
            40px
            0
            75px;

    }


    .hero-label {

        font-size: 10px;

    }


    .hero-label-icon {

        width: 27px;

        height: 27px;

    }


    .hero-content h1 {

        font-size: 38px;

        line-height: 1.12;

        letter-spacing: -1px;

    }


    .hero-description {

        font-size: 14px;

        line-height: 1.65;

    }


    .hero-tagline span {

        font-size: 12px;

    }


    .hero-buttons {

        flex-direction: column;

        width: 100%;

    }


    .hero-primary-btn,
    .hero-secondary-btn {

        width: 100%;

        justify-content: center;

    }


    .hero-trust {

        gap: 14px;

    }


    .trust-divider {

        display: none;

    }


    .trust-item {

        text-align: left;

    }


    .hero-visual {

        min-height: 350px;

        margin-top: 10px;

    }


    .hero-image-wrapper {

        height: 350px;

        border-radius: 22px;

        border-width: 4px;

    }


    .hero-floating-card {

        left: 5px;

        top: 25px;

        min-width: 165px;

        padding: 10px;

    }


    .floating-icon {

        width: 34px;

        height: 34px;

    }


    .hero-appointment-card {

        right: 5px;

        bottom: 25px;

        max-width: 205px;

        padding: 10px;

    }


    .appointment-card-icon {

        width: 34px;

        height: 34px;

    }


    .hero-yellow-circle {

        width: 150px;

        height: 150px;

        right: -20px;

        bottom: -15px;

    }


    .hero-slider-controls {

        bottom: 15px;

    }


    .hero-navigation button {

        width: 36px;

        height: 36px;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .clinic-hero-slide {

        padding:
            35px
            0
            70px;

    }


    .hero-content h1 {

        font-size: 32px;

    }


    .hero-description {

        font-size: 13px;

    }


    .hero-trust {

        flex-direction: column;

        align-items: center;

    }


    .trust-item {

        width: 100%;

        justify-content: center;

        text-align: center;

    }


    .hero-visual {

        min-height: 300px;

    }


    .hero-image-wrapper {

        height: 300px;

    }


    .hero-floating-card {

        top: 15px;

        left: 0;

        transform: scale(0.85);

        transform-origin: left top;

    }


    .hero-appointment-card {

        right: 0;

        bottom: 15px;

        transform: scale(0.85);

        transform-origin: right bottom;

    }


    .hero-slider-controls {

        width: calc(100% - 25px);

    }

}
/* =========================================================
   PATIENT PROBLEMS SECTION
   PREMIUM BLUE SLIDER DESIGN
========================================================= */

.patient-problems-section {

    position: relative;
    width: 100%;
    padding: 75px 0 65px;
    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );

}


/* =========================================================
   BACKGROUND DECORATIONS
========================================================= */

.patient-bg-circle {

    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;

}


.patient-bg-circle-one {

    width: 500px;
    height: 500px;

    top: -300px;
    right: -180px;

    background: rgba(41, 75, 180, 0.22);

    filter: blur(4px);

}


.patient-bg-circle-two {

    width: 400px;
    height: 400px;

    bottom: -280px;
    left: -180px;

    background: rgba(255, 196, 0, 0.05);

    filter: blur(5px);

}


/* =========================================================
   CONTAINER
========================================================= */

.patient-problems-section .container {

    position: relative;
    z-index: 2;

}


/* =========================================================
   SECTION HEADING
========================================================= */

.patient-problems-section .section-heading {

    max-width: 850px;
    margin: 0 auto;

}


.patient-problems-section .section-eyebrow {

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;

    margin-bottom: 14px;

    color: #ffc400;

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 2px;
    text-transform: uppercase;

}


.patient-problems-section .eyebrow-line {

    width: 32px;
    height: 2px;

    background: #ffc400;

    border-radius: 20px;

}


.patient-problems-section .section-heading h2 {

    margin: 0 0 16px;

    color: #ffffff;

    font-size: 44px;
    line-height: 1.18;

    font-weight: 600;

    letter-spacing: -1px;

}


.patient-problems-section .section-heading h2 span {

    display: inline-block;

    color: #ffc400;

}


.patient-problems-section .section-heading > p {

    max-width: 720px;

    margin: 0 auto;

    color: rgba(255,255,255,0.72);

    font-size: 16px;
    line-height: 1.7;

}


/* =========================================================
   SLIDER WRAPPER
========================================================= */

.patient-problems-slider-wrapper {

    position: relative;

    margin-top: 38px;

}


/* =========================================================
   SWIPER
========================================================= */

.patientProblemsSwiper {

    width: 100%;

    overflow: hidden;

}


.patientProblemsSwiper .swiper-wrapper {

    align-items: stretch;

}


.patientProblemsSwiper .swiper-slide {

    height: auto;

    display: flex;

}


/* =========================================================
   PROBLEM CARD
========================================================= */

.patient-problem-card {

    position: relative;

    width: 100%;
    height: 100%;

    min-height: 275px;

    padding: 28px 28px 25px;

    display: flex;
    flex-direction: column;

    border-radius: 20px;

    background: #ffffff;

    border: 1px solid rgba(255,255,255,0.15);

    box-shadow:
        0 18px 45px rgba(0,0,0,0.16);

    overflow: hidden;

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;

}


.patient-problem-card:hover {

    transform: translateY(-6px);

    box-shadow:
        0 25px 55px rgba(0,0,0,0.24);

}


/* =========================================================
   CARD TOP NUMBER
========================================================= */

.problem-number {

    position: absolute;

    top: 18px;
    right: 20px;

    font-size: 12px;
    font-weight: 800;

    color: #19368f;

    letter-spacing: 1px;

}


/* =========================================================
   ICON
========================================================= */

.problem-icon {

    width: 52px;
    height: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    border-radius: 15px;

    background:
        rgba(25,54,143,0.08);

    color: #19368f;

    font-size: 22px;

    transition: 0.35s ease;

}


.patient-problem-card:hover .problem-icon {

    background: #19368f;

    color: #ffffff;

    transform: translateY(-3px);

}


/* =========================================================
   CARD TITLE
========================================================= */

.patient-problem-card h4 {

    margin: 0 0 11px;

    max-width: 90%;

    color: #0c1d50;

    font-size: 21px;
    line-height: 1.3;

    font-weight: 700;

}


/* =========================================================
   CARD DESCRIPTION
========================================================= */

.patient-problem-card p {

    margin: 0;

    color: #687386;

    font-size: 14px;
    line-height: 1.65;

}


/* =========================================================
   CARD LINK
========================================================= */

.problem-link {

    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-top: auto;
    padding-top: 20px;

    color: #0c1d50;

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;

    transition: 0.3s ease;

}


.problem-link i {

    width: 28px;
    height: 28px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #0c1d50;

    color: #ffffff;

    font-size: 11px;

    transition: 0.3s ease;

}


.problem-link:hover {

    color: #19368f;

}


.problem-link:hover i {

    background: #ffc400;

    color: #0c1d50;

    transform: rotate(45deg);

}


/* =========================================================
   FEATURED CARD
========================================================= */

.patient-problem-card.featured-problem {

    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #f3f6ff 100%
        );

}


.patient-problem-card.featured-problem::before {

    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background: #ffc400;

}


/* =========================================================
   SLIDER CONTROLS
========================================================= */

.patient-slider-controls {

    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-top: 22px;

}


/* =========================================================
   PAGINATION
========================================================= */

.patient-pagination {

    position: static !important;

    width: auto !important;

}


.patient-pagination .swiper-pagination-bullet {

    width: 7px;
    height: 7px;

    margin: 0 5px 0 0 !important;

    opacity: 1;

    background:
        rgba(255,255,255,0.30);

    transition: 0.3s ease;

}


.patient-pagination
.swiper-pagination-bullet-active {

    width: 25px;

    border-radius: 20px;

    background: #ffc400;

}


/* =========================================================
   NAVIGATION
========================================================= */

.patient-slider-navigation {

    display: flex;

    gap: 8px;

}


.patient-slider-navigation button {

    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid
        rgba(255,255,255,0.22);

    border-radius: 50%;

    background:
        rgba(255,255,255,0.06);

    color: #ffffff;

    cursor: pointer;

    transition: 0.3s ease;

}


.patient-slider-navigation button:hover {

    background: #ffc400;

    border-color: #ffc400;

    color: #0c1d50;

}


/* =========================================================
   BOTTOM HELP BOX
========================================================= */

.patient-help-box {

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 25px;

    margin-top: 32px;
    padding: 20px 25px;

    border-radius: 18px;

    background:
        rgba(255,255,255,0.07);

    border: 1px solid
        rgba(255,255,255,0.12);

    backdrop-filter: blur(12px);

}


.patient-help-icon {

    width: 48px;
    height: 48px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 14px;

    background:
        rgba(255,196,0,0.12);

    color: #ffc400;

    font-size: 20px;

}


.patient-help-content {

    flex: 1;

}


.patient-help-content h3 {

    margin: 0 0 4px;

    color: #ffffff;

    font-size: 17px;
    line-height: 1.4;

    font-weight: 700;

}


.patient-help-content p {

    margin: 0;

    color: rgba(255,255,255,0.65);

    font-size: 13px;
    line-height: 1.5;

}


.patient-help-btn {

    display: inline-flex;
    align-items: center;
    gap: 10px;

    flex-shrink: 0;

    padding: 12px 20px;

    border-radius: 50px;

    background: #ffc400;

    color: #0c1d50;

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;

    transition: 0.3s ease;

}


.patient-help-btn i {

    width: 25px;
    height: 25px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #0c1d50;

    color: #ffffff;

    font-size: 10px;

}


.patient-help-btn:hover {

    background: #ffffff;

    color: #0c1d50;

    transform: translateY(-2px);

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .patient-problems-section {

        padding: 60px 0 55px;

    }


    .patient-problems-section .section-heading h2 {

        font-size: 38px;

    }


    .patient-problem-card {

        min-height: 265px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .patient-problems-section {

        padding: 50px 0 45px;

    }


    .patient-problems-section .section-heading h2 {

        font-size: 32px;

        letter-spacing: -0.5px;

    }


    .patient-problems-section .section-heading > p {

        font-size: 15px;

        line-height: 1.65;

    }


    .patient-problems-slider-wrapper {

        margin-top: 30px;

    }


    .patient-problem-card {

        min-height: 255px;

        padding: 25px 23px;

    }


    .patient-problem-card h4 {

        font-size: 20px;

    }


    .patient-problem-card p {

        font-size: 14px;

    }


    .patient-help-box {

        flex-wrap: wrap;

        align-items: flex-start;

    }


    .patient-help-content {

        min-width: calc(100% - 70px);

    }


    .patient-help-btn {

        width: 100%;

        justify-content: center;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .patient-problems-section {

        padding: 45px 0 40px;

    }


    .patient-problems-section .section-heading h2 {

        font-size: 29px;

    }


    .patient-problems-section .section-eyebrow {

        font-size: 11px;

        letter-spacing: 1.5px;

    }


    .patient-problem-card {

        min-height: 245px;

    }


    .patient-slider-navigation button {

        width: 38px;
        height: 38px;

    }

}

/* =========================================================
   WHY CHOOSE US
   PREMIUM COMPACT LIGHT SECTION
========================================================= */

.why-choose-section {

    position: relative;

    width: 100%;

    padding: 65px 0 55px;

    overflow: hidden;

    background: #f7f8f5;

}


/* =========================================================
   SECTION HEADER
========================================================= */

.why-section-header {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 50px;

    margin-bottom: 32px;

}


.why-heading-area {

    flex: 1;

}


.why-section-label {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 10px;

    color: #19368f;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 1.8px;

    text-transform: uppercase;

}


.why-section-label span {

    width: 32px;

    height: 2px;

    border-radius: 10px;

    background: #ffc400;

}


.why-heading-area h2 {

    margin: 0;

    color: #0c1d50;

    font-size: 43px;

    line-height: 1.15;

    font-weight: 500;

    letter-spacing: -1px;

}


.why-heading-area h2 strong {

    display: block;

    color: #19368f;

    font-weight: 700;

}


.why-intro-area {

    max-width: 500px;

}


.why-intro-area p {

    margin: 0;

    color: #687386;

    font-size: 15px;

    line-height: 1.7;

}


/* =========================================================
   SLIDER
========================================================= */

.why-slider-wrapper {

    position: relative;

    width: 100%;

}


.whyChooseSwiper {

    width: 100%;

    overflow: hidden;

}


.whyChooseSwiper .swiper-wrapper {

    display: flex;

    align-items: stretch;

}


.whyChooseSwiper .swiper-slide {

    height: auto;

    display: flex;

}


/* =========================================================
   FEATURE CARD
========================================================= */

.why-feature-card {

    position: relative;

    width: 100%;

    min-height: 255px;

    display: flex;

    flex-direction: column;

    padding: 25px 26px 22px;

    overflow: hidden;

    border-radius: 18px;

    background: #ffffff;

    border: 1px solid rgba(12,29,80,0.07);

    box-shadow:
        0 12px 35px
        rgba(12,29,80,0.06);

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease,
        border-color 0.4s ease;

}


.why-feature-card:hover {

    transform: translateY(-6px);

    border-color:
        rgba(25,54,143,0.16);

    box-shadow:
        0 20px 45px
        rgba(12,29,80,0.11);

}


/* =========================================================
   CARD TOP
========================================================= */

.why-feature-top {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 22px;

}


.why-feature-number {

    color: #a2a9b5;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 1px;

}


.why-feature-icon {

    width: 48px;

    height: 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 14px;

    background:
        rgba(25,54,143,0.07);

    color: #19368f;

    font-size: 21px;

    transition: 0.3s ease;

}


.why-feature-card:hover
.why-feature-icon {

    background: #19368f;

    color: #ffc400;

    transform: translateY(-2px);

}


/* =========================================================
   CARD CONTENT
========================================================= */

.why-feature-content {

    flex: 1;

}


.why-feature-content h3 {

    margin: 0 0 10px;

    color: #0c1d50;

    font-size: 22px;

    line-height: 1.3;

    font-weight: 700;

}


.why-feature-content h3 span {

    color: #19368f;

}


.why-feature-content p {

    margin: 0;

    color: #687386;

    font-size: 14px;

    line-height: 1.65;

}


/* =========================================================
   CARD BOTTOM LINE
========================================================= */

.why-feature-line {

    width: 38px;

    height: 3px;

    margin-top: 20px;

    border-radius: 10px;

    background: #ffc400;

    transition: width 0.4s ease;

}


.why-feature-card:hover
.why-feature-line {

    width: 75px;

}


/* =========================================================
   SLIDER CONTROLS
========================================================= */

.why-slider-controls {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-top: 20px;

}


.why-pagination {

    position: static !important;

    width: auto !important;

}


.why-pagination
.swiper-pagination-bullet {

    width: 7px;

    height: 7px;

    margin: 0 5px 0 0 !important;

    opacity: 1;

    background:
        rgba(12,29,80,0.16);

    transition: 0.3s ease;

}


.why-pagination
.swiper-pagination-bullet-active {

    width: 25px;

    border-radius: 10px;

    background: #19368f;

}


/* =========================================================
   NAVIGATION
========================================================= */

.why-navigation {

    display: flex;

    gap: 8px;

}


.why-navigation button {

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid
        rgba(12,29,80,0.12);

    border-radius: 50%;

    background: #ffffff;

    color: #0c1d50;

    cursor: pointer;

    transition: 0.3s ease;

}


.why-navigation button:hover {

    background: #0c1d50;

    border-color: #0c1d50;

    color: #ffc400;

    transform: translateY(-2px);

}


/* =========================================================
   BOTTOM CTA
========================================================= */

.why-bottom-cta {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 25px;

    margin-top: 28px;

    padding: 18px 22px;

    border-radius: 16px;

    background: #0c1d50;

}


.why-cta-content {

    display: flex;

    align-items: center;

    gap: 14px;

}


.why-cta-icon {

    width: 43px;

    height: 43px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 12px;

    background:
        rgba(255,196,0,0.12);

    color: #ffc400;

    font-size: 18px;

}


.why-cta-content h3 {

    margin: 0 0 3px;

    color: #ffffff;

    font-size: 16px;

    font-weight: 700;

}


.why-cta-content p {

    margin: 0;

    color:
        rgba(255,255,255,0.65);

    font-size: 12px;

}


/* =========================================================
   CTA BUTTON
========================================================= */

.why-choose-btn {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    flex-shrink: 0;

    padding: 10px 16px;

    border-radius: 50px;

    background: #ffc400;

    color: #0c1d50;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

    transition: 0.3s ease;

}


.why-choose-btn span {

    width: 25px;

    height: 25px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #0c1d50;

    color: #ffffff;

    font-size: 10px;

}


.why-choose-btn:hover {

    background: #ffffff;

    color: #0c1d50;

    transform: translateY(-2px);

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .why-choose-section {

        padding: 55px 0 45px;

    }


    .why-section-header {

        align-items: flex-start;

        flex-direction: column;

        gap: 15px;

    }


    .why-heading-area h2 {

        font-size: 38px;

    }


    .why-intro-area {

        max-width: 650px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .why-choose-section {

        padding: 45px 0 40px;

    }


    .why-heading-area h2 {

        font-size: 32px;

    }


    .why-intro-area p {

        font-size: 14px;

    }


    .why-feature-card {

        min-height: 235px;

        padding: 22px;

    }


    .why-feature-content h3 {

        font-size: 21px;

    }


    .why-feature-content p {

        font-size: 14px;

    }


    .why-bottom-cta {

        align-items: flex-start;

        flex-direction: column;

    }


    .why-choose-btn {

        width: 100%;

        justify-content: center;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .why-choose-section {

        padding: 38px 0;

    }


    .why-heading-area h2 {

        font-size: 29px;

    }


    .why-feature-card {

        min-height: 225px;

    }

}

/* =========================================================
   PREMIUM RESPONSIVE DOCTOR SLIDER
========================================================= */

.premium-doctors-section {
    --doctor-navy: #071633;
    --doctor-dark-blue: #0c2152;
    --doctor-blue: #19368f;
    --doctor-bright-blue: #3976ef;
    --doctor-gold: #ffc400;
    --doctor-white: #ffffff;
    --doctor-text: #667188;
    --doctor-border: #dce5f3;

    position: relative;
    width: 100%;
    padding: 70px 0;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 8% 12%,
            rgba(57, 118, 239, 0.14),
            transparent 25%
        ),
        radial-gradient(
            circle at 94% 88%,
            rgba(255, 196, 0, 0.11),
            transparent 23%
        ),
        linear-gradient(
            135deg,
            #f2f6ff 0%,
            #ffffff 48%,
            #f7faff 100%
        );
}

.premium-doctors-container {
    position: relative;
    z-index: 3;

    width: min(100% - 40px, 1240px);
    margin-inline: auto;
}


/* =========================================================
   DECORATIVE BACKGROUND
========================================================= */

.doctors-bg-circle {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.doctors-circle-one {
    width: 330px;
    height: 330px;

    top: -200px;
    left: -130px;

    border: 1px solid rgba(25, 54, 143, 0.08);

    box-shadow:
        0 0 0 45px rgba(25, 54, 143, 0.025),
        0 0 0 90px rgba(25, 54, 143, 0.015);
}

.doctors-circle-two {
    width: 250px;
    height: 250px;

    right: -100px;
    bottom: -120px;

    background: rgba(255, 196, 0, 0.075);
}

.doctors-dot-pattern {
    position: absolute;
    top: 45px;
    right: 5%;

    width: 110px;
    height: 80px;

    background-image: radial-gradient(
        rgba(25, 54, 143, 0.18) 2px,
        transparent 2px
    );

    background-size: 15px 15px;
}


/* =========================================================
   SECTION HEADER
========================================================= */

.premium-doctors-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 40px;

    margin-bottom: 36px;
}

.premium-doctors-heading {
    max-width: 760px;
}

.doctors-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 13px;
    padding: 8px 16px;

    border: 1px solid rgba(25, 54, 143, 0.14);
    border-radius: 50px;

    color: var(--doctor-blue);
    background: rgba(255, 255, 255, 0.9);

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;

    box-shadow: 0 8px 24px rgba(7, 22, 51, 0.05);
}

.doctors-small-label i {
    color: var(--doctor-gold);
    font-size: 13px;
}

.premium-doctors-heading h2 {
    margin: 0 0 14px;

    color: var(--doctor-navy);

    font-size: clamp(35px, 4vw, 52px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -1.6px;
}

.premium-doctors-heading h2 strong {
    display: block;

    background: linear-gradient(
        90deg,
        var(--doctor-blue),
        var(--doctor-bright-blue)
    );

    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.premium-doctors-heading p {
    max-width: 660px;
    margin: 0;

    color: var(--doctor-text);

    font-size: 15px;
    line-height: 1.75;
}


/* =========================================================
   DESKTOP NAVIGATION
========================================================= */

.premium-doctors-navigation,
.premium-doctors-mobile-nav {
    display: flex;
    align-items: center;
    gap: 10px;
}

.premium-doctors-prev,
.premium-doctors-next {
    width: 51px;
    height: 51px;

    display: grid;
    place-items: center;

    padding: 0;

    border: 1px solid rgba(25, 54, 143, 0.14);
    border-radius: 50%;

    color: var(--doctor-blue);
    background: var(--doctor-white);

    font-size: 17px;
    line-height: 1;

    cursor: pointer;

    box-shadow: 0 10px 28px rgba(7, 22, 51, 0.08);

    transition:
        color 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.premium-doctors-prev:hover,
.premium-doctors-next:hover {
    color: var(--doctor-navy);

    border-color: var(--doctor-gold);
    background: var(--doctor-gold);

    transform: translateY(-3px);

    box-shadow: 0 14px 32px rgba(255, 196, 0, 0.22);
}

.premium-doctors-prev:focus-visible,
.premium-doctors-next:focus-visible {
    outline: 3px solid rgba(57, 118, 239, 0.25);
    outline-offset: 3px;
}

.premium-doctors-prev.swiper-button-disabled,
.premium-doctors-next.swiper-button-disabled {
    opacity: 0.45;
    cursor: not-allowed;
}


/* =========================================================
   SWIPER WRAPPER
========================================================= */

.premium-doctors-slider-wrap {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.premiumDoctorsSwiper {
    width: 100%;
    overflow: hidden;

    padding: 8px 4px 28px;
}

.premiumDoctorsSwiper .swiper-wrapper {
    display: flex;
    align-items: stretch;
}

.premiumDoctorsSwiper .swiper-slide {
    width: auto;
    height: auto;

    display: flex;
    align-items: stretch;
    flex-shrink: 0;
}


/* =========================================================
   DOCTOR CARD
========================================================= */

.premium-doctor-card {
    position: relative;

    width: 100%;
    height: 100%;

    display: flex;
    flex-direction: column;

    overflow: hidden;

    border: 1px solid rgba(25, 54, 143, 0.11);
    border-radius: 24px;

    background: var(--doctor-white);

    box-shadow:
        0 15px 42px rgba(7, 22, 51, 0.08),
        0 3px 10px rgba(25, 54, 143, 0.035);

    transition:
        transform 0.4s ease,
        border-color 0.4s ease,
        box-shadow 0.4s ease;
}

.premium-doctor-card::after {
    content: "";

    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 6;

    height: 4px;

    background: linear-gradient(
        90deg,
        var(--doctor-blue),
        var(--doctor-bright-blue),
        var(--doctor-gold)
    );

    transform: scaleX(0);
    transform-origin: left;

    transition: transform 0.4s ease;
}

.premium-doctor-card:hover {
    transform: translateY(-8px);

    border-color: rgba(57, 118, 239, 0.28);

    box-shadow:
        0 26px 62px rgba(7, 22, 51, 0.14),
        0 7px 20px rgba(57, 118, 239, 0.07);
}

.premium-doctor-card:hover::after {
    transform: scaleX(1);
}


/* =========================================================
   DOCTOR IMAGE
========================================================= */

.premium-doctor-image {
    position: relative;

    width: 100%;

    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #e7eef9,
            #cad8ee
        );
}

.premium-doctor-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center top;

    transition:
        transform 0.65s ease,
        filter 0.4s ease;
}

.premium-doctor-card:hover .premium-doctor-image img {
    transform: scale(1.05);
}

.doctor-image-shade {
    position: absolute;
    inset: 0;
    z-index: 2;

    background:
        linear-gradient(
            180deg,
            rgba(7, 22, 51, 0) 40%,
            rgba(7, 22, 51, 0.08) 63%,
            rgba(7, 22, 51, 0.58) 100%
        );

    pointer-events: none;
}


/* =========================================================
   CARD NUMBER
========================================================= */

.doctor-card-number {
    position: absolute;
    top: 17px;
    left: 17px;
    z-index: 4;

    width: 44px;
    height: 44px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(255, 255, 255, 0.62);
    border-radius: 50%;

    color: var(--doctor-navy);
    background: rgba(255, 255, 255, 0.92);

    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);

    font-size: 12px;
    font-weight: 900;

    box-shadow: 0 10px 25px rgba(7, 22, 51, 0.16);
}


/* =========================================================
   FLOATING ICON
========================================================= */

.doctor-image-icon {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 4;

    width: 56px;
    height: 56px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 50%;

    color: var(--doctor-navy);

    background:
        linear-gradient(
            135deg,
            var(--doctor-gold),
            #ffe478
        );

    font-size: 21px;

    box-shadow: 0 13px 32px rgba(7, 22, 51, 0.25);

    transition:
        color 0.4s ease,
        background 0.4s ease,
        transform 0.4s ease;
}

.premium-doctor-card:hover .doctor-image-icon {
    color: var(--doctor-white);

    background:
        linear-gradient(
            135deg,
            var(--doctor-blue),
            var(--doctor-bright-blue)
        );

    transform: rotate(10deg) scale(1.08);
}


/* =========================================================
   NAME AND DESIGNATION
========================================================= */

.premium-doctor-info {
    position: relative;
    flex: 1;

    min-height: 116px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 21px 20px 23px;

    text-align: center;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(57, 118, 239, 0.065),
            transparent 37%
        ),
        var(--doctor-white);
}

.premium-doctor-info::before {
    content: "";

    width: 38px;
    height: 3px;

    display: block;

    margin: 0 auto 12px;

    border-radius: 50px;

    background: var(--doctor-gold);
}

.premium-doctor-info h3 {
    margin: 0 0 7px;

    color: var(--doctor-navy);

    font-size: 19px;
    font-weight: 800;
    line-height: 1.3;
}

.premium-doctor-info span {
    display: block;

    color: var(--doctor-blue);

    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
}


/* =========================================================
   PAGINATION AND MOBILE CONTROLS
========================================================= */

.premium-doctors-controls {
    display: flex;
    align-items: center;
    justify-content: center;

    margin-top: 12px;
}

.premium-doctors-pagination {
    position: static !important;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;

    width: auto !important;
}

.premium-doctors-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;

    margin: 0 3px !important;

    border-radius: 50%;

    background: rgba(25, 54, 143, 0.24);
    opacity: 1;

    transition:
        width 0.3s ease,
        border-radius 0.3s ease,
        background 0.3s ease;
}

.premium-doctors-pagination .swiper-pagination-bullet-active {
    width: 29px;

    border-radius: 50px;

    background:
        linear-gradient(
            90deg,
            var(--doctor-blue),
            var(--doctor-bright-blue)
        );
}

.premium-doctors-mobile-nav {
    display: none;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) {

    .premium-doctors-section {
        padding: 60px 0;
    }

    .premium-doctors-heading h2 {
        font-size: 45px;
    }
}

@media (max-width: 991px) {

    .premium-doctors-section {
        padding: 55px 0;
    }

    .premium-doctors-header {
        gap: 25px;
    }

    .premium-doctors-heading h2 {
        font-size: 40px;
    }

    .premium-doctor-info h3 {
        font-size: 18px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .premium-doctors-section {
        padding: 44px 0;
    }

    .premium-doctors-container {
        width: min(100% - 24px, 1240px);
    }

    .premium-doctors-header {
        grid-template-columns: 1fr;
        gap: 0;

        margin-bottom: 27px;

        text-align: center;
    }

    .premium-doctors-heading {
        margin-inline: auto;
    }

    .doctors-small-label {
        font-size: 10px;
    }

    .premium-doctors-heading h2 {
        font-size: 33px;
        letter-spacing: -1px;
    }

    .premium-doctors-heading p {
        margin-inline: auto;

        font-size: 14px;
        line-height: 1.7;
    }

    .premium-doctors-navigation {
        display: none;
    }

    .premiumDoctorsSwiper {
        padding: 7px 2px 24px;
    }

    .premium-doctors-controls {
        flex-direction: column;
        gap: 16px;
    }

    .premium-doctors-mobile-nav {
        display: flex;
        justify-content: center;
    }

    .premium-doctors-prev,
    .premium-doctors-next {
        width: 46px;
        height: 46px;
    }

    .premium-doctor-info {
        min-height: 108px;
        padding: 19px;
    }

    .doctors-dot-pattern {
        display: none;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .premium-doctors-container {
        width: calc(100% - 20px);
    }

    .premium-doctors-heading h2 {
        font-size: 29px;
    }

    .premium-doctors-heading p {
        font-size: 13px;
    }

    .premium-doctor-card {
        border-radius: 20px;
    }

    .premium-doctor-info {
        min-height: 104px;
        padding: 18px 15px 20px;
    }

    .premium-doctor-info h3 {
        font-size: 18px;
    }

    .premium-doctor-info span {
        font-size: 11px;
    }

    .doctor-image-icon {
        width: 50px;
        height: 50px;

        font-size: 19px;
    }

    .doctor-card-number {
        width: 41px;
        height: 41px;
    }
}


/* =========================================================
   REDUCED MOTION ACCESSIBILITY
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .premium-doctor-card,
    .premium-doctor-image img,
    .doctor-image-icon,
    .premium-doctors-prev,
    .premium-doctors-next {
        transition: none;
    }

    .premium-doctor-card:hover,
    .premium-doctor-card:hover .premium-doctor-image img,
    .premium-doctor-card:hover .doctor-image-icon {
        transform: none;
    }
}


/* =========================================================
   CONDITIONS WE HELP IMPROVE
   PREMIUM BLUE SLIDER SECTION
========================================================= */

/* =========================================================
   PREMIUM CONDITIONS ICON SECTION
========================================================= */

.conditions-icon-section {
    --premium-navy: #07142f;
    --premium-blue: #123d8f;
    --premium-gold: #f5b800;
    --premium-white: #ffffff;
    --premium-text: #657086;

    position: relative;
    width: 100%;
    padding: 72px 0;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(57, 117, 255, 0.22),
            transparent 27%
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(245, 184, 0, 0.17),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #06122d 0%,
            #0a1d48 48%,
            #102d6e 100%
        );
}

.conditions-icon-section::before {
    content: "";
    position: absolute;
    top: 40px;
    right: 50px;

    width: 120px;
    height: 90px;

    background-image: radial-gradient(
        rgba(255, 255, 255, 0.22) 2px,
        transparent 2px
    );

    background-size: 16px 16px;
}

.conditions-icon-section::after {
    content: "";
    position: absolute;
    bottom: -130px;
    left: -120px;

    width: 340px;
    height: 340px;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;

    box-shadow:
        0 0 0 45px rgba(255, 255, 255, 0.025),
        0 0 0 90px rgba(255, 255, 255, 0.015);
}

.conditions-icon-container {
    position: relative;
    z-index: 2;

    width: min(100% - 40px, 1240px);
    margin-inline: auto;
}


/* =========================================================
   SECTION HEADER
========================================================= */

.conditions-icon-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 500px);
    align-items: end;
    gap: 45px;

    margin-bottom: 42px;
}

.conditions-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 14px;

    color: #ffd34e;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.conditions-eyebrow-dot {
    width: 9px;
    height: 9px;

    border-radius: 50%;
    background: var(--premium-gold);

    box-shadow:
        0 0 0 6px rgba(245, 184, 0, 0.15),
        0 0 18px rgba(245, 184, 0, 0.7);
}

.conditions-heading-block h2 {
    margin: 0;

    color: #ffffff;

    font-size: clamp(36px, 4.3vw, 54px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -1.7px;
}

.conditions-heading-block h2 strong {
    display: block;

    background: linear-gradient(
        90deg,
        #ffc400,
        #ffdf72
    );

    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.conditions-intro {
    padding: 19px 22px;

    border: 1px solid rgba(255, 255, 255, 0.12);
    border-left: 4px solid var(--premium-gold);
    border-radius: 14px;

    background: rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(12px);
}

.conditions-intro p {
    margin: 0;

    color: rgba(255, 255, 255, 0.72);

    font-size: 14px;
    line-height: 1.75;
}


/* =========================================================
   GRID
========================================================= */

.conditions-icon-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}


/* =========================================================
   PREMIUM CARD
========================================================= */

.condition-icon-card {
    --card-one: #377dff;
    --card-two: #1746a2;
    --card-soft: #edf4ff;

    position: relative;

    min-height: 300px;
    padding: 26px;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 24px;

    background:
        radial-gradient(
            circle at 100% 0%,
            color-mix(in srgb, var(--card-one) 28%, transparent),
            transparent 42%
        ),
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.98),
            rgba(244, 248, 255, 0.94)
        );

    box-shadow:
        0 18px 50px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease,
        border-color 0.4s ease;
}

.condition-icon-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;

    height: 5px;

    background: linear-gradient(
        90deg,
        var(--card-two),
        var(--card-one)
    );
}

.condition-icon-card::after {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;

    width: 180px;
    height: 180px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            color-mix(in srgb, var(--card-one) 18%, transparent),
            transparent 67%
        );

    pointer-events: none;
}

.condition-icon-card:hover {
    transform: translateY(-9px);

    border-color: color-mix(
        in srgb,
        var(--card-one) 45%,
        transparent
    );

    box-shadow:
        0 28px 70px rgba(0, 0, 0, 0.28),
        0 10px 30px color-mix(
            in srgb,
            var(--card-one) 20%,
            transparent
        );
}


/* =========================================================
   CARD NUMBER
========================================================= */

.condition-card-number {
    position: absolute;
    top: 21px;
    right: 23px;
    z-index: 3;

    font-size: 34px;
    font-weight: 900;
    line-height: 1;

    color: color-mix(
        in srgb,
        var(--card-one) 22%,
        #ffffff
    );
}


/* =========================================================
   LARGE PREMIUM ICON
========================================================= */

.condition-large-icon {
    position: relative;
    z-index: 3;

    width: 92px;
    height: 92px;

    display: grid;
    place-items: center;

    margin-bottom: 25px;

    border-radius: 50%;

    color: #ffffff;

    background:
        linear-gradient(
            145deg,
            var(--card-one),
            var(--card-two)
        );

    font-size: 39px;

    box-shadow:
        0 17px 35px color-mix(
            in srgb,
            var(--card-one) 35%,
            transparent
        ),
        inset 0 1px 0 rgba(255, 255, 255, 0.35);

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}

.condition-large-icon::before {
    content: "";
    position: absolute;
    inset: -7px;

    border: 1px dashed color-mix(
        in srgb,
        var(--card-one) 45%,
        transparent
    );

    border-radius: 50%;

    transition: transform 0.8s ease;
}

.condition-large-icon::after {
    content: "";
    position: absolute;
    inset: 8px;

    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 50%;
}

.condition-large-icon i {
    position: relative;
    z-index: 2;
}

.condition-icon-card:hover .condition-large-icon {
    transform: translateY(-5px) scale(1.08);

    box-shadow:
        0 22px 45px color-mix(
            in srgb,
            var(--card-one) 45%,
            transparent
        );
}

.condition-icon-card:hover .condition-large-icon::before {
    transform: rotate(120deg);
}


/* =========================================================
   CARD CONTENT
========================================================= */

.condition-card-body {
    position: relative;
    z-index: 3;
}

.condition-category {
    display: inline-flex;
    align-items: center;

    margin-bottom: 11px;
    padding: 7px 12px;

    border: 1px solid color-mix(
        in srgb,
        var(--card-one) 18%,
        transparent
    );

    border-radius: 50px;

    color: var(--card-two);
    background: var(--card-soft);

    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.condition-card-body h3 {
    margin: 0 0 10px;

    color: #07142f;

    font-size: 20px;
    font-weight: 800;
    line-height: 1.35;
}

.condition-card-body p {
    margin: 0 0 18px;

    color: #657086;

    font-size: 13px;
    line-height: 1.68;
}

.condition-card-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    color: var(--card-two);
    text-decoration: none;

    font-size: 12px;
    font-weight: 800;

    transition:
        color 0.3s ease,
        gap 0.3s ease;
}

.condition-card-link i {
    width: 32px;
    height: 32px;

    display: grid;
    place-items: center;

    border-radius: 50%;

    color: #ffffff;

    background: linear-gradient(
        135deg,
        var(--card-two),
        var(--card-one)
    );

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.condition-card-link:hover {
    gap: 13px;
    color: var(--card-one);
}

.condition-card-link:hover i {
    transform: rotate(45deg);

    box-shadow: 0 8px 20px color-mix(
        in srgb,
        var(--card-one) 35%,
        transparent
    );
}


/* =========================================================
   PREMIUM CARD COLOURS
========================================================= */

.condition-blue {
    --card-one: #3478f6;
    --card-two: #153d99;
    --card-soft: #eaf2ff;
}

.condition-purple {
    --card-one: #8a5cf5;
    --card-two: #5429b6;
    --card-soft: #f1ebff;
}

.condition-teal {
    --card-one: #18b7a4;
    --card-two: #067a70;
    --card-soft: #e7faf7;
}

.condition-orange {
    --card-one: #ff943e;
    --card-two: #c45405;
    --card-soft: #fff0e3;
}

.condition-green {
    --card-one: #48ba72;
    --card-two: #237944;
    --card-soft: #eaf8ef;
}

.condition-gold {
    --card-one: #f4b800;
    --card-two: #a87400;
    --card-soft: #fff7d8;
}

.condition-red {
    --card-one: #ed5b67;
    --card-two: #ae2634;
    --card-soft: #ffebed;
}

.condition-cyan {
    --card-one: #23a8d7;
    --card-two: #08749c;
    --card-soft: #e7f7fd;
}

.condition-pink {
    --card-one: #df5ba5;
    --card-two: #9d2e71;
    --card-soft: #ffedf7;
}

.condition-navy {
    --card-one: #2455c3;
    --card-two: #07142f;
    --card-soft: #e9effc;
}


/* =========================================================
   BOTTOM CTA
========================================================= */

.conditions-bottom-cta {
    position: relative;

    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;

    margin-top: 28px;
    padding: 22px 24px;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 22px;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(63, 121, 255, 0.35),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #04112d,
            #0b2255 55%,
            #174397
        );

    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3);
}

.conditions-bottom-cta::before {
    content: "";
    position: absolute;
    top: -80px;
    right: 18%;

    width: 190px;
    height: 190px;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;

    box-shadow:
        0 0 0 30px rgba(255, 255, 255, 0.025),
        0 0 0 60px rgba(255, 255, 255, 0.015);
}

.conditions-cta-icon {
    position: relative;
    z-index: 2;

    width: 64px;
    height: 64px;

    display: grid;
    place-items: center;

    border-radius: 50%;

    color: #07142f;

    background:
        linear-gradient(
            135deg,
            #ffc400,
            #ffe179
        );

    font-size: 25px;

    box-shadow:
        0 13px 35px rgba(245, 184, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.conditions-cta-content {
    position: relative;
    z-index: 2;
}

.conditions-cta-content strong {
    display: block;
    margin-bottom: 5px;

    color: #ffffff;

    font-size: 16px;
    font-weight: 800;
}

.conditions-cta-content p {
    max-width: 720px;
    margin: 0;

    color: rgba(255, 255, 255, 0.7);

    font-size: 12px;
    line-height: 1.65;
}

.conditions-cta-button {
    position: relative;
    z-index: 2;

    min-height: 50px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    padding: 13px 20px;

    border: 1px solid #ffc400;
    border-radius: 12px;

    color: #07142f;
    background: #ffc400;

    text-decoration: none;

    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;

    box-shadow: 0 12px 28px rgba(245, 184, 0, 0.18);

    transition:
        transform 0.3s ease,
        color 0.3s ease,
        background 0.3s ease;
}

.conditions-cta-button:hover {
    color: #07142f;
    background: #ffffff;
    border-color: #ffffff;

    transform: translateY(-3px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .conditions-icon-section {
        padding: 58px 0;
    }

    .conditions-icon-header {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .conditions-intro {
        max-width: 720px;
    }

    .conditions-icon-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .conditions-bottom-cta {
        grid-template-columns: auto 1fr;
    }

    .conditions-cta-button {
        grid-column: 1 / -1;
        width: fit-content;
        margin-left: 82px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .conditions-icon-section {
        padding: 45px 0;
    }

    .conditions-icon-container {
        width: min(100% - 24px, 1240px);
    }

    .conditions-icon-header {
        margin-bottom: 30px;
        text-align: center;
    }

    .conditions-heading-block h2 {
        font-size: 33px;
        letter-spacing: -1px;
    }

    .conditions-eyebrow {
        justify-content: center;
    }

    .conditions-intro {
        padding: 15px;
        border-left-width: 3px;
    }

    .conditions-intro p {
        font-size: 13px;
    }

    .conditions-icon-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .condition-icon-card {
        min-height: auto;
        padding: 22px;
    }

    .condition-large-icon {
        width: 78px;
        height: 78px;

        margin-bottom: 21px;

        font-size: 32px;
    }

    .conditions-bottom-cta {
        grid-template-columns: auto 1fr;
        padding: 19px;
    }

    .conditions-cta-button {
        grid-column: 1 / -1;
        width: 100%;
        margin-left: 0;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .conditions-icon-container {
        width: calc(100% - 20px);
    }

    .conditions-heading-block h2 {
        font-size: 29px;
    }

    .condition-icon-card {
        padding: 20px 18px;
        border-radius: 19px;
    }

    .condition-large-icon {
        width: 70px;
        height: 70px;

        font-size: 28px;
    }

    .condition-card-number {
        font-size: 28px;
    }

    .condition-card-body h3 {
        font-size: 18px;
    }

    .conditions-bottom-cta {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .conditions-cta-button {
        width: 100%;
    }
}

/* =========================================================
   EMOTIONAL BRAND STORY SECTION
========================================================= */

.brand-story-section {

    position: relative;

    width: 100%;

    padding: 65px 0;

    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );

}


/* =========================================================
   INNER LAYOUT
========================================================= */

.brand-story-inner {

    position: relative;

    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 0.9fr);

    align-items: center;

    gap: 65px;

}


/* =========================================================
   BACKGROUND DECORATION
========================================================= */

.brand-story-glow {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

    filter: blur(2px);

}


.brand-story-glow-one {

    width: 500px;

    height: 500px;

    top: -300px;

    right: -180px;

    background:
        radial-gradient(
            circle,
            rgba(255,196,0,0.08),
            transparent 70%
        );

}


.brand-story-glow-two {

    width: 400px;

    height: 400px;

    bottom: -280px;

    left: -180px;

    background:
        radial-gradient(
            circle,
            rgba(25,54,143,0.4),
            transparent 70%
        );

}


/* =========================================================
   LEFT CONTENT
========================================================= */

.brand-story-content {

    position: relative;

    z-index: 3;

    max-width: 650px;

}


/* =========================================================
   EYEBROW
========================================================= */

.brand-story-eyebrow {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 13px;

    color: #ffc400;

    font-size: 13px;

    font-weight: 800;

    letter-spacing: 2px;

    text-transform: uppercase;

}


.brand-story-eyebrow span {

    width: 35px;

    height: 3px;

    flex-shrink: 0;

    border-radius: 10px;

    background: #ffc400;

}


/* =========================================================
   HEADING
========================================================= */

.brand-story-content h2 {

    margin: 0 0 25px;

    color: #ffffff;

    font-size: 52px;

    line-height: 1.1;

    font-weight: 500;

    letter-spacing: -1.5px;

}


.brand-story-content h2 strong {

    display: inline-block;

    color: #ffc400;

    font-weight: 800;

}


/* =========================================================
   HIGHLIGHT MESSAGE
========================================================= */

.brand-story-highlight {

    display: flex;

    align-items: center;

    gap: 18px;

    width: fit-content;

    margin-bottom: 24px;

    padding: 16px 22px;

    border-radius: 16px;

    background:
        rgba(255,255,255,0.07);

    border: 1px solid
        rgba(255,255,255,0.12);

    box-shadow:
        0 15px 35px
        rgba(0,0,0,0.12);

}


.brand-story-quote-icon {

    width: 48px;

    height: 48px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 13px;

    background: #ffc400;

    color: #0c1d50;

    font-size: 26px;

}


.brand-story-highlight span {

    display: block;

    margin-bottom: 3px;

    color: rgba(255,255,255,0.5);

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.2px;

    text-transform: uppercase;

}


.brand-story-highlight p {

    margin: 0;

    color: #ffffff;

    font-size: 25px;

    line-height: 1.25;

    font-weight: 700;

}


/* =========================================================
   STORY TEXT
========================================================= */

.brand-story-text {

    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 12px 30px;

    margin-bottom: 25px;

}


.brand-story-text p {

    position: relative;

    margin: 0;

    padding-left: 18px;

    color: rgba(255,255,255,0.76);

    font-size: 16px;

    line-height: 1.6;

}


.brand-story-text p::before {

    content: "";

    position: absolute;

    top: 10px;

    left: 0;

    width: 6px;

    height: 6px;

    border-radius: 50%;

    background: #ffc400;

}


/* =========================================================
   CLOSING MESSAGE
========================================================= */

.brand-story-closing {

    display: flex;

    align-items: flex-start;

    gap: 15px;

    max-width: 600px;

}


.brand-story-closing-line {

    width: 3px;

    min-height: 48px;

    flex-shrink: 0;

    border-radius: 10px;

    background: #ffc400;

}


.brand-story-closing p {

    margin: 0;

    color: #ffffff;

    font-size: 17px;

    line-height: 1.6;

    font-weight: 600;

}


/* =========================================================
   RIGHT VISUAL
========================================================= */

.brand-story-visual {

    position: relative;

    min-height: 440px;

    display: flex;

    align-items: center;

    justify-content: center;

}


/* =========================================================
   MAIN IMAGE
========================================================= */

.brand-story-image {

    position: relative;

    width: 100%;

    height: 420px;

    overflow: hidden;

    border-radius: 28px;

    border: 1px solid
        rgba(255,255,255,0.15);

    box-shadow:
        0 25px 60px
        rgba(0,0,0,0.28);

}


.brand-story-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8,22,56,0.45),
            transparent 55%
        );

    pointer-events: none;

}


.brand-story-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.7s ease;

}


.brand-story-visual:hover
.brand-story-image img {

    transform: scale(1.04);

}


/* =========================================================
   FLOATING TRUST CARD
========================================================= */

.brand-story-floating-card {

    position: absolute;

    left: -30px;

    bottom: 35px;

    z-index: 5;

    display: flex;

    align-items: center;

    gap: 13px;

    max-width: 290px;

    padding: 15px 18px;

    border-radius: 15px;

    background: rgba(255,255,255,0.96);

    box-shadow:
        0 18px 45px
        rgba(0,0,0,0.22);

}


.brand-story-floating-icon {

    width: 42px;

    height: 42px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 11px;

    background: #0c1d50;

    color: #ffc400;

    font-size: 17px;

}


.brand-story-floating-card strong {

    display: block;

    margin-bottom: 3px;

    color: #0c1d50;

    font-size: 14px;

    font-weight: 800;

}


.brand-story-floating-card span {

    display: block;

    color: #6d7787;

    font-size: 11px;

    line-height: 1.4;

}


/* =========================================================
   FLOATING BADGE
========================================================= */

.brand-story-badge {

    position: absolute;

    top: 25px;

    right: -20px;

    z-index: 5;

    display: flex;

    align-items: center;

    gap: 9px;

    padding: 11px 16px;

    border-radius: 50px;

    background: #ffc400;

    color: #0c1d50;

    box-shadow:
        0 12px 30px
        rgba(0,0,0,0.2);

    animation:
        brandBadgeFloat 4s ease-in-out infinite;

}


.brand-story-badge i {

    font-size: 14px;

}


.brand-story-badge span {

    font-size: 12px;

    font-weight: 800;

}


/* =========================================================
   ANIMATION
========================================================= */

@keyframes brandBadgeFloat {

    0%,
    100% {

        transform: translateY(0);

    }

    50% {

        transform: translateY(-7px);

    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .brand-story-section {

        padding: 55px 0;

    }


    .brand-story-inner {

        grid-template-columns: 1fr;

        gap: 40px;

    }


    .brand-story-content {

        max-width: 750px;

    }


    .brand-story-content h2 {

        font-size: 44px;

    }


    .brand-story-visual {

        min-height: 400px;

    }


    .brand-story-image {

        height: 390px;

    }


    .brand-story-floating-card {

        left: 20px;

    }


    .brand-story-badge {

        right: 20px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .brand-story-section {

        padding: 45px 0;

    }


    .brand-story-inner {

        gap: 32px;

    }


    .brand-story-content h2 {

        font-size: 38px;

        letter-spacing: -0.8px;

    }


    .brand-story-highlight {

        width: 100%;

        padding: 14px 16px;

    }


    .brand-story-highlight p {

        font-size: 22px;

    }


    .brand-story-text {

        grid-template-columns: 1fr;

        gap: 9px;

    }


    .brand-story-text p {

        font-size: 15px;

    }


    .brand-story-closing p {

        font-size: 15px;

    }


    .brand-story-visual {

        min-height: 330px;

        padding-bottom: 20px;

    }


    .brand-story-image {

        height: 320px;

        border-radius: 20px;

    }


    .brand-story-floating-card {

        left: 10px;

        bottom: 0;

        max-width: 275px;

    }


    .brand-story-badge {

        top: 15px;

        right: 10px;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .brand-story-section {

        padding: 40px 0;

    }


    .brand-story-eyebrow {

        font-size: 11px;

        letter-spacing: 1.5px;

    }


    .brand-story-content h2 {

        font-size: 33px;

    }


    .brand-story-highlight {

        gap: 12px;

    }


    .brand-story-quote-icon {

        width: 42px;

        height: 42px;

        font-size: 22px;

    }


    .brand-story-highlight p {

        font-size: 20px;

    }


    .brand-story-image {

        height: 280px;

    }


    .brand-story-floating-card {

        max-width: 245px;

        padding: 12px;

    }


    .brand-story-floating-icon {

        width: 38px;

        height: 38px;

    }


    .brand-story-floating-card strong {

        font-size: 12px;

    }


    .brand-story-floating-card span {

        font-size: 10px;

    }


    .brand-story-badge {

        padding: 9px 12px;

    }


    .brand-story-badge span {

        font-size: 10px;

    }

}
/* =========================================================
   SUCCESS STORIES SECTION
========================================================= */

.success-stories-section {

    position: relative;

    width: 100%;

    padding: 60px 0 55px;

    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #f4f8ff 0%,
            #ffffff 55%,
            #eef4ff 100%
        );

}


/* =========================================================
   BACKGROUND DECORATION
========================================================= */

.success-bg-circle {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

    z-index: 0;

}


.success-bg-circle-one {

    width: 420px;

    height: 420px;

    top: -250px;

    right: -150px;

    background: rgba(25, 54, 143, 0.045);

}


.success-bg-circle-two {

    width: 350px;

    height: 350px;

    bottom: -250px;

    left: -150px;

    background: rgba(255, 196, 0, 0.055);

}


/* =========================================================
   SECTION HEADER
========================================================= */

.success-section-header {

    position: relative;

    z-index: 2;

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 50px;

    margin-bottom: 30px;

}


.success-heading-area {

    flex: 1;

}


.success-eyebrow {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 10px;

    color: #19368f;

    font-size: 13px;

    font-weight: 800;

    letter-spacing: 2px;

    text-transform: uppercase;

}


.success-eyebrow span {

    width: 35px;

    height: 3px;

    border-radius: 10px;

    background: #ffc400;

}


.success-heading-area h2 {

    margin: 0;

    color: #0c1d50;

    font-size: 46px;

    line-height: 1.15;

    font-weight: 500;

    letter-spacing: -1px;

}


.success-heading-area h2 strong {

    color: #19368f;

    font-weight: 800;

}


.success-intro-area {

    max-width: 500px;

}


.success-intro-area p {

    margin: 0;

    color: #5f6b7d;

    font-size: 17px;

    line-height: 1.7;

}


/* =========================================================
   SLIDER WRAPPER
========================================================= */

.success-slider-wrapper {

    position: relative;

    z-index: 2;

}


.successStoriesSwiper {

    width: 100%;

    overflow: hidden;

}


.successStoriesSwiper .swiper-wrapper {

    display: flex;

    align-items: stretch;

}


.successStoriesSwiper .swiper-slide {

    height: auto;

    display: flex;

}


/* =========================================================
   SUCCESS STORY CARD
========================================================= */

.success-story-card {

    position: relative;

    width: 100%;

    min-height: 310px;

    display: flex;

    flex-direction: column;

    padding: 30px;

    overflow: hidden;

    border-radius: 22px;

    background: #ffffff;

    border: 1px solid rgba(12, 29, 80, 0.08);

    box-shadow:
        0 15px 45px rgba(12, 29, 80, 0.07);

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease,
        border-color 0.4s ease;

}


.success-story-card:hover {

    transform: translateY(-7px);

    border-color: rgba(25, 54, 143, 0.2);

    box-shadow:
        0 25px 55px rgba(12, 29, 80, 0.13);

}


/* =========================================================
   FEATURED CARD
========================================================= */

.success-story-card.featured-story {

    background:
        linear-gradient(
            135deg,
            #0c1d50,
            #19368f
        );

    border-color: transparent;

}


.success-story-card.featured-story
.success-story-category {

    color: #ffc400;

}


.success-story-card.featured-story
.success-story-content h3 {

    color: #ffffff;

}


.success-story-card.featured-story
.success-story-content h3 span {

    color: #ffc400;

}


.success-story-card.featured-story
.success-story-content p {

    color: rgba(255,255,255,0.7);

}


.success-story-card.featured-story
.success-story-number {

    color: rgba(255,255,255,0.3);

}


.success-story-card.featured-story
.success-story-result {

    color: rgba(255,255,255,0.8);

}


.success-story-card.featured-story
.success-story-result i {

    color: #ffc400;

}


.success-story-card.featured-story
.success-story-arrow {

    background: #ffc400;

    color: #0c1d50;

}


/* =========================================================
   CARD TOP
========================================================= */

.success-story-number {

    position: absolute;

    top: 22px;

    right: 25px;

    color: rgba(12,29,80,0.12);

    font-size: 42px;

    line-height: 1;

    font-weight: 800;

}


.success-story-icon {

    width: 52px;

    height: 52px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 22px;

    border-radius: 15px;

    background: rgba(25,54,143,0.08);

    color: #19368f;

    font-size: 22px;

    transition: 0.4s ease;

}


.success-story-card:hover
.success-story-icon {

    transform: rotate(-5deg) scale(1.05);

    background: #ffc400;

    color: #0c1d50;

}


.featured-story
.success-story-icon {

    background: rgba(255,196,0,0.12);

    color: #ffc400;

}


/* =========================================================
   CARD CONTENT
========================================================= */

.success-story-content {

    flex: 1;

}


.success-story-category {

    display: block;

    margin-bottom: 8px;

    color: #19368f;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 1.2px;

    text-transform: uppercase;

}


.success-story-content h3 {

    margin: 0 0 12px;

    color: #0c1d50;

    font-size: 26px;

    line-height: 1.25;

    font-weight: 700;

}


.success-story-content h3 span {

    display: block;

    color: #19368f;

}


.success-story-content p {

    max-width: 520px;

    margin: 0;

    color: #667085;

    font-size: 16px;

    line-height: 1.7;

}


/* =========================================================
   CARD BOTTOM
========================================================= */

.success-story-bottom {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 15px;

    margin-top: 25px;

    padding-top: 18px;

    border-top: 1px solid rgba(12,29,80,0.08);

}


.featured-story
.success-story-bottom {

    border-color: rgba(255,255,255,0.12);

}


.success-story-result {

    display: flex;

    align-items: center;

    gap: 8px;

    color: #536071;

    font-size: 13px;

    font-weight: 700;

}


.success-story-result i {

    color: #19368f;

    font-size: 16px;

}


.success-story-arrow {

    width: 38px;

    height: 38px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #0c1d50;

    color: #ffffff;

    font-size: 14px;

    transition: 0.3s ease;

}


.success-story-card:hover
.success-story-arrow {

    background: #ffc400;

    color: #0c1d50;

    transform: rotate(45deg);

}


/* =========================================================
   SLIDER CONTROLS
========================================================= */

.success-slider-controls {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-top: 22px;

}


/* =========================================================
   PAGINATION
========================================================= */

.success-pagination {

    display: flex;

    align-items: center;

}


.success-pagination
.swiper-pagination-bullet {

    width: 8px;

    height: 8px;

    margin: 0 5px 0 0 !important;

    opacity: 1;

    background: rgba(12,29,80,0.15);

    transition: 0.3s ease;

}


.success-pagination
.swiper-pagination-bullet-active {

    width: 28px;

    border-radius: 10px;

    background: #ffc400;

}


/* =========================================================
   NAVIGATION
========================================================= */

.success-navigation {

    display: flex;

    gap: 8px;

}


.success-navigation button {

    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid rgba(12,29,80,0.12);

    border-radius: 50%;

    background: #ffffff;

    color: #0c1d50;

    cursor: pointer;

    transition: all 0.3s ease;

}


.success-navigation button:hover {

    background: #0c1d50;

    border-color: #0c1d50;

    color: #ffc400;

    transform: translateY(-2px);

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .success-stories-section {

        padding: 55px 0 50px;

    }


    .success-section-header {

        flex-direction: column;

        align-items: flex-start;

        gap: 15px;

        margin-bottom: 25px;

    }


    .success-heading-area h2 {

        font-size: 40px;

    }


    .success-intro-area {

        max-width: 700px;

    }


    .success-story-card {

        min-height: 300px;

    }


    .success-story-content h3 {

        font-size: 24px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .success-stories-section {

        padding: 45px 0 40px;

    }


    .success-heading-area h2 {

        font-size: 34px;

    }


    .success-intro-area p {

        font-size: 15px;

    }


    .success-story-card {

        min-height: 300px;

        padding: 25px;

        border-radius: 18px;

    }


    .success-story-content h3 {

        font-size: 24px;

    }


    .success-story-content p {

        font-size: 15px;

        line-height: 1.65;

    }


    .success-story-number {

        font-size: 36px;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .success-stories-section {

        padding: 40px 0 35px;

    }


    .success-heading-area h2 {

        font-size: 30px;

    }


    .success-story-card {

        min-height: 290px;

        padding: 23px;

    }


    .success-story-content h3 {

        font-size: 22px;

    }


    .success-story-content p {

        font-size: 15px;

    }


    .success-story-result {

        font-size: 12px;

    }

}
/* =========================================================
   PRODUCTS & SOLUTIONS
   PREMIUM IMAGE SLIDER
========================================================= */

.premium-products-section {

    position: relative;

    width: 100%;

    padding: 55px 0 60px;

    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        )

}

/* =========================================================
   PRODUCTS & SOLUTIONS SECTION
   HEAR 'N' SAY CLINIC
========================================================= */

.products-solutions-section {

    position: relative;

    width: 100%;

    padding: 65px 0 55px;

    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );

}


/* =========================================================
   BACKGROUND DECORATION
========================================================= */

.products-bg-circle {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

    z-index: 0;

}


.products-bg-circle-one {

    width: 500px;

    height: 500px;

    top: -300px;

    right: -180px;

    background: rgba(255,255,255,0.025);

}


.products-bg-circle-two {

    width: 400px;

    height: 400px;

    bottom: -280px;

    left: -180px;

    background: rgba(255,196,0,0.035);

}


/* =========================================================
   SECTION HEADER
========================================================= */

.products-section-header {

    position: relative;

    z-index: 2;

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 50px;

    margin-bottom: 32px;

}


/* =========================================================
   HEADING AREA
========================================================= */

.products-heading-area {

    flex: 1;

}


.products-eyebrow {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 10px;

    color: #ffc400;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;

}


.products-eyebrow span {

    width: 32px;

    height: 2px;

    background: #ffc400;

    border-radius: 10px;

}


.products-heading-area h2 {

    margin: 0;

    color: #ffffff;

    font-size: 44px;

    line-height: 1.15;

    font-weight: 500;

    letter-spacing: -1px;

}


.products-heading-area h2 strong {

    color: #ffc400;

    font-weight: 700;

}


/* =========================================================
   INTRO TEXT
========================================================= */

.products-intro-area {

    max-width: 500px;

}


.products-intro-area p {

    margin: 0;

    color: rgba(255,255,255,0.72);

    font-size: 16px;

    line-height: 1.7;

}


/* =========================================================
   SLIDER WRAPPER
========================================================= */

.products-slider-wrapper {

    position: relative;

    z-index: 2;

}


.productsSwiper {

    width: 100%;

    overflow: hidden;

}


.productsSwiper .swiper-wrapper {

    display: flex;

    align-items: stretch;

}


.productsSwiper .swiper-slide {

    height: auto;

    display: flex;

}


/* =========================================================
   PREMIUM PRODUCT CARD
========================================================= */

.premium-product-card {

    position: relative;

    width: 100%;

    height: 100%;

    min-height: 410px;

    overflow: hidden;

    display: flex;

    flex-direction: column;

    border-radius: 22px;

    background: rgba(255,255,255,0.07);

    border: 1px solid rgba(255,255,255,0.13);

    box-shadow:

        0 20px 45px
        rgba(0,0,0,0.18);

    backdrop-filter: blur(10px);

    transition:

        transform 0.4s ease,

        background 0.4s ease,

        border-color 0.4s ease,

        box-shadow 0.4s ease;

}


.premium-product-card:hover {

    transform: translateY(-7px);

    background: rgba(255,255,255,0.11);

    border-color: rgba(255,196,0,0.45);

    box-shadow:

        0 28px 60px
        rgba(0,0,0,0.25);

}


/* =========================================================
   PRODUCT IMAGE
========================================================= */

.product-image {

    position: relative;

    width: 100%;

    height: 185px;

    overflow: hidden;

    background: #ffffff;

}


/* Image overlay */

.product-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8,22,56,0.35),
            transparent 55%
        );

    pointer-events: none;

}


/* Product image */

.product-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:

        transform 0.6s ease;

}


.premium-product-card:hover
.product-image img {

    transform: scale(1.06);

}


/* =========================================================
   PRODUCT NUMBER
========================================================= */

.product-number {

    position: absolute;

    z-index: 3;

    top: 14px;

    left: 14px;

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: rgba(255,255,255,0.95);

    color: #0c1d50;

    font-size: 12px;

    font-weight: 800;

    box-shadow:

        0 5px 18px
        rgba(0,0,0,0.18);

}


/* =========================================================
   PRODUCT CARD CONTENT
========================================================= */

.product-card-content {

    display: flex;

    flex-direction: column;

    flex: 1;

    padding: 22px 24px 20px;

}


/* =========================================================
   PRODUCT LABEL
========================================================= */

.product-label {

    display: block;

    margin-bottom: 8px;

    color: #ffc400;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 1.3px;

    text-transform: uppercase;

}


/* =========================================================
   PRODUCT TITLE
========================================================= */

.product-card-content h3 {

    margin: 0 0 10px;

    color: #ffffff;

    font-size: 22px;

    line-height: 1.3;

    font-weight: 700;

}


/* =========================================================
   PRODUCT DESCRIPTION
========================================================= */

.product-card-content p {

    margin: 0;

    color: rgba(255,255,255,0.68);

    font-size: 15px;

    line-height: 1.65;

}


/* =========================================================
   PRODUCT LINK
========================================================= */

.product-card-link {

    display: inline-flex;

    align-items: center;

    gap: 9px;

    margin-top: auto;

    padding-top: 18px;

    color: #ffc400;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;

}


.product-card-link i {

    width: 28px;

    height: 28px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffc400;

    color: #0c1d50;

    font-size: 11px;

    transition: all 0.3s ease;

}


.product-card-link:hover {

    color: #ffffff;

}


.product-card-link:hover i {

    background: #ffffff;

    color: #0c1d50;

    transform: rotate(45deg);

}


/* =========================================================
   SLIDER CONTROLS
========================================================= */

.products-slider-controls {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-top: 22px;

}


/* =========================================================
   PAGINATION
========================================================= */

.products-pagination
.swiper-pagination-bullet {

    width: 7px;

    height: 7px;

    margin: 0 5px 0 0 !important;

    opacity: 1;

    background: rgba(255,255,255,0.3);

    transition: all 0.3s ease;

}


.products-pagination
.swiper-pagination-bullet-active {

    width: 25px;

    border-radius: 10px;

    background: #ffc400;

}


/* =========================================================
   NAVIGATION
========================================================= */

.products-navigation {

    display: flex;

    gap: 8px;

}


.products-navigation button {

    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid rgba(255,255,255,0.2);

    border-radius: 50%;

    background: rgba(255,255,255,0.06);

    color: #ffffff;

    cursor: pointer;

    transition: all 0.3s ease;

}


.products-navigation button:hover {

    background: #ffc400;

    color: #0c1d50;

    border-color: #ffc400;

    transform: translateY(-3px);

}


/* =========================================================
   BOTTOM CTA
========================================================= */

.products-bottom-cta {

    position: relative;

    z-index: 2;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 25px;

    margin-top: 30px;

    padding: 20px 25px;

    border-radius: 18px;

    background:

        rgba(255,255,255,0.07);

    border: 1px solid
        rgba(255,255,255,0.12);

    backdrop-filter: blur(10px);

}


/* =========================================================
   CTA LEFT
========================================================= */

.products-cta-left {

    display: flex;

    align-items: center;

    gap: 15px;

}


.products-cta-icon {

    width: 46px;

    height: 46px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 13px;

    background: rgba(255,196,0,0.13);

    color: #ffc400;

    font-size: 19px;

}


.products-cta-left h3 {

    margin: 0 0 4px;

    color: #ffffff;

    font-size: 17px;

    font-weight: 700;

}


.products-cta-left p {

    margin: 0;

    color: rgba(255,255,255,0.62);

    font-size: 13px;

}


/* =========================================================
   CTA BUTTON
========================================================= */

.products-cta-button {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    flex-shrink: 0;

    padding: 12px 20px;

    border-radius: 50px;

    background: #ffc400;

    color: #0c1d50;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.3s ease;

}


.products-cta-button i {

    width: 26px;

    height: 26px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #0c1d50;

    color: #ffffff;

    font-size: 10px;

    transition: all 0.3s ease;

}


.products-cta-button:hover {

    background: #ffffff;

    color: #0c1d50;

    transform: translateY(-3px);

}


.products-cta-button:hover i {

    background: #ffc400;

    color: #0c1d50;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .products-solutions-section {

        padding: 55px 0 45px;

    }


    .products-section-header {

        flex-direction: column;

        align-items: flex-start;

        gap: 15px;

        margin-bottom: 25px;

    }


    .products-heading-area h2 {

        font-size: 38px;

    }


    .products-intro-area {

        max-width: 650px;

    }


    .premium-product-card {

        min-height: 400px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .products-solutions-section {

        padding: 45px 0 40px;

    }


    .products-heading-area h2 {

        font-size: 32px;

    }


    .products-intro-area p {

        font-size: 15px;

        line-height: 1.65;

    }


    .product-image {

        height: 175px;

    }


    .product-card-content {

        padding: 20px;

    }


    .product-card-content h3 {

        font-size: 21px;

    }


    .product-card-content p {

        font-size: 14px;

    }


    .products-bottom-cta {

        flex-direction: column;

        align-items: flex-start;

        padding: 20px;

    }


    .products-cta-button {

        width: 100%;

        justify-content: center;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .products-solutions-section {

        padding: 40px 0 35px;

    }


    .products-heading-area h2 {

        font-size: 29px;

    }


    .products-eyebrow {

        font-size: 10px;

    }


    .products-intro-area p {

        font-size: 14px;

    }


    .product-image {

        height: 165px;

    }


    .premium-product-card {

        min-height: 390px;

        border-radius: 18px;

    }


    .product-card-content h3 {

        font-size: 20px;

    }


    .product-card-content p {

        font-size: 14px;

    }


    .products-slider-controls {

        margin-top: 18px;

    }

}
/* =========================================================
   FAMILY FRIENDLY ENVIRONMENT
   PREMIUM COMPACT SLIDER SECTION
   HEAR'N SAY CLINIC
========================================================= */


/* =========================================================
   SECTION ROOT
========================================================= */

.family-environment-section {

    position: relative;

    width: 100%;

    padding: 60px 0;

    overflow: hidden;

    background:

        linear-gradient(
            135deg,
            #f7faff 0%,
            #ffffff 55%,
            #f2f6ff 100%
        );

}


/* =========================================================
   DECORATIVE BACKGROUND SHAPES
========================================================= */

.family-bg-shape {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

    z-index: 0;

}


.family-bg-shape-one {

    width: 420px;

    height: 420px;

    top: -280px;

    right: -160px;

    border: 1px solid
        rgba(
            12,
            29,
            80,
            0.05
        );

    background:
        rgba(
            12,
            29,
            80,
            0.018
        );

}


.family-bg-shape-two {

    width: 320px;

    height: 320px;

    bottom: -240px;

    left: -150px;

    border: 1px solid
        rgba(
            255,
            196,
            0,
            0.07
        );

    background:
        rgba(
            255,
            196,
            0,
            0.025
        );

}


/* =========================================================
   MAIN CONTAINER
========================================================= */

.family-environment-section
.container {

    position: relative;

    z-index: 2;

}


/* =========================================================
   VISUAL WRAPPER
========================================================= */

.family-visual {

    position: relative;

    width: 100%;

    max-width: 600px;

    padding:
        0 20px 20px 0;

}


/* =========================================================
   MAIN IMAGE
========================================================= */

.family-main-image {

    position: relative;

    width: 100%;

    height: 480px;

    overflow: hidden;

    border-radius: 24px;

    background: #e9eef7;

    box-shadow:

        0 24px 55px
        rgba(
            12,
            29,
            80,
            0.14
        );

}


/* =========================================================
   IMAGE
========================================================= */

.family-main-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform 0.7s
        cubic-bezier(
            0.2,
            0.8,
            0.2,
            1
        );

}


.family-main-image:hover img {

    transform:
        scale(1.045);

}


/* =========================================================
   IMAGE OVERLAY
========================================================= */

.family-main-image::after {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background:

        linear-gradient(
            180deg,
            rgba(
                12,
                29,
                80,
                0
            ) 45%,
            rgba(
                12,
                29,
                80,
                0.22
            ) 100%
        );

}


/* =========================================================
   DECORATIVE IMAGE FRAME
========================================================= */

.family-image-frame {

    position: absolute;

    top: 20px;

    left: -10px;

    width: 100%;

    height: 100%;

    border-radius: 24px;

    border: 1px solid
        rgba(
            12,
            29,
            80,
            0.1
        );

    z-index: -1;

}


/* =========================================================
   FLOATING EXPERIENCE CARD
========================================================= */

.family-floating-card {

    position: absolute;

    left: -5px;

    bottom: 48px;

    display: flex;

    align-items: center;

    gap: 13px;

    max-width: 290px;

    padding: 15px 20px;

    border-radius: 16px;

    background:
        rgba(
            255,
            255,
            255,
            0.96
        );

    border: 1px solid
        rgba(
            255,
            255,
            255,
            0.8
        );

    box-shadow:

        0 18px 42px
        rgba(
            12,
            29,
            80,
            0.16
        );

    backdrop-filter:
        blur(10px);

    animation:
        familyFloat
        4s
        ease-in-out
        infinite;

}


/* =========================================================
   FLOATING ICON
========================================================= */

.family-floating-icon {

    width: 43px;

    height: 43px;

    flex: 0 0 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 12px;

    background: #0c1d50;

    color: #ffc400;

    font-size: 16px;

}


/* =========================================================
   FLOATING CONTENT
========================================================= */

.family-floating-content strong {

    display: block;

    margin-bottom: 3px;

    color: #0c1d50;

    font-size: 13px;

    line-height: 1.4;

    font-weight: 700;

}


.family-floating-content span {

    display: block;

    color: #70798a;

    font-size: 11px;

    line-height: 1.4;

}


/* =========================================================
   FAMILY FIRST BADGE
========================================================= */

.family-badge {

    position: absolute;

    top: 28px;

    right: 0;

    display: flex;

    align-items: center;

    gap: 8px;

    padding: 10px 16px;

    border-radius: 50px;

    background: #0c1d50;

    color: #ffffff;

    box-shadow:

        0 12px 28px
        rgba(
            12,
            29,
            80,
            0.2
        );

}


.family-badge i {

    color: #ffc400;

    font-size: 14px;

}


.family-badge span {

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 0.3px;

}


/* =========================================================
   CONTENT AREA
========================================================= */

.family-content {

    position: relative;

    width: 100%;

    padding-left: 5px;

}


/* =========================================================
   EYEBROW
========================================================= */

.family-eyebrow {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 11px;

    color: #0c1d50;

    font-size: 11px;

    line-height: 1.4;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1.7px;

}


.family-eyebrow span {

    width: 30px;

    height: 2px;

    display: block;

    border-radius: 10px;

    background: #ffc400;

}


/* =========================================================
   HEADING
========================================================= */

.family-content h2 {

    max-width: 600px;

    margin: 0 0 14px;

    color: #0c1d50;

    font-size: 43px;

    line-height: 1.16;

    font-weight: 700;

    letter-spacing: -0.6px;

}


.family-content h2 span {

    color: #19368f;

}


/* =========================================================
   DESCRIPTION
========================================================= */

.family-description {

    max-width: 600px;

    margin: 0 0 25px;

    color: #687386;

    font-size: 15px;

    line-height: 1.7;

    font-weight: 400;

}


/* =========================================================
   FEATURES SLIDER
========================================================= */

.family-features-slider {

    position: relative;

    width: 100%;

    overflow: hidden;

}


/* =========================================================
   SWIPER
========================================================= */

.familyFeaturesSwiper {

    width: 100%;

    overflow: hidden;

}


.familyFeaturesSwiper
.swiper-wrapper {

    display: flex;

    align-items: stretch;

}


.familyFeaturesSwiper
.swiper-slide {

    height: auto;

    display: flex;

    box-sizing: border-box;

}


/* =========================================================
   FEATURE CARD
========================================================= */

.family-feature-item {

    position: relative;

    width: 100%;

    min-height: 126px;

    display: flex;

    align-items: flex-start;

    gap: 13px;

    padding: 17px;

    border-radius: 16px;

    background: #ffffff;

    border: 1px solid
        rgba(
            12,
            29,
            80,
            0.07
        );

    box-shadow:

        0 8px 25px
        rgba(
            12,
            29,
            80,
            0.045
        );

    transition:

        transform 0.35s ease,

        box-shadow 0.35s ease,

        border-color 0.35s ease;

}


.family-feature-item:hover {

    transform:
        translateY(-4px);

    border-color:

        rgba(
            255,
            196,
            0,
            0.4
        );

    box-shadow:

        0 16px 32px
        rgba(
            12,
            29,
            80,
            0.1
        );

}


/* =========================================================
   FEATURE ICON
========================================================= */

.family-feature-icon {

    width: 42px;

    height: 42px;

    flex: 0 0 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 12px;

    background:
        rgba(
            12,
            29,
            80,
            0.06
        );

    color: #19368f;

    font-size: 17px;

    transition:

        background 0.3s ease,

        color 0.3s ease,

        transform 0.3s ease;

}


.family-feature-item:hover
.family-feature-icon {

    background: #0c1d50;

    color: #ffc400;

    transform:
        rotate(-5deg);

}


/* =========================================================
   FEATURE CONTENT
========================================================= */

.family-feature-content {

    min-width: 0;

    flex: 1;

}


.family-feature-content h3 {

    margin: 1px 0 6px;

    color: #0c1d50;

    font-size: 14px;

    line-height: 1.4;

    font-weight: 700;

}


.family-feature-content p {

    margin: 0;

    color: #7a8494;

    font-size: 12px;

    line-height: 1.55;

    font-weight: 400;

}


/* =========================================================
   SLIDER CONTROLS
========================================================= */

.family-slider-controls {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-top: 17px;

}


/* =========================================================
   PAGINATION
========================================================= */

.family-slider-pagination {

    display: flex;

    align-items: center;

}


.family-slider-pagination
.swiper-pagination-bullet {

    width: 7px;

    height: 7px;

    margin: 0 5px 0 0;

    padding: 0;

    opacity: 1;

    border-radius: 10px;

    background:
        rgba(
            12,
            29,
            80,
            0.15
        );

    transition:

        width 0.3s ease,

        background 0.3s ease;

}


.family-slider-pagination
.swiper-pagination-bullet-active {

    width: 24px;

    background: #ffc400;

}


/* =========================================================
   SLIDER ARROWS
========================================================= */

.family-slider-arrows {

    display: flex;

    align-items: center;

    gap: 7px;

}


.family-slider-arrows button {

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 0;

    border: 1px solid
        rgba(
            12,
            29,
            80,
            0.12
        );

    border-radius: 50%;

    background: #ffffff;

    color: #0c1d50;

    font-size: 13px;

    cursor: pointer;

    transition:

        all 0.3s ease;

}


.family-slider-arrows button:hover {

    border-color: #0c1d50;

    background: #0c1d50;

    color: #ffc400;

    transform:
        translateY(-2px);

}


.family-slider-arrows button:focus {

    outline: none;

}


/* =========================================================
   FLOATING ANIMATION
========================================================= */

@keyframes familyFloat {

    0%,
    100% {

        transform:
            translateY(0);

    }

    50% {

        transform:
            translateY(-7px);

    }

}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1200px) {

    .family-environment-section {

        padding: 65px 0;

    }


    .family-main-image {

        height: 500px;

    }


    .family-content h2 {

        font-size: 45px;

    }


    .family-feature-item {

        min-height: 130px;

    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .family-environment-section {

        padding: 50px 0;

    }


    .family-visual {

        max-width: 700px;

        margin:
            0 auto 15px;

    }


    .family-main-image {

        height: 420px;

    }


    .family-content {

        padding-left: 0;

    }


    .family-content h2 {

        font-size: 38px;

    }


    .family-description {

        font-size: 15px;

        margin-bottom: 22px;

    }


    .family-feature-item {

        min-height: 120px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .family-environment-section {

        padding: 42px 0;

    }


    .family-visual {

        padding:
            0 12px 15px 0;

        margin-bottom: 10px;

    }


    .family-main-image {

        height: 350px;

        border-radius: 20px;

    }


    .family-image-frame {

        top: 12px;

        left: -5px;

        border-radius: 20px;

    }


    .family-floating-card {

        left: 0;

        bottom: 35px;

        max-width: 250px;

        padding: 12px 15px;

    }


    .family-floating-icon {

        width: 39px;

        height: 39px;

        flex-basis: 39px;

    }


    .family-floating-content strong {

        font-size: 12px;

    }


    .family-floating-content span {

        font-size: 10px;

    }


    .family-badge {

        top: 20px;

        right: -2px;

        padding:
            9px 13px;

    }


    .family-content {

        padding-left: 0;

    }


    .family-eyebrow {

        font-size: 10px;

        letter-spacing: 1.4px;

    }


    .family-content h2 {

        font-size: 34px;

        line-height: 1.2;

    }


    .family-description {

        font-size: 14px;

        line-height: 1.65;

        margin-bottom: 20px;

    }


    .family-feature-item {

        min-height: 120px;

        padding: 16px;

    }


    .family-feature-content h3 {

        font-size: 14px;

    }


    .family-feature-content p {

        font-size: 12px;

        line-height: 1.55;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .family-environment-section {

        padding: 38px 0;

    }


    .family-main-image {

        height: 310px;

        border-radius: 18px;

    }


    .family-floating-card {

        max-width: 230px;

        padding:
            11px 13px;

    }


    .family-floating-icon {

        width: 36px;

        height: 36px;

        flex-basis: 36px;

        font-size: 14px;

    }


    .family-badge {

        padding:
            8px 11px;

    }


    .family-badge span {

        font-size: 10px;

    }


    .family-content h2 {

        font-size: 30px;

    }


    .family-description {

        font-size: 13px;

    }


    .family-feature-item {

        min-height: 115px;

        padding: 14px;

        gap: 11px;

    }


    .family-feature-icon {

        width: 40px;

        height: 40px;

        flex-basis: 40px;

        font-size: 15px;

    }


    .family-feature-content h3 {

        font-size: 13px;

    }


    .family-feature-content p {

        font-size: 11px;

        line-height: 1.55;

    }


    .family-slider-controls {

        margin-top: 14px;

    }


    .family-slider-arrows button {

        width: 35px;

        height: 35px;

    }

}

/* =========================================================
   PREMIUM PATIENT TESTIMONIALS SECTION
   HEAR'N SAY CLINIC
========================================================= */


/* =========================================================
   SECTION ROOT
========================================================= */

.premium-testimonials-section {

    position: relative;

    width: 100%;

    padding: 60px 0 50px;

    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );

}


/* =========================================================
   BACKGROUND DECORATIVE GLOW
========================================================= */

.testimonial-glow {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

    z-index: 0;

}


.testimonial-glow-one {

    width: 450px;

    height: 450px;

    top: -300px;

    right: -150px;

    border: 1px solid
        rgba(255, 196, 0, 0.08);

    background:
        rgba(255, 196, 0, 0.02);

}


.testimonial-glow-two {

    width: 350px;

    height: 350px;

    bottom: -250px;

    left: -150px;

    border: 1px solid
        rgba(38, 212, 143, 0.08);

    background:
        rgba(38, 212, 143, 0.02);

}


/* =========================================================
   SECTION HEADER
========================================================= */

.premium-testimonial-header {

    position: relative;

    z-index: 2;

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 40px;

    margin-bottom: 30px;

}


/* =========================================================
   EYEBROW
========================================================= */

.premium-testimonial-eyebrow {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 12px;

    color: #ffc400;

    font-size: 11px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 2px;

}


.premium-testimonial-eyebrow span {

    display: block;

    width: 30px;

    height: 2px;

    border-radius: 10px;

    background: #ffc400;

}


/* =========================================================
   SECTION HEADING
========================================================= */

.premium-testimonial-header h2 {

    margin: 0;

    color: #ffffff;

    font-size: 44px;

    line-height: 1.15;

    font-weight: 700;

    letter-spacing: -0.5px;

}


.premium-testimonial-header h2 strong {

    color: #ffc400;

    font-weight: 700;

}


/* =========================================================
   HEADER DESCRIPTION
========================================================= */

.premium-testimonial-header > p {

    max-width: 500px;

    margin: 0 0 2px;

    color:

        rgba(
            255,
            255,
            255,
            0.7
        );

    font-size: 15px;

    line-height: 1.7;

}


/* =========================================================
   SLIDER WRAPPER
========================================================= */

.premium-testimonial-slider {

    position: relative;

    z-index: 2;

    width: 100%;

}


/* =========================================================
   SWIPER CONTAINER
========================================================= */

.premiumTestimonialSwiper {

    position: relative;

    width: 100% !important;

    max-width: 100% !important;

    height: auto !important;

    overflow: hidden !important;

}


/* =========================================================
   SWIPER WRAPPER
========================================================= */

.premiumTestimonialSwiper
.swiper-wrapper {

    display: flex !important;

    flex-wrap: nowrap !important;

    align-items: stretch;

    width: 100%;

}


/* =========================================================
   SWIPER SLIDE
========================================================= */

.premiumTestimonialSwiper
.swiper-slide {

    position: relative;

    display: flex !important;

    flex-shrink: 0 !important;

    align-items: stretch;

    width: 100% !important;

    max-width: 100% !important;

    height: auto !important;

    margin: 0 !important;

    box-sizing: border-box;

}


/* =========================================================
   MAIN TESTIMONIAL CARD
========================================================= */

.premium-testimonial-card {

    position: relative;

    display: flex;

    align-items: center;

    width: 100% !important;

    max-width: 100% !important;

    min-height: 285px;

    height: auto;

    margin: 0;

    padding: 40px 55px;

    overflow: hidden;

    box-sizing: border-box;

    border-radius: 24px;

    background: #ffffff;

    box-shadow:

        0 20px 50px
        rgba(
            0,
            0,
            0,
            0.15
        );

}


/* =========================================================
   QUOTE ICON
========================================================= */

.premium-testimonial-quote {

    position: absolute;

    top: 18px;

    left: 28px;

    z-index: 1;

    pointer-events: none;

}


.premium-testimonial-quote i {

    display: block;

    color:

        rgba(
            12,
            29,
            80,
            0.07
        );

    font-size: 80px;

    line-height: 1;

}


/* =========================================================
   TESTIMONIAL CONTENT
========================================================= */

.premium-testimonial-content {

    position: relative;

    z-index: 2;

    width: 100%;

    padding-left: 50px;

}


/* =========================================================
   STAR RATING
========================================================= */

.premium-testimonial-stars {

    display: flex;

    align-items: center;

    gap: 5px;

    margin-bottom: 12px;

    color: #ffc400;

    font-size: 14px;

    line-height: 1;

}


/* =========================================================
   TESTIMONIAL QUOTE TEXT
========================================================= */

.premium-testimonial-card blockquote {

    max-width: 900px;

    margin: 0 0 22px;

    color: #0c1d50;

    font-size: 24px;

    line-height: 1.55;

    font-weight: 500;

    letter-spacing: -0.1px;

}


/* =========================================================
   AUTHOR
========================================================= */

.premium-testimonial-author {

    display: flex;

    align-items: center;

    gap: 12px;

}


/* =========================================================
   AUTHOR AVATAR
========================================================= */

.premium-testimonial-avatar {

    flex: 0 0 45px;

    width: 45px;

    height: 45px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #0c1d50;

    color: #ffc400;

    font-size: 15px;

}


/* =========================================================
   AUTHOR NAME
========================================================= */

.premium-testimonial-author strong {

    display: block;

    color: #0c1d50;

    font-size: 14px;

    line-height: 1.4;

    font-weight: 700;

}


/* =========================================================
   AUTHOR CATEGORY
========================================================= */

.premium-testimonial-author span {

    display: block;

    margin-top: 3px;

    color: #777777;

    font-size: 12px;

    line-height: 1.5;

}


/* =========================================================
   SLIDER CONTROLS
========================================================= */

.premium-testimonial-controls {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-top: 18px;

}


/* =========================================================
   PAGINATION
========================================================= */

.premium-testimonial-pagination {

    display: flex;

    align-items: center;

    gap: 5px;

}


.premium-testimonial-pagination
.swiper-pagination-bullet {

    width: 7px;

    height: 7px;

    margin: 0 !important;

    padding: 0;

    opacity: 1;

    border-radius: 50%;

    background:

        rgba(
            255,
            255,
            255,
            0.3
        );

    transition:
        width 0.3s ease,
        background 0.3s ease;

}


.premium-testimonial-pagination
.swiper-pagination-bullet-active {

    width: 24px;

    border-radius: 10px;

    background: #ffc400;

}


/* =========================================================
   NAVIGATION ARROWS
========================================================= */

.premium-testimonial-arrows {

    display: flex;

    align-items: center;

    gap: 8px;

}


.premium-testimonial-arrows button {

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 0;

    border: 1px solid
        rgba(
            255,
            255,
            255,
            0.2
        );

    border-radius: 50%;

    background:

        rgba(
            255,
            255,
            255,
            0.05
        );

    color: #ffffff;

    font-size: 14px;

    cursor: pointer;

    transition:
        all 0.3s ease;

}


.premium-testimonial-arrows button:hover {

    border-color: #ffc400;

    background: #ffc400;

    color: #0c1d50;

    transform: translateY(-2px);

}


.premium-testimonial-arrows button:focus {

    outline: none;

}


/* =========================================================
   TABLET - MAX 991PX
========================================================= */

@media (max-width: 991px) {

    .premium-testimonials-section {

        padding: 55px 0 45px;

    }


    .premium-testimonial-header {

        flex-direction: column;

        align-items: flex-start;

        gap: 15px;

        margin-bottom: 25px;

    }


    .premium-testimonial-header h2 {

        font-size: 40px;

    }


    .premium-testimonial-header > p {

        max-width: 650px;

        margin: 0;

        font-size: 14px;

    }


    .premium-testimonial-card {

        min-height: 275px;

        padding: 38px 40px;

    }


    .premium-testimonial-content {

        padding-left: 40px;

    }


    .premium-testimonial-card blockquote {

        font-size: 22px;

        line-height: 1.55;

    }


    .premium-testimonial-quote {

        left: 22px;

    }


    .premium-testimonial-quote i {

        font-size: 70px;

    }

}


/* =========================================================
   MOBILE - MAX 767PX
========================================================= */

@media (max-width: 767px) {

    .premium-testimonials-section {

        padding: 45px 0 40px;

    }


    .premium-testimonial-header {

        margin-bottom: 22px;

    }


    .premium-testimonial-eyebrow {

        font-size: 10px;

        letter-spacing: 1.5px;

    }


    .premium-testimonial-header h2 {

        font-size: 36px;

        line-height: 1.15;

    }


    .premium-testimonial-header > p {

        font-size: 13px;

        line-height: 1.65;

    }


    .premium-testimonial-card {

        min-height: 270px;

        padding: 32px 22px;

        border-radius: 18px;

    }


    .premium-testimonial-content {

        padding-left: 20px;

    }


    .premium-testimonial-card blockquote {

        font-size: 19px;

        line-height: 1.55;

        font-weight: 500;

    }


    .premium-testimonial-stars {

        margin-bottom: 10px;

        font-size: 13px;

    }


    .premium-testimonial-quote {

        top: 15px;

        left: 12px;

    }


    .premium-testimonial-quote i {

        font-size: 60px;

    }


    .premium-testimonial-avatar {

        flex-basis: 42px;

        width: 42px;

        height: 42px;

        font-size: 14px;

    }


    .premium-testimonial-author strong {

        font-size: 13px;

    }


    .premium-testimonial-author span {

        font-size: 11px;

    }


    .premium-testimonial-controls {

        margin-top: 15px;

    }


    .premium-testimonial-arrows button {

        width: 36px;

        height: 36px;

        font-size: 13px;

    }

}


/* =========================================================
   SMALL MOBILE - MAX 575PX
========================================================= */

@media (max-width: 575px) {

    .premium-testimonials-section {

        padding: 40px 0 35px;

    }


    .premium-testimonial-header h2 {

        font-size: 32px;

    }


    .premium-testimonial-header > p {

        font-size: 12px;

    }


    .premium-testimonial-card {

        min-height: 270px;

        padding: 30px 18px;

        border-radius: 16px;

    }


    .premium-testimonial-content {

        padding-left: 15px;

    }


    .premium-testimonial-card blockquote {

        font-size: 18px;

        line-height: 1.6;

    }


    .premium-testimonial-quote {

        left: 8px;

    }


    .premium-testimonial-quote i {

        font-size: 55px;

    }


    .premium-testimonial-author {

        gap: 10px;

    }


    .premium-testimonial-avatar {

        flex-basis: 40px;

        width: 40px;

        height: 40px;

    }


    .premium-testimonial-author strong {

        font-size: 12px;

    }


    .premium-testimonial-author span {

        font-size: 10px;

    }


    .premium-testimonial-pagination
    .swiper-pagination-bullet {

        width: 6px;

        height: 6px;

    }


    .premium-testimonial-pagination
    .swiper-pagination-bullet-active {

        width: 20px;

    }

}


/* =========================================================
   EXTRA SMALL DEVICES - MAX 400PX
========================================================= */

@media (max-width: 400px) {

    .premium-testimonial-card {

        padding: 28px 16px;

    }


    .premium-testimonial-content {

        padding-left: 10px;

    }


    .premium-testimonial-card blockquote {

        font-size: 17px;

        line-height: 1.6;

    }


    .premium-testimonial-header h2 {

        font-size: 29px;

    }

}

/* =========================================================
   PREMIUM GALLERY & RESOURCES
   FULL WIDTH + COMPACT HEIGHT
========================================================= */

.premium-gallery-section {

    position: relative;

    width: 100%;

    padding: 45px 0;

    overflow: hidden;

    background: #f5f8fc;

}


/* =========================================================
   BACKGROUND ORBS
========================================================= */

.gallery-bg-orb {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

}


.gallery-bg-orb-one {

    width: 350px;

    height: 350px;

    top: -200px;

    right: -100px;

    background: rgba(38, 212, 143, 0.06);

}


.gallery-bg-orb-two {

    width: 250px;

    height: 250px;

    bottom: -150px;

    left: -80px;

    background: rgba(255, 196, 0, 0.05);

}


/* =========================================================
   MAIN ROW
========================================================= */

.premium-gallery-row {

    position: relative;

    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(350px, 0.85fr)
        minmax(0, 1.5fr);

    align-items: center;

    gap: 55px;

}


/* =========================================================
   LEFT IMAGE
========================================================= */

.premium-gallery-image {

    position: relative;

    height: 420px;

    overflow: hidden;

    border-radius: 25px;

    box-shadow:

        0 20px 50px
        rgba(12, 29, 80, 0.15);

}


.premium-gallery-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition:

        transform 0.8s ease;

}


.premium-gallery-image:hover img {

    transform: scale(1.06);

}


/* =========================================================
   IMAGE OVERLAY
========================================================= */

.premium-gallery-image-overlay {

    position: absolute;

    inset: 0;

    display: flex;

    align-items: flex-end;

    padding: 30px;

    background:

        linear-gradient(

            to top,

            rgba(5, 15, 45, 0.90),

            rgba(5, 15, 45, 0.25) 50%,

            transparent

        );

}


.premium-gallery-image-overlay span {

    display: block;

    margin-bottom: 7px;

    color: #ffc400;

    font-size: 11px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 2px;

}


.premium-gallery-image-overlay h3 {

    margin: 0;

    color: #ffffff;

    font-size: 28px;

    line-height: 1.2;

    font-weight: 700;

}


/* =========================================================
   FLOATING BADGE
========================================================= */

.premium-gallery-badge {

    position: absolute;

    top: 20px;

    left: 20px;

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 10px 14px;

    border-radius: 12px;

    background:

        rgba(255, 255, 255, 0.93);

    box-shadow:

        0 10px 25px
        rgba(0, 0, 0, 0.12);

    animation:

        galleryBadgeFloat
        4s ease-in-out infinite;

}


@keyframes galleryBadgeFloat {

    0%,
    100% {

        transform: translateY(0);

    }

    50% {

        transform: translateY(-5px);

    }

}


.premium-gallery-badge-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 35px;

    height: 35px;

    border-radius: 9px;

    background: #0c1d50;

    color: #ffc400;

}


.premium-gallery-badge strong {

    display: block;

    color: #0c1d50;

    font-size: 12px;

}


.premium-gallery-badge span {

    display: block;

    margin-top: 2px;

    color: #7a8291;

    font-size: 9px;

}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.premium-gallery-content {

    min-width: 0;

}


/* =========================================================
   EYEBROW
========================================================= */

.premium-gallery-eyebrow {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 12px;

    color: #19368f;

    font-size: 11px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 2px;

}


.premium-gallery-eyebrow span {

    width: 30px;

    height: 2px;

    background: #ffc400;

}


/* =========================================================
   HEADING
========================================================= */

.premium-gallery-heading h2 {

    margin: 0;

    color: #0c1d50;

    font-size: clamp(

        35px,

        4vw,

        52px

    );

    line-height: 1.08;

    font-weight: 700;

    letter-spacing: -1px;

}


.premium-gallery-heading h2 strong {

    display: block;

    color: #19368f;

}


.premium-gallery-heading p {

    max-width: 650px;

    margin: 15px 0 25px;

    color: #697386;

    font-size: 14px;

    line-height: 1.7;

}


/* =========================================================
   RESOURCE SLIDER HEADER
========================================================= */

.premium-resource-navigation {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 12px;

}


.premium-resource-count {

    display: flex;

    align-items: center;

    gap: 8px;

}


.premium-resource-count span {

    color: #9aa1af;

    font-size: 11px;

}


.premium-resource-count strong {

    color: #0c1d50;

    font-size: 13px;

}


/* =========================================================
   NAVIGATION
========================================================= */

.premium-resource-arrows {

    display: flex;

    gap: 7px;

}


.premium-resource-arrows button {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 34px;

    height: 34px;

    padding: 0;

    border: 1px solid
        rgba(12, 29, 80, 0.10);

    border-radius: 50%;

    background: #ffffff;

    color: #0c1d50;

    cursor: pointer;

    transition: all 0.3s ease;

}


.premium-resource-arrows button:hover {

    background: #0c1d50;

    color: #ffc400;

    border-color: #0c1d50;

    transform: translateY(-2px);

}


/* =========================================================
   SWIPER
========================================================= */

.premiumResourceSwiper {

    width: 100%;

    overflow: hidden;

}


.premiumResourceSwiper
.swiper-wrapper {

    align-items: stretch;

}


/* =========================================================
   RESOURCE CARD
========================================================= */

.premium-resource-card {

    position: relative;

    display: flex;

    align-items: center;

    gap: 12px;

    min-height: 115px;

    height: 100%;

    padding: 16px;

    border-radius: 16px;

    background: #ffffff;

    border: 1px solid
        rgba(12, 29, 80, 0.07);

    text-decoration: none;

    box-shadow:

        0 8px 25px
        rgba(12, 29, 80, 0.04);

    transition:

        transform 0.35s ease,

        box-shadow 0.35s ease,

        border-color 0.35s ease;

}


.premium-resource-card:hover {

    transform: translateY(-5px);

    border-color:

        rgba(255, 196, 0, 0.40);

    box-shadow:

        0 18px 35px
        rgba(12, 29, 80, 0.10);

}


/* =========================================================
   RESOURCE ICON
========================================================= */

.premium-resource-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    width: 45px;

    height: 45px;

    border-radius: 12px;

    background:

        rgba(12, 29, 80, 0.06);

    color: #19368f;

    font-size: 17px;

    transition: all 0.35s ease;

}


.premium-resource-card:hover
.premium-resource-icon {

    background: #ffc400;

    color: #0c1d50;

    transform: rotate(-5deg);

}


/* =========================================================
   CARD CONTENT
========================================================= */

.premium-resource-card-content {

    min-width: 0;

    padding-right: 25px;

}


.premium-resource-card-content h3 {

    margin: 0 0 4px;

    color: #0c1d50;

    font-size: 14px;

    line-height: 1.3;

    font-weight: 700;

}


.premium-resource-card-content p {

    margin: 0;

    color: #7a8291;

    font-size: 10px;

    line-height: 1.5;

}


/* =========================================================
   CARD ARROW
========================================================= */

.premium-resource-arrow {

    position: absolute;

    top: 12px;

    right: 12px;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 25px;

    height: 25px;

    border-radius: 50%;

    background: #f2f4f8;

    color: #0c1d50;

    font-size: 10px;

    transition: all 0.35s ease;

}


.premium-resource-card:hover
.premium-resource-arrow {

    background: #0c1d50;

    color: #ffc400;

    transform: rotate(45deg);

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .premium-gallery-section {

        padding: 40px 0;

    }


    .premium-gallery-row {

        grid-template-columns: 1fr;

        gap: 35px;

    }


    .premium-gallery-image {

        height: 350px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575px) {

    .premium-gallery-section {

        padding: 35px 0;

    }


    .premium-gallery-image {

        height: 300px;

        border-radius: 20px;

    }


    .premium-gallery-image-overlay {

        padding: 22px;

    }


    .premium-gallery-image-overlay h3 {

        font-size: 24px;

    }


    .premium-gallery-badge {

        top: 15px;

        left: 15px;

    }


    .premium-gallery-heading h2 {

        font-size: 34px;

    }


    .premium-gallery-heading p {

        font-size: 13px;

        margin-bottom: 20px;

    }


    .premium-resource-card {

        min-height: 100px;

    }

}
/* =========================================================
   SWIPER FIX
========================================================= */

.premiumResourceSwiper {

    width: 100%;

    max-width: 100%;

    overflow: hidden;

    position: relative;

}


/* IMPORTANT:
   Swiper wrapper must remain horizontal
*/

.premiumResourceSwiper .swiper-wrapper {

    display: flex;

    flex-wrap: nowrap;

    align-items: stretch;

}


/* IMPORTANT:
   Do not allow slides to take full width
*/

.premiumResourceSwiper .swiper-slide {

    flex-shrink: 0;

    height: auto;

    display: flex;

}


/* =========================================================
   RESOURCE CARD
========================================================= */

.premium-resource-card {

    position: relative;

    width: 100%;

    min-height: 130px;

    display: flex;

    align-items: center;

    gap: 15px;

    padding: 20px;

    background: #ffffff;

    border-radius: 16px;

    border: 1px solid rgba(12, 29, 80, 0.08);

    text-decoration: none;

    box-shadow: 0 10px 30px rgba(12, 29, 80, 0.06);

    transition: all 0.35s ease;

}


.premium-resource-card:hover {

    transform: translateY(-5px);

    box-shadow: 0 18px 40px rgba(12, 29, 80, 0.12);

}


/* =========================================================
   ICON
========================================================= */

.premium-resource-icon {

    width: 48px;

    height: 48px;

    min-width: 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 12px;

    background: rgba(12, 29, 80, 0.06);

    color: #19368f;

    font-size: 18px;

    transition: all 0.3s ease;

}


.premium-resource-card:hover
.premium-resource-icon {

    background: #ffc400;

    color: #0c1d50;

}


/* =========================================================
   CONTENT
========================================================= */

.premium-resource-card-content {

    min-width: 0;

    padding-right: 25px;

}


.premium-resource-card-content h3 {

    margin: 0 0 6px;

    color: #0c1d50;

    font-size: 16px;

    line-height: 1.3;

    font-weight: 700;

}


.premium-resource-card-content p {

    margin: 0;

    color: #6f7888;

    font-size: 12px;

    line-height: 1.5;

}


/* =========================================================
   ARROW
========================================================= */

.premium-resource-arrow {

    position: absolute;

    top: 15px;

    right: 15px;

    width: 28px;

    height: 28px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #f3f5f8;

    color: #0c1d50;

    font-size: 12px;

    transition: all 0.3s ease;

}


.premium-resource-card:hover
.premium-resource-arrow {

    background: #0c1d50;

    color: #ffc400;

    transform: rotate(45deg);

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .premiumResourceSwiper {

        width: 100%;

    }


    .premium-resource-card {

        min-height: 115px;

        padding: 16px;

    }

}
/* =========================================================
   FULL WIDTH COMPACT FINAL CTA
========================================================= */

.final-cta-full {

    position: relative;

    width: 100%;

    padding: 55px 0;

    overflow: hidden;

    background:

        radial-gradient(
            circle at 85% 50%,
            rgba(38, 212, 143, 0.08),
            transparent 30%
        ),

        linear-gradient(
            135deg,
            #0c1d50,
            #102968
        );

}


/* =========================================================
   BACKGROUND GLOW
========================================================= */

.final-cta-bg-glow {

    position: absolute;

    width: 400px;

    height: 400px;

    right: -150px;

    top: -150px;

    border-radius: 50%;

    background: rgba(255, 196, 0, 0.05);

    filter: blur(20px);

    pointer-events: none;

    animation: ctaGlow 8s ease-in-out infinite;

}


@keyframes ctaGlow {

    0%,
    100% {

        transform: scale(1);

    }

    50% {

        transform: scale(1.15);

    }

}


/* =========================================================
   MAIN ROW
========================================================= */

.final-cta-row {

    position: relative;

    z-index: 2;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 70px;

}


/* =========================================================
   LEFT TEXT
========================================================= */

.final-cta-text {

    flex: 1;

    max-width: 700px;

}


.final-cta-eyebrow {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 15px;

    color: #ffc400;

    font-size: 12px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 2px;

}


.final-cta-eyebrow span {

    width: 35px;

    height: 2px;

    background: #ffc400;

    border-radius: 10px;

}


.final-cta-text h2 {

    margin: 0;

    color: #ffffff;

    font-size: clamp(
        34px,
        4vw,
        52px
    );

    line-height: 1.12;

    font-weight: 600;

    letter-spacing: -1px;

}


.final-cta-text h2 strong {

    display: block;

    color: #ffc400;

    font-weight: 800;

}


.final-cta-text p {

    max-width: 650px;

    margin: 18px 0 0;

    color: rgba(255, 255, 255, 0.65);

    font-size: 15px;

    line-height: 1.7;

}


/* =========================================================
   RIGHT ACTION AREA
========================================================= */

.final-cta-action {

    flex: 0 0 390px;

    padding-left: 40px;

    border-left: 1px solid rgba(255, 255, 255, 0.12);

}


/* =========================================================
   MESSAGE ITEMS
========================================================= */

.final-cta-message {

    display: flex;

    flex-direction: column;

    gap: 8px;

    margin-bottom: 22px;

}


.final-cta-message div {

    display: flex;

    align-items: center;

    gap: 10px;

    color: rgba(255, 255, 255, 0.75);

    font-size: 13px;

}


.final-cta-message i {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 28px;

    height: 28px;

    border-radius: 50%;

    background: rgba(255, 196, 0, 0.10);

    color: #ffc400;

    font-size: 13px;

}


/* =========================================================
   CTA BUTTON
========================================================= */

.final-cta-button {

    display: inline-flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    width: 100%;

    padding: 12px 14px 12px 22px;

    border-radius: 50px;

    background: #ffc400;

    color: #0c1d50;

    font-size: 14px;

    font-weight: 800;

    text-decoration: none;

    transition: all 0.35s ease;

}


.final-cta-button i {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 38px;

    height: 38px;

    flex-shrink: 0;

    border-radius: 50%;

    background: #0c1d50;

    color: #ffffff;

    transition: all 0.35s ease;

}


.final-cta-button:hover {

    color: #0c1d50;

    transform: translateY(-3px);

    box-shadow:

        0 12px 30px rgba(255, 196, 0, 0.25);

}


.final-cta-button:hover i {

    transform: rotate(45deg);

}


/* =========================================================
   SUPPORT TEXT
========================================================= */

.final-cta-support {

    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 6px;

    margin-top: 14px;

    color: rgba(255, 255, 255, 0.42);

    font-size: 10px;

}


.final-cta-support i {

    color: #26d48f;

    font-size: 14px;

}


.final-cta-support b {

    color: rgba(255, 255, 255, 0.2);

    font-weight: 400;

}


/* =========================================================
   HOVER ANIMATION
========================================================= */

.final-cta-message div {

    transition: all 0.3s ease;

}


.final-cta-message div:hover {

    color: #ffffff;

    transform: translateX(5px);

}


.final-cta-message div:hover i {

    background: #ffc400;

    color: #0c1d50;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .final-cta-full {

        padding: 45px 0;

    }


    .final-cta-row {

        gap: 40px;

    }


    .final-cta-action {

        flex: 0 0 330px;

        padding-left: 30px;

    }


    .final-cta-text h2 {

        font-size: 38px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .final-cta-full {

        padding: 45px 0;

    }


    .final-cta-row {

        flex-direction: column;

        align-items: flex-start;

        gap: 30px;

    }


    .final-cta-text {

        max-width: 100%;

    }


    .final-cta-text h2 {

        font-size: 34px;

    }


    .final-cta-action {

        width: 100%;

        flex: auto;

        padding-left: 0;

        padding-top: 25px;

        border-left: 0;

        border-top: 1px solid rgba(255, 255, 255, 0.12);

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .final-cta-full {

        padding: 38px 0;

    }


    .final-cta-text h2 {

        font-size: 30px;

        line-height: 1.15;

    }


    .final-cta-text p {

        font-size: 14px;

    }


    .final-cta-eyebrow {

        font-size: 10px;

    }


    .final-cta-button {

        font-size: 13px;

    }

}

/* =========================================================
   PREMIUM FOOTER CSS
   HEAR'N SAY CLINIC
========================================================= */


/* =========================================================
   FOOTER ROOT
========================================================= */

.site-footer {

    position: relative;

    background: #0c1d50;

    color: rgba(255, 255, 255, 0.80);

    overflow: hidden;

}


/* =========================================================
   DECORATIVE BACKGROUND
========================================================= */

.site-footer::before {

    content: "";

    position: absolute;

    width: 550px;

    height: 550px;

    top: -300px;

    right: -150px;

    background: rgba(255, 196, 0, 0.05);

    border-radius: 50%;

    pointer-events: none;

    animation: footerFloat 10s ease-in-out infinite;

}


.site-footer::after {

    content: "";

    position: absolute;

    width: 450px;

    height: 450px;

    bottom: -250px;

    left: -150px;

    background: rgba(255, 255, 255, 0.025);

    border-radius: 50%;

    pointer-events: none;

    animation: footerFloatReverse 12s ease-in-out infinite;

}


/* =========================================================
   BACKGROUND ANIMATION
========================================================= */

@keyframes footerFloat {

    0%,
    100% {

        transform: translate(0, 0) scale(1);

    }

    50% {

        transform: translate(-30px, 30px) scale(1.08);

    }

}


@keyframes footerFloatReverse {

    0%,
    100% {

        transform: translate(0, 0) scale(1);

    }

    50% {

        transform: translate(30px, -20px) scale(1.06);

    }

}


/* =========================================================
   FOOTER MAIN
========================================================= */

.footer-main {

    position: relative;

    z-index: 1;

    padding: 95px 0 80px;

}


/* =========================================================
   FOOTER BRAND
========================================================= */

.footer-brand {

    max-width: 430px;

}


.footer-logo {

    display: inline-block;

    margin-bottom: 28px;

    background: #ffffff;

    padding: 14px 20px;

    border-radius: 14px;

    transition: all 0.4s ease;

}


.footer-logo:hover {

    transform: translateY(-5px);

    box-shadow:

        0 15px 35px rgba(0, 0, 0, 0.20);

}


.footer-logo img {

    width: 240px;

    height: auto;

    display: block;

}


/* =========================================================
   FOOTER DESCRIPTION
========================================================= */

.footer-description {

    margin: 0;

    font-size: 16px;

    line-height: 1.9;

    color: rgba(255, 255, 255, 0.68);

}


/* =========================================================
   SOCIAL ICONS
========================================================= */

.footer-social {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-top: 30px;

}


.footer-social a {

    width: 48px;

    height: 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.07);

    border: 1px solid rgba(255, 255, 255, 0.12);

    color: #ffffff;

    font-size: 18px;

    transition: all 0.4s ease;

}


.footer-social a:hover {

    background: #ffc400;

    border-color: #ffc400;

    color: #0c1d50;

    transform: translateY(-7px) rotate(5deg);

    box-shadow:

        0 12px 25px rgba(255, 196, 0, 0.20);

}


/* =========================================================
   FOOTER WIDGET
========================================================= */

.footer-widget h5 {

    position: relative;

    display: inline-block;

    margin: 5px 0 28px;

    color: #ffffff;

    font-size: 21px;

    font-weight: 700;

    letter-spacing: 0.2px;

}


.footer-widget h5::after {

    content: "";

    display: block;

    width: 45px;

    height: 3px;

    margin-top: 12px;

    background: #ffc400;

    border-radius: 10px;

    transition: width 0.4s ease;

}


.footer-widget:hover h5::after {

    width: 75px;

}


/* =========================================================
   FOOTER LINKS
========================================================= */

.footer-links {

    list-style: none;

    padding: 0;

    margin: 0;

}


.footer-links li {

    margin-bottom: 16px;

}


.footer-links a {

    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 10px;

    color: rgba(255, 255, 255, 0.68);

    font-size: 16px;

    text-decoration: none;

    transition: all 0.35s ease;

}


.footer-links a:hover {

    color: #ffc400;

    transform: translateX(7px);

}


.footer-links a i {

    color: #ffc400;

    font-size: 13px;

    transition: transform 0.35s ease;

}


.footer-links a:hover i {

    transform: translateX(4px);

}


/* =========================================================
   FOOTER CONTACT
========================================================= */

.footer-contact-item {

    display: flex;

    align-items: flex-start;

    gap: 16px;

    margin-bottom: 25px;

}


.contact-icon {

    flex: 0 0 48px;

    width: 48px;

    height: 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 12px;

    background: rgba(255, 196, 0, 0.10);

    color: #ffc400;

    font-size: 19px;

    transition: all 0.4s ease;

}


.footer-contact-item:hover .contact-icon {

    background: #ffc400;

    color: #0c1d50;

    transform: translateY(-4px);

    box-shadow:

        0 10px 20px rgba(255, 196, 0, 0.15);

}


.footer-contact-item span {

    display: block;

    margin-bottom: 5px;

    color: rgba(255, 255, 255, 0.45);

    font-size: 12px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1.2px;

}


.footer-contact-item p {

    margin: 0;

    color: rgba(255, 255, 255, 0.72);

    font-size: 15px;

    line-height: 1.7;

}


.footer-contact-item a {

    color: rgba(255, 255, 255, 0.78);

    font-size: 16px;

    text-decoration: none;

    transition: all 0.3s ease;

}


.footer-contact-item a:hover {

    color: #ffc400;

}


/* =========================================================
   FOOTER CTA
========================================================= */

.footer-cta {

    position: relative;

    z-index: 2;

    padding: 0 0 65px;

}


.footer-cta-inner {

    position: relative;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 30px;

    overflow: hidden;

    padding: 40px 50px;

    border-radius: 22px;

    background:

        linear-gradient(

            135deg,

            #19368f,

            #122a72

        );

    border: 1px solid rgba(255, 255, 255, 0.12);

    box-shadow:

        0 25px 60px rgba(0, 0, 0, 0.20);

}


/* CTA Shine Animation */

.footer-cta-inner::after {

    content: "";

    position: absolute;

    top: 0;

    left: -100%;

    width: 60%;

    height: 100%;

    background:

        linear-gradient(

            90deg,

            transparent,

            rgba(255, 255, 255, 0.07),

            transparent

        );

    transform: skewX(-20deg);

    animation: ctaShine 6s ease-in-out infinite;

    pointer-events: none;

}


@keyframes ctaShine {

    0% {

        left: -100%;

    }

    35% {

        left: 130%;

    }

    100% {

        left: 130%;

    }

}


/* =========================================================
   CTA CONTENT
========================================================= */

.footer-cta-content {

    position: relative;

    z-index: 2;

}


.footer-cta-label {

    display: flex;

    align-items: center;

    gap: 9px;

    margin-bottom: 10px;

    color: #ffc400;

    font-size: 13px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1.5px;

}


.footer-cta-content h3 {

    margin: 0;

    color: #ffffff;

    font-size: 30px;

    line-height: 1.35;

    font-weight: 700;

}


/* =========================================================
   CTA BUTTON
========================================================= */

.footer-cta-btn {

    position: relative;

    z-index: 2;

    display: inline-flex;

    align-items: center;

    gap: 13px;

    flex-shrink: 0;

    padding: 15px 23px 15px 27px;

    border-radius: 50px;

    background: #ffc400;

    color: #0c1d50;

    font-size: 15px;

    font-weight: 700;

    text-decoration: none;

    transition: all 0.4s ease;

}


.footer-cta-btn i {

    width: 32px;

    height: 32px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #0c1d50;

    color: #ffffff;

    font-size: 13px;

    transition: all 0.4s ease;

}


.footer-cta-btn:hover {

    background: #ffffff;

    color: #19368f;

    transform: translateY(-5px);

    box-shadow:

        0 15px 30px rgba(0, 0, 0, 0.22);

}


.footer-cta-btn:hover i {

    background: #19368f;

    transform: rotate(45deg);

}


/* =========================================================
   FOOTER BOTTOM
========================================================= */

.footer-bottom {

    position: relative;

    z-index: 2;

    border-top: 1px solid rgba(255, 255, 255, 0.09);

}


.footer-bottom-inner {

    min-height: 80px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 25px;

}


.footer-bottom p {

    margin: 0;

    color: rgba(255, 255, 255, 0.50);

    font-size: 14px;

}


.footer-bottom-links {

    display: flex;

    align-items: center;

    gap: 30px;

}


.footer-bottom-links a {

    color: rgba(255, 255, 255, 0.55);

    font-size: 14px;

    text-decoration: none;

    transition: all 0.3s ease;

}


.footer-bottom-links a:hover {

    color: #ffc400;

}


/* =========================================================
   FOOTER FADE ANIMATION
========================================================= */

.footer-brand,
.footer-widget,
.footer-contact-item,
.footer-cta-inner {

    animation: footerFadeUp 0.8s ease both;

}


@keyframes footerFadeUp {

    from {

        opacity: 0;

        transform: translateY(25px);

    }

    to {

        opacity: 1;

        transform: translateY(0);

    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .footer-main {

        padding: 75px 0 60px;

    }


    .footer-description {

        font-size: 15px;

    }


    .footer-widget h5 {

        font-size: 20px;

    }


    .footer-links a {

        font-size: 15px;

    }


    .footer-contact-item p,

    .footer-contact-item a {

        font-size: 15px;

    }


    .footer-cta-inner {

        padding: 35px;

    }


    .footer-cta-content h3 {

        font-size: 25px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .footer-brand {

        max-width: 100%;

    }


    .footer-logo img {

        width: 220px;

    }


    .footer-description {

        font-size: 15px;

    }


    .footer-cta-inner {

        flex-direction: column;

        align-items: flex-start;

        padding: 32px 28px;

    }


    .footer-cta-content h3 {

        font-size: 23px;

    }


    .footer-cta-btn {

        width: 100%;

        justify-content: center;

    }


    .footer-bottom-inner {

        flex-direction: column;

        justify-content: center;

        text-align: center;

        padding: 25px 0;

    }


    .footer-bottom-links {

        flex-wrap: wrap;

        justify-content: center;

        gap: 15px 25px;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .footer-main {

        padding: 60px 0 45px;

    }


    .footer-logo img {

        width: 195px;

    }


    .footer-logo {

        padding: 12px 16px;

    }


    .footer-description {

        font-size: 14px;

        line-height: 1.8;

    }


    .footer-widget h5 {

        font-size: 19px;

    }


    .footer-links a {

        font-size: 15px;

    }


    .footer-contact-item p,

    .footer-contact-item a {

        font-size: 14px;

    }


    .footer-cta {

        padding-bottom: 45px;

    }


    .footer-cta-inner {

        padding: 28px 22px;

        border-radius: 18px;

    }


    .footer-cta-content h3 {

        font-size: 21px;

        line-height: 1.5;

    }


    .footer-cta-label {

        font-size: 10px;

        letter-spacing: 1.2px;

    }


    .footer-bottom p,

    .footer-bottom-links a {

        font-size: 13px;

    }

}

/* =========================================
   PREMIUM ABOUT HEAR 'N' SAY SECTION
========================================= */

.hns-about-section {
    position: relative;
    width: 100%;
    padding: 75px 0;
    background:
        radial-gradient(
            circle at 5% 15%,
            rgba(25, 54, 143, 0.08),
            transparent 26%
        ),
        #ffffff;
    overflow: hidden;
}

.hns-about-section *,
.hns-about-section *::before,
.hns-about-section *::after {
    box-sizing: border-box;
}

.hns-about-section .container {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

.hns-about-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    align-items: center;
    gap: 70px;
}

/* Image Side */

.hns-about-visual {
    position: relative;
    min-width: 0;
    padding: 22px 25px 42px 12px;
}

.hns-about-image-box {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 570px;
    border-radius: 30px;
    overflow: hidden;
    background: linear-gradient(135deg, #081638, #19368f);
    box-shadow: 0 25px 65px rgba(8, 22, 56, 0.22);
}

.hns-about-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.hns-about-shape {
    position: absolute;
    pointer-events: none;
}

.hns-shape-one {
    top: 0;
    left: 0;
    width: 80%;
    height: 72%;
    border-radius: 35px;
    background: linear-gradient(135deg, #081638, #19368f);
}

.hns-shape-two {
    right: 0;
    bottom: 5px;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: rgba(255, 196, 0, 0.2);
}

.hns-about-card {
    position: absolute;
    z-index: 4;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 15px;
    width: min(360px, 82%);
    padding: 20px;
    border: 1px solid rgba(8, 22, 56, 0.08);
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 18px 45px rgba(8, 22, 56, 0.16);
}

.hns-about-card-icon {
    display: flex;
    flex: 0 0 54px;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: linear-gradient(135deg, #081638, #19368f);
}

.hns-about-card-icon svg {
    width: 25px;
    height: 25px;
    fill: #ffc400;
}

.hns-about-card strong {
    display: block;
    margin-bottom: 4px;
    color: #081638;
    font-size: 17px;
    line-height: 1.3;
}

.hns-about-card span {
    display: block;
    color: #667085;
    font-size: 14px;
    line-height: 1.5;
}

/* Content Side */

.hns-about-content {
    min-width: 0;
}

.hns-about-label {
    display: inline-flex;
    align-items: center;
    padding: 9px 18px;
    margin-bottom: 18px;
    border: 1px solid rgba(255, 196, 0, 0.35);
    border-radius: 50px;
    background: rgba(255, 196, 0, 0.11);
    color: #19368f;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-about-title {
    margin: 0 0 22px;
    color: #081638;
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -1.5px;
}

.hns-about-title span {
    display: block;
    color: #19368f;
}

.hns-about-text {
    margin: 0 0 17px;
    color: #5f6675;
    font-size: 16px;
    line-height: 1.85;
}

.hns-about-text strong {
    color: #081638;
    font-weight: 700;
}

/* Features */

.hns-about-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin: 28px 0 32px;
}

.hns-about-feature {
    display: flex;
    align-items: center;
    gap: 13px;
    min-width: 0;
    padding: 14px;
    border: 1px solid rgba(8, 22, 56, 0.08);
    border-radius: 14px;
    background: #ffffff;
    color: #081638;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.45;
    box-shadow: 0 8px 25px rgba(8, 22, 56, 0.06);
    transition: 0.3s ease;
}

.hns-about-feature:hover {
    border-color: rgba(255, 196, 0, 0.55);
    transform: translateY(-3px);
    box-shadow: 0 14px 35px rgba(8, 22, 56, 0.1);
}

.hns-feature-icon {
    display: flex;
    flex: 0 0 38px;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: linear-gradient(135deg, #081638, #19368f);
}

.hns-feature-icon svg {
    display: block;
    width: 21px;
    height: 21px;
    fill: #ffc400;
}

/* Button */

.hns-about-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 56px;
    padding: 15px 28px;
    border-radius: 50px;
    background: linear-gradient(135deg, #081638, #19368f);
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 14px 30px rgba(25, 54, 143, 0.24);
    transition: 0.3s ease;
}

.hns-about-button svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
    transition: transform 0.3s ease;
}

.hns-about-button:hover {
    background: linear-gradient(135deg, #ffc400, #ffae00);
    color: #081638;
    transform: translateY(-3px);
}

.hns-about-button:hover svg {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 991px) {

    .hns-about-section {
        padding: 65px 0;
    }

    .hns-about-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .hns-about-visual {
        width: min(650px, 100%);
        margin: 0 auto;
    }

    .hns-about-image-box {
        height: 500px;
    }
}

/* Mobile */

@media (max-width: 767px) {

    .hns-about-section {
        padding: 50px 0;
    }

    .hns-about-section .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-about-grid {
        gap: 38px;
    }

    .hns-about-visual {
        padding: 12px 12px 0;
    }

    .hns-about-image-box {
        height: 390px;
        border-radius: 22px;
    }

    .hns-shape-one {
        width: 82%;
        height: 65%;
        border-radius: 26px;
    }

    .hns-about-card {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 20px);
        margin: -40px auto 0;
    }

    .hns-about-title {
        letter-spacing: -0.8px;
    }

    .hns-about-features {
        grid-template-columns: 1fr;
    }

    .hns-about-button {
        width: 100%;
    }
}

@media (max-width: 480px) {

    .hns-about-image-box {
        height: 320px;
    }

    .hns-about-card {
        align-items: flex-start;
        padding: 17px;
    }

    .hns-about-card-icon {
        flex-basis: 46px;
        width: 46px;
        height: 46px;
    }

    .hns-about-text {
        font-size: 15px;
        line-height: 1.75;
    }
}

/* =========================================
   PREMIUM OUR STORY SECTION
========================================= */

.hns-our-story-section {
    position: relative;
    width: 100%;
    padding: 90px 0;
    background:
        radial-gradient(
            circle at 8% 16%,
            rgba(255, 196, 0, 0.1),
            transparent 24%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(70, 110, 255, 0.18),
            transparent 26%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 52%,
            #19368f 100%
        );
    overflow: hidden;
}

.hns-our-story-section *,
.hns-our-story-section *::before,
.hns-our-story-section *::after {
    box-sizing: border-box;
}

.hns-our-story-section .container {
    position: relative;
    z-index: 3;
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

/* Decorative Elements */

.hns-story-circle,
.hns-story-dots {
    position: absolute;
    pointer-events: none;
}

.hns-story-circle-one {
    top: -180px;
    right: -130px;
    width: 430px;
    height: 430px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
}

.hns-story-circle-one::before {
    content: "";
    position: absolute;
    inset: 45px;
    border: 1px solid rgba(255, 196, 0, 0.14);
    border-radius: inherit;
}

.hns-story-circle-two {
    bottom: -220px;
    left: -180px;
    width: 460px;
    height: 460px;
    border-radius: 50%;
    background: rgba(255, 196, 0, 0.05);
}

.hns-story-dots {
    width: 120px;
    height: 120px;
    opacity: 0.3;
    background-image: radial-gradient(
        circle,
        rgba(255, 255, 255, 0.72) 2px,
        transparent 2.5px
    );
    background-size: 16px 16px;
}

.hns-story-dots-one {
    top: 35px;
    left: 22px;
}

.hns-story-dots-two {
    right: 20px;
    bottom: 30px;
}

/* Main Grid */

.hns-our-story-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    align-items: center;
    gap: 70px;
}

/* Image Area */

.hns-our-story-visual {
    position: relative;
    min-width: 0;
    padding: 20px 22px 38px 0;
}

.hns-our-story-image-box {
    position: relative;
    height: 650px;
    border: 7px solid rgba(255, 255, 255, 0.1);
    border-radius: 32px;
    overflow: hidden;
    background: #0c1d50;
    box-shadow: 0 35px 80px rgba(0, 0, 0, 0.34);
}

.hns-our-story-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.hns-our-story-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            transparent 50%,
            rgba(8, 22, 56, 0.74) 100%
        );
}

.hns-our-story-floating-card {
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: 22px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 18px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 18px;
    background: rgba(8, 22, 56, 0.84);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.25);
}

.hns-our-story-floating-icon {
    display: flex;
    flex: 0 0 54px;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 16px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
}

.hns-our-story-floating-icon svg {
    width: 27px;
    height: 27px;
    fill: #081638;
}

.hns-our-story-floating-card span {
    display: block;
    margin-bottom: 4px;
    color: #ffc400;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-our-story-floating-card strong {
    display: block;
    color: #ffffff;
    font-size: 16px;
    line-height: 1.45;
}

.hns-our-story-highlight {
    position: relative;
    z-index: 3;
    width: calc(100% - 45px);
    margin: -2px 0 0 auto;
    padding: 20px 24px;
    border-radius: 0 0 20px 20px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.2);
}

.hns-our-story-highlight strong {
    display: block;
    margin-bottom: 4px;
    color: #081638;
    font-size: 19px;
    font-weight: 800;
}

.hns-our-story-highlight span {
    display: block;
    color: rgba(8, 22, 56, 0.82);
    font-size: 14px;
    line-height: 1.5;
}

/* Content Area */

.hns-our-story-content {
    min-width: 0;
}

.hns-our-story-label {
    display: inline-flex;
    align-items: center;
    padding: 9px 19px;
    margin-bottom: 18px;
    border: 1px solid rgba(255, 196, 0, 0.34);
    border-radius: 50px;
    background: rgba(255, 196, 0, 0.1);
    color: #ffc400;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.hns-our-story-label::before {
    content: "";
    width: 8px;
    height: 8px;
    margin-right: 9px;
    border-radius: 50%;
    background: #ffc400;
    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.1);
}

.hns-our-story-title {
    margin: 0 0 18px;
    color: #ffffff;
    font-size: clamp(36px, 4vw, 54px);
    font-weight: 800;
    line-height: 1.14;
    letter-spacing: -1.3px;
}

.hns-our-story-title span {
    display: block;
    color: #ffc400;
}

.hns-our-story-heading-line {
    width: 75px;
    height: 4px;
    margin-bottom: 24px;
    border-radius: 20px;
    background: linear-gradient(90deg, #ffc400, transparent);
}

.hns-our-story-lead {
    margin: 0 0 18px;
    color: #ffffff;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.8;
}

.hns-our-story-text {
    margin: 0 0 16px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 16px;
    line-height: 1.82;
}

/* Features */

.hns-our-story-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin: 30px 0 34px;
}

.hns-our-story-feature {
    display: flex;
    align-items: center;
    gap: 13px;
    min-width: 0;
    padding: 15px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 16px;
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.11),
            rgba(255, 255, 255, 0.055)
        );
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease;
}

.hns-our-story-feature:hover {
    border-color: rgba(255, 196, 0, 0.35);
    transform: translateY(-4px);
}

.hns-our-story-feature-icon {
    display: flex;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 13px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
}

.hns-our-story-feature-icon svg {
    width: 23px;
    height: 23px;
    fill: #081638;
}

.hns-our-story-feature strong {
    display: block;
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
}

.hns-our-story-feature span {
    display: block;
    color: rgba(255, 255, 255, 0.68);
    font-size: 13px;
    line-height: 1.45;
}

/* Button */

.hns-our-story-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 56px;
    padding: 15px 29px;
    border-radius: 50px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
    color: #081638;
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 16px 35px rgba(255, 196, 0, 0.22);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.hns-our-story-button svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
    transition: transform 0.3s ease;
}

.hns-our-story-button:hover {
    color: #081638;
    transform: translateY(-4px);
    box-shadow: 0 20px 42px rgba(255, 196, 0, 0.3);
}

.hns-our-story-button:hover svg {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 991px) {

    .hns-our-story-section {
        padding: 70px 0;
    }

    .hns-our-story-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .hns-our-story-visual {
        width: min(680px, 100%);
        margin: 0 auto;
        padding-right: 0;
    }

    .hns-our-story-image-box {
        height: 560px;
    }
}

/* Mobile */

@media (max-width: 767px) {

    .hns-our-story-section {
        padding: 55px 0;
    }

    .hns-our-story-section .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-our-story-grid {
        gap: 38px;
    }

    .hns-our-story-visual {
        padding: 8px 8px 20px;
    }

    .hns-our-story-image-box {
        height: 430px;
        border-width: 5px;
        border-radius: 25px;
    }

    .hns-our-story-floating-card {
        left: 14px;
        right: 14px;
        bottom: 14px;
        padding: 15px;
    }

    .hns-our-story-floating-icon {
        flex-basis: 47px;
        width: 47px;
        height: 47px;
    }

    .hns-our-story-highlight {
        width: calc(100% - 30px);
        padding: 17px 20px;
    }

    .hns-our-story-title {
        letter-spacing: -0.7px;
    }

    .hns-our-story-lead {
        font-size: 16px;
    }

    .hns-our-story-text {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-our-story-features {
        grid-template-columns: 1fr;
    }

    .hns-our-story-button {
        width: 100%;
    }
}

/* Small Mobile */

@media (max-width: 480px) {

    .hns-our-story-image-box {
        height: 355px;
    }

    .hns-our-story-floating-card {
        align-items: flex-start;
    }

    .hns-our-story-floating-card strong {
        font-size: 14px;
    }

    .hns-our-story-highlight strong {
        font-size: 17px;
    }
}

/*=========================================
        TEAM STORY
=========================================*/

.team-story-section{

    padding:100px 0;

    background:
    linear-gradient(135deg,#081638,#0c1d50 45%,#19368f);

    position:relative;

    overflow:hidden;

}

.team-story-section::before{

    content:"";

    position:absolute;

    width:420px;

    height:420px;

    border-radius:50%;

    background:rgba(255,196,0,.05);

    top:-180px;

    right:-140px;

}

.team-story-section::after{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    border-radius:50%;

    background:rgba(255,255,255,.03);

    left:-180px;

    bottom:-180px;

}

.team-story-image img{

    width:100%;

    border-radius:28px;

    border:7px solid rgba(255,255,255,.08);

    box-shadow:0 30px 70px rgba(0,0,0,.35);

}

.team-story-card{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.08);

    border-radius:30px;

    padding:45px;

    box-shadow:0 25px 60px rgba(0,0,0,.18);

}

.team-badge{

    display:inline-block;

    background:rgba(255,196,0,.12);

    color:#ffc400;

    border:1px solid rgba(255,196,0,.25);

    padding:10px 24px;

    border-radius:50px;

    font-size:13px;

    font-weight:700;

    letter-spacing:1px;

    margin-bottom:20px;

}

.team-story-card h2{

    color:#fff;

    font-size:46px;

    line-height:1.2;

    font-weight:800;

    margin-bottom:15px;

}

.team-story-card h2 span{

    display:block;

    color:#ffc400;

}

.team-line{

    width:70px;

    height:4px;

    border-radius:30px;

    background:#ffc400;

    margin-bottom:28px;

}

.team-story-card p{

    color:rgba(255,255,255,.82);

    font-size:17px;

    line-height:1.9;

    margin-bottom:20px;

}

.team-bottom-box{

    margin-top:35px;

    display:flex;

    gap:18px;

    align-items:center;

    background:rgba(255,196,0,.08);

    border:1px solid rgba(255,196,0,.18);

    border-radius:18px;

    padding:18px;

}

.team-icon{

    width:55px;

    height:55px;

    border-radius:15px;

    background:#ffc400;

    color:#081638;

    font-size:24px;

    font-weight:700;

    display:flex;

    justify-content:center;

    align-items:center;

}

.team-bottom-box strong{

    display:block;

    color:#fff;

    font-size:18px;

    margin-bottom:5px;

}

.team-bottom-box span{

    color:rgba(255,255,255,.75);

    font-size:15px;

}

@media(max-width:991px){

.team-story-section{

padding:70px 0;

}

.team-story-card{

padding:30px;

}

.team-story-card h2{

font-size:36px;

}

}

@media(max-width:576px){

.team-story-card{

padding:25px;

}

.team-story-card h2{

font-size:30px;

}

.team-story-card p{

font-size:16px;

line-height:1.8;

}

.team-bottom-box{

flex-direction:column;

align-items:flex-start;

}

}

/* =========================================
   MULTIDISCIPLINARY TEAM
========================================= */

.hns-trust-team-section {
    position: relative;
    width: 100%;
    padding: 90px 0;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(255, 196, 0, 0.16),
            transparent 24%
        ),
        radial-gradient(
            circle at 92% 82%,
            rgba(25, 54, 143, 0.09),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #fffaf0 0%,
            #f8f5ec 48%,
            #f3f7ff 100%
        );
    overflow: hidden;
}

.hns-trust-team-section *,
.hns-trust-team-section *::before,
.hns-trust-team-section *::after {
    box-sizing: border-box;
}

.hns-trust-team-section .container {
    position: relative;
    z-index: 3;
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

/* Decorative Background */

.hns-trust-shape {
    position: absolute;
    pointer-events: none;
}

.hns-trust-shape-one {
    top: -170px;
    right: -120px;
    width: 400px;
    height: 400px;
    border: 1px solid rgba(25, 54, 143, 0.08);
    border-radius: 50%;
}

.hns-trust-shape-one::before {
    content: "";
    position: absolute;
    inset: 45px;
    border: 1px solid rgba(255, 196, 0, 0.22);
    border-radius: inherit;
}

.hns-trust-shape-two {
    bottom: -190px;
    left: -150px;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: rgba(25, 54, 143, 0.04);
}

/* Main Layout */

.hns-trust-team-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    align-items: center;
    gap: 75px;
}

/* Content */

.hns-trust-team-content {
    min-width: 0;
}

.hns-trust-label {
    display: inline-flex;
    align-items: center;
    padding: 9px 18px;
    margin-bottom: 18px;
    border: 1px solid rgba(25, 54, 143, 0.12);
    border-radius: 50px;
    background: #ffffff;
    color: #19368f;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.1px;
    text-transform: uppercase;
    box-shadow: 0 10px 26px rgba(8, 22, 56, 0.06);
}

.hns-trust-label::before {
    content: "";
    width: 8px;
    height: 8px;
    margin-right: 9px;
    border-radius: 50%;
    background: #ffc400;
    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.14);
}

.hns-trust-title {
    max-width: 700px;
    margin: 0 0 18px;
    color: #081638;
    font-size: clamp(38px, 4.6vw, 58px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -1.5px;
}

.hns-trust-title span {
    display: block;
    color: #19368f;
}

.hns-trust-line {
    width: 80px;
    height: 4px;
    margin-bottom: 28px;
    border-radius: 30px;
    background: linear-gradient(90deg, #ffc400, #ffad00);
}

.hns-trust-text {
    margin: 0 0 18px;
    color: #5f6675;
    font-size: 17px;
    line-height: 1.85;
}

.hns-trust-quote {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 30px;
    padding: 19px;
    border: 1px solid rgba(25, 54, 143, 0.10);
    border-left: 5px solid #ffc400;
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 16px 40px rgba(8, 22, 56, 0.08);
}

.hns-trust-quote-icon {
    display: flex;
    flex: 0 0 48px;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: linear-gradient(135deg, #081638, #19368f);
}

.hns-trust-quote-icon svg {
    width: 25px;
    height: 25px;
    fill: #ffc400;
}

.hns-trust-quote strong {
    display: block;
    margin-bottom: 4px;
    color: #081638;
    font-size: 16px;
    font-weight: 800;
}

.hns-trust-quote span {
    display: block;
    color: #707786;
    font-size: 14px;
    line-height: 1.5;
}

/* Visual Design */

.hns-trust-team-visual {
    position: relative;
    min-height: 610px;
}

.hns-trust-image-main {
    position: absolute;
    top: 0;
    right: 0;
    width: 82%;
    height: 500px;
    border: 8px solid #ffffff;
    border-radius: 32px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 30px 70px rgba(8, 22, 56, 0.18);
}

.hns-trust-image-main img,
.hns-trust-image-small img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hns-trust-image-small {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 3;
    width: 55%;
    height: 275px;
    border: 7px solid #ffffff;
    border-radius: 25px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 25px 55px rgba(8, 22, 56, 0.18);
}

.hns-trust-floating-card {
    position: absolute;
    right: 15px;
    bottom: 35px;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 14px;
    width: min(330px, 72%);
    padding: 18px;
    border-radius: 18px;
    background: linear-gradient(135deg, #081638, #19368f);
    box-shadow: 0 22px 48px rgba(8, 22, 56, 0.28);
}

.hns-trust-floating-number {
    display: flex;
    flex: 0 0 58px;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 16px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
    color: #081638;
    font-size: 18px;
    font-weight: 900;
}

.hns-trust-floating-card strong {
    display: block;
    margin-bottom: 4px;
    color: #ffffff;
    font-size: 16px;
    font-weight: 800;
}

.hns-trust-floating-card span {
    display: block;
    color: rgba(255, 255, 255, 0.70);
    font-size: 13px;
    line-height: 1.45;
}

.hns-trust-image-ring {
    position: absolute;
    top: 38px;
    left: 28px;
    width: 170px;
    height: 170px;
    border: 2px solid rgba(255, 196, 0, 0.48);
    border-radius: 50%;
}

.hns-trust-image-ring::before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 1px solid rgba(25, 54, 143, 0.17);
    border-radius: inherit;
}

/* Tablet */

@media (max-width: 991px) {

    .hns-trust-team-section {
        padding: 70px 0;
    }

    .hns-trust-team-layout {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .hns-trust-team-visual {
        width: min(680px, 100%);
        margin: 0 auto;
    }
}

/* Mobile */

@media (max-width: 767px) {

    .hns-trust-team-section {
        padding: 55px 0;
    }

    .hns-trust-team-section .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-trust-title {
        letter-spacing: -0.8px;
    }

    .hns-trust-text {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-trust-quote {
        align-items: flex-start;
    }

    .hns-trust-team-visual {
        min-height: auto;
        padding-bottom: 0;
    }

    .hns-trust-image-main {
        position: relative;
        width: 100%;
        height: 420px;
    }

    .hns-trust-image-small {
        display: none;
    }

    .hns-trust-floating-card {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 25px);
        margin: -35px auto 0;
    }

    .hns-trust-image-ring {
        display: none;
    }
}

/* Small Mobile */

@media (max-width: 480px) {

    .hns-trust-image-main {
        height: 340px;
        border-width: 5px;
        border-radius: 24px;
    }

    .hns-trust-floating-card {
        align-items: flex-start;
        padding: 16px;
    }

    .hns-trust-floating-number {
        flex-basis: 50px;
        width: 50px;
        height: 50px;
        font-size: 16px;
    }
}

/* =========================================
   CONDITIONS WE HELP MANAGE
========================================= */

.hns-conditions-list-section {
    position: relative;
    width: 100%;
    padding: 68px 0;
    background:
        radial-gradient(
            circle at 8% 12%,
            rgba(255, 196, 0, 0.10),
            transparent 23%
        ),
        radial-gradient(
            circle at 92% 88%,
            rgba(70, 110, 255, 0.16),
            transparent 26%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 52%,
            #19368f 100%
        );
    overflow: hidden;
}

.hns-conditions-list-section *,
.hns-conditions-list-section *::before,
.hns-conditions-list-section *::after {
    box-sizing: border-box;
}

.hns-conditions-list-section .container {
    position: relative;
    z-index: 3;
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

/* Decorative Shapes */

.hns-conditions-shape {
    position: absolute;
    pointer-events: none;
}

.hns-conditions-shape-one {
    top: -170px;
    right: -130px;
    width: 410px;
    height: 410px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
}

.hns-conditions-shape-one::before {
    content: "";
    position: absolute;
    inset: 42px;
    border: 1px solid rgba(255, 196, 0, 0.15);
    border-radius: inherit;
}

.hns-conditions-shape-two {
    bottom: -210px;
    left: -170px;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    background: rgba(255, 196, 0, 0.05);
}

/* Heading */

.hns-conditions-list-heading {
    max-width: 900px;
    margin: 0 auto 38px;
    text-align: center;
}

.hns-conditions-list-label {
    display: inline-flex;
    align-items: center;
    padding: 8px 18px;
    margin-bottom: 15px;
    border: 1px solid rgba(255, 196, 0, 0.32);
    border-radius: 50px;
    background: rgba(255, 196, 0, 0.10);
    color: #ffc400;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.1px;
    text-transform: uppercase;
}

.hns-conditions-list-label::before {
    content: "";
    width: 7px;
    height: 7px;
    margin-right: 9px;
    border-radius: 50%;
    background: #ffc400;
    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.10);
}

.hns-conditions-list-heading h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 800;
    line-height: 1.13;
    letter-spacing: -1.2px;
}

.hns-conditions-list-heading h2 span {
    color: #ffc400;
}

.hns-conditions-list-heading p {
    max-width: 850px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.76);
    font-size: 16px;
    line-height: 1.72;
}

/* Three Columns */

.hns-conditions-columns {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.hns-conditions-column {
    position: relative;
    padding: 25px 24px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 20px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.10),
            rgba(255, 255, 255, 0.05)
        );
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.15);
}

.hns-conditions-column::before {
    content: "";
    position: absolute;
    top: 0;
    left: 24px;
    right: 24px;
    height: 3px;
    border-radius: 0 0 10px 10px;
    background: linear-gradient(
        90deg,
        transparent,
        #ffc400,
        transparent
    );
}

.hns-conditions-column ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.hns-conditions-column li {
    position: relative;
    min-height: 48px;
    padding: 12px 0 12px 35px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.09);
    color: rgba(255, 255, 255, 0.84);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.55;
}

.hns-conditions-column li:last-child {
    border-bottom: 0;
}

.hns-conditions-column li::before {
    content: "✓";
    position: absolute;
    top: 13px;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 23px;
    height: 23px;
    border-radius: 7px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
    color: #081638;
    font-size: 13px;
    font-weight: 900;
}

.hns-conditions-column li:hover {
    color: #ffffff;
}

/* Bottom Message */

.hns-conditions-list-footer {
    display: flex;
    align-items: center;
    gap: 17px;
    margin-top: 28px;
    padding: 20px 24px;
    border: 1px solid rgba(255, 196, 0, 0.20);
    border-radius: 18px;
    background: rgba(255, 196, 0, 0.075);
}

.hns-conditions-footer-icon {
    display: flex;
    flex: 0 0 50px;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 15px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
}

.hns-conditions-footer-icon svg {
    width: 26px;
    height: 26px;
    fill: #081638;
}

.hns-conditions-list-footer p {
    margin: 0;
    color: rgba(255, 255, 255, 0.79);
    font-size: 15px;
    line-height: 1.7;
}

/* Tablet */

@media (max-width: 991px) {

    .hns-conditions-list-section {
        padding: 60px 0;
    }

    .hns-conditions-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hns-conditions-column:last-child {
        grid-column: 1 / -1;
    }
}

/* Mobile */

@media (max-width: 767px) {

    .hns-conditions-list-section {
        padding: 50px 0;
    }

    .hns-conditions-list-section .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-conditions-list-heading {
        margin-bottom: 30px;
        text-align: left;
    }

    .hns-conditions-list-heading h2 {
        letter-spacing: -0.7px;
    }

    .hns-conditions-list-heading p {
        font-size: 15px;
        line-height: 1.68;
    }

    .hns-conditions-columns {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .hns-conditions-column:last-child {
        grid-column: auto;
    }

    .hns-conditions-column {
        padding: 21px 20px;
    }

    .hns-conditions-column li {
        min-height: auto;
        padding-top: 11px;
        padding-bottom: 11px;
        font-size: 14px;
    }

    .hns-conditions-column li::before {
        top: 11px;
    }

    .hns-conditions-list-footer {
        align-items: flex-start;
        padding: 18px;
    }

    .hns-conditions-list-footer p {
        font-size: 14px;
        line-height: 1.65;
    }
}

/* Small Mobile */

@media (max-width: 480px) {

    .hns-conditions-list-footer {
        display: block;
    }

    .hns-conditions-footer-icon {
        margin-bottom: 13px;
    }
}

/* =========================================
   OUR APPROACH TO CARE
========================================= */

.hns-care-approach-section {
    position: relative;
    width: 100%;
    padding: 58px 0;
    background:
        radial-gradient(
            circle at 8% 20%,
            rgba(255, 196, 0, 0.10),
            transparent 22%
        ),
        radial-gradient(
            circle at 92% 85%,
            rgba(25, 54, 143, 0.08),
            transparent 24%
        ),
        linear-gradient(
            135deg,
            #fffaf0 0%,
            #f7f5ee 50%,
            #f3f7ff 100%
        );
    overflow: hidden;
}

.hns-care-approach-section *,
.hns-care-approach-section *::before,
.hns-care-approach-section *::after {
    box-sizing: border-box;
}

.hns-care-approach-section .container {
    position: relative;
    z-index: 3;
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

/* Decorative Shapes */

.hns-care-shape {
    position: absolute;
    pointer-events: none;
}

.hns-care-shape-one {
    top: -150px;
    right: -110px;
    width: 350px;
    height: 350px;
    border: 1px solid rgba(25, 54, 143, 0.08);
    border-radius: 50%;
}

.hns-care-shape-one::before {
    content: "";
    position: absolute;
    inset: 38px;
    border: 1px solid rgba(255, 196, 0, 0.20);
    border-radius: inherit;
}

.hns-care-shape-two {
    bottom: -170px;
    left: -130px;
    width: 370px;
    height: 370px;
    border-radius: 50%;
    background: rgba(25, 54, 143, 0.04);
}

/* Main Wrapper */

.hns-care-approach-wrap {
    display: grid;
    grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
    align-items: center;
    gap: 55px;
    padding: 35px 40px;
    border: 1px solid rgba(8, 22, 56, 0.08);
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 22px 55px rgba(8, 22, 56, 0.08);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* Heading */

.hns-care-heading {
    min-width: 0;
}

.hns-care-label {
    display: inline-flex;
    align-items: center;
    padding: 8px 17px;
    margin-bottom: 15px;
    border: 1px solid rgba(25, 54, 143, 0.10);
    border-radius: 50px;
    background: #ffffff;
    color: #19368f;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    box-shadow: 0 8px 22px rgba(8, 22, 56, 0.05);
}

.hns-care-label::before {
    content: "";
    width: 7px;
    height: 7px;
    margin-right: 8px;
    border-radius: 50%;
    background: #ffc400;
    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.12);
}

.hns-care-heading h2 {
    margin: 0;
    color: #081638;
    font-size: clamp(35px, 4vw, 52px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -1.2px;
}

.hns-care-heading h2 span {
    display: block;
    color: #19368f;
}

/* Content */

.hns-care-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr);
    align-items: stretch;
    gap: 28px;
}

.hns-care-text-block {
    position: relative;
    min-width: 0;
    padding-top: 37px;
}

.hns-care-number {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 43px;
    height: 27px;
    padding: 0 10px;
    border-radius: 50px;
    background: linear-gradient(135deg, #081638, #19368f);
    color: #ffc400;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.8px;
}

.hns-care-text-block p {
    margin: 0;
    color: #5f6675;
    font-size: 15px;
    line-height: 1.78;
}

.hns-care-divider {
    width: 1px;
    height: 100%;
    min-height: 170px;
    background: linear-gradient(
        180deg,
        transparent,
        rgba(25, 54, 143, 0.18),
        transparent
    );
}

/* Tablet */

@media (max-width: 991px) {

    .hns-care-approach-section {
        padding: 50px 0;
    }

    .hns-care-approach-wrap {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 32px;
    }

    .hns-care-heading h2 span {
        display: inline;
    }
}

/* Mobile */

@media (max-width: 767px) {

    .hns-care-approach-section {
        padding: 42px 0;
    }

    .hns-care-approach-section .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-care-approach-wrap {
        gap: 26px;
        padding: 26px 22px;
        border-radius: 21px;
    }

    .hns-care-heading h2 {
        letter-spacing: -0.7px;
    }

    .hns-care-content {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .hns-care-divider {
        width: 100%;
        height: 1px;
        min-height: 1px;
        background: linear-gradient(
            90deg,
            transparent,
            rgba(25, 54, 143, 0.18),
            transparent
        );
    }

    .hns-care-text-block {
        padding-top: 36px;
    }

    .hns-care-text-block p {
        font-size: 15px;
        line-height: 1.72;
    }
}

/* =========================================
   WHY CHOOSE HEAR 'N' SAY CLINIC
========================================= */

.hns-why-choose-section {
    position: relative;
    width: 100%;
    padding: 58px 0;
    background:
        radial-gradient(
            circle at 8% 18%,
            rgba(255, 196, 0, 0.12),
            transparent 22%
        ),
        radial-gradient(
            circle at 92% 82%,
            rgba(74, 114, 255, 0.17),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 52%,
            #19368f 100%
        );
    overflow: hidden;
}

.hns-why-choose-section *,
.hns-why-choose-section *::before,
.hns-why-choose-section *::after {
    box-sizing: border-box;
}

.hns-why-choose-section .container {
    position: relative;
    z-index: 3;
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

/* Decorative Shapes */

.hns-why-shape {
    position: absolute;
    pointer-events: none;
}

.hns-why-shape-one {
    top: -170px;
    right: -120px;
    width: 390px;
    height: 390px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
}

.hns-why-shape-one::before {
    content: "";
    position: absolute;
    inset: 40px;
    border: 1px solid rgba(255, 196, 0, 0.15);
    border-radius: inherit;
}

.hns-why-shape-two {
    bottom: -190px;
    left: -150px;
    width: 410px;
    height: 410px;
    border-radius: 50%;
    background: rgba(255, 196, 0, 0.05);
}

/* Main Layout */

.hns-why-layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.75fr) minmax(0, 1.25fr);
    align-items: center;
    gap: 55px;
}

/* Heading */

.hns-why-heading {
    min-width: 0;
}

.hns-why-label {
    display: inline-flex;
    align-items: center;
    padding: 8px 18px;
    margin-bottom: 15px;
    border: 1px solid rgba(255, 196, 0, 0.32);
    border-radius: 50px;
    background: rgba(255, 196, 0, 0.10);
    color: #ffc400;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.1px;
    text-transform: uppercase;
}

.hns-why-label::before {
    content: "";
    width: 7px;
    height: 7px;
    margin-right: 9px;
    border-radius: 50%;
    background: #ffc400;
    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.10);
}

.hns-why-heading h2 {
    margin: 0 0 16px;
    color: #ffffff;
    font-size: clamp(35px, 4.2vw, 52px);
    font-weight: 800;
    line-height: 1.13;
    letter-spacing: -1.2px;
}

.hns-why-heading h2 span {
    display: block;
    color: #ffc400;
}

.hns-why-heading p {
    margin: 0;
    color: rgba(255, 255, 255, 0.76);
    font-size: 16px;
    line-height: 1.72;
}

/* Bullet List */

.hns-why-list ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 30px;
    row-gap: 0;
    padding: 0;
    margin: 0;
    list-style: none;
}

.hns-why-list li {
    position: relative;
    min-height: 64px;
    padding: 14px 0 14px 36px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.09);
    color: rgba(255, 255, 255, 0.86);
    font-size: 15px;
    font-weight: 650;
    line-height: 1.5;
}

.hns-why-list li::before {
    content: "✓";
    position: absolute;
    top: 15px;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 7px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
    color: #081638;
    font-size: 13px;
    font-weight: 900;
}

.hns-why-list li:hover {
    color: #ffffff;
}

/* Bottom Message */

.hns-why-message {
    display: flex;
    align-items: center;
    gap: 17px;
    margin-top: 30px;
    padding: 19px 23px;
    border: 1px solid rgba(255, 196, 0, 0.20);
    border-radius: 18px;
    background: rgba(255, 196, 0, 0.075);
}

.hns-why-message-icon {
    display: flex;
    flex: 0 0 50px;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 15px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
}

.hns-why-message-icon svg {
    width: 26px;
    height: 26px;
    fill: #081638;
}

.hns-why-message p {
    margin: 0;
    color: rgba(255, 255, 255, 0.80);
    font-size: 15px;
    line-height: 1.68;
}

/* Tablet */

@media (max-width: 991px) {

    .hns-why-choose-section {
        padding: 52px 0;
    }

    .hns-why-layout {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

/* Mobile */

@media (max-width: 767px) {

    .hns-why-choose-section {
        padding: 44px 0;
    }

    .hns-why-choose-section .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-why-heading h2 {
        letter-spacing: -0.7px;
    }

    .hns-why-heading p {
        font-size: 15px;
        line-height: 1.68;
    }

    .hns-why-list ul {
        grid-template-columns: 1fr;
    }

    .hns-why-list li {
        min-height: auto;
        padding-top: 12px;
        padding-bottom: 12px;
        font-size: 14px;
    }

    .hns-why-list li::before {
        top: 12px;
    }

    .hns-why-message {
        align-items: flex-start;
        padding: 17px;
    }

    .hns-why-message p {
        font-size: 14px;
        line-height: 1.63;
    }
}

/* Small Mobile */

@media (max-width: 480px) {

    .hns-why-message {
        display: block;
    }

    .hns-why-message-icon {
        margin-bottom: 13px;
    }
}

/* =========================================================
   PREMIUM COCHLEAR IMPLANT THREE SECTIONS
========================================================= */

.ci-story-section {
    --ci-navy: #081638;
    --ci-dark-blue: #0c1d50;
    --ci-blue: #19368f;
    --ci-bright-blue: #2f65dc;
    --ci-light-blue: #edf4ff;
    --ci-gold: #ffc400;
    --ci-text: #59657b;
    --ci-border: #dce6f5;
    --ci-white: #ffffff;

    position: relative;
    width: 100%;
    padding: 58px 0 0;
    margin: 0;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(47, 101, 220, 0.12),
            transparent 24%
        ),
        radial-gradient(
            circle at 92% 84%,
            rgba(255, 196, 0, 0.12),
            transparent 22%
        ),
        linear-gradient(
            180deg,
            #f4f8ff 0%,
            #ffffff 45%,
            #fffaf0 100%
        );
}

.ci-story-section::before {
    content: "";
    position: absolute;
    top: 80px;
    left: -100px;

    width: 260px;
    height: 260px;

    border: 1px solid rgba(25, 54, 143, 0.08);
    border-radius: 50%;

    box-shadow:
        0 0 0 35px rgba(25, 54, 143, 0.025),
        0 0 0 70px rgba(25, 54, 143, 0.018);

    pointer-events: none;
}

.ci-story-section::after {
    content: "";
    position: absolute;
    right: 25px;
    bottom: 18px;

    width: 100px;
    height: 65px;

    background-image: radial-gradient(
        rgba(25, 54, 143, 0.22) 2px,
        transparent 2px
    );

    background-size: 15px 15px;
    pointer-events: none;
}

.ci-story-container {
    position: relative;
    z-index: 2;

    width: min(100% - 40px, 1220px);
    margin: 0 auto;
}


/* =========================================================
   MAIN HEADING
========================================================= */

.ci-story-heading {
    max-width: 780px;
    margin: 0 auto 34px;
    text-align: center;
}

.ci-story-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 13px;
    padding: 8px 17px;

    border: 1px solid rgba(25, 54, 143, 0.17);
    border-radius: 50px;

    color: var(--ci-blue);
    background: rgba(255, 255, 255, 0.9);

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.3px;
    text-transform: uppercase;

    box-shadow: 0 8px 25px rgba(8, 22, 56, 0.06);
}

.ci-story-label::before {
    content: "";

    width: 8px;
    height: 8px;

    border-radius: 50%;
    background: var(--ci-gold);

    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.15);
}

.ci-story-heading h2 {
    margin: 0 0 13px;

    color: var(--ci-navy);

    font-size: clamp(34px, 4vw, 51px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -1.5px;
}

.ci-story-heading h2 span {
    display: block;

    background: linear-gradient(
        90deg,
        var(--ci-blue),
        var(--ci-bright-blue)
    );

    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.ci-story-heading p {
    max-width: 650px;
    margin: 0 auto;

    color: var(--ci-text);
    font-size: 15px;
    line-height: 1.7;
}


/* =========================================================
   STORY CARD
========================================================= */

.ci-story-card {
    position: relative;

    display: grid;
    grid-template-columns: minmax(320px, 42%) minmax(0, 58%);
    align-items: stretch;

    min-height: 330px;
    margin: 0 0 25px;
    overflow: hidden;

    border: 1px solid rgba(25, 54, 143, 0.12);
    border-radius: 24px;

    background: rgba(255, 255, 255, 0.95);

    box-shadow:
        0 16px 45px rgba(8, 22, 56, 0.08),
        0 3px 10px rgba(25, 54, 143, 0.04);

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}

.ci-story-card:hover {
    transform: translateY(-5px);

    border-color: rgba(47, 101, 220, 0.32);

    box-shadow:
        0 24px 65px rgba(8, 22, 56, 0.13),
        0 5px 18px rgba(47, 101, 220, 0.08);
}

/* No unwanted space after third card */

.ci-story-card:last-child {
    margin-bottom: 0;
}

/* Different coloured top line on each card */

.ci-story-card::before {
    content: "";

    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 5;

    height: 4px;

    background: linear-gradient(
        90deg,
        var(--ci-blue),
        var(--ci-bright-blue),
        var(--ci-gold)
    );
}

.ci-story-card:nth-of-type(3)::before {
    background: linear-gradient(
        90deg,
        var(--ci-gold),
        #ff9e2c,
        var(--ci-blue)
    );
}

.ci-story-card:nth-of-type(4)::before {
    background: linear-gradient(
        90deg,
        #16a6a0,
        var(--ci-blue),
        var(--ci-bright-blue)
    );
}


/* =========================================================
   REVERSE SECOND SECTION
========================================================= */

.ci-story-reverse {
    grid-template-columns: minmax(0, 58%) minmax(320px, 42%);
}

.ci-story-reverse .ci-story-image {
    order: 2;
}

.ci-story-reverse .ci-story-content {
    order: 1;
}


/* =========================================================
   IMAGE AREA
========================================================= */

.ci-story-image {
    position: relative;

    min-height: 100%;
    overflow: hidden;

    background:
        linear-gradient(
            135deg,
            #dce8ff,
            #a8bde1
        );
}

.ci-story-image::before {
    content: "";

    position: absolute;
    inset: 0;
    z-index: 1;

    background:
        linear-gradient(
            135deg,
            rgba(8, 22, 56, 0.08),
            transparent 55%
        );

    pointer-events: none;
}

.ci-story-image::after {
    content: "";

    position: absolute;
    inset: 0;
    z-index: 1;

    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(8, 22, 56, 0.35) 100%
        );

    pointer-events: none;
}

.ci-story-image img {
    width: 100%;
    height: 100%;
    min-height: 330px;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 0.7s ease;
}

.ci-story-card:hover .ci-story-image img {
    transform: scale(1.05);
}


/* =========================================================
   NUMBER
========================================================= */

.ci-image-number {
    position: absolute;
    left: 19px;
    bottom: 18px;
    z-index: 3;

    width: 64px;
    height: 64px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 17px;

    color: var(--ci-navy);

    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.98),
            rgba(236, 244, 255, 0.92)
        );

    backdrop-filter: blur(12px);

    font-size: 22px;
    font-weight: 900;

    box-shadow: 0 13px 35px rgba(8, 22, 56, 0.2);
}

.ci-story-card:nth-of-type(3) .ci-image-number {
    color: #6c4c00;

    background:
        linear-gradient(
            135deg,
            #fff9df,
            #ffe899
        );
}

.ci-story-card:nth-of-type(4) .ci-image-number {
    color: #075b62;

    background:
        linear-gradient(
            135deg,
            #edffff,
            #bdeeee
        );
}


/* =========================================================
   CONTENT AREA
========================================================= */

.ci-story-content {
    position: relative;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 32px 40px;

    background:
        radial-gradient(
            circle at 96% 12%,
            rgba(47, 101, 220, 0.07),
            transparent 24%
        ),
        #ffffff;
}

/* Second section colour */

.ci-story-card:nth-of-type(3) .ci-story-content {
    background:
        radial-gradient(
            circle at 5% 12%,
            rgba(255, 196, 0, 0.12),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #fffef9,
            #ffffff
        );
}

/* Third section colour */

.ci-story-card:nth-of-type(4) .ci-story-content {
    background:
        radial-gradient(
            circle at 95% 15%,
            rgba(22, 166, 160, 0.1),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #ffffff,
            #f7ffff
        );
}

.ci-story-content::after {
    content: "";

    position: absolute;
    top: 25px;
    right: 30px;

    width: 72px;
    height: 72px;

    border: 1px solid rgba(25, 54, 143, 0.08);
    border-radius: 50%;

    box-shadow:
        0 0 0 18px rgba(25, 54, 143, 0.025),
        0 0 0 36px rgba(25, 54, 143, 0.018);

    pointer-events: none;
}


/* =========================================================
   SMALL LABEL
========================================================= */

.ci-content-label {
    position: relative;
    z-index: 2;

    width: fit-content;

    margin-bottom: 11px;
    padding: 7px 12px;

    border: 1px solid rgba(25, 54, 143, 0.08);
    border-radius: 7px;

    color: var(--ci-blue);
    background: var(--ci-light-blue);

    font-size: 10px;
    font-weight: 850;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.ci-story-card:nth-of-type(3) .ci-content-label {
    color: #755600;
    border-color: rgba(255, 196, 0, 0.22);
    background: rgba(255, 196, 0, 0.13);
}

.ci-story-card:nth-of-type(4) .ci-content-label {
    color: #086c72;
    border-color: rgba(22, 166, 160, 0.2);
    background: rgba(22, 166, 160, 0.1);
}


/* =========================================================
   TITLE AND PARAGRAPH
========================================================= */

.ci-story-content h3 {
    position: relative;
    z-index: 2;

    max-width: 680px;
    margin: 0 0 13px;

    color: var(--ci-navy);

    font-size: clamp(25px, 2.7vw, 34px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.7px;
}

.ci-story-content > p {
    position: relative;
    z-index: 2;

    margin: 0 0 9px;

    color: var(--ci-text);

    font-size: 15px;
    line-height: 1.7;
}

.ci-story-content > p:last-of-type {
    margin-bottom: 0;
}

.ci-story-content strong {
    color: var(--ci-navy);
    font-weight: 800;
}


/* =========================================================
   FEATURE BOX
========================================================= */

.ci-story-feature {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    gap: 12px;

    margin-top: 17px;
    padding: 11px 14px;

    border: 1px solid rgba(25, 54, 143, 0.08);
    border-left: 4px solid var(--ci-gold);
    border-radius: 10px;

    background:
        linear-gradient(
            90deg,
            #f2f6ff,
            #f8faff
        );
}

.ci-story-card:nth-of-type(4) .ci-story-feature {
    border-left-color: #16a6a0;

    background:
        linear-gradient(
            90deg,
            #effdfc,
            #f8ffff
        );
}

.ci-story-feature span {
    width: 39px;
    height: 39px;
    flex: 0 0 39px;

    display: grid;
    place-items: center;

    border-radius: 10px;

    color: var(--ci-blue);
    background: #ffffff;

    font-size: 15px;

    box-shadow: 0 6px 17px rgba(8, 22, 56, 0.08);
}

.ci-story-card:nth-of-type(4) .ci-story-feature span {
    color: #07888b;
}

.ci-story-feature p {
    margin: 0;

    color: #4d5970;

    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
}


/* =========================================================
   SPECIALIST PILLS
========================================================= */

.ci-specialist-list {
    position: relative;
    z-index: 2;

    display: flex;
    flex-wrap: wrap;
    gap: 8px;

    margin-top: 16px;
}

.ci-specialist-list span {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    padding: 8px 12px;

    border: 1px solid rgba(25, 54, 143, 0.12);
    border-radius: 50px;

    color: #48546a;
    background: #ffffff;

    font-size: 11px;
    font-weight: 700;

    box-shadow: 0 5px 15px rgba(8, 22, 56, 0.04);
}

.ci-specialist-list i {
    width: 19px;
    height: 19px;

    display: grid;
    place-items: center;

    border-radius: 50%;

    color: #ffffff;
    background: linear-gradient(
        135deg,
        var(--ci-blue),
        var(--ci-bright-blue)
    );

    font-size: 8px;
}


/* =========================================================
   REMOVE SPACE BEFORE NEXT SECTION
========================================================= */

.ci-story-section + section {
    margin-top: 0 !important;
}

.ci-story-container > *:last-child {
    margin-bottom: 0 !important;
}

.ci-story-section .container,
.ci-story-section .ci-story-container {
    padding-bottom: 60px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ci-story-section {
        padding: 50px 0 0;
    }

    .ci-story-card,
    .ci-story-reverse {
        grid-template-columns: 310px 1fr;
        min-height: 340px;
    }

    .ci-story-reverse .ci-story-image,
    .ci-story-reverse .ci-story-content {
        order: initial;
    }

    .ci-story-content {
        padding: 27px 28px;
    }

    .ci-story-content h3 {
        font-size: 26px;
    }

    .ci-story-content > p {
        font-size: 14px;
        line-height: 1.65;
    }

    .ci-story-image img {
        min-height: 340px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ci-story-section {
        padding: 42px 0 0;
    }

    .ci-story-container {
        width: min(100% - 24px, 1220px);
    }

    .ci-story-heading {
        margin-bottom: 27px;
    }

    .ci-story-heading h2 {
        font-size: 33px;
        letter-spacing: -1px;
    }

    .ci-story-heading p {
        font-size: 14px;
    }

    .ci-story-card,
    .ci-story-reverse {
        display: flex;
        flex-direction: column;

        min-height: auto;
        margin-bottom: 18px;

        border-radius: 18px;
    }

    .ci-story-reverse .ci-story-image {
        order: 1;
    }

    .ci-story-reverse .ci-story-content {
        order: 2;
    }

    .ci-story-image,
    .ci-story-image img {
        height: 220px;
        min-height: 220px;
    }

    .ci-image-number {
        left: 14px;
        bottom: 13px;

        width: 54px;
        height: 54px;

        border-radius: 14px;
        font-size: 19px;
    }

    .ci-story-content {
        padding: 24px 21px;
    }

    .ci-story-content::after {
        display: none;
    }

    .ci-story-content h3 {
        font-size: 24px;
    }

    .ci-story-content > p {
        font-size: 14px;
        line-height: 1.68;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .ci-story-container {
        width: calc(100% - 20px);
    }

    .ci-story-heading h2 {
        font-size: 29px;
    }

    .ci-story-label {
        font-size: 9px;
        letter-spacing: 0.8px;
    }

    .ci-story-image,
    .ci-story-image img {
        height: 190px;
        min-height: 190px;
    }

    .ci-story-content {
        padding: 21px 17px;
    }

    .ci-story-content h3 {
        font-size: 22px;
    }

    .ci-story-feature {
        align-items: flex-start;
    }

    .ci-specialist-list {
        display: grid;
        grid-template-columns: 1fr;
    }

    .ci-specialist-list span {
        width: 100%;
    }
}

/* =====================================================
   WHAT IS A COCHLEAR IMPLANT
===================================================== */

.ci-explain-section {
    --ci-navy: #081638;
    --ci-blue: #19368f;
    --ci-bright-blue: #2f65dc;
    --ci-gold: #ffc400;
    --ci-text: #5c677d;
    --ci-light-blue: #edf4ff;
    --ci-border: #dfe7f3;

    position: relative;
    width: 100%;
    padding: 68px 0;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 96% 10%,
            rgba(47, 101, 220, 0.1),
            transparent 25%
        ),
        radial-gradient(
            circle at 8% 90%,
            rgba(255, 196, 0, 0.08),
            transparent 22%
        ),
        linear-gradient(
            135deg,
            #f7faff 0%,
            #ffffff 52%,
            #f8fbff 100%
        );
}

.ci-explain-section::before {
    content: "";
    position: absolute;
    top: 35px;
    right: 35px;

    width: 110px;
    height: 80px;

    background-image: radial-gradient(
        rgba(25, 54, 143, 0.17) 2px,
        transparent 2px
    );

    background-size: 15px 15px;
    pointer-events: none;
}

.ci-explain-container {
    position: relative;
    z-index: 2;

    width: min(100% - 40px, 1220px);
    margin-inline: auto;
}

.ci-explain-grid {
    display: grid;
    grid-template-columns: minmax(360px, 0.95fr) minmax(0, 1.05fr);
    align-items: center;
    gap: 58px;
}


/* =====================================================
   IMAGE
===================================================== */

.ci-explain-visual {
    position: relative;
}

.ci-explain-image-wrap {
    position: relative;
    min-height: 510px;
    overflow: hidden;

    border: 8px solid #ffffff;
    border-radius: 30px;

    background: #dce7f7;

    box-shadow:
        0 28px 80px rgba(8, 22, 56, 0.16),
        0 5px 15px rgba(25, 54, 143, 0.08);
}

.ci-explain-image-wrap img {
    width: 100%;
    height: 510px;
    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 0.7s ease;
}

.ci-explain-image-wrap:hover img {
    transform: scale(1.045);
}

.ci-image-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(8, 22, 56, 0.02) 30%,
            rgba(8, 22, 56, 0.58) 100%
        );

    pointer-events: none;
}

.ci-image-badge {
    position: absolute;
    right: 20px;
    bottom: 20px;
    left: 20px;

    display: flex;
    align-items: center;
    gap: 13px;

    padding: 15px 17px;

    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 16px;

    background: rgba(8, 22, 56, 0.78);
    backdrop-filter: blur(13px);

    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
}

.ci-badge-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;

    display: grid;
    place-items: center;

    border-radius: 13px;

    color: var(--ci-navy);
    background: var(--ci-gold);

    font-size: 19px;
}

.ci-image-badge strong {
    display: block;
    margin-bottom: 3px;

    color: #ffffff;
    font-size: 14px;
    font-weight: 750;
}

.ci-image-badge small {
    display: block;

    color: rgba(255, 255, 255, 0.7);
    font-size: 11px;
    line-height: 1.4;
}

.ci-visual-shape {
    position: absolute;
    z-index: -1;
    border-radius: 50%;
}

.ci-visual-shape-one {
    width: 175px;
    height: 175px;

    top: -28px;
    left: -32px;

    background: rgba(47, 101, 220, 0.1);
}

.ci-visual-shape-two {
    width: 120px;
    height: 120px;

    right: -28px;
    bottom: -25px;

    border: 20px solid rgba(255, 196, 0, 0.14);
}


/* =====================================================
   CONTENT
===================================================== */

.ci-explain-content {
    position: relative;
}

.ci-explain-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 15px;
    padding: 8px 15px;

    border: 1px solid rgba(25, 54, 143, 0.13);
    border-radius: 50px;

    color: var(--ci-blue);
    background: #ffffff;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.15px;
    text-transform: uppercase;

    box-shadow: 0 7px 22px rgba(8, 22, 56, 0.05);
}

.ci-explain-label::before {
    content: "";

    width: 7px;
    height: 7px;

    border-radius: 50%;
    background: var(--ci-gold);

    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.14);
}

.ci-explain-content h2 {
    margin: 0 0 18px;

    color: var(--ci-navy);

    font-size: clamp(36px, 4.1vw, 54px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -1.7px;
}

.ci-explain-content h2 span {
    display: block;

    background: linear-gradient(
        90deg,
        var(--ci-blue),
        var(--ci-bright-blue)
    );

    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.ci-explain-content > p {
    margin: 0 0 15px;

    color: var(--ci-text);
    font-size: 15px;
    line-height: 1.78;
}


/* =====================================================
   COMPARISON BOX
===================================================== */

.ci-comparison-box {
    display: flex;
    align-items: flex-start;
    gap: 15px;

    margin: 20px 0;
    padding: 18px;

    border: 1px solid rgba(25, 54, 143, 0.12);
    border-left: 4px solid var(--ci-gold);
    border-radius: 14px;

    background:
        linear-gradient(
            90deg,
            #f0f5ff,
            #ffffff
        );

    box-shadow: 0 12px 35px rgba(8, 22, 56, 0.05);
}

.ci-comparison-icon {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;

    display: grid;
    place-items: center;

    border-radius: 12px;

    color: #ffffff;

    background:
        linear-gradient(
            135deg,
            var(--ci-blue),
            var(--ci-bright-blue)
        );

    font-size: 17px;

    box-shadow: 0 10px 25px rgba(25, 54, 143, 0.22);
}

.ci-comparison-box strong {
    display: block;
    margin-bottom: 5px;

    color: var(--ci-navy);
    font-size: 15px;
    font-weight: 800;
}

.ci-comparison-box p {
    margin: 0;

    color: var(--ci-text);
    font-size: 13px;
    line-height: 1.65;
}


/* =====================================================
   BENEFITS
===================================================== */

.ci-benefit-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;

    margin-top: 20px;
}

.ci-benefit-item {
    display: flex;
    align-items: center;
    gap: 10px;

    min-height: 48px;
    padding: 10px 12px;

    border: 1px solid var(--ci-border);
    border-radius: 11px;

    color: #435069;
    background: #ffffff;

    font-size: 12px;
    font-weight: 700;

    box-shadow: 0 7px 20px rgba(8, 22, 56, 0.04);

    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.ci-benefit-item:hover {
    transform: translateY(-3px);
    border-color: rgba(47, 101, 220, 0.28);
    box-shadow: 0 12px 28px rgba(8, 22, 56, 0.08);
}

.ci-benefit-item i {
    width: 31px;
    height: 31px;
    flex: 0 0 31px;

    display: grid;
    place-items: center;

    border-radius: 9px;

    color: var(--ci-blue);
    background: var(--ci-light-blue);

    font-size: 13px;
}


/* =====================================================
   FINAL NOTE
===================================================== */

.ci-final-note {
    display: flex;
    align-items: flex-start;
    gap: 11px;

    margin-top: 18px;
    padding: 13px 15px;

    border-radius: 12px;

    background:
        linear-gradient(
            90deg,
            rgba(255, 196, 0, 0.12),
            rgba(255, 196, 0, 0.035)
        );
}

.ci-final-note span {
    color: #d99f00;
    font-size: 18px;
    line-height: 1.4;
}

.ci-final-note p {
    margin: 0;

    color: #4d586c;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.6;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ci-explain-section {
        padding: 55px 0;
    }

    .ci-explain-grid {
        grid-template-columns: 0.9fr 1.1fr;
        gap: 35px;
    }

    .ci-explain-image-wrap,
    .ci-explain-image-wrap img {
        height: 470px;
        min-height: 470px;
    }

    .ci-explain-content h2 {
        font-size: 40px;
    }

    .ci-explain-content > p {
        font-size: 14px;
        line-height: 1.7;
    }
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ci-explain-section {
        padding: 45px 0;
    }

    .ci-explain-container {
        width: min(100% - 24px, 1220px);
    }

    .ci-explain-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .ci-explain-visual {
        order: 1;
    }

    .ci-explain-content {
        order: 2;
    }

    .ci-explain-image-wrap {
        min-height: 330px;
        border-width: 5px;
        border-radius: 22px;
    }

    .ci-explain-image-wrap img {
        height: 330px;
        min-height: 330px;
    }

    .ci-image-badge {
        right: 13px;
        bottom: 13px;
        left: 13px;

        padding: 12px;
    }

    .ci-badge-icon {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
    }

    .ci-explain-content h2 {
        font-size: 35px;
    }

    .ci-benefit-grid {
        grid-template-columns: 1fr 1fr;
    }
}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ci-explain-container {
        width: calc(100% - 20px);
    }

    .ci-explain-image-wrap,
    .ci-explain-image-wrap img {
        height: 270px;
        min-height: 270px;
    }

    .ci-image-badge {
        align-items: flex-start;
    }

    .ci-image-badge strong {
        font-size: 12px;
    }

    .ci-image-badge small {
        font-size: 10px;
    }

    .ci-explain-label {
        font-size: 9px;
        letter-spacing: 0.8px;
    }

    .ci-explain-content h2 {
        font-size: 30px;
    }

    .ci-explain-content > p {
        font-size: 14px;
    }

    .ci-comparison-box {
        padding: 14px;
    }

    .ci-benefit-grid {
        grid-template-columns: 1fr;
    }
}

/* =====================================================
   WHO MAY BENEFIT FROM A COCHLEAR IMPLANT
===================================================== */

.ci-candidates-section {
    --ci-navy: #081638;
    --ci-dark-blue: #0c1d50;
    --ci-blue: #19368f;
    --ci-bright-blue: #356ce0;
    --ci-gold: #ffc400;
    --ci-text: #5b667b;
    --ci-light-blue: #edf4ff;
    --ci-border: #dfe7f3;
    --ci-white: #ffffff;

    position: relative;
    width: 100%;
    padding: 68px 0;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 6% 18%,
            rgba(53, 108, 224, 0.12),
            transparent 24%
        ),
        radial-gradient(
            circle at 95% 88%,
            rgba(255, 196, 0, 0.11),
            transparent 22%
        ),
        linear-gradient(
            135deg,
            #f3f7ff 0%,
            #ffffff 48%,
            #f8fbff 100%
        );
}

.ci-candidates-section::before {
    content: "";
    position: absolute;
    top: 38px;
    right: 45px;

    width: 110px;
    height: 80px;

    background-image: radial-gradient(
        rgba(25, 54, 143, 0.18) 2px,
        transparent 2px
    );

    background-size: 15px 15px;
    pointer-events: none;
}

.ci-candidates-section::after {
    content: "";
    position: absolute;
    bottom: -90px;
    left: -90px;

    width: 250px;
    height: 250px;

    border: 1px solid rgba(25, 54, 143, 0.08);
    border-radius: 50%;

    box-shadow:
        0 0 0 35px rgba(25, 54, 143, 0.025),
        0 0 0 70px rgba(25, 54, 143, 0.018);

    pointer-events: none;
}

.ci-candidates-container {
    position: relative;
    z-index: 2;

    width: min(100% - 40px, 1220px);
    margin-inline: auto;
}


/* =====================================================
   SECTION HEADING
===================================================== */

.ci-candidates-heading {
    max-width: 800px;
    margin: 0 auto 35px;
    text-align: center;
}

.ci-candidates-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 13px;
    padding: 8px 17px;

    border: 1px solid rgba(25, 54, 143, 0.15);
    border-radius: 50px;

    color: var(--ci-blue);
    background: rgba(255, 255, 255, 0.92);

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;

    box-shadow: 0 8px 24px rgba(8, 22, 56, 0.05);
}

.ci-candidates-label::before {
    content: "";

    width: 8px;
    height: 8px;

    border-radius: 50%;
    background: var(--ci-gold);

    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.15);
}

.ci-candidates-heading h2 {
    margin: 0 0 14px;

    color: var(--ci-navy);

    font-size: clamp(34px, 4vw, 51px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -1.5px;
}

.ci-candidates-heading h2 span {
    display: block;

    background: linear-gradient(
        90deg,
        var(--ci-blue),
        var(--ci-bright-blue)
    );

    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.ci-candidates-heading p {
    max-width: 700px;
    margin: 0 auto;

    color: var(--ci-text);
    font-size: 15px;
    line-height: 1.75;
}


/* =====================================================
   CARD GRID
===================================================== */

.ci-candidates-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 17px;
}


/* =====================================================
   INDIVIDUAL CARD
===================================================== */

.ci-candidate-card {
    position: relative;

    display: flex;
    align-items: flex-start;
    gap: 15px;

    min-height: 165px;
    padding: 22px;

    overflow: hidden;

    border: 1px solid var(--ci-border);
    border-radius: 18px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(53, 108, 224, 0.06),
            transparent 35%
        ),
        #ffffff;

    box-shadow:
        0 12px 35px rgba(8, 22, 56, 0.06),
        0 2px 8px rgba(25, 54, 143, 0.03);

    transition:
        transform 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease;
}

.ci-candidate-card::before {
    content: "";

    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background: linear-gradient(
        90deg,
        var(--ci-blue),
        var(--ci-bright-blue)
    );

    transform: scaleX(0);
    transform-origin: left;

    transition: transform 0.35s ease;
}

.ci-candidate-card:hover {
    transform: translateY(-6px);

    border-color: rgba(53, 108, 224, 0.28);

    box-shadow:
        0 20px 48px rgba(8, 22, 56, 0.11),
        0 5px 15px rgba(53, 108, 224, 0.06);
}

.ci-candidate-card:hover::before {
    transform: scaleX(1);
}


/* =====================================================
   ROUND ICON
===================================================== */

.ci-candidate-icon {
    position: relative;

    width: 57px;
    height: 57px;
    flex: 0 0 57px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(25, 54, 143, 0.12);
    border-radius: 50%;

    color: var(--ci-blue);

    background:
        linear-gradient(
            135deg,
            #ffffff,
            var(--ci-light-blue)
        );

    font-size: 20px;

    box-shadow:
        0 9px 24px rgba(25, 54, 143, 0.11),
        inset 0 0 0 6px rgba(255, 255, 255, 0.72);

    transition:
        color 0.35s ease,
        background 0.35s ease,
        transform 0.35s ease;
}

.ci-candidate-icon::after {
    content: "";

    position: absolute;
    inset: -5px;

    border: 1px dashed rgba(25, 54, 143, 0.17);
    border-radius: 50%;

    transition: transform 0.6s ease;
}

.ci-candidate-card:hover .ci-candidate-icon {
    color: #ffffff;

    background:
        linear-gradient(
            135deg,
            var(--ci-blue),
            var(--ci-bright-blue)
        );

    transform: scale(1.06);
}

.ci-candidate-card:hover .ci-candidate-icon::after {
    transform: rotate(45deg);
}


/* =====================================================
   CARD CONTENT
===================================================== */

.ci-candidate-content {
    position: relative;
    flex: 1;
    min-width: 0;
}

.ci-card-number {
    display: block;
    margin-bottom: 5px;

    color: var(--ci-bright-blue);

    font-size: 10px;
    font-weight: 850;
    letter-spacing: 1px;
}

.ci-candidate-content h3 {
    margin: 0 0 7px;

    color: var(--ci-navy);

    font-size: 16px;
    font-weight: 800;
    line-height: 1.35;
}

.ci-candidate-content p {
    margin: 0;

    color: var(--ci-text);

    font-size: 13px;
    line-height: 1.65;
}


/* =====================================================
   FEATURED LAST CARD
===================================================== */

.ci-candidate-featured {
    grid-column: span 3;

    min-height: auto;
    align-items: center;

    padding: 20px 24px;

    border-color: rgba(255, 196, 0, 0.3);

    background:
        radial-gradient(
            circle at 95% 50%,
            rgba(255, 196, 0, 0.13),
            transparent 25%
        ),
        linear-gradient(
            90deg,
            #fffdf4,
            #ffffff
        );
}

.ci-candidate-featured::before {
    background: linear-gradient(
        90deg,
        var(--ci-gold),
        #ff9f2f,
        var(--ci-blue)
    );

    transform: scaleX(1);
}

.ci-candidate-featured .ci-candidate-icon {
    color: #745400;
    border-color: rgba(255, 196, 0, 0.3);

    background:
        linear-gradient(
            135deg,
            #fff8d9,
            #ffe58b
        );
}

.ci-candidate-featured:hover .ci-candidate-icon {
    color: var(--ci-navy);

    background:
        linear-gradient(
            135deg,
            var(--ci-gold),
            #ffdc62
        );
}

.ci-candidate-featured .ci-card-number {
    color: #c48c00;
}


/* =====================================================
   BOTTOM NOTE
===================================================== */

.ci-candidates-note {
    position: relative;

    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;

    margin-top: 24px;
    padding: 20px 22px;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 18px;

    background:
        radial-gradient(
            circle at 95% 20%,
            rgba(53, 108, 224, 0.24),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            var(--ci-navy),
            var(--ci-dark-blue) 55%,
            var(--ci-blue)
        );

    box-shadow: 0 20px 50px rgba(8, 22, 56, 0.2);
}

.ci-candidates-note::after {
    content: "";

    position: absolute;
    right: 22%;
    bottom: -75px;

    width: 160px;
    height: 160px;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;

    box-shadow:
        0 0 0 25px rgba(255, 255, 255, 0.025),
        0 0 0 50px rgba(255, 255, 255, 0.015);

    pointer-events: none;
}

.ci-note-icon {
    position: relative;
    z-index: 2;

    width: 56px;
    height: 56px;
    flex: 0 0 56px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 50%;

    color: var(--ci-navy);
    background: var(--ci-gold);

    font-size: 20px;

    box-shadow: 0 10px 30px rgba(255, 196, 0, 0.22);
}

.ci-note-content {
    position: relative;
    z-index: 2;
}

.ci-note-content strong {
    display: block;
    margin-bottom: 4px;

    color: #ffffff;

    font-size: 15px;
    font-weight: 800;
}

.ci-note-content p {
    max-width: 720px;
    margin: 0;

    color: rgba(255, 255, 255, 0.7);

    font-size: 12px;
    line-height: 1.6;
}

.ci-note-button {
    position: relative;
    z-index: 2;

    min-height: 48px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    padding: 12px 18px;

    border: 1px solid var(--ci-gold);
    border-radius: 10px;

    color: var(--ci-navy);
    background: var(--ci-gold);

    text-decoration: none;

    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;

    transition:
        transform 0.3s ease,
        color 0.3s ease,
        background 0.3s ease;
}

.ci-note-button:hover {
    color: var(--ci-navy);
    background: #ffffff;
    border-color: #ffffff;
    transform: translateY(-3px);
}


/* =====================================================
   TABLET RESPONSIVE
===================================================== */

@media (max-width: 991px) {

    .ci-candidates-section {
        padding: 55px 0;
    }

    .ci-candidates-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ci-candidate-featured {
        grid-column: span 2;
    }

    .ci-candidates-note {
        grid-template-columns: auto 1fr;
    }

    .ci-note-button {
        grid-column: 1 / -1;
        width: fit-content;
        margin-left: 72px;
    }
}


/* =====================================================
   MOBILE RESPONSIVE
===================================================== */

@media (max-width: 767px) {

    .ci-candidates-section {
        padding: 44px 0;
    }

    .ci-candidates-container {
        width: min(100% - 24px, 1220px);
    }

    .ci-candidates-heading {
        margin-bottom: 27px;
    }

    .ci-candidates-heading h2 {
        font-size: 33px;
        letter-spacing: -1px;
    }

    .ci-candidates-heading p {
        font-size: 14px;
    }

    .ci-candidates-grid {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    .ci-candidate-featured {
        grid-column: auto;
    }

    .ci-candidate-card {
        min-height: auto;
        padding: 18px;
        border-radius: 16px;
    }

    .ci-candidate-icon {
        width: 52px;
        height: 52px;
        flex-basis: 52px;

        font-size: 18px;
    }

    .ci-candidate-content h3 {
        font-size: 15px;
    }

    .ci-candidates-note {
        grid-template-columns: auto 1fr;
        padding: 18px;
    }

    .ci-note-button {
        grid-column: 1 / -1;
        width: 100%;
        margin-left: 0;
    }
}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ci-candidates-container {
        width: calc(100% - 20px);
    }

    .ci-candidates-heading h2 {
        font-size: 29px;
    }

    .ci-candidates-label {
        font-size: 9px;
        letter-spacing: 0.8px;
    }

    .ci-candidate-card {
        gap: 13px;
        padding: 16px;
    }

    .ci-candidate-icon {
        width: 47px;
        height: 47px;
        flex-basis: 47px;

        font-size: 16px;
    }

    .ci-candidate-content p {
        font-size: 12px;
    }

    .ci-candidates-note {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .ci-note-button {
        width: 100%;
    }
}

/* =========================================
   COCHLEAR IMPLANT SERVICES
========================================= */

.hns-ci-services-section {
    position: relative;
    width: 100%;
    padding: 70px 0;
    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(255, 196, 0, 0.10),
            transparent 22%
        ),
        radial-gradient(
            circle at 92% 86%,
            rgba(25, 54, 143, 0.08),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #fffaf0 0%,
            #f7f6f1 48%,
            #f2f7ff 100%
        );
    overflow: hidden;
}

.hns-ci-services-section *,
.hns-ci-services-section *::before,
.hns-ci-services-section *::after {
    box-sizing: border-box;
}

.hns-ci-services-section .container {
    position: relative;
    z-index: 3;
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

/* Decorative Shapes */

.hns-ci-services-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-ci-services-shape.shape-one {
    top: -180px;
    right: -130px;
    width: 410px;
    height: 410px;
    border: 1px solid rgba(25, 54, 143, 0.08);
}

.hns-ci-services-shape.shape-two {
    bottom: -220px;
    left: -170px;
    width: 450px;
    height: 450px;
    background: rgba(255, 196, 0, 0.07);
}

/* Heading */

.hns-ci-services-heading {
    max-width: 780px;
    margin: 0 auto 45px;
    text-align: center;
}

.hns-ci-services-label {
    display: inline-flex;
    align-items: center;
    padding: 8px 18px;
    margin-bottom: 14px;
    border: 1px solid rgba(25, 54, 143, 0.11);
    border-radius: 50px;
    background: #ffffff;
    color: #19368f;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.1px;
    text-transform: uppercase;
    box-shadow: 0 8px 22px rgba(8, 22, 56, 0.05);
}

.hns-ci-services-label::before {
    content: "";
    width: 7px;
    height: 7px;
    margin-right: 9px;
    border-radius: 50%;
    background: #ffc400;
    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.13);
}

.hns-ci-services-heading h2 {
    margin: 0;
    color: #081638;
    font-size: clamp(36px, 4.5vw, 55px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -1.3px;
}

.hns-ci-services-heading h2 span {
    color: #19368f;
}

/* Services List */

.hns-ci-services-list {
    display: grid;
    gap: 28px;
}

/* Individual Service */

.hns-ci-service-item {
    display: grid;
    grid-template-columns: minmax(300px, 0.78fr) minmax(0, 1.22fr);
    align-items: stretch;
    min-height: 420px;
    border: 1px solid rgba(8, 22, 56, 0.08);
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 20px 52px rgba(8, 22, 56, 0.08);
    overflow: hidden;
}

.hns-ci-service-reverse {
    grid-template-columns: minmax(0, 1.22fr) minmax(300px, 0.78fr);
}

.hns-ci-service-reverse .hns-ci-service-image {
    order: 2;
}

.hns-ci-service-reverse .hns-ci-service-content {
    order: 1;
}

/* Image */

.hns-ci-service-image {
    position: relative;
    min-height: 100%;
    overflow: hidden;
    background: #081638;
}

.hns-ci-service-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(8, 22, 56, 0.46) 100%
        );
    pointer-events: none;
}

.hns-ci-service-image img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 420px;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s ease;
}

.hns-ci-service-item:hover .hns-ci-service-image img {
    transform: scale(1.045);
}

.hns-ci-service-number {
    position: absolute;
    right: 20px;
    bottom: 20px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 16px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
    color: #081638;
    font-size: 16px;
    font-weight: 900;
    box-shadow: 0 13px 30px rgba(0, 0, 0, 0.20);
}

/* Content */

.hns-ci-service-content {
    align-self: center;
    min-width: 0;
    padding: 34px 38px;
}

.hns-ci-service-tag {
    display: inline-flex;
    align-items: center;
    padding: 7px 15px;
    margin-bottom: 13px;
    border-radius: 50px;
    background: rgba(255, 196, 0, 0.13);
    color: #19368f;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.9px;
    text-transform: uppercase;
}

.hns-ci-service-content h3 {
    margin: 0 0 15px;
    color: #081638;
    font-size: clamp(26px, 3vw, 37px);
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.7px;
}

.hns-ci-service-content p {
    margin: 0 0 13px;
    color: #5f6675;
    font-size: 15px;
    line-height: 1.72;
}

/* Bullet Points */

.hns-ci-service-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    padding: 0;
    margin: 8px 0 0;
    list-style: none;
}

.hns-ci-service-points li {
    position: relative;
    min-height: 44px;
    padding: 9px 0 9px 31px;
    border-bottom: 1px solid rgba(8, 22, 56, 0.07);
    color: #4e5869;
    font-size: 14px;
    font-weight: 650;
    line-height: 1.45;
}

.hns-ci-service-points li::before {
    content: "✓";
    position: absolute;
    top: 9px;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 21px;
    height: 21px;
    border-radius: 6px;
    background: linear-gradient(135deg, #ffc400, #ffad00);
    color: #081638;
    font-size: 11px;
    font-weight: 900;
}

.hns-ci-service-note {
    margin-top: 17px !important;
    padding: 13px 15px;
    border-left: 4px solid #ffc400;
    border-radius: 0 12px 12px 0;
    background: rgba(25, 54, 143, 0.055);
    color: #4f5869 !important;
    font-size: 14px !important;
    font-weight: 600;
}

/* Tablet */

@media (max-width: 991px) {

    .hns-ci-services-section {
        padding: 58px 0;
    }

    .hns-ci-service-item,
    .hns-ci-service-reverse {
        grid-template-columns: minmax(250px, 0.8fr) minmax(0, 1.2fr);
    }

    .hns-ci-service-reverse .hns-ci-service-image {
        order: 1;
    }

    .hns-ci-service-reverse .hns-ci-service-content {
        order: 2;
    }

    .hns-ci-service-content {
        padding: 28px;
    }

    .hns-ci-service-points {
        grid-template-columns: 1fr;
    }
}

/* Mobile */

@media (max-width: 767px) {

    .hns-ci-services-section {
        padding: 48px 0;
    }

    .hns-ci-services-section .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-ci-services-heading {
        margin-bottom: 32px;
        text-align: left;
    }

    .hns-ci-services-heading h2 {
        letter-spacing: -0.7px;
    }

    .hns-ci-services-list {
        gap: 20px;
    }

    .hns-ci-service-item,
    .hns-ci-service-reverse {
        grid-template-columns: 1fr;
        min-height: auto;
        border-radius: 21px;
    }

    .hns-ci-service-image,
    .hns-ci-service-reverse .hns-ci-service-image {
        order: 1;
        height: 270px;
    }

    .hns-ci-service-content,
    .hns-ci-service-reverse .hns-ci-service-content {
        order: 2;
        padding: 25px 21px;
    }

    .hns-ci-service-image img {
        min-height: 270px;
    }

    .hns-ci-service-content h3 {
        font-size: 26px;
    }

    .hns-ci-service-content p {
        font-size: 14px;
        line-height: 1.68;
    }

    .hns-ci-service-points {
        grid-template-columns: 1fr;
    }

    .hns-ci-service-points li {
        min-height: auto;
        font-size: 13px;
    }
}

/* Small Mobile */

@media (max-width: 480px) {

    .hns-ci-service-image,
    .hns-ci-service-image img {
        height: 230px;
        min-height: 230px;
    }

    .hns-ci-service-number {
        right: 15px;
        bottom: 15px;
        width: 48px;
        height: 48px;
        border-radius: 14px;
    }
}

/*==============================
 Implant Trust Section
===============================*/

.implant-trust-section{

    padding:70px 0;

    background:linear-gradient(135deg,#081638,#19368f);

    position:relative;

    overflow:hidden;

}

.implant-trust-section::before{

    content:"";

    position:absolute;

    width:420px;
    height:420px;

    border-radius:50%;

    background:rgba(255,255,255,.04);

    top:-180px;
    right:-160px;

}

.implant-trust-wrapper{

    display:grid;

    grid-template-columns:1.2fr .8fr;

    gap:40px;

    align-items:center;

}

.implant-tag{

    display:inline-block;

    padding:8px 18px;

    background:rgba(255,196,0,.15);

    color:#FFC400;

    border-radius:50px;

    font-size:12px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:18px;

}

.implant-trust-left h2{

    color:#fff;

    font-size:44px;

    font-weight:800;

    line-height:1.2;

    margin-bottom:25px;

}

.implant-trust-left h2 span{

    display:block;

    color:#FFC400;

}

.implant-list{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:15px 25px;

    list-style:none;

    padding:0;

    margin:0;

}

.implant-list li{

    position:relative;

    color:#fff;

    padding-left:32px;

    font-size:15px;

    line-height:1.6;

}

.implant-list li::before{

    content:"✓";

    position:absolute;

    left:0;

    top:0;

    width:22px;

    height:22px;

    border-radius:6px;

    background:#FFC400;

    color:#081638;

    display:flex;

    align-items:center;

    justify-content:center;

    font-weight:800;

    font-size:12px;

}

/* Right */

.implant-commitment{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(12px);

    border:1px solid rgba(255,255,255,.12);

    border-radius:24px;

    padding:40px;

    position:relative;

}

.commitment-icon{

    width:65px;

    height:65px;

    background:#FFC400;

    color:#081638;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:24px;

    margin-bottom:22px;

}

.implant-commitment h3{

    color:#fff;

    font-size:30px;

    margin-bottom:18px;

    font-weight:800;

}

.implant-commitment p{

    color:rgba(255,255,255,.82);

    line-height:1.8;

    font-size:15px;

    margin-bottom:18px;

}

.implant-commitment p:last-child{

    margin-bottom:0;

}

/* Responsive */

@media(max-width:991px){

.implant-trust-wrapper{

grid-template-columns:1fr;

}

.implant-list{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

.implant-trust-section{

padding:55px 0;

}

.implant-trust-left h2{

font-size:34px;

}

.implant-commitment{

padding:28px;

}

.implant-commitment h3{

font-size:26px;

}

.implant-list li{

font-size:14px;

}

.implant-commitment p{

font-size:14px;

}

}

/* =====================================================
   COCHLEAR IMPLANT CENTRE BANNER
===================================================== */

.ci-service-banner {
    --ci-navy: #081638;
    --ci-blue: #0c1d50;
    --ci-light-blue: #19368f;
    --ci-accent: #ffc400;
    --ci-white: #ffffff;

    position: relative;
    width: 100%;
    min-height: 610px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;

    background-image:
        linear-gradient(
            90deg,
            rgba(5, 17, 48, 0.97) 0%,
            rgba(8, 26, 73, 0.92) 42%,
            rgba(10, 35, 95, 0.62) 72%,
            rgba(8, 22, 56, 0.35) 100%
        ),
        url("images/cochlear-implant-banner.png");

    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
}

.ci-banner-overlay {
    position: absolute;
    inset: 0;
    z-index: -2;
    pointer-events: none;

    background:
        radial-gradient(
            circle at 14% 30%,
            rgba(255, 196, 0, 0.12),
            transparent 26%
        ),
        linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.02),
            rgba(4, 14, 42, 0.14)
        );
}

.ci-banner-container {
    width: min(100% - 40px, 1240px);
    margin-inline: auto;
    padding: 100px 0 125px;
    position: relative;
    z-index: 3;
}

.ci-banner-content {
    width: min(100%, 720px);
}

/* Breadcrumb */

.ci-banner-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 22px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    font-weight: 500;
}

.ci-banner-breadcrumb a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--ci-white);
    text-decoration: none;
    transition: color 0.3s ease;
}

.ci-banner-breadcrumb a:hover {
    color: var(--ci-accent);
}

.ci-banner-breadcrumb span i {
    font-size: 10px;
    color: var(--ci-accent);
}

/* Small Label */

.ci-banner-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 9px 17px;
    margin-bottom: 18px;
    border: 1px solid rgba(255, 196, 0, 0.38);
    border-radius: 50px;

    color: var(--ci-accent);
    background: rgba(255, 196, 0, 0.09);
    backdrop-filter: blur(8px);

    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.ci-banner-label::before {
    content: "";
    width: 7px;
    height: 7px;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--ci-accent);
    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.13);
}

/* Heading */

.ci-banner-content h1 {
    max-width: 680px;
    margin: 0 0 20px;
    color: var(--ci-white);

    font-family: "Poppins", sans-serif;
    font-size: clamp(46px, 5.2vw, 76px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -2.5px;
}

.ci-banner-content h1 strong {
    display: block;
    color: var(--ci-accent);
    font-weight: 700;
}

.ci-banner-content p {
    max-width: 650px;
    margin: 0 0 30px;

    color: rgba(255, 255, 255, 0.82);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.75;
}

/* Buttons */

.ci-banner-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 36px;
}

.ci-primary-btn,
.ci-secondary-btn {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 23px;
    border-radius: 10px;
    text-decoration: none;

    font-size: 14px;
    font-weight: 700;
    transition:
        transform 0.3s ease,
        background 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.ci-primary-btn {
    color: var(--ci-navy);
    background: var(--ci-accent);
    border: 1px solid var(--ci-accent);
    box-shadow: 0 14px 32px rgba(255, 196, 0, 0.23);
}

.ci-primary-btn:hover {
    color: var(--ci-white);
    background: var(--ci-light-blue);
    border-color: var(--ci-light-blue);
    transform: translateY(-3px);
    box-shadow: 0 18px 38px rgba(6, 22, 68, 0.32);
}

.ci-secondary-btn {
    color: var(--ci-white);
    border: 1px solid rgba(255, 255, 255, 0.35);
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
}

.ci-secondary-btn:hover {
    color: var(--ci-navy);
    background: var(--ci-white);
    border-color: var(--ci-white);
    transform: translateY(-3px);
}

/* Highlights */

.ci-banner-highlights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
    width: min(100%, 700px);
}

.ci-highlight-item {
    min-height: 78px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px;

    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(12px);

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease;
}

.ci-highlight-item:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 196, 0, 0.4);
    background: rgba(255, 255, 255, 0.12);
}

.ci-highlight-icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;

    border-radius: 10px;
    color: var(--ci-accent);
    background: rgba(255, 196, 0, 0.12);
    font-size: 17px;
}

.ci-highlight-item div {
    min-width: 0;
}

.ci-highlight-item strong {
    display: block;
    margin-bottom: 3px;
    color: var(--ci-white);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
}

.ci-highlight-item small {
    display: block;
    color: rgba(255, 255, 255, 0.64);
    font-size: 10px;
    line-height: 1.4;
}

/* Decorative Shapes */

.ci-banner-shape {
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
}

.ci-shape-one {
    width: 330px;
    height: 330px;
    top: -165px;
    left: -110px;
    border: 1px solid rgba(255, 196, 0, 0.14);
}

.ci-shape-one::before,
.ci-shape-one::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(255, 196, 0, 0.1);
}

.ci-shape-one::before {
    inset: 42px;
}

.ci-shape-one::after {
    inset: 88px;
}

.ci-shape-two {
    width: 250px;
    height: 250px;
    right: 6%;
    bottom: -130px;
    background: rgba(255, 196, 0, 0.06);
    filter: blur(2px);
}

.ci-banner-dot {
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    background: var(--ci-accent);
    box-shadow: 0 0 0 8px rgba(255, 196, 0, 0.08);
}

.ci-dot-one {
    width: 7px;
    height: 7px;
    top: 24%;
    left: 5%;
}

.ci-dot-two {
    width: 5px;
    height: 5px;
    right: 9%;
    top: 20%;
}

/* Bottom Wave */

.ci-banner-bottom-wave {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 82px;
    z-index: 4;
    pointer-events: none;
}

.ci-banner-bottom-wave svg {
    display: block;
    width: 100%;
    height: 100%;
}

.ci-banner-bottom-wave path {
    fill: #ffffff;
}

/* =====================================================
   TABLET RESPONSIVE
===================================================== */

@media (max-width: 991px) {

    .ci-service-banner {
        min-height: 570px;
        background-position: 64% center;
    }

    .ci-service-banner::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        background: rgba(5, 17, 48, 0.2);
    }

    .ci-banner-container {
        padding: 85px 0 115px;
    }

    .ci-banner-content {
        width: min(100%, 680px);
    }

    .ci-banner-content h1 {
        font-size: clamp(43px, 7vw, 62px);
    }

    .ci-banner-highlights {
        grid-template-columns: repeat(3, minmax(160px, 1fr));
    }
}

/* =====================================================
   MOBILE RESPONSIVE
===================================================== */

@media (max-width: 767px) {

    .ci-service-banner {
        min-height: auto;
        text-align: center;

        background-image:
            linear-gradient(
                180deg,
                rgba(5, 17, 48, 0.93) 0%,
                rgba(7, 25, 70, 0.88) 100%
            ),
            url("images/cochlear-implant-banner.png");

        background-position: center;
    }

    .ci-banner-container {
        width: min(100% - 28px, 1240px);
        padding: 65px 0 105px;
    }

    .ci-banner-content {
        width: 100%;
        margin-inline: auto;
    }

    .ci-banner-breadcrumb {
        justify-content: center;
        margin-bottom: 18px;
    }

    .ci-banner-label {
        margin-bottom: 16px;
        font-size: 11px;
        letter-spacing: 1px;
    }

    .ci-banner-content h1 {
        margin-bottom: 17px;
        font-size: clamp(39px, 12vw, 54px);
        line-height: 1.07;
        letter-spacing: -1.5px;
    }

    .ci-banner-content p {
        max-width: 560px;
        margin-inline: auto;
        margin-bottom: 25px;
        font-size: 15px;
        line-height: 1.7;
    }

    .ci-banner-actions {
        justify-content: center;
        margin-bottom: 28px;
    }

    .ci-primary-btn,
    .ci-secondary-btn {
        min-height: 51px;
        padding: 13px 19px;
    }

    .ci-banner-highlights {
        grid-template-columns: 1fr;
        width: min(100%, 440px);
        margin-inline: auto;
        text-align: left;
    }

    .ci-highlight-item {
        min-height: 70px;
        padding: 11px 13px;
    }

    .ci-highlight-item strong {
        font-size: 13px;
    }

    .ci-highlight-item small {
        font-size: 11px;
    }

    .ci-banner-bottom-wave {
        height: 58px;
    }

    .ci-dot-one,
    .ci-dot-two {
        display: none;
    }
}

/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ci-banner-container {
        width: min(100% - 22px, 1240px);
        padding-top: 55px;
    }

    .ci-banner-breadcrumb {
        font-size: 12px;
    }

    .ci-banner-content h1 {
        font-size: 38px;
    }

    .ci-banner-content p {
        font-size: 14px;
    }

    .ci-banner-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .ci-primary-btn,
    .ci-secondary-btn {
        width: 100%;
    }
}

/* =====================================================
   ABOUT US HERO SECTION
===================================================== */

.about-page-hero {
    --about-navy: #081638;
    --about-dark-blue: #0c1d50;
    --about-blue: #19368f;
    --about-bright-blue: #356ce0;
    --about-gold: #ffc400;
    --about-white: #ffffff;

    position: relative;

    width: 100%;
    min-height: 560px;

    display: flex;
    align-items: center;

    overflow: hidden;
    isolation: isolate;

    background-image:
        linear-gradient(
            90deg,
            rgba(5, 16, 46, 0.97) 0%,
            rgba(8, 27, 76, 0.92) 42%,
            rgba(12, 38, 101, 0.68) 70%,
            rgba(8, 22, 56, 0.28) 100%
        ),
        url("images/about-hero-bg.png");

    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
}


/* =====================================================
   BACKGROUND OVERLAY
===================================================== */

.about-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: -2;

    background:
        radial-gradient(
            circle at 15% 30%,
            rgba(255, 196, 0, 0.13),
            transparent 25%
        ),
        radial-gradient(
            circle at 75% 10%,
            rgba(53, 108, 224, 0.16),
            transparent 25%
        );

    pointer-events: none;
}


/* =====================================================
   CONTAINER
===================================================== */

.about-hero-container {
    position: relative;
    z-index: 3;

    width: min(100% - 40px, 1220px);
    margin-inline: auto;

    padding: 82px 0 105px;
}

.about-hero-content {
    width: min(100%, 730px);
}


/* =====================================================
   BREADCRUMB
===================================================== */

.about-hero-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;

    margin-bottom: 19px;

    color: rgba(255, 255, 255, 0.7);

    font-size: 13px;
    font-weight: 550;
}

.about-hero-breadcrumb a {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    color: var(--about-white);
    text-decoration: none;

    transition: color 0.3s ease;
}

.about-hero-breadcrumb a:hover {
    color: var(--about-gold);
}

.about-hero-breadcrumb span i {
    color: var(--about-gold);
    font-size: 9px;
}


/* =====================================================
   SMALL LABEL
===================================================== */

.about-hero-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 17px;
    padding: 8px 16px;

    border: 1px solid rgba(255, 196, 0, 0.36);
    border-radius: 50px;

    color: var(--about-gold);

    background: rgba(255, 196, 0, 0.09);
    backdrop-filter: blur(9px);

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.25px;
    text-transform: uppercase;
}

.about-hero-label::before {
    content: "";

    width: 7px;
    height: 7px;
    flex-shrink: 0;

    border-radius: 50%;
    background: var(--about-gold);

    box-shadow: 0 0 0 5px rgba(255, 196, 0, 0.13);
}


/* =====================================================
   HEADING
===================================================== */

.about-hero-content h1 {
    max-width: 720px;
    margin: 0 0 18px;

    color: var(--about-white);

    font-family: "Poppins", sans-serif;
    font-size: clamp(44px, 5vw, 69px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -2px;
}

.about-hero-content h1 span {
    display: block;

    background: linear-gradient(
        90deg,
        var(--about-gold),
        #ffe477
    );

    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


/* =====================================================
   PARAGRAPH
===================================================== */

.about-hero-content > p {
    max-width: 660px;
    margin: 0 0 27px;

    color: rgba(255, 255, 255, 0.8);

    font-size: 16px;
    line-height: 1.75;
}


/* =====================================================
   BUTTONS
===================================================== */

.about-hero-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 13px;

    margin-bottom: 32px;
}

.about-primary-btn,
.about-secondary-btn {
    min-height: 52px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    padding: 13px 21px;

    border-radius: 10px;

    text-decoration: none;

    font-size: 13px;
    font-weight: 800;

    transition:
        transform 0.3s ease,
        color 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.about-primary-btn {
    color: var(--about-navy);

    border: 1px solid var(--about-gold);
    background: var(--about-gold);

    box-shadow: 0 14px 34px rgba(255, 196, 0, 0.22);
}

.about-primary-btn:hover {
    color: var(--about-white);

    border-color: var(--about-bright-blue);
    background: var(--about-bright-blue);

    transform: translateY(-3px);

    box-shadow: 0 18px 40px rgba(8, 22, 56, 0.3);
}

.about-secondary-btn {
    color: var(--about-white);

    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.08);

    backdrop-filter: blur(10px);
}

.about-secondary-btn:hover {
    color: var(--about-navy);

    border-color: var(--about-white);
    background: var(--about-white);

    transform: translateY(-3px);
}


/* =====================================================
   HIGHLIGHTS
===================================================== */

.about-hero-highlights {
    width: min(100%, 700px);

    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;
}

.about-highlight-item {
    display: flex;
    align-items: center;
    gap: 11px;

    min-height: 72px;
    padding: 11px 12px;

    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 12px;

    background: rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(11px);

    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background 0.3s ease;
}

.about-highlight-item:hover {
    transform: translateY(-4px);

    border-color: rgba(255, 196, 0, 0.4);
    background: rgba(255, 255, 255, 0.12);
}

.about-highlight-icon {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;

    display: grid;
    place-items: center;

    border-radius: 10px;

    color: var(--about-gold);
    background: rgba(255, 196, 0, 0.12);

    font-size: 16px;
}

.about-highlight-item div {
    min-width: 0;
}

.about-highlight-item strong {
    display: block;
    margin-bottom: 2px;

    color: var(--about-white);

    font-size: 12px;
    font-weight: 800;
    line-height: 1.35;
}

.about-highlight-item small {
    display: block;

    color: rgba(255, 255, 255, 0.63);

    font-size: 10px;
    line-height: 1.4;
}


/* =====================================================
   DECORATIVE RINGS
===================================================== */

.about-hero-ring {
    position: absolute;
    z-index: -1;

    border-radius: 50%;
    pointer-events: none;
}

.about-ring-one {
    width: 330px;
    height: 330px;

    top: -180px;
    left: -120px;

    border: 1px solid rgba(255, 196, 0, 0.13);

    box-shadow:
        0 0 0 45px rgba(255, 196, 0, 0.025),
        0 0 0 90px rgba(255, 196, 0, 0.015);
}

.about-ring-two {
    width: 240px;
    height: 240px;

    right: 6%;
    bottom: -130px;

    border: 1px solid rgba(255, 255, 255, 0.09);

    box-shadow:
        0 0 0 32px rgba(255, 255, 255, 0.022),
        0 0 0 65px rgba(255, 255, 255, 0.012);
}


/* =====================================================
   DOT PATTERN
===================================================== */

.about-hero-dots {
    position: absolute;
    top: 70px;
    right: 8%;

    width: 105px;
    height: 75px;

    z-index: -1;

    background-image: radial-gradient(
        rgba(255, 255, 255, 0.24) 2px,
        transparent 2px
    );

    background-size: 15px 15px;
}


/* =====================================================
   BOTTOM WAVE
===================================================== */

.about-hero-bottom {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;

    z-index: 4;

    height: 70px;
    pointer-events: none;
}

.about-hero-bottom svg {
    width: 100%;
    height: 100%;
    display: block;
}

.about-hero-bottom path {
    fill: #ffffff;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .about-page-hero {
        min-height: 530px;
        background-position: 62% center;
    }

    .about-hero-container {
        padding: 72px 0 100px;
    }

    .about-hero-content h1 {
        font-size: clamp(42px, 7vw, 60px);
    }
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .about-page-hero {
        min-height: auto;
        text-align: center;

        background-image:
            linear-gradient(
                180deg,
                rgba(5, 16, 46, 0.93),
                rgba(8, 27, 76, 0.9)
            ),
            url("images/about-hero-bg.png");

        background-position: center;
    }

    .about-hero-container {
        width: min(100% - 28px, 1220px);
        padding: 58px 0 95px;
    }

    .about-hero-content {
        width: 100%;
        margin-inline: auto;
    }

    .about-hero-breadcrumb,
    .about-hero-actions {
        justify-content: center;
    }

    .about-hero-content h1 {
        margin-bottom: 16px;

        font-size: clamp(38px, 11vw, 51px);
        line-height: 1.08;
        letter-spacing: -1.3px;
    }

    .about-hero-content > p {
        max-width: 570px;
        margin-inline: auto;
        margin-bottom: 23px;

        font-size: 14px;
        line-height: 1.7;
    }

    .about-hero-actions {
        margin-bottom: 27px;
    }

    .about-hero-highlights {
        grid-template-columns: 1fr;

        width: min(100%, 430px);
        margin-inline: auto;

        text-align: left;
    }

    .about-highlight-item {
        min-height: 66px;
    }

    .about-hero-bottom {
        height: 52px;
    }

    .about-hero-dots {
        display: none;
    }
}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .about-hero-container {
        width: calc(100% - 22px);
        padding-top: 50px;
    }

    .about-hero-label {
        font-size: 9px;
        letter-spacing: 0.8px;
    }

    .about-hero-content h1 {
        font-size: 36px;
    }

    .about-hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .about-primary-btn,
    .about-secondary-btn {
        width: 100%;
    }
}

/*==================================================
        HEARING & AUDIOLOGY SERVICE BANNER
==================================================*/

.ha-service-banner {
    --ci-navy: #081638;
    --ci-blue: #0c1d50;
    --ci-light-blue: #19368f;
    --ci-accent: #ffc400;
    --ci-white: #ffffff;

    position: relative;
    width: 100%;
    min-height: 610px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;

    background-image:
        linear-gradient(
            90deg,
            rgba(5, 17, 48, 0.97) 0%,
            rgba(8, 26, 73, 0.92) 42%,
            rgba(10, 35, 95, 0.62) 72%,
            rgba(8, 22, 56, 0.35) 100%
        ),
        url("images/hearing-audiology-banner.png");

    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
}
.ta-service-banner {
    --ci-navy: #081638;
    --ci-blue: #0c1d50;
    --ci-light-blue: #19368f;
    --ci-accent: #ffc400;
    --ci-white: #ffffff;

    position: relative;
    width: 100%;
    min-height: 610px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;

    background-image:
        linear-gradient(
            90deg,
            rgba(5, 17, 48, 0.97) 0%,
            rgba(8, 26, 73, 0.92) 42%,
            rgba(10, 35, 95, 0.62) 72%,
            rgba(8, 22, 56, 0.35) 100%
        ),
        url("images/tinnitus-banner.png");

    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
}
.sa-service-banner {
    --ci-navy: #081638;
    --ci-blue: #0c1d50;
    --ci-light-blue: #19368f;
    --ci-accent: #ffc400;
    --ci-white: #ffffff;

    position: relative;
    width: 100%;
    min-height: 610px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;

    background-image:
        linear-gradient(
            90deg,
            rgba(5, 17, 48, 0.97) 0%,
            rgba(8, 26, 73, 0.92) 42%,
            rgba(10, 35, 95, 0.62) 72%,
            rgba(8, 22, 56, 0.35) 100%
        ),
        url("images/hearing-aids-banner.png");

    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
}

.ha-banner-overlay{
    position:absolute;
    inset:0;
    background:
    radial-gradient(circle at top right,
    rgba(255,196,0,.18),
    transparent 45%);
}

.ha-banner-container{
    width:100%;
    max-width:1320px;
    margin:auto;
    padding:0 15px;
    position:relative;
    z-index:2;
}

.ha-banner-content{
    max-width:720px;
    padding:130px 0 120px;
}

.ha-banner-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:rgba(255,255,255,.12);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,.18);
    color:#FFD44D;
    padding:10px 22px;
    border-radius:50px;
    font-size:15px;
    font-weight:600;
    margin-bottom:22px;
}

.ha-banner-badge i{
    font-size:18px;
}

.ha-banner-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin-bottom:25px;
}

.ha-banner-breadcrumb a{
    color:#fff;
    text-decoration:none;
    font-size:15px;
    font-weight:500;
    transition:.35s;
}

.ha-banner-breadcrumb a:hover{
    color:#FFC400;
}

.ha-banner-breadcrumb span{
    color:#FFC400;
    font-size:14px;
}

.ha-banner-content h1{
    color:#fff;
    font-size:58px;
    font-weight:800;
    line-height:1.15;
    margin-bottom:25px;
}

.ha-banner-content p{
    color:#edf2ff;
    font-size:19px;
    line-height:1.9;
    max-width:650px;
    margin-bottom:38px;
}

.ha-banner-actions{
    display:flex;
    flex-wrap:wrap;
    gap:18px;
}

.ha-primary-btn,
.ha-secondary-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    border-radius:50px;
    padding:15px 32px;
    font-size:16px;
    font-weight:700;
    transition:.35s;
}

.ha-primary-btn{
    background:#FFC400;
    color:#081638;
}

.ha-primary-btn:hover{
    background:#ffffff;
    color:#081638;
    transform:translateY(-4px);
}

.ha-secondary-btn{
    border:2px solid rgba(255,255,255,.35);
    color:#fff;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(10px);
}

.ha-secondary-btn:hover{
    background:#fff;
    color:#081638;
    border-color:#fff;
    transform:translateY(-4px);
}

.ha-banner-bottom-wave{
    position:absolute;
    left:0;
    right:0;
    bottom:-2px;
    line-height:0;
}

.ha-banner-bottom-wave svg{
    width:100%;
    height:100px;
    display:block;
}

.ha-banner-bottom-wave path{
    fill:#ffffff;
}

/*==========================
        Responsive
==========================*/

@media(max-width:1199px){

.ha-banner-content h1{
    font-size:50px;
}

}

@media(max-width:991px){

.ha-service-banner{
    min-height:500px;
    text-align:center;
}

.ha-banner-content{
    margin:auto;
    padding:120px 0 90px;
}

.ha-banner-breadcrumb{
    justify-content:center;
}

.ha-banner-actions{
    justify-content:center;
}

.ha-banner-content h1{
    font-size:42px;
}

.ha-banner-content p{
    margin-left:auto;
    margin-right:auto;
}

}

@media(max-width:767px){

.ha-service-banner{
    min-height:430px;
}

.ha-banner-content{
    padding:100px 0 70px;
}

.ha-banner-badge{
    font-size:13px;
    padding:8px 18px;
}

.ha-banner-content h1{
    font-size:34px;
}

.ha-banner-content p{
    font-size:16px;
    line-height:1.7;
}

.ha-primary-btn,
.ha-secondary-btn{
    width:100%;
    justify-content:center;
    padding:14px 25px;
}

.ha-banner-bottom-wave svg{
    height:70px;
}

}

@media(max-width:480px){

.ha-banner-content h1{
    font-size:28px;
}

.ha-banner-content p{
    font-size:15px;
}

.ha-banner-breadcrumb{
    gap:8px;
}

.ha-banner-breadcrumb a,
.ha-banner-breadcrumb span{
    font-size:13px;
}

}

/*==================================================
     HEARING & AUDIOLOGY INTRODUCTION SECTION
==================================================*/

.ha-intro-section{
    position:relative;
    overflow:hidden;
    width:100%;
    padding:85px 0;
    background:
        radial-gradient(
            circle at 8% 12%,
            rgba(255,196,0,.10),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #f6f9ff 0%,
            #ffffff 48%,
            #edf3ff 100%
        );
}

.ha-intro-container{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
}

.ha-intro-grid{
    display:grid;
    grid-template-columns:minmax(0, .92fr) minmax(0, 1.08fr);
    align-items:center;
    gap:75px;
}

/*==================================================
     BACKGROUND DECORATIONS
==================================================*/

.ha-intro-shape{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}

.ha-intro-shape-one{
    width:360px;
    height:360px;
    top:-190px;
    right:-150px;
    background:rgba(16,50,132,.07);
}

.ha-intro-shape-two{
    width:250px;
    height:250px;
    bottom:-130px;
    left:-110px;
    border:38px solid rgba(255,196,0,.08);
}

/*==================================================
     LEFT VISUAL
==================================================*/

.ha-intro-visual{
    position:relative;
    min-height:570px;
}

.ha-intro-image-wrapper{
    position:absolute;
    top:0;
    left:0;
    right:55px;
    bottom:45px;
    overflow:hidden;
    border-radius:34px 100px 34px 34px;
    box-shadow:0 28px 65px rgba(8,22,56,.18);
}

.ha-intro-image-wrapper::before{
    content:"";
    position:absolute;
    inset:16px;
    z-index:2;
    border:1px solid rgba(255,255,255,.38);
    border-radius:24px 82px 24px 24px;
    pointer-events:none;
}

.ha-intro-image-wrapper img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .7s ease;
}

.ha-intro-image-wrapper:hover img{
    transform:scale(1.045);
}

.ha-intro-image-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,22,56,.02),
            rgba(8,22,56,.48)
        );
}

.ha-intro-experience-card{
    position:absolute;
    z-index:3;
    left:25px;
    bottom:25px;
    display:flex;
    align-items:center;
    gap:14px;
    max-width:280px;
    padding:17px 21px;
    border:1px solid rgba(255,255,255,.20);
    border-radius:18px;
    background:rgba(8,22,56,.84);
    backdrop-filter:blur(12px);
    box-shadow:0 16px 35px rgba(0,0,0,.20);
}

.ha-intro-card-icon{
    width:50px;
    height:50px;
    flex:0 0 50px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:15px;
    background:#ffc400;
    color:#081638;
    font-size:21px;
}

.ha-intro-experience-card strong,
.ha-intro-experience-card span{
    display:block;
}

.ha-intro-experience-card strong{
    margin-bottom:3px;
    color:#ffffff;
    font-size:16px;
    font-weight:800;
}

.ha-intro-experience-card span{
    color:#dce5ff;
    font-size:13px;
    line-height:1.45;
}

/*==================================================
     FLOATING FEATURE CARDS
==================================================*/

.ha-intro-feature{
    position:absolute;
    z-index:4;
    display:flex;
    align-items:center;
    gap:13px;
    width:245px;
    padding:15px 17px;
    border:1px solid rgba(17,49,128,.10);
    border-radius:17px;
    background:rgba(255,255,255,.96);
    box-shadow:0 16px 40px rgba(9,29,79,.14);
}

.ha-intro-feature > i{
    width:45px;
    height:45px;
    flex:0 0 45px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffc400;
    font-size:18px;
}

.ha-intro-feature strong,
.ha-intro-feature span{
    display:block;
}

.ha-intro-feature strong{
    color:#0c1d50;
    font-size:15px;
    font-weight:800;
    line-height:1.3;
}

.ha-intro-feature span{
    margin-top:3px;
    color:#68728b;
    font-size:12px;
    line-height:1.4;
}

.ha-feature-one{
    top:65px;
    right:0;
}

.ha-feature-two{
    right:0;
    bottom:5px;
}

/*==================================================
     SOUND WAVE DECORATION
==================================================*/

.ha-intro-sound-wave{
    position:absolute;
    z-index:5;
    right:48px;
    top:230px;
    display:flex;
    align-items:center;
    gap:5px;
    height:58px;
    padding:8px 12px;
    border-radius:40px;
    background:rgba(255,196,0,.94);
    box-shadow:0 13px 28px rgba(255,196,0,.28);
}

.ha-intro-sound-wave span{
    display:block;
    width:4px;
    border-radius:10px;
    background:#081638;
    animation:haSoundWave 1.25s ease-in-out infinite;
}

.ha-intro-sound-wave span:nth-child(1){
    height:15px;
}

.ha-intro-sound-wave span:nth-child(2){
    height:28px;
    animation-delay:.10s;
}

.ha-intro-sound-wave span:nth-child(3){
    height:41px;
    animation-delay:.20s;
}

.ha-intro-sound-wave span:nth-child(4){
    height:25px;
    animation-delay:.30s;
}

.ha-intro-sound-wave span:nth-child(5){
    height:45px;
    animation-delay:.40s;
}

.ha-intro-sound-wave span:nth-child(6){
    height:31px;
    animation-delay:.50s;
}

.ha-intro-sound-wave span:nth-child(7){
    height:21px;
    animation-delay:.60s;
}

.ha-intro-sound-wave span:nth-child(8){
    height:13px;
    animation-delay:.70s;
}

@keyframes haSoundWave{
    0%,
    100%{
        transform:scaleY(.65);
    }

    50%{
        transform:scaleY(1);
    }
}

/*==================================================
     RIGHT CONTENT
==================================================*/

.ha-intro-content{
    position:relative;
}

.ha-intro-label{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:18px;
    padding:9px 17px;
    border:1px solid rgba(25,54,143,.12);
    border-radius:50px;
    background:#edf2ff;
    color:#19368f;
    font-size:14px;
    font-weight:800;
    letter-spacing:.5px;
}

.ha-intro-label i{
    color:#d5a500;
}

.ha-intro-content h2{
    margin:0;
    color:#081638;
    font-size:46px;
    font-weight:850;
    line-height:1.15;
    letter-spacing:-1.3px;
}

.ha-intro-content h2 span{
    display:block;
    color:#19368f;
}

.ha-intro-title-line{
    width:82px;
    height:5px;
    margin:20px 0 25px;
    border-radius:20px;
    background:linear-gradient(90deg,#ffc400,#19368f);
}

.ha-intro-content > p{
    margin:0 0 17px;
    color:#59647b;
    font-size:16px;
    line-height:1.82;
}

/*==================================================
     HIGHLIGHT BOX
==================================================*/

.ha-intro-highlight{
    display:flex;
    align-items:flex-start;
    gap:15px;
    margin:25px 0;
    padding:19px 20px;
    border-left:4px solid #ffc400;
    border-radius:0 17px 17px 0;
    background:#f1f5ff;
}

.ha-intro-highlight-icon{
    width:44px;
    height:44px;
    flex:0 0 44px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:13px;
    background:#0c1d50;
    color:#ffc400;
    font-size:18px;
}

.ha-intro-highlight p{
    margin:0;
    color:#3f4c67;
    font-size:15px;
    font-weight:600;
    line-height:1.7;
}

/*==================================================
     POINTS
==================================================*/

.ha-intro-points{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px 18px;
    margin-bottom:29px;
}

.ha-intro-point{
    display:flex;
    align-items:center;
    gap:10px;
    color:#26344f;
    font-size:14px;
    font-weight:700;
}

.ha-intro-point span{
    width:27px;
    height:27px;
    flex:0 0 27px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    font-size:11px;
}

/*==================================================
     BUTTON
==================================================*/

.ha-intro-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    min-height:52px;
    padding:13px 25px;
    border-radius:50px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffffff;
    text-decoration:none;
    font-size:15px;
    font-weight:800;
    box-shadow:0 14px 30px rgba(12,29,80,.23);
    transition:all .35s ease;
}

.ha-intro-button i{
    width:31px;
    height:31px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    transition:transform .35s ease;
}

.ha-intro-button:hover{
    color:#ffffff;
    transform:translateY(-4px);
    box-shadow:0 18px 38px rgba(12,29,80,.30);
}

.ha-intro-button:hover i{
    transform:translateX(4px);
}

/*==================================================
     RESPONSIVE
==================================================*/

@media(max-width:1199px){

    .ha-intro-grid{
        gap:50px;
    }

    .ha-intro-content h2{
        font-size:40px;
    }

    .ha-intro-visual{
        min-height:535px;
    }

    .ha-intro-feature{
        width:220px;
    }

}

@media(max-width:991px){

    .ha-intro-section{
        padding:70px 0;
    }

    .ha-intro-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .ha-intro-visual{
        width:100%;
        max-width:690px;
        min-height:570px;
        margin:0 auto;
    }

    .ha-intro-content{
        max-width:760px;
        margin:0 auto;
        text-align:center;
    }

    .ha-intro-title-line{
        margin-left:auto;
        margin-right:auto;
    }

    .ha-intro-content > p{
        text-align:left;
    }

    .ha-intro-highlight{
        text-align:left;
    }

    .ha-intro-point{
        text-align:left;
    }

}

@media(max-width:767px){

    .ha-intro-section{
        padding:58px 0;
    }

    .ha-intro-container{
        padding:0 15px;
    }

    .ha-intro-visual{
        min-height:auto;
        padding-bottom:0;
    }

    .ha-intro-image-wrapper{
        position:relative;
        inset:auto;
        height:420px;
        border-radius:24px 60px 24px 24px;
    }

    .ha-intro-image-wrapper::before{
        border-radius:17px 48px 17px 17px;
    }

    .ha-intro-feature{
        position:relative;
        top:auto;
        right:auto;
        bottom:auto;
        width:100%;
        margin-top:13px;
    }

    .ha-intro-sound-wave{
        top:195px;
        right:18px;
        transform:scale(.85);
    }

    .ha-intro-content h2{
        font-size:34px;
        letter-spacing:-.7px;
    }

    .ha-intro-content > p{
        font-size:15px;
        line-height:1.75;
    }

    .ha-intro-points{
        grid-template-columns:1fr;
    }

}

@media(max-width:575px){

    .ha-intro-grid{
        gap:42px;
    }

    .ha-intro-image-wrapper{
        height:350px;
    }

    .ha-intro-experience-card{
        left:14px;
        right:14px;
        bottom:14px;
        max-width:none;
        padding:13px 15px;
    }

    .ha-intro-card-icon{
        width:44px;
        height:44px;
        flex-basis:44px;
    }

    .ha-intro-sound-wave{
        display:none;
    }

    .ha-intro-content h2{
        font-size:29px;
    }

    .ha-intro-label{
        font-size:12px;
    }

    .ha-intro-highlight{
        padding:16px;
    }

    .ha-intro-button{
        width:100%;
        padding-left:18px;
        padding-right:18px;
    }

}

@media(max-width:400px){

    .ha-intro-image-wrapper{
        height:310px;
    }

    .ha-intro-content h2{
        font-size:26px;
    }

    .ha-intro-experience-card span{
        font-size:12px;
    }

}

/*==================================================
     WHY HEARING EVALUATION IS IMPORTANT
==================================================*/

.hearing-importance-section{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:85px 0;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(255,196,0,.11),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 52%,
            #19368f 100%
        );
}

.hearing-importance-container{
    position:relative;
    z-index:3;
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
}

.hearing-importance-grid{
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    align-items:center;
    gap:65px;
}

/*==================================================
     DECORATIVE SHAPES
==================================================*/

.hearing-importance-shape{
    position:absolute;
    pointer-events:none;
    border-radius:50%;
}

.hearing-importance-shape.shape-one{
    width:390px;
    height:390px;
    top:-230px;
    right:-120px;
    border:1px solid rgba(255,255,255,.09);
    box-shadow:
        0 0 0 55px rgba(255,255,255,.025),
        0 0 0 110px rgba(255,255,255,.018);
}

.hearing-importance-shape.shape-two{
    width:260px;
    height:260px;
    left:-140px;
    bottom:-140px;
    background:rgba(255,196,0,.06);
}

/*==================================================
     LEFT CONTENT
==================================================*/

.hearing-importance-content{
    position:relative;
}

.hearing-importance-label{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:20px;
    padding:10px 18px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:50px;
    background:rgba(255,255,255,.08);
    color:#ffc400;
    font-size:14px;
    font-weight:800;
    letter-spacing:.5px;
    backdrop-filter:blur(10px);
}

.hearing-importance-content h2{
    margin:0;
    color:#ffffff;
    font-size:48px;
    font-weight:850;
    line-height:1.13;
    letter-spacing:-1.2px;
}

.hearing-importance-content h2 span{
    display:block;
    color:#ffc400;
}

.hearing-importance-intro{
    margin:24px 0 28px;
    color:#dce5fb;
    font-size:17px;
    line-height:1.82;
}

/*==================================================
     CLINICAL NOTE
==================================================*/

.hearing-clinical-note{
    display:flex;
    align-items:flex-start;
    gap:16px;
    padding:21px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:20px;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(14px);
}

.clinical-note-icon{
    width:52px;
    height:52px;
    flex:0 0 52px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    background:#ffc400;
    color:#081638;
    font-size:21px;
}

.hearing-clinical-note strong{
    display:block;
    margin-bottom:6px;
    color:#ffffff;
    font-size:17px;
    font-weight:800;
}

.hearing-clinical-note p{
    margin:0;
    color:#d8e2f8;
    font-size:14px;
    line-height:1.7;
}

/*==================================================
     FOOTER NOTE
==================================================*/

.hearing-importance-footer{
    display:flex;
    align-items:flex-start;
    gap:14px;
    margin-top:20px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.11);
}

.hearing-footer-icon{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(255,196,0,.16);
    color:#ffc400;
    font-size:17px;
}

.hearing-importance-footer p{
    margin:0;
    color:#cbd7ef;
    font-size:14px;
    line-height:1.7;
}

/*==================================================
     RIGHT LIST
==================================================*/

.hearing-importance-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:17px;
}

.hearing-list-card{
    position:relative;
    display:flex;
    align-items:flex-start;
    gap:15px;
    min-height:145px;
    padding:23px 20px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.13);
    border-radius:21px;
    background:rgba(255,255,255,.96);
    box-shadow:0 18px 42px rgba(0,0,0,.16);
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.hearing-list-card::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:4px;
    background:linear-gradient(180deg,#ffc400,#19368f);
}

.hearing-list-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,196,0,.55);
    box-shadow:0 25px 50px rgba(0,0,0,.22);
}

.hearing-list-number{
    position:absolute;
    right:13px;
    bottom:-8px;
    color:rgba(12,29,80,.055);
    font-size:58px;
    font-weight:900;
    line-height:1;
    pointer-events:none;
}

.hearing-list-icon{
    position:relative;
    z-index:2;
    width:48px;
    height:48px;
    flex:0 0 48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:15px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffc400;
    font-size:19px;
    box-shadow:0 10px 22px rgba(12,29,80,.20);
}

.hearing-list-content{
    position:relative;
    z-index:2;
}

.hearing-list-content h3{
    margin:2px 0 7px;
    color:#0c1d50;
    font-size:17px;
    font-weight:850;
    line-height:1.3;
}

.hearing-list-content p{
    margin:0;
    color:#667188;
    font-size:13px;
    line-height:1.62;
}

/*==================================================
     RESPONSIVE
==================================================*/

@media(max-width:1199px){

    .hearing-importance-grid{
        gap:45px;
    }

    .hearing-importance-content h2{
        font-size:42px;
    }

    .hearing-list-card{
        padding:21px 18px;
    }

}

@media(max-width:991px){

    .hearing-importance-section{
        padding:70px 0;
    }

    .hearing-importance-grid{
        grid-template-columns:1fr;
        gap:45px;
    }

    .hearing-importance-content{
        max-width:760px;
        margin:0 auto;
        text-align:center;
    }

    .hearing-importance-intro{
        max-width:720px;
        margin-left:auto;
        margin-right:auto;
    }

    .hearing-clinical-note,
    .hearing-importance-footer{
        text-align:left;
    }

}

@media(max-width:767px){

    .hearing-importance-section{
        padding:58px 0;
    }

    .hearing-importance-container{
        padding:0 15px;
    }

    .hearing-importance-content h2{
        font-size:35px;
    }

    .hearing-importance-intro{
        font-size:15px;
        line-height:1.75;
    }

    .hearing-importance-list{
        grid-template-columns:1fr;
    }

    .hearing-list-card{
        min-height:auto;
    }

}

@media(max-width:575px){

    .hearing-importance-content h2{
        font-size:29px;
    }

    .hearing-importance-label{
        font-size:12px;
        padding:8px 14px;
    }

    .hearing-clinical-note{
        padding:17px;
    }

    .clinical-note-icon{
        width:45px;
        height:45px;
        flex-basis:45px;
        font-size:18px;
    }

    .hearing-list-card{
        padding:19px 17px;
        border-radius:17px;
    }

    .hearing-list-icon{
        width:44px;
        height:44px;
        flex-basis:44px;
    }

}

@media(max-width:400px){

    .hearing-importance-content h2{
        font-size:26px;
    }

    .hearing-clinical-note,
    .hearing-importance-footer{
        gap:11px;
    }

    .hearing-list-content h3{
        font-size:16px;
    }

}

/*==================================================
     HEARING & AUDIOLOGY SERVICES
==================================================*/

.audio-service-section{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:80px 0;
    background:#ffffff;
}

.audio-service-container{
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
}

/*==================================================
     SECTION HEADING
==================================================*/

.audio-service-heading{
    max-width:800px;
    margin:0 auto 55px;
    text-align:center;
}

.audio-service-subtitle{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:17px;
    padding:9px 17px;
    border:1px solid rgba(25,54,143,.13);
    border-radius:50px;
    background:#edf2ff;
    color:#19368f;
    font-size:13px;
    font-weight:800;
    letter-spacing:.5px;
}

.audio-service-subtitle i{
    color:#d19f00;
}

.audio-service-heading h2{
    margin:0;
    color:#081638;
    font-size:46px;
    font-weight:850;
    line-height:1.15;
    letter-spacing:-1px;
}

.audio-service-heading h2 span{
    color:#19368f;
}

.audio-service-heading p{
    max-width:720px;
    margin:17px auto 0;
    color:#657088;
    font-size:16px;
    line-height:1.75;
}

/*==================================================
     SERVICE ROW
==================================================*/

.audio-service-item{
    display:grid;
    grid-template-columns:minmax(0, .94fr) minmax(0, 1.06fr);
    align-items:stretch;
    min-height:500px;
    margin-bottom:45px;
    overflow:hidden;
    border:1px solid rgba(12,29,80,.08);
    border-radius:28px;
    background:#f7f9ff;
    box-shadow:0 18px 48px rgba(8,22,56,.09);
}

.audio-service-item:last-child{
    margin-bottom:0;
}

.audio-service-reverse .audio-service-image{
    order:2;
}

.audio-service-reverse .audio-service-content{
    order:1;
}

/* Alternate backgrounds */

.audio-service-item:nth-of-type(even){
    background:
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 58%,
            #19368f 100%
        );
}

.audio-service-item:nth-of-type(even) .audio-service-content h3{
    color:#ffffff;
}

.audio-service-item:nth-of-type(even) .audio-service-content > p{
    color:#d7e1f7;
}

.audio-service-item:nth-of-type(even) .audio-service-list div{
    color:#edf3ff;
}

.audio-service-item:nth-of-type(even) .audio-service-note{
    border-color:rgba(255,255,255,.13);
    background:rgba(255,255,255,.08);
    color:#dce5f8;
}

.audio-service-item:nth-of-type(even) .audio-service-tag{
    background:rgba(255,196,0,.13);
    color:#ffc400;
}

/*==================================================
     IMAGE
==================================================*/

.audio-service-image{
    position:relative;
    min-height:500px;
    overflow:hidden;
    background:#0c1d50;
}

.audio-service-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,22,56,.02),
            rgba(8,22,56,.58)
        );
}

.audio-service-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .8s ease;
}

.audio-service-item:hover .audio-service-image img{
    transform:scale(1.055);
}

.audio-service-number{
    position:absolute;
    z-index:3;
    top:22px;
    left:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:52px;
    height:52px;
    padding:0 11px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:16px;
    background:rgba(8,22,56,.82);
    color:#ffc400;
    font-size:16px;
    font-weight:900;
    backdrop-filter:blur(10px);
}

.audio-image-label{
    position:absolute;
    z-index:3;
    left:23px;
    right:23px;
    bottom:23px;
    display:flex;
    align-items:center;
    gap:11px;
    max-width:max-content;
    padding:13px 18px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:50px;
    background:rgba(8,22,56,.82);
    color:#ffffff;
    font-size:13px;
    font-weight:800;
    backdrop-filter:blur(12px);
}

.audio-image-label i{
    color:#ffc400;
    font-size:16px;
}

/*==================================================
     CONTENT
==================================================*/

.audio-service-content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:45px 48px;
}

.audio-service-tag{
    align-self:flex-start;
    margin-bottom:14px;
    padding:8px 14px;
    border-radius:50px;
    background:#e9efff;
    color:#19368f;
    font-size:11px;
    font-weight:850;
    letter-spacing:.8px;
    text-transform:uppercase;
}

.audio-service-content h3{
    margin:0 0 16px;
    color:#081638;
    font-size:34px;
    font-weight:850;
    line-height:1.2;
    letter-spacing:-.5px;
}

.audio-service-content > p{
    margin:0 0 22px;
    color:#657088;
    font-size:15px;
    line-height:1.8;
}

/*==================================================
     SERVICE LIST
==================================================*/

.audio-service-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px 17px;
}

.audio-service-list div{
    display:flex;
    align-items:flex-start;
    gap:10px;
    color:#34415c;
    font-size:13px;
    font-weight:700;
    line-height:1.5;
}

.audio-service-list i{
    width:23px;
    height:23px;
    flex:0 0 23px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:1px;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    font-size:9px;
}

/*==================================================
     INFORMATION NOTE
==================================================*/

.audio-service-note{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin-top:24px;
    padding:15px 16px;
    border:1px solid rgba(25,54,143,.09);
    border-left:4px solid #ffc400;
    border-radius:0 14px 14px 0;
    background:#edf2ff;
    color:#506079;
    font-size:13px;
    font-weight:650;
    line-height:1.65;
}

.audio-service-note > i{
    margin-top:4px;
    color:#d09e00;
    font-size:16px;
}

/*==================================================
     HOVER
==================================================*/

.audio-service-item{
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.audio-service-item:hover{
    transform:translateY(-5px);
    border-color:rgba(255,196,0,.40);
    box-shadow:0 27px 65px rgba(8,22,56,.14);
}

/*==================================================
     RESPONSIVE
==================================================*/

@media(max-width:1199px){

    .audio-service-content{
        padding:40px 35px;
    }

    .audio-service-content h3{
        font-size:30px;
    }

    .audio-service-item,
    .audio-service-image{
        min-height:480px;
    }

}

@media(max-width:991px){

    .audio-service-section{
        padding:70px 0;
    }

    .audio-service-item{
        grid-template-columns:1fr;
        min-height:auto;
    }

    .audio-service-reverse .audio-service-image,
    .audio-service-reverse .audio-service-content{
        order:initial;
    }

    .audio-service-image{
        min-height:auto;
        height:430px;
    }

    .audio-service-content{
        padding:38px;
    }

}

@media(max-width:767px){

    .audio-service-section{
        padding:58px 0;
    }

    .audio-service-container{
        padding:0 15px;
    }

    .audio-service-heading{
        margin-bottom:40px;
    }

    .audio-service-heading h2{
        font-size:35px;
    }

    .audio-service-heading p{
        font-size:15px;
    }

    .audio-service-item{
        margin-bottom:30px;
        border-radius:22px;
    }

    .audio-service-image{
        height:350px;
    }

    .audio-service-content{
        padding:30px 25px;
    }

    .audio-service-content h3{
        font-size:27px;
    }

    .audio-service-list{
        grid-template-columns:1fr;
    }

}

@media(max-width:575px){

    .audio-service-heading h2{
        font-size:29px;
    }

    .audio-service-subtitle{
        padding:8px 13px;
        font-size:11px;
    }

    .audio-service-image{
        height:285px;
    }

    .audio-service-content{
        padding:26px 20px;
    }

    .audio-service-content h3{
        font-size:24px;
    }

    .audio-service-content > p{
        font-size:14px;
        line-height:1.72;
    }

    .audio-image-label{
        left:15px;
        right:15px;
        bottom:15px;
        padding:11px 14px;
        font-size:11px;
    }

    .audio-service-number{
        top:15px;
        left:15px;
        min-width:45px;
        height:45px;
        border-radius:13px;
    }

}

@media(max-width:400px){

    .audio-service-heading h2{
        font-size:26px;
    }

    .audio-service-image{
        height:245px;
    }

    .audio-service-content h3{
        font-size:22px;
    }

    .audio-service-note{
        padding:13px;
    }

}

/*==================================================
     WHY CHOOSE HEAR 'N' SAY CLINIC
==================================================*/

.ha-choose-section{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:85px 0;
    background:
        radial-gradient(
            circle at 7% 12%,
            rgba(255,196,0,.11),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #f4f7ff 0%,
            #ffffff 48%,
            #edf3ff 100%
        );
}

.ha-choose-container{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
}

.ha-choose-shape{
    position:absolute;
    pointer-events:none;
    border-radius:50%;
}

.ha-choose-shape-one{
    width:370px;
    height:370px;
    top:-210px;
    right:-140px;
    border:46px solid rgba(25,54,143,.04);
}

.ha-choose-shape-two{
    width:250px;
    height:250px;
    left:-130px;
    bottom:40px;
    background:rgba(255,196,0,.055);
}

/*==================================================
     MAIN GRID
==================================================*/

.ha-choose-grid{
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    align-items:center;
    gap:75px;
}

/*==================================================
     IMAGE SIDE
==================================================*/

.ha-choose-visual{
    position:relative;
    min-height:590px;
}

.ha-choose-image{
    position:absolute;
    top:0;
    left:0;
    right:55px;
    bottom:40px;
    overflow:hidden;
    border-radius:35px 95px 35px 35px;
    background:#0c1d50;
    box-shadow:0 28px 65px rgba(8,22,56,.18);
}

.ha-choose-image::before{
    content:"";
    position:absolute;
    inset:15px;
    z-index:2;
    border:1px solid rgba(255,255,255,.35);
    border-radius:25px 78px 25px 25px;
    pointer-events:none;
}

.ha-choose-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .75s ease;
}

.ha-choose-visual:hover .ha-choose-image img{
    transform:scale(1.045);
}

.ha-choose-image-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,22,56,.02),
            rgba(8,22,56,.57)
        );
}

.ha-choose-image-badge{
    position:absolute;
    z-index:3;
    left:24px;
    bottom:24px;
    display:flex;
    align-items:center;
    gap:14px;
    max-width:300px;
    padding:17px 20px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:18px;
    background:rgba(8,22,56,.86);
    box-shadow:0 15px 34px rgba(0,0,0,.20);
    backdrop-filter:blur(12px);
}

.ha-choose-badge-icon{
    width:50px;
    height:50px;
    flex:0 0 50px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:15px;
    background:#ffc400;
    color:#081638;
    font-size:20px;
}

.ha-choose-image-badge strong,
.ha-choose-image-badge span{
    display:block;
}

.ha-choose-image-badge strong{
    margin-bottom:3px;
    color:#ffffff;
    font-size:16px;
    font-weight:850;
}

.ha-choose-image-badge span{
    color:#dce5f8;
    font-size:13px;
    line-height:1.45;
}

/*==================================================
     FLOATING CARDS
==================================================*/

.ha-choose-floating-card{
    position:absolute;
    z-index:4;
    display:flex;
    align-items:center;
    gap:13px;
    width:245px;
    padding:16px 18px;
    border:1px solid rgba(12,29,80,.10);
    border-radius:18px;
    background:rgba(255,255,255,.97);
    box-shadow:0 17px 40px rgba(8,22,56,.14);
}

.ha-choose-floating-card > i{
    width:47px;
    height:47px;
    flex:0 0 47px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffc400;
    font-size:18px;
}

.ha-choose-floating-card strong,
.ha-choose-floating-card span{
    display:block;
}

.ha-choose-floating-card strong{
    color:#0c1d50;
    font-size:15px;
    font-weight:850;
    line-height:1.3;
}

.ha-choose-floating-card span{
    margin-top:3px;
    color:#69748a;
    font-size:12px;
    line-height:1.4;
}

.ha-floating-card-one{
    top:65px;
    right:0;
}

.ha-floating-card-two{
    right:0;
    bottom:0;
}

/*==================================================
     CONTENT SIDE
==================================================*/

.ha-choose-content{
    position:relative;
}

.ha-choose-label{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:18px;
    padding:9px 17px;
    border:1px solid rgba(25,54,143,.12);
    border-radius:50px;
    background:#eaf0ff;
    color:#19368f;
    font-size:13px;
    font-weight:850;
    letter-spacing:.5px;
}

.ha-choose-label i{
    color:#d4a200;
}

.ha-choose-content h2{
    margin:0;
    color:#081638;
    font-size:46px;
    font-weight:850;
    line-height:1.14;
    letter-spacing:-1.2px;
}

.ha-choose-content h2 span{
    display:block;
    color:#19368f;
}

.ha-choose-intro{
    margin:22px 0 26px;
    color:#616d84;
    font-size:16px;
    line-height:1.8;
}

/*==================================================
     CHOOSE LIST
==================================================*/

.ha-choose-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px;
}

.ha-choose-list-item{
    display:flex;
    align-items:flex-start;
    gap:11px;
    min-height:62px;
    padding:13px 14px;
    border:1px solid rgba(12,29,80,.075);
    border-radius:14px;
    background:#ffffff;
    box-shadow:0 8px 22px rgba(8,22,56,.05);
    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.ha-choose-list-item:hover{
    transform:translateY(-3px);
    border-color:rgba(255,196,0,.55);
    box-shadow:0 12px 27px rgba(8,22,56,.10);
}

.ha-choose-list-item > span{
    width:28px;
    height:28px;
    flex:0 0 28px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:1px;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    font-size:10px;
}

.ha-choose-list-item p{
    margin:0;
    color:#35425c;
    font-size:13px;
    font-weight:700;
    line-height:1.55;
}

.ha-choose-list-wide{
    grid-column:span 2;
}

/*==================================================
     BUTTON
==================================================*/

.ha-choose-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    min-height:53px;
    margin-top:28px;
    padding:12px 24px;
    border-radius:50px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffffff;
    text-decoration:none;
    font-size:14px;
    font-weight:850;
    box-shadow:0 14px 30px rgba(12,29,80,.23);
    transition:all .35s ease;
}

.ha-choose-button i{
    width:31px;
    height:31px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    transition:transform .35s ease;
}

.ha-choose-button:hover{
    color:#ffffff;
    transform:translateY(-4px);
    box-shadow:0 19px 40px rgba(12,29,80,.30);
}

.ha-choose-button:hover i{
    transform:translateX(4px);
}

/*==================================================
     OUR COMMITMENT
==================================================*/

.ha-commitment-box{
    position:relative;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:25px;
    margin-top:65px;
    padding:32px 34px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.13);
    border-radius:28px;
    background:
        radial-gradient(
            circle at 92% 10%,
            rgba(255,196,0,.18),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 56%,
            #19368f 100%
        );
    box-shadow:0 25px 60px rgba(8,22,56,.20);
}

.ha-commitment-box::before{
    content:"";
    position:absolute;
    width:240px;
    height:240px;
    right:-100px;
    bottom:-155px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:50%;
    box-shadow:
        0 0 0 35px rgba(255,255,255,.025),
        0 0 0 70px rgba(255,255,255,.018);
}

.ha-commitment-icon{
    position:relative;
    z-index:2;
    width:78px;
    height:78px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:23px;
    background:#ffc400;
    color:#081638;
    font-size:29px;
    box-shadow:0 15px 32px rgba(0,0,0,.17);
}

.ha-commitment-content{
    position:relative;
    z-index:2;
}

.ha-commitment-label{
    display:block;
    margin-bottom:7px;
    color:#ffc400;
    font-size:12px;
    font-weight:850;
    letter-spacing:1.2px;
    text-transform:uppercase;
}

.ha-commitment-content h3{
    margin:0 0 12px;
    color:#ffffff;
    font-size:27px;
    font-weight:850;
    line-height:1.25;
}

.ha-commitment-content p{
    margin:0 0 10px;
    color:#d6e0f4;
    font-size:14px;
    line-height:1.75;
}

.ha-commitment-services{
    display:flex;
    flex-wrap:wrap;
    gap:10px 17px;
    margin-top:17px;
}

.ha-commitment-services div{
    display:flex;
    align-items:center;
    gap:8px;
    color:#ffffff;
    font-size:12px;
    font-weight:750;
}

.ha-commitment-services i{
    color:#ffc400;
}

.ha-commitment-action{
    position:relative;
    z-index:2;
}

.ha-commitment-action a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:50px;
    padding:13px 22px;
    border-radius:50px;
    background:#ffffff;
    color:#0c1d50;
    text-decoration:none;
    font-size:13px;
    font-weight:850;
    white-space:nowrap;
    transition:all .3s ease;
}

.ha-commitment-action a:hover{
    background:#ffc400;
    color:#081638;
    transform:translateY(-3px);
}

/*==================================================
     RESPONSIVE
==================================================*/

@media(max-width:1199px){

    .ha-choose-grid{
        gap:52px;
    }

    .ha-choose-content h2{
        font-size:40px;
    }

    .ha-choose-visual{
        min-height:555px;
    }

    .ha-choose-floating-card{
        width:225px;
    }

    .ha-commitment-box{
        grid-template-columns:auto 1fr;
    }

    .ha-commitment-action{
        grid-column:1 / -1;
    }

    .ha-commitment-action a{
        width:100%;
    }

}

@media(max-width:991px){

    .ha-choose-section{
        padding:70px 0;
    }

    .ha-choose-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .ha-choose-visual{
        width:100%;
        max-width:700px;
        margin:0 auto;
    }

    .ha-choose-content{
        max-width:780px;
        margin:0 auto;
        text-align:center;
    }

    .ha-choose-intro{
        max-width:720px;
        margin-left:auto;
        margin-right:auto;
    }

    .ha-choose-list-item{
        text-align:left;
    }

}

@media(max-width:767px){

    .ha-choose-section{
        padding:58px 0;
    }

    .ha-choose-container{
        padding:0 15px;
    }

    .ha-choose-visual{
        min-height:auto;
    }

    .ha-choose-image{
        position:relative;
        inset:auto;
        height:430px;
        border-radius:25px 62px 25px 25px;
    }

    .ha-choose-image::before{
        border-radius:18px 49px 18px 18px;
    }

    .ha-choose-floating-card{
        position:relative;
        top:auto;
        right:auto;
        bottom:auto;
        width:100%;
        margin-top:13px;
    }

    .ha-choose-content h2{
        font-size:35px;
    }

    .ha-choose-list{
        grid-template-columns:1fr;
    }

    .ha-choose-list-wide{
        grid-column:auto;
    }

    .ha-commitment-box{
        grid-template-columns:1fr;
        gap:20px;
        margin-top:45px;
        padding:27px 24px;
        text-align:center;
    }

    .ha-commitment-icon{
        margin:0 auto;
    }

    .ha-commitment-services{
        justify-content:center;
    }

}

@media(max-width:575px){

    .ha-choose-grid{
        gap:42px;
    }

    .ha-choose-image{
        height:345px;
    }

    .ha-choose-image-badge{
        left:14px;
        right:14px;
        bottom:14px;
        max-width:none;
        padding:13px 15px;
    }

    .ha-choose-content h2{
        font-size:29px;
    }

    .ha-choose-label{
        padding:8px 13px;
        font-size:11px;
    }

    .ha-choose-intro{
        font-size:15px;
    }

    .ha-choose-button{
        width:100%;
    }

    .ha-commitment-content h3{
        font-size:23px;
    }

    .ha-commitment-services{
        display:grid;
        grid-template-columns:1fr;
        text-align:left;
    }

}

@media(max-width:400px){

    .ha-choose-image{
        height:300px;
    }

    .ha-choose-content h2{
        font-size:26px;
    }

    .ha-choose-image-badge strong{
        font-size:14px;
    }

    .ha-commitment-content h3{
        font-size:21px;
    }

}

/*==================================================
     HEARING AIDS & ASSISTIVE DEVICES INTRO
==================================================*/

.ha-device-intro-section{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:85px 0;
    background:
        radial-gradient(
            circle at 8% 12%,
            rgba(255,196,0,.10),
            transparent 26%
        ),
        linear-gradient(
            135deg,
            #f5f8ff 0%,
            #ffffff 50%,
            #edf3ff 100%
        );
}

.ha-device-container{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
}

.ha-device-grid{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    align-items:center;
    gap:75px;
}

/* Decorative Shapes */

.ha-device-shape{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}

.ha-device-shape-one{
    width:390px;
    height:390px;
    top:-230px;
    right:-140px;
    border:48px solid rgba(25,54,143,.04);
}

.ha-device-shape-two{
    width:245px;
    height:245px;
    left:-130px;
    bottom:-110px;
    background:rgba(255,196,0,.055);
}

/*==================================================
     CONTENT
==================================================*/

.ha-device-content{
    position:relative;
}

.ha-device-label{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:18px;
    padding:9px 17px;
    border:1px solid rgba(25,54,143,.12);
    border-radius:50px;
    background:#eaf0ff;
    color:#19368f;
    font-size:13px;
    font-weight:850;
    letter-spacing:.5px;
}

.ha-device-label i{
    color:#d1a000;
}

.ha-device-content h2{
    margin:0;
    color:#081638;
    font-size:46px;
    font-weight:850;
    line-height:1.14;
    letter-spacing:-1.2px;
}

.ha-device-content h2 span{
    display:block;
    color:#19368f;
}

.ha-device-content h3{
    max-width:720px;
    margin:18px 0 22px;
    color:#33415f;
    font-size:19px;
    font-weight:750;
    line-height:1.55;
}

.ha-device-content > p{
    margin:0 0 17px;
    color:#626e85;
    font-size:15px;
    line-height:1.82;
}

/* Highlight */

.ha-device-highlight{
    display:flex;
    align-items:flex-start;
    gap:15px;
    margin:24px 0;
    padding:19px 20px;
    border-left:4px solid #ffc400;
    border-radius:0 17px 17px 0;
    background:#eef3ff;
}

.ha-device-highlight-icon{
    width:45px;
    height:45px;
    flex:0 0 45px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffc400;
    font-size:18px;
}

.ha-device-highlight p{
    margin:0;
    color:#40506c;
    font-size:14px;
    font-weight:650;
    line-height:1.7;
}

/* Feature Grid */

.ha-device-features{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px;
    margin-bottom:29px;
}

.ha-device-feature{
    display:flex;
    align-items:flex-start;
    gap:11px;
    min-height:73px;
    padding:14px 15px;
    border:1px solid rgba(12,29,80,.08);
    border-radius:15px;
    background:#ffffff;
    box-shadow:0 9px 24px rgba(8,22,56,.055);
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.ha-device-feature:hover{
    transform:translateY(-4px);
    border-color:rgba(255,196,0,.55);
    box-shadow:0 14px 30px rgba(8,22,56,.11);
}

.ha-device-feature > span{
    width:29px;
    height:29px;
    flex:0 0 29px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:1px;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    font-size:10px;
}

.ha-device-feature strong,
.ha-device-feature small{
    display:block;
}

.ha-device-feature strong{
    color:#0c1d50;
    font-size:14px;
    font-weight:850;
    line-height:1.35;
}

.ha-device-feature small{
    margin-top:3px;
    color:#758097;
    font-size:11px;
    line-height:1.45;
}

/* Button */

.ha-device-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    min-height:53px;
    padding:12px 24px;
    border-radius:50px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffffff;
    text-decoration:none;
    font-size:14px;
    font-weight:850;
    box-shadow:0 14px 30px rgba(12,29,80,.22);
    transition:all .35s ease;
}

.ha-device-button i{
    width:31px;
    height:31px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    transition:transform .35s ease;
}

.ha-device-button:hover{
    color:#ffffff;
    transform:translateY(-4px);
    box-shadow:0 19px 40px rgba(12,29,80,.30);
}

.ha-device-button:hover i{
    transform:translateX(4px);
}

/*==================================================
     VISUAL
==================================================*/

.ha-device-visual{
    position:relative;
    min-height:610px;
}

.ha-device-image{
    position:absolute;
    top:0;
    left:45px;
    right:0;
    bottom:42px;
    overflow:hidden;
    border-radius:95px 35px 35px 35px;
    background:#0c1d50;
    box-shadow:0 28px 65px rgba(8,22,56,.18);
}

.ha-device-image::before{
    content:"";
    position:absolute;
    inset:15px;
    z-index:2;
    border:1px solid rgba(255,255,255,.35);
    border-radius:78px 25px 25px 25px;
    pointer-events:none;
}

.ha-device-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .75s ease;
}

.ha-device-visual:hover .ha-device-image img{
    transform:scale(1.045);
}

.ha-device-image-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,22,56,.02),
            rgba(8,22,56,.55)
        );
}

.ha-device-image-card{
    position:absolute;
    z-index:3;
    left:23px;
    right:23px;
    bottom:23px;
    display:flex;
    align-items:center;
    gap:14px;
    padding:17px 19px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:18px;
    background:rgba(8,22,56,.86);
    backdrop-filter:blur(12px);
    box-shadow:0 15px 34px rgba(0,0,0,.18);
}

.ha-device-image-card-icon{
    width:50px;
    height:50px;
    flex:0 0 50px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:15px;
    background:#ffc400;
    color:#081638;
    font-size:20px;
}

.ha-device-image-card strong,
.ha-device-image-card span{
    display:block;
}

.ha-device-image-card strong{
    margin-bottom:3px;
    color:#ffffff;
    font-size:15px;
    font-weight:850;
}

.ha-device-image-card span{
    color:#dce5f8;
    font-size:12px;
    line-height:1.45;
}

/* Floating Cards */

.ha-device-floating-card{
    position:absolute;
    z-index:4;
    display:flex;
    align-items:center;
    gap:13px;
    width:235px;
    padding:16px 17px;
    border:1px solid rgba(12,29,80,.10);
    border-radius:18px;
    background:rgba(255,255,255,.97);
    box-shadow:0 17px 40px rgba(8,22,56,.14);
}

.ha-device-floating-card > i{
    width:47px;
    height:47px;
    flex:0 0 47px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffc400;
    font-size:18px;
}

.ha-device-floating-card strong,
.ha-device-floating-card span{
    display:block;
}

.ha-device-floating-card strong{
    color:#0c1d50;
    font-size:14px;
    font-weight:850;
    line-height:1.3;
}

.ha-device-floating-card span{
    margin-top:3px;
    color:#6f7a91;
    font-size:11px;
    line-height:1.4;
}

.ha-device-floating-one{
    top:65px;
    left:0;
}

.ha-device-floating-two{
    left:0;
    bottom:0;
}

/* Sound Wave */

.ha-device-wave{
    position:absolute;
    z-index:5;
    left:15px;
    top:265px;
    display:flex;
    align-items:center;
    gap:5px;
    height:58px;
    padding:8px 13px;
    border-radius:40px;
    background:#ffc400;
    box-shadow:0 13px 28px rgba(255,196,0,.27);
}

.ha-device-wave span{
    width:4px;
    border-radius:10px;
    background:#081638;
    animation:haDeviceWave 1.2s ease-in-out infinite;
}

.ha-device-wave span:nth-child(1){
    height:15px;
}

.ha-device-wave span:nth-child(2){
    height:29px;
    animation-delay:.1s;
}

.ha-device-wave span:nth-child(3){
    height:42px;
    animation-delay:.2s;
}

.ha-device-wave span:nth-child(4){
    height:25px;
    animation-delay:.3s;
}

.ha-device-wave span:nth-child(5){
    height:45px;
    animation-delay:.4s;
}

.ha-device-wave span:nth-child(6){
    height:29px;
    animation-delay:.5s;
}

.ha-device-wave span:nth-child(7){
    height:16px;
    animation-delay:.6s;
}

@keyframes haDeviceWave{
    0%,
    100%{
        transform:scaleY(.65);
    }

    50%{
        transform:scaleY(1);
    }
}

/*==================================================
     RESPONSIVE
==================================================*/

@media(max-width:1199px){

    .ha-device-grid{
        gap:52px;
    }

    .ha-device-content h2{
        font-size:40px;
    }

    .ha-device-visual{
        min-height:565px;
    }

    .ha-device-floating-card{
        width:215px;
    }

}

@media(max-width:991px){

    .ha-device-intro-section{
        padding:70px 0;
    }

    .ha-device-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .ha-device-content{
        max-width:780px;
        margin:0 auto;
        text-align:center;
    }

    .ha-device-content h3{
        margin-left:auto;
        margin-right:auto;
    }

    .ha-device-content > p,
    .ha-device-highlight,
    .ha-device-feature{
        text-align:left;
    }

    .ha-device-visual{
        width:100%;
        max-width:700px;
        margin:0 auto;
    }

}

@media(max-width:767px){

    .ha-device-intro-section{
        padding:58px 0;
    }

    .ha-device-container{
        padding:0 15px;
    }

    .ha-device-visual{
        min-height:auto;
    }

    .ha-device-image{
        position:relative;
        inset:auto;
        height:430px;
        border-radius:62px 25px 25px 25px;
    }

    .ha-device-image::before{
        border-radius:49px 18px 18px 18px;
    }

    .ha-device-floating-card{
        position:relative;
        top:auto;
        left:auto;
        right:auto;
        bottom:auto;
        width:100%;
        margin-top:13px;
    }

    .ha-device-wave{
        top:195px;
        left:17px;
        transform:scale(.85);
    }

    .ha-device-content h2{
        font-size:35px;
    }

    .ha-device-content h3{
        font-size:17px;
    }

    .ha-device-features{
        grid-template-columns:1fr;
    }

}

@media(max-width:575px){

    .ha-device-grid{
        gap:42px;
    }

    .ha-device-content h2{
        font-size:29px;
    }

    .ha-device-label{
        padding:8px 13px;
        font-size:11px;
    }

    .ha-device-content > p{
        font-size:14px;
        line-height:1.75;
    }

    .ha-device-highlight{
        padding:16px;
    }

    .ha-device-image{
        height:345px;
    }

    .ha-device-image-card{
        left:14px;
        right:14px;
        bottom:14px;
        padding:13px 15px;
    }

    .ha-device-wave{
        display:none;
    }

    .ha-device-button{
        width:100%;
    }

}

@media(max-width:400px){

    .ha-device-content h2{
        font-size:26px;
    }

    .ha-device-content h3{
        font-size:16px;
    }

    .ha-device-image{
        height:300px;
    }

    .ha-device-image-card strong{
        font-size:14px;
    }

}

/*==================================================
     WHY HEARING AIDS MATTER
==================================================*/

.hearing-aids-matter-section{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:85px 0;
    background:
        radial-gradient(
            circle at 90% 8%,
            rgba(255,196,0,.14),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 54%,
            #19368f 100%
        );
}

.hearing-aids-matter-container{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
}

.hearing-aids-matter-grid{
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
    align-items:center;
    gap:65px;
}

/* Decorative Shapes */

.hearing-aids-matter-shape{
    position:absolute;
    pointer-events:none;
    border-radius:50%;
}

.hearing-aids-matter-shape.shape-one{
    width:390px;
    height:390px;
    top:-230px;
    right:-130px;
    border:1px solid rgba(255,255,255,.09);
    box-shadow:
        0 0 0 55px rgba(255,255,255,.025),
        0 0 0 110px rgba(255,255,255,.015);
}

.hearing-aids-matter-shape.shape-two{
    width:260px;
    height:260px;
    left:-140px;
    bottom:-140px;
    background:rgba(255,196,0,.06);
}

/*==================================================
     LEFT CONTENT
==================================================*/

.hearing-aids-matter-content{
    position:relative;
}

.hearing-aids-matter-label{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:19px;
    padding:10px 18px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:50px;
    background:rgba(255,255,255,.08);
    color:#ffc400;
    font-size:13px;
    font-weight:850;
    letter-spacing:.5px;
    backdrop-filter:blur(10px);
}

.hearing-aids-matter-content h2{
    margin:0;
    color:#ffffff;
    font-size:48px;
    font-weight:850;
    line-height:1.13;
    letter-spacing:-1.2px;
}

.hearing-aids-matter-content h2 span{
    display:block;
    color:#ffc400;
}

.hearing-aids-matter-intro{
    margin:23px 0 27px;
    color:#dce5f8;
    font-size:16px;
    line-height:1.82;
}

/* Highlight Box */

.hearing-aids-matter-highlight{
    display:flex;
    align-items:flex-start;
    gap:15px;
    padding:20px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:20px;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(14px);
}

.hearing-aids-highlight-icon{
    width:52px;
    height:52px;
    flex:0 0 52px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    background:#ffc400;
    color:#081638;
    font-size:20px;
}

.hearing-aids-matter-highlight strong{
    display:block;
    margin-bottom:6px;
    color:#ffffff;
    font-size:16px;
    font-weight:850;
}

.hearing-aids-matter-highlight p{
    margin:0;
    color:#d8e2f5;
    font-size:13px;
    line-height:1.7;
}

/* Goal Quote */

.hearing-aids-goal{
    display:flex;
    align-items:flex-start;
    gap:13px;
    margin-top:20px;
    padding:18px 0 0;
    border-top:1px solid rgba(255,255,255,.12);
}

.hearing-aids-goal i{
    color:#ffc400;
    font-size:25px;
}

.hearing-aids-goal p{
    margin:0;
    color:#ffffff;
    font-size:16px;
    font-weight:750;
    font-style:italic;
    line-height:1.65;
}

/*==================================================
     BENEFIT GRID
==================================================*/

.hearing-aids-benefits{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}

.hearing-aids-benefit-card{
    position:relative;
    display:flex;
    align-items:flex-start;
    gap:14px;
    min-height:145px;
    padding:22px 19px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.14);
    border-radius:20px;
    background:rgba(255,255,255,.97);
    box-shadow:0 18px 42px rgba(0,0,0,.16);
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.hearing-aids-benefit-card::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:4px;
    background:linear-gradient(180deg,#ffc400,#19368f);
}

.hearing-aids-benefit-card:hover{
    transform:translateY(-6px);
    border-color:rgba(255,196,0,.60);
    box-shadow:0 25px 52px rgba(0,0,0,.22);
}

.hearing-benefit-number{
    position:absolute;
    right:12px;
    bottom:-9px;
    color:rgba(12,29,80,.055);
    font-size:57px;
    font-weight:900;
    line-height:1;
}

.hearing-benefit-icon{
    position:relative;
    z-index:2;
    width:48px;
    height:48px;
    flex:0 0 48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:15px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffc400;
    font-size:18px;
    box-shadow:0 10px 22px rgba(12,29,80,.20);
}

.hearing-aids-benefit-card > div:last-child{
    position:relative;
    z-index:2;
}

.hearing-aids-benefit-card h3{
    margin:1px 0 7px;
    color:#0c1d50;
    font-size:16px;
    font-weight:850;
    line-height:1.35;
}

.hearing-aids-benefit-card p{
    margin:0;
    color:#68738a;
    font-size:12px;
    line-height:1.65;
}

.hearing-benefit-wide{
    grid-column:span 2;
    min-height:auto;
}

/*==================================================
     RESPONSIVE
==================================================*/

@media(max-width:1199px){

    .hearing-aids-matter-grid{
        gap:45px;
    }

    .hearing-aids-matter-content h2{
        font-size:42px;
    }

}

@media(max-width:991px){

    .hearing-aids-matter-section{
        padding:70px 0;
    }

    .hearing-aids-matter-grid{
        grid-template-columns:1fr;
        gap:45px;
    }

    .hearing-aids-matter-content{
        max-width:760px;
        margin:0 auto;
        text-align:center;
    }

    .hearing-aids-matter-intro{
        max-width:720px;
        margin-left:auto;
        margin-right:auto;
    }

    .hearing-aids-matter-highlight,
    .hearing-aids-goal{
        text-align:left;
    }

}

@media(max-width:767px){

    .hearing-aids-matter-section{
        padding:58px 0;
    }

    .hearing-aids-matter-container{
        padding:0 15px;
    }

    .hearing-aids-matter-content h2{
        font-size:35px;
    }

    .hearing-aids-matter-intro{
        font-size:15px;
        line-height:1.75;
    }

    .hearing-aids-benefits{
        grid-template-columns:1fr;
    }

    .hearing-benefit-wide{
        grid-column:auto;
    }

    .hearing-aids-benefit-card{
        min-height:auto;
    }

}

@media(max-width:575px){

    .hearing-aids-matter-content h2{
        font-size:29px;
    }

    .hearing-aids-matter-label{
        padding:8px 14px;
        font-size:11px;
    }

    .hearing-aids-matter-highlight{
        padding:17px;
    }

    .hearing-aids-highlight-icon{
        width:45px;
        height:45px;
        flex-basis:45px;
        font-size:17px;
    }

    .hearing-aids-benefit-card{
        padding:19px 17px;
        border-radius:17px;
    }

    .hearing-benefit-icon{
        width:44px;
        height:44px;
        flex-basis:44px;
    }

}

@media(max-width:400px){

    .hearing-aids-matter-content h2{
        font-size:26px;
    }

    .hearing-aids-goal p{
        font-size:14px;
    }

    .hearing-aids-benefit-card h3{
        font-size:15px;
    }

}

/*==================================================
     HEARING AID & ASSISTIVE DEVICE SERVICES
==================================================*/

.had-services-section{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:85px 0;
    background:
        radial-gradient(
            circle at 7% 8%,
            rgba(255,196,0,.09),
            transparent 24%
        ),
        linear-gradient(
            135deg,
            #f5f8ff 0%,
            #ffffff 48%,
            #eef3ff 100%
        );
}

.had-services-container{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
}

.had-services-shape{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}

.had-shape-one{
    width:390px;
    height:390px;
    top:-230px;
    right:-150px;
    border:48px solid rgba(25,54,143,.035);
}

.had-shape-two{
    width:250px;
    height:250px;
    left:-140px;
    bottom:100px;
    background:rgba(255,196,0,.05);
}

/*==================================================
     SECTION HEADING
==================================================*/

.had-services-heading{
    max-width:820px;
    margin:0 auto 55px;
    text-align:center;
}

.had-services-label{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:17px;
    padding:9px 17px;
    border:1px solid rgba(25,54,143,.12);
    border-radius:50px;
    background:#eaf0ff;
    color:#19368f;
    font-size:13px;
    font-weight:800;
    letter-spacing:.5px;
}

.had-services-label i{
    color:#d2a100;
}

.had-services-heading h2{
    margin:0;
    color:#081638;
    font-size:46px;
    font-weight:850;
    line-height:1.15;
    letter-spacing:-1.2px;
}

.had-services-heading h2 span{
    display:block;
    color:#19368f;
}

.had-services-heading p{
    max-width:740px;
    margin:18px auto 0;
    color:#647088;
    font-size:16px;
    line-height:1.75;
}

/*==================================================
     SERVICE ROW
==================================================*/

.had-service-row{
    display:grid;
    grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
    align-items:stretch;
    min-height:510px;
    margin-bottom:42px;
    overflow:hidden;
    border:1px solid rgba(12,29,80,.08);
    border-radius:28px;
    background:#ffffff;
    box-shadow:0 19px 50px rgba(8,22,56,.10);
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.had-service-row:last-child{
    margin-bottom:0;
}

.had-service-row:hover{
    transform:translateY(-5px);
    border-color:rgba(255,196,0,.42);
    box-shadow:0 28px 66px rgba(8,22,56,.15);
}

/* Reverse Layout */

.had-service-reverse .had-service-image{
    order:2;
}

.had-service-reverse .had-service-content{
    order:1;
}

/* Dark Alternate Rows */

.had-service-row:nth-of-type(odd){
    background:
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 58%,
            #19368f 100%
        );
}

.had-service-row:nth-of-type(odd) .had-service-content h3{
    color:#ffffff;
}

.had-service-row:nth-of-type(odd) .had-service-content > p{
    color:#d9e3f7;
}

.had-service-row:nth-of-type(odd) .had-service-list div{
    color:#eef3ff;
}

.had-service-row:nth-of-type(odd) .had-service-tag{
    background:rgba(255,196,0,.14);
    color:#ffc400;
}

.had-service-row:nth-of-type(odd) .had-service-note{
    border-color:rgba(255,255,255,.12);
    border-left-color:#ffc400;
    background:rgba(255,255,255,.08);
    color:#dbe5f8;
}

/*==================================================
     IMAGE
==================================================*/

.had-service-image{
    position:relative;
    min-height:510px;
    overflow:hidden;
    background:#0c1d50;
}

.had-service-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,22,56,.01),
            rgba(8,22,56,.56)
        );
}

.had-service-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .8s ease;
}

.had-service-row:hover .had-service-image img{
    transform:scale(1.055);
}

.had-service-number{
    position:absolute;
    z-index:3;
    top:22px;
    left:22px;
    min-width:52px;
    height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 11px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:16px;
    background:rgba(8,22,56,.84);
    color:#ffc400;
    font-size:16px;
    font-weight:900;
    backdrop-filter:blur(10px);
}

.had-image-badge{
    position:absolute;
    z-index:3;
    left:23px;
    bottom:23px;
    display:inline-flex;
    align-items:center;
    gap:10px;
    max-width:calc(100% - 46px);
    padding:13px 18px;
    border:1px solid rgba(255,255,255,.20);
    border-radius:50px;
    background:rgba(8,22,56,.84);
    color:#ffffff;
    font-size:13px;
    font-weight:800;
    backdrop-filter:blur(12px);
}

.had-image-badge i{
    color:#ffc400;
    font-size:16px;
}

/*==================================================
     CONTENT
==================================================*/

.had-service-content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:44px 48px;
}

.had-service-tag{
    align-self:flex-start;
    margin-bottom:14px;
    padding:8px 14px;
    border-radius:50px;
    background:#e9efff;
    color:#19368f;
    font-size:11px;
    font-weight:850;
    letter-spacing:.75px;
    text-transform:uppercase;
}

.had-service-content h3{
    margin:0 0 16px;
    color:#081638;
    font-size:34px;
    font-weight:850;
    line-height:1.2;
    letter-spacing:-.5px;
}

.had-service-content > p{
    margin:0 0 16px;
    color:#657088;
    font-size:15px;
    line-height:1.78;
}

/*==================================================
     LIST
==================================================*/

.had-service-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px 17px;
    margin-top:4px;
}

.had-service-list div{
    display:flex;
    align-items:flex-start;
    gap:10px;
    color:#35425d;
    font-size:13px;
    font-weight:700;
    line-height:1.5;
}

.had-service-list i{
    width:23px;
    height:23px;
    flex:0 0 23px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:1px;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    font-size:9px;
}

/*==================================================
     NOTE
==================================================*/

.had-service-note{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin-top:24px;
    padding:15px 16px;
    border:1px solid rgba(25,54,143,.09);
    border-left:4px solid #ffc400;
    border-radius:0 14px 14px 0;
    background:#edf2ff;
    color:#506079;
}

.had-service-note > i{
    flex:0 0 auto;
    margin-top:4px;
    color:#d09f00;
    font-size:16px;
}

.had-service-note p{
    margin:0;
    color:inherit;
    font-size:13px;
    font-weight:650;
    line-height:1.65;
}

/*==================================================
     RESPONSIVE
==================================================*/

@media(max-width:1199px){

    .had-service-content{
        padding:40px 35px;
    }

    .had-service-content h3{
        font-size:30px;
    }

    .had-service-row,
    .had-service-image{
        min-height:490px;
    }

}

@media(max-width:991px){

    .had-services-section{
        padding:70px 0;
    }

    .had-service-row{
        grid-template-columns:1fr;
        min-height:auto;
    }

    .had-service-reverse .had-service-image,
    .had-service-reverse .had-service-content{
        order:initial;
    }

    .had-service-image{
        min-height:auto;
        height:430px;
    }

    .had-service-content{
        padding:38px;
    }

}

@media(max-width:767px){

    .had-services-section{
        padding:58px 0;
    }

    .had-services-container{
        padding:0 15px;
    }

    .had-services-heading{
        margin-bottom:40px;
    }

    .had-services-heading h2{
        font-size:35px;
    }

    .had-services-heading p{
        font-size:15px;
    }

    .had-service-row{
        margin-bottom:30px;
        border-radius:22px;
    }

    .had-service-image{
        height:350px;
    }

    .had-service-content{
        padding:30px 25px;
    }

    .had-service-content h3{
        font-size:27px;
    }

    .had-service-list{
        grid-template-columns:1fr;
    }

}

@media(max-width:575px){

    .had-services-heading h2{
        font-size:29px;
    }

    .had-services-label{
        padding:8px 13px;
        font-size:11px;
    }

    .had-service-image{
        height:285px;
    }

    .had-service-content{
        padding:26px 20px;
    }

    .had-service-content h3{
        font-size:24px;
    }

    .had-service-content > p{
        font-size:14px;
        line-height:1.72;
    }

    .had-service-number{
        top:15px;
        left:15px;
        min-width:45px;
        height:45px;
        border-radius:13px;
    }

    .had-image-badge{
        left:15px;
        bottom:15px;
        max-width:calc(100% - 30px);
        padding:11px 14px;
        font-size:11px;
    }

    .had-service-note{
        padding:13px;
    }

}

@media(max-width:400px){

    .had-services-heading h2{
        font-size:26px;
    }

    .had-service-image{
        height:245px;
    }

    .had-service-content h3{
        font-size:22px;
    }

}

/*==================================================
   ASSISTIVE LISTENING DEVICES + RIGHT DEVICE SECTION
==================================================*/

.ald-solution-section{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:80px 0;
    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(255,196,0,.10),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #f5f8ff 0%,
            #ffffff 48%,
            #edf3ff 100%
        );
}

.ald-solution-container{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
}

.ald-solution-shape{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}

.ald-shape-one{
    width:360px;
    height:360px;
    top:-220px;
    right:-130px;
    border:45px solid rgba(25,54,143,.04);
}

.ald-shape-two{
    width:240px;
    height:240px;
    left:-120px;
    bottom:-110px;
    background:rgba(255,196,0,.055);
}

/*==================================================
   TWO-COLUMN GRID
==================================================*/

.ald-solution-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    align-items:stretch;
}

/*==================================================
   MAIN CARDS
==================================================*/

.ald-solution-card{
    position:relative;
    overflow:hidden;
    min-height:100%;
    padding:42px 38px 36px;
    border-radius:28px;
    box-shadow:0 22px 55px rgba(8,22,56,.13);
    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

.ald-solution-card:hover{
    transform:translateY(-7px);
    box-shadow:0 30px 65px rgba(8,22,56,.18);
}

/* Light Card */

.ald-device-card{
    border:1px solid rgba(12,29,80,.09);
    background:#ffffff;
}

/* Dark Card */

.ald-person-card{
    border:1px solid rgba(255,255,255,.12);
    background:
        radial-gradient(
            circle at 92% 8%,
            rgba(255,196,0,.17),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 58%,
            #19368f 100%
        );
}

/* Decorative Number Effect */

.ald-solution-card::after{
    content:"";
    position:absolute;
    width:200px;
    height:200px;
    right:-110px;
    bottom:-110px;
    border:1px solid rgba(25,54,143,.10);
    border-radius:50%;
    box-shadow:
        0 0 0 35px rgba(25,54,143,.025),
        0 0 0 70px rgba(25,54,143,.018);
}

.ald-person-card::after{
    border-color:rgba(255,255,255,.08);
    box-shadow:
        0 0 0 35px rgba(255,255,255,.022),
        0 0 0 70px rgba(255,255,255,.015);
}

/*==================================================
   TOP ICON
==================================================*/

.ald-card-icon{
    position:relative;
    z-index:2;
    width:66px;
    height:66px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:20px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffc400;
    font-size:25px;
    box-shadow:0 14px 30px rgba(12,29,80,.22);
}

.ald-person-card .ald-card-icon{
    background:#ffc400;
    color:#081638;
}

/*==================================================
   CONTENT
==================================================*/

.ald-card-content{
    position:relative;
    z-index:2;
}

.ald-card-label{
    display:inline-block;
    margin-bottom:13px;
    color:#c29300;
    font-size:11px;
    font-weight:850;
    letter-spacing:1px;
    text-transform:uppercase;
}

.ald-card-content h2{
    margin:0 0 18px;
    color:#081638;
    font-size:35px;
    font-weight:850;
    line-height:1.18;
    letter-spacing:-.7px;
}

.ald-card-content h2 span{
    display:block;
    color:#ffc400;
}

.ald-card-content > p{
    margin:0 0 16px;
    color:#657088;
    font-size:15px;
    line-height:1.78;
}

.ald-person-card .ald-card-label{
    color:#ffc400;
}

.ald-person-card .ald-card-content h2{
    color:#ffffff;
}

.ald-person-card .ald-card-content > p{
    color:#d8e2f5;
}

/*==================================================
   ENVIRONMENT LIST
==================================================*/

.ald-environment-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin:24px 0;
}

.ald-environment-list div{
    display:flex;
    align-items:center;
    gap:11px;
    min-height:52px;
    padding:11px 13px;
    border:1px solid rgba(12,29,80,.08);
    border-radius:14px;
    background:#f7f9ff;
    color:#35425d;
    font-size:13px;
    font-weight:750;
    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.ald-environment-list div:hover{
    transform:translateY(-3px);
    border-color:rgba(255,196,0,.55);
    background:#ffffff;
}

.ald-environment-list i{
    width:34px;
    height:34px;
    flex:0 0 34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:11px;
    background:#ffc400;
    color:#081638;
    font-size:13px;
}

/*==================================================
   CLINICAL NOTE
==================================================*/

.ald-card-note{
    display:flex;
    align-items:flex-start;
    gap:13px;
    padding:17px;
    border-left:4px solid #ffc400;
    border-radius:0 15px 15px 0;
    background:#edf2ff;
}

.ald-card-note > i{
    margin-top:3px;
    color:#c39300;
    font-size:18px;
}

.ald-card-note p{
    margin:0;
    color:#4d5d77;
    font-size:13px;
    font-weight:650;
    line-height:1.65;
}

/*==================================================
   DEVICE SELECTION POINTS
==================================================*/

.ald-selection-points{
    display:grid;
    gap:12px;
    margin-top:23px;
}

.ald-selection-item{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:14px 15px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:15px;
    background:rgba(255,255,255,.075);
    backdrop-filter:blur(10px);
    transition:
        transform .3s ease,
        background .3s ease,
        border-color .3s ease;
}

.ald-selection-item:hover{
    transform:translateX(5px);
    border-color:rgba(255,196,0,.50);
    background:rgba(255,255,255,.11);
}

.ald-selection-item > span{
    width:39px;
    height:39px;
    flex:0 0 39px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:#ffc400;
    color:#081638;
    font-size:12px;
    font-weight:900;
}

.ald-selection-item strong,
.ald-selection-item small{
    display:block;
}

.ald-selection-item strong{
    margin-bottom:3px;
    color:#ffffff;
    font-size:14px;
    font-weight:850;
}

.ald-selection-item small{
    color:#cbd7ed;
    font-size:11px;
    line-height:1.45;
}

/*==================================================
   QUOTE MESSAGE
==================================================*/

.ald-clinical-message{
    display:flex;
    align-items:flex-start;
    gap:13px;
    margin-top:23px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.12);
}

.ald-clinical-message i{
    color:#ffc400;
    font-size:24px;
}

.ald-clinical-message p{
    margin:0;
    color:#ffffff;
    font-size:14px;
    font-weight:700;
    font-style:italic;
    line-height:1.68;
}

/*==================================================
   RESPONSIVE
==================================================*/

@media(max-width:1199px){

    .ald-solution-card{
        padding:36px 30px 32px;
    }

    .ald-card-content h2{
        font-size:31px;
    }

}

@media(max-width:991px){

    .ald-solution-section{
        padding:70px 0;
    }

    .ald-solution-grid{
        grid-template-columns:1fr;
    }

    .ald-solution-card{
        max-width:800px;
        width:100%;
        margin:0 auto;
    }

}

@media(max-width:767px){

    .ald-solution-section{
        padding:58px 0;
    }

    .ald-solution-container{
        padding:0 15px;
    }

    .ald-solution-card{
        padding:30px 25px;
        border-radius:22px;
    }

    .ald-card-content h2{
        font-size:28px;
    }

    .ald-environment-list{
        grid-template-columns:1fr;
    }

}

@media(max-width:575px){

    .ald-solution-grid{
        gap:20px;
    }

    .ald-solution-card{
        padding:26px 20px;
    }

    .ald-card-icon{
        width:56px;
        height:56px;
        margin-bottom:20px;
        border-radius:17px;
        font-size:21px;
    }

    .ald-card-content h2{
        font-size:25
    }
}
/*==================================================
     WHY CHOOSE HEAR 'N' SAY CLINIC
==================================================*/

.hac-choose-section{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:85px 0;
    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(255,196,0,.10),
            transparent 26%
        ),
        linear-gradient(
            135deg,
            #f5f8ff 0%,
            #ffffff 50%,
            #edf3ff 100%
        );
}

.hac-choose-container{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 20px;
}

.hac-choose-shape{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}

.hac-shape-one{
    width:390px;
    height:390px;
    top:-230px;
    right:-150px;
    border:48px solid rgba(25,54,143,.04);
}

.hac-shape-two{
    width:250px;
    height:250px;
    left:-130px;
    bottom:20px;
    background:rgba(255,196,0,.055);
}

/*==================================================
     MAIN GRID
==================================================*/

.hac-choose-grid{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    align-items:center;
    gap:70px;
}

/*==================================================
     LEFT CONTENT
==================================================*/

.hac-section-label{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:18px;
    padding:9px 17px;
    border:1px solid rgba(25,54,143,.12);
    border-radius:50px;
    background:#eaf0ff;
    color:#19368f;
    font-size:13px;
    font-weight:850;
    letter-spacing:.5px;
}

.hac-section-label i{
    color:#d09e00;
}

.hac-choose-content h2{
    margin:0;
    color:#081638;
    font-size:46px;
    font-weight:850;
    line-height:1.14;
    letter-spacing:-1.2px;
}

.hac-choose-content h2 span{
    display:block;
    color:#19368f;
}

.hac-choose-intro{
    margin:22px 0 26px;
    color:#647088;
    font-size:16px;
    line-height:1.8;
}

/*==================================================
     CHECKLIST
==================================================*/

.hac-choose-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.hac-choose-item{
    display:flex;
    align-items:flex-start;
    gap:11px;
    min-height:60px;
    padding:13px 14px;
    border:1px solid rgba(12,29,80,.08);
    border-radius:14px;
    background:#ffffff;
    box-shadow:0 8px 22px rgba(8,22,56,.05);
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.hac-choose-item:hover{
    transform:translateY(-3px);
    border-color:rgba(255,196,0,.55);
    box-shadow:0 13px 28px rgba(8,22,56,.10);
}

.hac-choose-item > span{
    width:28px;
    height:28px;
    flex:0 0 28px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:1px;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    font-size:10px;
}

.hac-choose-item p{
    margin:0;
    color:#35425d;
    font-size:13px;
    font-weight:700;
    line-height:1.55;
}

.hac-choose-wide{
    grid-column:span 2;
}

/*==================================================
     BUTTON
==================================================*/

.hac-choose-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    min-height:53px;
    margin-top:27px;
    padding:13px 25px;
    border-radius:50px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffffff;
    text-decoration:none;
    font-size:14px;
    font-weight:850;
    box-shadow:0 14px 30px rgba(12,29,80,.23);
    transition:all .35s ease;
}

.hac-choose-button i{
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#ffc400;
    color:#081638;
    transition:transform .35s ease;
}

.hac-choose-button:hover{
    color:#ffffff;
    transform:translateY(-4px);
    box-shadow:0 19px 40px rgba(12,29,80,.30);
}

.hac-choose-button:hover i{
    transform:translateX(4px);
}

/*==================================================
     RIGHT VISUAL PANEL
==================================================*/

.hac-choose-visual{
    position:relative;
    min-height:590px;
}

.hac-visual-panel{
    position:absolute;
    inset:25px 38px 25px 38px;
    padding:42px 38px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.13);
    border-radius:35px 90px 35px 35px;
    background:
        radial-gradient(
            circle at 90% 8%,
            rgba(255,196,0,.18),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 58%,
            #19368f 100%
        );
    box-shadow:0 28px 65px rgba(8,22,56,.22);
}

.hac-visual-panel::after{
    content:"";
    position:absolute;
    width:240px;
    height:240px;
    right:-120px;
    bottom:-130px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:50%;
    box-shadow:
        0 0 0 40px rgba(255,255,255,.022),
        0 0 0 80px rgba(255,255,255,.015);
}

.hac-visual-icon{
    position:relative;
    z-index:2;
    width:68px;
    height:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:22px;
    border-radius:20px;
    background:#ffc400;
    color:#081638;
    font-size:26px;
    box-shadow:0 15px 30px rgba(0,0,0,.18);
}

.hac-visual-label{
    position:relative;
    z-index:2;
    display:block;
    margin-bottom:10px;
    color:#ffc400;
    font-size:11px;
    font-weight:850;
    letter-spacing:1px;
    text-transform:uppercase;
}

.hac-visual-panel h3{
    position:relative;
    z-index:2;
    margin:0 0 15px;
    color:#ffffff;
    font-size:31px;
    font-weight:850;
    line-height:1.25;
}

.hac-visual-panel > p{
    position:relative;
    z-index:2;
    margin:0;
    color:#d7e1f5;
    font-size:14px;
    line-height:1.75;
}

/* Care Path */

.hac-care-path{
    position:relative;
    z-index:2;
    margin-top:25px;
}

.hac-care-step{
    display:flex;
    align-items:flex-start;
    gap:13px;
}

.hac-care-step > span{
    width:41px;
    height:41px;
    flex:0 0 41px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:13px;
    background:rgba(255,196,0,.16);
    border:1px solid rgba(255,196,0,.28);
    color:#ffc400;
    font-size:12px;
    font-weight:900;
}

.hac-care-step strong,
.hac-care-step small{
    display:block;
}

.hac-care-step strong{
    margin-bottom:3px;
    color:#ffffff;
    font-size:14px;
    font-weight:850;
}

.hac-care-step small{
    color:#c8d5ec;
    font-size:11px;
    line-height:1.45;
}

.hac-care-line{
    width:1px;
    height:18px;
    margin:4px 0 4px 20px;
    background:rgba(255,196,0,.35);
}

/* Visual Footer */

.hac-visual-footer{
    position:relative;
    z-index:2;
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin-top:24px;
    padding-top:19px;
    border-top:1px solid rgba(255,255,255,.12);
}

.hac-visual-footer > div{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:13px;
    background:#ffc400;
    color:#081638;
    font-size:17px;
}

.hac-visual-footer p{
    margin:0;
    color:#ffffff;
    font-size:13px;
    font-weight:700;
    line-height:1.6;
}

/*==================================================
     FLOATING CARDS
==================================================*/

.hac-floating-card{
    position:absolute;
    z-index:4;
    display:flex;
    align-items:center;
    gap:12px;
    width:225px;
    padding:15px 16px;
    border:1px solid rgba(12,29,80,.10);
    border-radius:17px;
    background:#ffffff;
    box-shadow:0 17px 40px rgba(8,22,56,.14);
}

.hac-floating-card > i{
    width:45px;
    height:45px;
    flex:0 0 45px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffc400;
    font-size:17px;
}

.hac-floating-card strong,
.hac-floating-card span{
    display:block;
}

.hac-floating-card strong{
    color:#0c1d50;
    font-size:14px;
    font-weight:850;
}

.hac-floating-card span{
    margin-top:3px;
    color:#6f7a91;
    font-size:11px;
    line-height:1.4;
}

.hac-floating-one{
    top:0;
    left:0;
}

.hac-floating-two{
    right:0;
    bottom:0;
}

/*==================================================
     COMMITMENT SECTION
==================================================*/

.hac-commitment{
    position:relative;
    margin-top:65px;
    padding:32px 35px;
    overflow:hidden;
    border:1px solid rgba(12,29,80,.08);
    border-radius:27px;
    background:#ffffff;
    box-shadow:0 20px 50px rgba(8,22,56,.10);
}

.hac-commitment::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:6px;
    background:linear-gradient(180deg,#ffc400,#19368f);
}

.hac-commitment-heading{
    display:flex;
    align-items:center;
    gap:17px;
    margin-bottom:20px;
}

.hac-commitment-icon{
    width:60px;
    height:60px;
    flex:0 0 60px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    background:linear-gradient(135deg,#0c1d50,#19368f);
    color:#ffc400;
    font-size:22px;
}

.hac-commitment-heading span{
    display:block;
    margin-bottom:4px;
    color:#c39200;
    font-size:11px;
    font-weight:850;
    letter-spacing:1px;
    text-transform:uppercase;
}

.hac-commitment-heading h3{
    margin:0;
    color:#081638;
    font-size:27px;
    font-weight:850;
    line-height:1.3;
}

.hac-commitment-content{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:25px;
}

.hac-commitment-content p{
    margin:0;
    color:#627087;
    font-size:14px;
    line-height:1.78;
}

.hac-commitment-points{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:13px;
    margin-top:24px;
}

.hac-commitment-points div{
    display:flex;
    align-items:center;
    gap:10px;
    padding:13px 14px;
    border-radius:14px;
    background:#eef3ff;
    color:#33415d;
    font-size:12px;
    font-weight:800;
}

.hac-commitment-points i{
    color:#c49200;
    font-size:16px;
}

/*==================================================
     RESPONSIVE
==================================================*/

@media(max-width:1199px){

    .hac-choose-grid{
        gap:48px;
    }

    .hac-choose-content h2{
        font-size:40px;
    }

    .hac-visual-panel{
        inset:25px;
    }

}

@media(max-width:991px){

    .hac-choose-section{
        padding:70px 0;
    }

    .hac-choose-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .hac-choose-content{
        max-width:780px;
        margin:0 auto;
        text-align:center;
    }

    .hac-choose-intro{
        max-width:720px;
        margin-left:auto;
        margin-right:auto;
    }

    .hac-choose-item{
        text-align:left;
    }

    .hac-choose-visual{
        width:100%;
        max-width:700px;
        margin:0 auto;
    }

    .hac-commitment-points{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media(max-width:767px){

    .hac-choose-section{
        padding:58px 0;
    }

    .hac-choose-container{
        padding:0 15px;
    }

    .hac-choose-content h2{
        font-size:35px;
    }

    .hac-choose-list{
        grid-template-columns:1fr;
    }

    .hac-choose-wide{
        grid-column:auto;
    }

    .hac-choose-visual{
        min-height:auto;
    }

    .hac-visual-panel{
        position:relative;
        inset:auto;
        padding:32px 26px;
        border-radius:27px 65px 27px 27px;
    }

    .hac-floating-card{
        position:relative;
        top:auto;
        right:auto;
        bottom:auto;
        left:auto;
        width:100%;
        margin-top:13px;
    }

    .hac-commitment{
        margin-top:45px;
        padding:27px 25px;
    }

    .hac-commitment-content{
        grid-template-columns:1fr;
        gap:14px;
    }

}

@media(max-width:575px){

    .hac-choose-content h2{
        font-size:29px;
    }

    .hac-section-label{
        padding:8px 13px;
        font-size:11px;
    }

    .hac-choose-intro{
        font-size:15px;
    }

    .hac-choose-button{
        width:100%;
    }

    .hac-visual-panel{
        padding:28px 21px;
    }

    .hac-visual-panel h3{
        font-size:25px;
    }

    .hac-commitment{
        padding:24px 20px;
    }

    .hac-commitment-heading{
        align-items:flex-start;
    }

    .hac-commitment-heading h3{
        font-size:22px;
    }

    .hac-commitment-points{
        grid-template-columns:1fr;
    }

}

@media(max-width:400px){

    .hac-choose-content h2{
        font-size:26px;
    }

    .hac-visual-panel h3{
        font-size:22px;
    }

    .hac-commitment-heading{
        display:block;
    }

    .hac-commitment-icon{
        margin-bottom:14px;
    }

}

/* ================================
   HEAR 'N' SAY CONTACT SECTION
================================ */

.hns-contact-section {
    --hns-navy: #081638;
    --hns-blue: #19368f;
    --hns-light-blue: #edf3ff;
    --hns-yellow: #ffc400;
    --hns-text: #526078;

    position: relative;
    padding: 75px 20px;
    overflow: hidden;
    background:
        linear-gradient(
            135deg,
            #f7f9ff 0%,
            #ffffff 48%,
            #eef3ff 100%
        );
    font-family: "Poppins", sans-serif;
}

.hns-contact-section *,
.hns-contact-section *::before,
.hns-contact-section *::after {
    box-sizing: border-box;
}

.hns-contact-container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
}

.hns-contact-glow {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(4px);
}

.hns-glow-one {
    width: 380px;
    height: 380px;
    top: -190px;
    right: -110px;
    background: rgba(25, 54, 143, 0.10);
}

.hns-glow-two {
    width: 280px;
    height: 280px;
    bottom: -150px;
    left: -100px;
    background: rgba(255, 196, 0, 0.12);
}

/* Heading */

.hns-contact-heading {
    max-width: 780px;
    margin: 0 auto 42px;
    text-align: center;
}

.hns-section-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 13px;
    padding: 8px 16px;
    color: var(--hns-blue);
    background: #e8eeff;
    border: 1px solid #d7e0ff;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-section-label i {
    color: var(--hns-yellow);
    font-size: 15px;
}

.hns-contact-heading h2 {
    margin: 0 0 13px;
    color: var(--hns-navy);
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.16;
    font-weight: 800;
    letter-spacing: -1.2px;
}

.hns-contact-heading p {
    max-width: 680px;
    margin: 0 auto;
    color: var(--hns-text);
    font-size: 16px;
    line-height: 1.8;
}

/* Main Grid */

.hns-contact-grid {
    display: grid;
    grid-template-columns: 0.88fr 1.12fr;
    background: #ffffff;
    border: 1px solid rgba(8, 22, 56, 0.08);
    border-radius: 26px;
    box-shadow: 0 25px 70px rgba(8, 22, 56, 0.13);
    overflow: hidden;
}

/* Contact Information */

.hns-contact-info {
    position: relative;
    padding: 42px;
    background:
        radial-gradient(
            circle at top right,
            rgba(255, 196, 0, 0.15),
            transparent 32%
        ),
        linear-gradient(
            145deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );
}

.hns-contact-info::after {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -80px;
    width: 210px;
    height: 210px;
    border: 35px solid rgba(255, 255, 255, 0.04);
    border-radius: 50%;
}

.hns-info-intro {
    position: relative;
    z-index: 2;
    margin-bottom: 26px;
}

.hns-info-intro > span {
    display: block;
    margin-bottom: 7px;
    color: var(--hns-yellow);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.3px;
    text-transform: uppercase;
}

.hns-info-intro h3 {
    margin: 0 0 10px;
    color: #ffffff;
    font-size: 28px;
    line-height: 1.25;
    font-weight: 750;
}

.hns-info-intro p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.75;
}

.hns-info-list {
    position: relative;
    z-index: 2;
    display: grid;
    gap: 12px;
}

.hns-info-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
    padding: 15px;
    color: #ffffff;
    text-decoration: none;
    background: rgba(255, 255, 255, 0.075);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 15px;
    transition: 0.3s ease;
}

a.hns-info-card:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.13);
    border-color: rgba(255, 196, 0, 0.40);
    transform: translateX(5px);
}

.hns-info-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    color: var(--hns-navy);
    background: var(--hns-yellow);
    border-radius: 13px;
    font-size: 19px;
}

.hns-info-card > div:nth-child(2) {
    min-width: 0;
}

.hns-info-card span,
.hns-info-card strong,
.hns-info-card small {
    display: block;
}

.hns-info-card span {
    margin-bottom: 2px;
    color: rgba(255, 255, 255, 0.65);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.hns-info-card strong {
    overflow-wrap: anywhere;
    color: #ffffff;
    font-size: 15px;
    font-weight: 650;
}

.hns-info-card small {
    margin-top: 2px;
    color: rgba(255, 255, 255, 0.58);
    font-size: 11px;
}

.hns-card-arrow {
    margin-left: auto;
    color: var(--hns-yellow);
    font-size: 15px;
}

.hns-whatsapp-btn {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    margin-top: 20px;
    padding: 14px 20px;
    color: #ffffff;
    background: #20b85a;
    border-radius: 13px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
}

.hns-whatsapp-btn i {
    font-size: 20px;
}

.hns-whatsapp-btn:hover {
    color: #ffffff;
    background: #159948;
    transform: translateY(-2px);
}

/* Form */

.hns-contact-form-box {
    padding: 42px;
    background: #ffffff;
}

.hns-form-heading {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 27px;
}

.hns-form-icon {
    display: grid;
    flex: 0 0 55px;
    width: 55px;
    height: 55px;
    place-items: center;
    color: var(--hns-navy);
    background: var(--hns-yellow);
    border-radius: 16px;
    box-shadow: 0 9px 22px rgba(255, 196, 0, 0.25);
    font-size: 23px;
}

.hns-form-heading span {
    display: block;
    margin-bottom: 2px;
    color: var(--hns-blue);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-form-heading h3 {
    margin: 0;
    color: var(--hns-navy);
    font-size: 25px;
    font-weight: 750;
}

.hns-contact-form {
    display: grid;
    gap: 18px;
}

.hns-form-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.hns-form-group {
    min-width: 0;
}

.hns-form-group label {
    display: block;
    margin-bottom: 7px;
    color: #15254c;
    font-size: 13px;
    font-weight: 650;
}

.hns-input-box {
    position: relative;
}

.hns-input-box > i {
    position: absolute;
    top: 50%;
    left: 15px;
    z-index: 2;
    color: var(--hns-blue);
    font-size: 16px;
    transform: translateY(-50%);
    pointer-events: none;
}

.hns-input-box input,
.hns-input-box select,
.hns-input-box textarea {
    width: 100%;
    min-width: 0;
    outline: none;
    color: #172344;
    background: #f7f9fe;
    border: 1px solid #dfe5f1;
    border-radius: 12px;
    font-family: inherit;
    font-size: 13px;
    transition: 0.25s ease;
}

.hns-input-box input,
.hns-input-box select {
    height: 51px;
    padding: 0 15px 0 44px;
}

.hns-input-box select {
    appearance: none;
    cursor: pointer;
}

.hns-textarea-box > i {
    top: 17px;
    transform: none;
}

.hns-input-box textarea {
    min-height: 115px;
    padding: 15px 15px 15px 44px;
    resize: vertical;
}

.hns-input-box input::placeholder,
.hns-input-box textarea::placeholder {
    color: #9099ac;
}

.hns-input-box input:focus,
.hns-input-box select:focus,
.hns-input-box textarea:focus {
    background: #ffffff;
    border-color: var(--hns-blue);
    box-shadow: 0 0 0 4px rgba(25, 54, 143, 0.08);
}

.hns-submit-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 53px;
    padding: 14px 22px;
    color: #ffffff;
    background: linear-gradient(
        135deg,
        var(--hns-navy),
        var(--hns-blue)
    );
    border: 0;
    border-radius: 13px;
    box-shadow: 0 12px 25px rgba(8, 22, 56, 0.20);
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s ease;
}

.hns-submit-btn i {
    transition: transform 0.3s ease;
}

.hns-submit-btn:hover {
    background: linear-gradient(
        135deg,
        var(--hns-blue),
        var(--hns-navy)
    );
    transform: translateY(-2px);
}

.hns-submit-btn:hover i {
    transform: translateX(4px);
}

.hns-form-note {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin: -4px 0 0;
    color: #7b8496;
    font-size: 11px;
}

.hns-form-note i {
    color: #25a45a;
}

/* Bottom Call Bar */

.hns-contact-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    margin-top: 22px;
    padding: 19px 23px;
    background: #ffffff;
    border: 1px solid #e2e7f1;
    border-radius: 17px;
    box-shadow: 0 10px 30px rgba(8, 22, 56, 0.07);
}

.hns-contact-bottom > div {
    display: flex;
    align-items: center;
    gap: 13px;
}

.hns-contact-bottom > div > i {
    display: grid;
    flex: 0 0 43px;
    width: 43px;
    height: 43px;
    place-items: center;
    color: var(--hns-blue);
    background: var(--hns-light-blue);
    border-radius: 12px;
    font-size: 19px;
}

.hns-contact-bottom p {
    margin: 0;
    color: var(--hns-text);
    font-size: 13px;
    line-height: 1.55;
}

.hns-contact-bottom strong {
    display: block;
    color: var(--hns-navy);
    font-size: 15px;
}

.hns-contact-bottom > a {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    gap: 8px;
    padding: 11px 20px;
    color: var(--hns-navy);
    background: var(--hns-yellow);
    border-radius: 10px;
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
    transition: 0.3s ease;
}

.hns-contact-bottom > a:hover {
    color: #ffffff;
    background: var(--hns-blue);
    transform: translateY(-2px);
}

/* ================================
   RESPONSIVE
================================ */

@media (max-width: 991px) {
    .hns-contact-section {
        padding: 60px 18px;
    }

    .hns-contact-grid {
        grid-template-columns: 1fr;
    }

    .hns-contact-info,
    .hns-contact-form-box {
        padding: 35px;
    }

    .hns-info-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .hns-contact-section {
        padding: 48px 14px;
    }

    .hns-contact-heading {
        margin-bottom: 28px;
    }

    .hns-contact-heading h2 {
        font-size: 29px;
        letter-spacing: -0.5px;
    }

    .hns-contact-heading p {
        font-size: 14px;
        line-height: 1.7;
    }

    .hns-contact-grid {
        border-radius: 20px;
    }

    .hns-contact-info,
    .hns-contact-form-box {
        padding: 27px 20px;
    }

    .hns-info-intro h3 {
        font-size: 24px;
    }

    .hns-info-list,
    .hns-form-row {
        grid-template-columns: 1fr;
    }

    .hns-form-heading {
        align-items: flex-start;
    }

    .hns-form-heading h3 {
        font-size: 21px;
    }

    .hns-contact-bottom {
        align-items: stretch;
        flex-direction: column;
        padding: 17px;
    }

    .hns-contact-bottom > a {
        justify-content: center;
        width: 100%;
    }
}

@media (max-width: 420px) {
    .hns-contact-heading h2 {
        font-size: 26px;
    }

    .hns-info-card {
        align-items: flex-start;
    }

    .hns-info-icon {
        flex-basis: 43px;
        width: 43px;
        height: 43px;
    }

    .hns-card-arrow {
        display: none;
    }

    .hns-form-icon {
        flex-basis: 48px;
        width: 48px;
        height: 48px;
    }
}

/* ========================================
   HEAR 'N' SAY CONTACT PAGE BANNER
======================================== */

.hns-contact-banner {
    --hns-navy: #081638;
    --hns-dark-blue: #0c1d50;
    --hns-blue: #19368f;
    --hns-yellow: #ffc400;

    position: relative;
    min-height: 480px;
    padding: 70px 20px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 83% 18%,
            rgba(255, 196, 0, 0.17),
            transparent 26%
        ),
        radial-gradient(
            circle at 10% 90%,
            rgba(62, 104, 224, 0.20),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            var(--hns-navy) 0%,
            var(--hns-dark-blue) 55%,
            var(--hns-blue) 100%
        );
    font-family: "Poppins", sans-serif;
}

.hns-contact-banner *,
.hns-contact-banner *::before,
.hns-contact-banner *::after {
    box-sizing: border-box;
}

.hns-contact-banner-container {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.8fr);
    align-items: center;
    gap: 65px;
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
}

/* Banner Content */

.hns-contact-banner-content {
    max-width: 740px;
}

.hns-contact-banner-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 15px;
    padding: 8px 16px;
    color: var(--hns-yellow);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 30px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.1px;
    text-transform: uppercase;
}

.hns-contact-banner-label i {
    font-size: 15px;
}

.hns-contact-banner-content h1 {
    max-width: 760px;
    margin: 0 0 17px;
    color: #ffffff;
    font-size: clamp(38px, 5vw, 59px);
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: -1.7px;
}

.hns-contact-banner-content > p {
    max-width: 680px;
    margin: 0 0 26px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.8;
}

/* Breadcrumb */

.hns-contact-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, 0.65);
    font-size: 13px;
}

.hns-contact-breadcrumb a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #ffffff;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.3s ease;
}

.hns-contact-breadcrumb a:hover {
    color: var(--hns-yellow);
}

.hns-contact-breadcrumb > i {
    font-size: 10px;
}

.hns-contact-breadcrumb span {
    color: var(--hns-yellow);
    font-weight: 650;
}

/* Visual Area */

.hns-contact-banner-visual {
    position: relative;
    min-height: 330px;
}

.hns-contact-main-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 250px;
    height: 250px;
    padding: 30px;
    text-align: center;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.16),
            rgba(255, 255, 255, 0.06)
        );
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 50%;
    box-shadow:
        0 25px 60px rgba(0, 0, 0, 0.24),
        inset 0 0 40px rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(14px);
    flex-direction: column;
    transform: translate(-50%, -50%);
}

.hns-contact-main-circle::before {
    content: "";
    position: absolute;
    inset: -17px;
    border: 1px dashed rgba(255, 196, 0, 0.45);
    border-radius: 50%;
    animation: hnsContactRotate 24s linear infinite;
}

.hns-contact-main-icon {
    display: grid;
    width: 82px;
    height: 82px;
    margin-bottom: 15px;
    place-items: center;
    color: var(--hns-navy);
    background: linear-gradient(145deg, #ffe579, var(--hns-yellow));
    border-radius: 25px;
    box-shadow: 0 15px 32px rgba(255, 196, 0, 0.23);
    font-size: 38px;
}

.hns-contact-main-circle > span {
    display: block;
    margin-bottom: 4px;
    color: rgba(255, 255, 255, 0.67);
    font-size: 11px;
    font-weight: 650;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.hns-contact-main-circle > strong {
    display: block;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 750;
}

/* Floating Cards */

.hns-contact-floating-card {
    position: absolute;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 190px;
    padding: 12px 15px;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 13px;
    box-shadow: 0 16px 35px rgba(0, 0, 0, 0.22);
    animation: hnsContactFloat 4.5s ease-in-out infinite;
}

.hns-contact-floating-card > i {
    display: grid;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    place-items: center;
    color: var(--hns-navy);
    background: var(--hns-yellow);
    border-radius: 11px;
    font-size: 17px;
}

.hns-contact-floating-card span,
.hns-contact-floating-card strong {
    display: block;
}

.hns-contact-floating-card span {
    margin-bottom: 1px;
    color: #7c8597;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}

.hns-contact-floating-card strong {
    color: var(--hns-navy);
    font-size: 12px;
    line-height: 1.35;
    font-weight: 750;
}

.hns-contact-floating-card.card-phone {
    top: 7px;
    left: -30px;
}

.hns-contact-floating-card.card-email {
    top: 78px;
    right: -25px;
    animation-delay: 0.8s;
}

.hns-contact-floating-card.card-location {
    right: 10px;
    bottom: 8px;
    animation-delay: 1.4s;
}

/* Decorative Shapes */

.hns-contact-banner-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-contact-banner .shape-one {
    top: -230px;
    right: -180px;
    width: 520px;
    height: 520px;
    border: 80px solid rgba(255, 255, 255, 0.025);
}

.hns-contact-banner .shape-two {
    bottom: -220px;
    left: -170px;
    width: 430px;
    height: 430px;
    background: rgba(255, 196, 0, 0.035);
    border: 50px solid rgba(255, 255, 255, 0.02);
}

.hns-contact-banner-dots {
    position: absolute;
    top: 45px;
    left: 4%;
    width: 125px;
    height: 125px;
    opacity: 0.25;
    background-image:
        radial-gradient(
            rgba(255, 255, 255, 0.55) 1.5px,
            transparent 1.5px
        );
    background-size: 16px 16px;
}

/* Animation */

@keyframes hnsContactFloat {
    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

@keyframes hnsContactRotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* ========================================
   RESPONSIVE
======================================== */

@media (max-width: 1100px) {
    .hns-contact-banner-container {
        grid-template-columns: minmax(0, 1fr) 340px;
        gap: 35px;
    }

    .hns-contact-floating-card.card-phone {
        left: -10px;
    }

    .hns-contact-floating-card.card-email {
        right: -5px;
    }
}

@media (max-width: 900px) {
    .hns-contact-banner {
        min-height: auto;
        padding: 65px 18px;
    }

    .hns-contact-banner-container {
        grid-template-columns: 1fr;
    }

    .hns-contact-banner-content {
        max-width: 760px;
    }

    .hns-contact-banner-visual {
        display: none;
    }
}

@media (max-width: 767px) {
    .hns-contact-banner {
        padding: 53px 15px;
    }

    .hns-contact-banner-content {
        text-align: center;
    }

    .hns-contact-banner-content h1 {
        margin-right: auto;
        margin-left: auto;
        font-size: 34px;
        line-height: 1.18;
        letter-spacing: -0.8px;
    }

    .hns-contact-banner-content > p {
        margin-right: auto;
        margin-left: auto;
        font-size: 14px;
        line-height: 1.7;
    }

    .hns-contact-breadcrumb {
        justify-content: center;
    }
}

@media (max-width: 420px) {
    .hns-contact-banner {
        padding: 46px 14px;
    }

    .hns-contact-banner-label {
        font-size: 10px;
    }

    .hns-contact-banner-content h1 {
        font-size: 29px;
    }

    .hns-contact-banner-content > p {
        font-size: 13px;
    }
}

/* Reduce motion for accessibility */

@media (prefers-reduced-motion: reduce) {
    .hns-contact-main-circle::before,
    .hns-contact-floating-card {
        animation: none;
    }
}


/* =========================================
   HEAR 'N' SAY BLOG PAGE
========================================= */

.hns-blog-banner,
.hns-blog-section,
.hns-blog-cta {
    --hns-navy: #081638;
    --hns-dark-blue: #0c1d50;
    --hns-blue: #19368f;
    --hns-yellow: #ffc400;
    --hns-text: #57647b;
    --hns-light: #f4f7ff;

    font-family: "Poppins", sans-serif;
}

.hns-blog-banner *,
.hns-blog-section *,
.hns-blog-cta * {
    box-sizing: border-box;
}

.hns-blog-container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
}

/* =========================================
   BLOG BANNER
========================================= */

.hns-blog-banner {
    position: relative;
    padding: 82px 20px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 80% 20%,
            rgba(255, 196, 0, 0.16),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );
}

.hns-blog-banner .hns-blog-container {
    display: grid;
    grid-template-columns: 1.35fr 0.65fr;
    align-items: center;
    gap: 50px;
}

.hns-blog-banner-content {
    max-width: 780px;
}

.hns-blog-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 8px 15px;
    color: var(--hns-yellow);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 30px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-blog-banner-content h1 {
    max-width: 760px;
    margin: 0 0 16px;
    color: #ffffff;
    font-size: clamp(34px, 5vw, 58px);
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.hns-blog-banner-content > p {
    max-width: 680px;
    margin: 0 0 25px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 16px;
    line-height: 1.75;
}

.hns-blog-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, 0.62);
    font-size: 13px;
}

.hns-blog-breadcrumb a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #ffffff;
    font-weight: 600;
    text-decoration: none;
}

.hns-blog-breadcrumb a:hover {
    color: var(--hns-yellow);
}

.hns-blog-breadcrumb > i {
    font-size: 10px;
}

.hns-blog-breadcrumb span {
    color: var(--hns-yellow);
    font-weight: 600;
}

/* Banner Icons */

.hns-blog-banner-icon {
    position: relative;
    display: grid;
    min-height: 245px;
    place-items: center;
}

.hns-main-icon {
    display: grid;
    width: 175px;
    height: 175px;
    place-items: center;
    color: var(--hns-navy);
    background: linear-gradient(145deg, #ffe376, #ffc400);
    border: 12px solid rgba(255, 255, 255, 0.12);
    border-radius: 50%;
    box-shadow: 0 25px 55px rgba(0, 0, 0, 0.25);
    font-size: 70px;
}

.hns-floating-icon {
    position: absolute;
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 15px;
    backdrop-filter: blur(8px);
    font-size: 21px;
}

.hns-floating-icon.icon-one {
    top: 8px;
    left: 20px;
}

.hns-floating-icon.icon-two {
    top: 35px;
    right: 10px;
}

.hns-floating-icon.icon-three {
    right: 35px;
    bottom: 5px;
}

.hns-blog-banner-shape {
    position: absolute;
    border-radius: 50%;
}

.hns-blog-banner .shape-one {
    top: -170px;
    right: -130px;
    width: 420px;
    height: 420px;
    border: 70px solid rgba(255, 255, 255, 0.025);
}

.hns-blog-banner .shape-two {
    bottom: -180px;
    left: -150px;
    width: 360px;
    height: 360px;
    background: rgba(255, 196, 0, 0.04);
}

/* =========================================
   BLOG LISTING
========================================= */

.hns-blog-section {
    padding: 72px 20px;
    background:
        linear-gradient(
            135deg,
            #f5f7fc 0%,
            #ffffff 48%,
            #f2f6ff 100%
        );
}

.hns-blog-top {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 30px;
}

.hns-blog-heading {
    max-width: 710px;
}

.hns-blog-heading > span {
    display: block;
    margin-bottom: 7px;
    color: var(--hns-blue);
    font-size: 13px;
    font-weight: 750;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.hns-blog-heading h2 {
    margin: 0 0 10px;
    color: var(--hns-navy);
    font-size: clamp(29px, 4vw, 43px);
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: -1px;
}

.hns-blog-heading p {
    margin: 0;
    color: var(--hns-text);
    font-size: 14px;
    line-height: 1.75;
}

/* Search */

.hns-blog-search {
    display: flex;
    flex: 0 0 360px;
    align-items: center;
    min-height: 53px;
    padding-left: 17px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #dfe5f0;
    border-radius: 13px;
    box-shadow: 0 9px 25px rgba(8, 22, 56, 0.07);
}

.hns-blog-search > i {
    color: var(--hns-blue);
    font-size: 16px;
}

.hns-blog-search input {
    flex: 1;
    min-width: 0;
    height: 51px;
    padding: 0 12px;
    outline: none;
    color: var(--hns-navy);
    background: transparent;
    border: 0;
    font-family: inherit;
    font-size: 13px;
}

.hns-blog-search button {
    align-self: stretch;
    padding: 0 21px;
    color: #ffffff;
    background: var(--hns-blue);
    border: 0;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.3s ease;
}

.hns-blog-search button:hover {
    background: var(--hns-navy);
}

/* Categories */

.hns-blog-categories {
    display: flex;
    gap: 10px;
    margin-bottom: 34px;
    padding-bottom: 4px;
    overflow-x: auto;
    scrollbar-width: none;
}

.hns-blog-categories::-webkit-scrollbar {
    display: none;
}

.hns-blog-categories a {
    flex-shrink: 0;
    padding: 10px 17px;
    color: #536078;
    background: #ffffff;
    border: 1px solid #dfe5ef;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
    transition: 0.3s ease;
}

.hns-blog-categories a:hover,
.hns-blog-categories a.active {
    color: #ffffff;
    background: var(--hns-blue);
    border-color: var(--hns-blue);
    box-shadow: 0 7px 18px rgba(25, 54, 143, 0.18);
}

/* Featured Article */

.hns-featured-blog {
    display: grid;
    grid-template-columns: 1.06fr 0.94fr;
    margin-bottom: 35px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid rgba(8, 22, 56, 0.08);
    border-radius: 23px;
    box-shadow: 0 18px 50px rgba(8, 22, 56, 0.11);
}

.hns-featured-image {
    position: relative;
    min-height: 390px;
    overflow: hidden;
}

.hns-featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.hns-featured-blog:hover .hns-featured-image img {
    transform: scale(1.045);
}

.hns-featured-badge {
    position: absolute;
    top: 19px;
    left: 19px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 14px;
    color: var(--hns-navy);
    background: var(--hns-yellow);
    border-radius: 30px;
    box-shadow: 0 7px 20px rgba(8, 22, 56, 0.20);
    font-size: 11px;
    font-weight: 750;
}

.hns-featured-content {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    padding: 40px;
}

.hns-blog-category {
    display: inline-flex;
    margin-bottom: 13px;
    padding: 7px 13px;
    color: var(--hns-blue);
    background: #eaf0ff;
    border-radius: 30px;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.hns-featured-content h2 {
    margin: 0 0 13px;
    font-size: clamp(25px, 3vw, 35px);
    line-height: 1.3;
    font-weight: 800;
}

.hns-featured-content h2 a {
    color: var(--hns-navy);
    text-decoration: none;
    transition: color 0.3s ease;
}

.hns-featured-content h2 a:hover {
    color: var(--hns-blue);
}

.hns-featured-content > p {
    margin: 0 0 18px;
    color: var(--hns-text);
    font-size: 14px;
    line-height: 1.8;
}

.hns-blog-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    color: #7e889a;
    font-size: 11px;
}

.hns-blog-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.hns-blog-meta i {
    color: var(--hns-blue);
}

.hns-read-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 22px;
    padding: 13px 21px;
    color: #ffffff;
    background: linear-gradient(
        135deg,
        var(--hns-navy),
        var(--hns-blue)
    );
    border-radius: 11px;
    box-shadow: 0 10px 24px rgba(8, 22, 56, 0.18);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
}

.hns-read-btn:hover {
    color: var(--hns-navy);
    background: var(--hns-yellow);
    transform: translateY(-2px);
}

.hns-read-btn i {
    transition: transform 0.3s ease;
}

.hns-read-btn:hover i {
    transform: translateX(4px);
}

/* Blog Cards */

.hns-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.hns-blog-card {
    display: flex;
    min-width: 0;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid rgba(8, 22, 56, 0.08);
    border-radius: 19px;
    box-shadow: 0 12px 35px rgba(8, 22, 56, 0.08);
    flex-direction: column;
    transition: 0.35s ease;
}

.hns-blog-card:hover {
    border-color: rgba(25, 54, 143, 0.20);
    box-shadow: 0 20px 45px rgba(8, 22, 56, 0.14);
    transform: translateY(-7px);
}

.hns-blog-image {
    position: relative;
    height: 215px;
    overflow: hidden;
}

.hns-blog-image::after {
    content: "";
    position: absolute;
    inset: 45% 0 0;
    background: linear-gradient(
        to top,
        rgba(8, 22, 56, 0.35),
        transparent
    );
}

.hns-blog-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.55s ease;
}

.hns-blog-card:hover .hns-blog-image img {
    transform: scale(1.07);
}

.hns-blog-image > span {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 2;
    padding: 7px 12px;
    color: var(--hns-navy);
    background: var(--hns-yellow);
    border-radius: 25px;
    box-shadow: 0 5px 15px rgba(8, 22, 56, 0.15);
    font-size: 10px;
    font-weight: 750;
}

.hns-blog-card-content {
    display: flex;
    flex: 1;
    padding: 22px;
    flex-direction: column;
}

.hns-blog-card-content h3 {
    margin: 13px 0 10px;
    font-size: 19px;
    line-height: 1.45;
    font-weight: 750;
}

.hns-blog-card-content h3 a {
    color: var(--hns-navy);
    text-decoration: none;
    transition: color 0.3s ease;
}

.hns-blog-card-content h3 a:hover {
    color: var(--hns-blue);
}

.hns-blog-card-content > p {
    margin: 0 0 17px;
    color: var(--hns-text);
    font-size: 13px;
    line-height: 1.75;
}

.hns-card-read {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    margin-top: auto;
    color: var(--hns-blue);
    font-size: 12px;
    font-weight: 750;
    text-decoration: none;
}

.hns-card-read i {
    transition: transform 0.3s ease;
}

.hns-card-read:hover {
    color: var(--hns-navy);
}

.hns-card-read:hover i {
    transform: translate(3px, -3px);
}

/* Pagination */

.hns-blog-pagination {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 40px;
}

.hns-blog-pagination a {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    color: var(--hns-navy);
    background: #ffffff;
    border: 1px solid #dfe5ef;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
}

.hns-blog-pagination a:hover,
.hns-blog-pagination a.active {
    color: #ffffff;
    background: var(--hns-blue);
    border-color: var(--hns-blue);
}

.hns-blog-pagination a.disabled {
    color: #b4bac5;
    pointer-events: none;
}

/* =========================================
   BLOG CTA
========================================= */

.hns-blog-cta {
    padding: 0 20px 70px;
    background: #f2f6ff;
}

.hns-blog-cta-inner {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 23px;
    padding: 31px 36px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 85% 20%,
            rgba(255, 196, 0, 0.14),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            var(--hns-navy),
            var(--hns-dark-blue) 55%,
            var(--hns-blue)
        );
    border-radius: 21px;
    box-shadow: 0 20px 45px rgba(8, 22, 56, 0.20);
}

.hns-cta-icon {
    display: grid;
    width: 67px;
    height: 67px;
    place-items: center;
    color: var(--hns-navy);
    background: var(--hns-yellow);
    border-radius: 18px;
    font-size: 29px;
}

.hns-cta-content span {
    display: block;
    margin-bottom: 4px;
    color: var(--hns-yellow);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-cta-content h2 {
    margin: 0 0 5px;
    color: #ffffff;
    font-size: clamp(22px, 3vw, 31px);
    font-weight: 750;
}

.hns-cta-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.68);
    font-size: 13px;
    line-height: 1.6;
}

.hns-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 20px;
    color: var(--hns-navy);
    background: var(--hns-yellow);
    border-radius: 11px;
    font-size: 12px;
    font-weight: 750;
    text-decoration: none;
    white-space: nowrap;
    transition: 0.3s ease;
}

.hns-cta-button:hover {
    color: var(--hns-navy);
    background: #ffffff;
    transform: translateY(-2px);
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 991px) {
    .hns-blog-banner {
        padding: 65px 18px;
    }

    .hns-blog-banner .hns-blog-container {
        grid-template-columns: 1fr auto;
    }

    .hns-blog-banner-icon {
        min-width: 190px;
    }

    .hns-main-icon {
        width: 140px;
        height: 140px;
        font-size: 55px;
    }

    .hns-blog-top {
        align-items: stretch;
        flex-direction: column;
    }

    .hns-blog-search {
        flex-basis: auto;
        width: 100%;
        max-width: 500px;
    }

    .hns-featured-blog {
        grid-template-columns: 1fr;
    }

    .hns-featured-image {
        min-height: 330px;
    }

    .hns-blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hns-blog-cta-inner {
        grid-template-columns: auto 1fr;
    }

    .hns-cta-button {
        grid-column: 1 / -1;
        width: 100%;
    }
}

@media (max-width: 767px) {
    .hns-blog-banner {
        padding: 52px 15px;
    }

    .hns-blog-banner .hns-blog-container {
        grid-template-columns: 1fr;
    }

    .hns-blog-banner-content {
        text-align: center;
    }

    .hns-blog-banner-content h1 {
        font-size: 34px;
        letter-spacing: -0.7px;
    }

    .hns-blog-banner-content > p {
        font-size: 14px;
    }

    .hns-blog-breadcrumb {
        justify-content: center;
    }

    .hns-blog-banner-icon {
        display: none;
    }

    .hns-blog-section {
        padding: 50px 15px;
    }

    .hns-blog-heading h2 {
        font-size: 29px;
    }

    .hns-featured-image {
        min-height: 250px;
    }

    .hns-featured-content {
        padding: 25px 20px;
    }

    .hns-featured-content h2 {
        font-size: 25px;
    }

    .hns-blog-grid {
        grid-template-columns: 1fr;
    }

    .hns-blog-image {
        height: 235px;
    }

    .hns-blog-cta {
        padding: 0 15px 50px;
    }

    .hns-blog-cta-inner {
        grid-template-columns: 1fr;
        padding: 26px 20px;
        text-align: center;
    }

    .hns-cta-icon {
        margin: 0 auto;
    }
}

@media (max-width: 420px) {
    .hns-blog-banner-content h1 {
        font-size: 29px;
    }

    .hns-blog-search {
        padding-left: 13px;
    }

    .hns-blog-search button {
        padding: 0 15px;
    }

    .hns-featured-image {
        min-height: 210px;
    }

    .hns-blog-image {
        height: 210px;
    }

    .hns-blog-card-content {
        padding: 19px;
    }

    .hns-blog-card-content h3 {
        font-size: 18px;
    }
}

/* =========================================
   TINNITUS CLINIC HERO BANNER
========================================= */

.tinnitus-hero {
    --tinnitus-navy: #081638;
    --tinnitus-dark-blue: #0c1d50;
    --tinnitus-blue: #19368f;
    --tinnitus-yellow: #ffc400;
    --tinnitus-white: #ffffff;

    position: relative;
    min-height: 560px;
    display: flex;
    align-items: center;
    padding: 68px 20px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 79% 23%,
            rgba(255, 196, 0, 0.16),
            transparent 26%
        ),
        radial-gradient(
            circle at 8% 90%,
            rgba(48, 91, 210, 0.22),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            var(--tinnitus-navy) 0%,
            var(--tinnitus-dark-blue) 54%,
            var(--tinnitus-blue) 100%
        );
    font-family: "Poppins", sans-serif;
}

.tinnitus-hero *,
.tinnitus-hero *::before,
.tinnitus-hero *::after {
    box-sizing: border-box;
}

.tinnitus-hero-container {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(390px, 0.85fr);
    align-items: center;
    gap: 65px;
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
}

/* Breadcrumb */

.tinnitus-hero-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-bottom: 20px;
    color: rgba(255, 255, 255, 0.52);
    font-size: 11px;
}

.tinnitus-hero-breadcrumb a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: rgba(255, 255, 255, 0.78);
    font-weight: 600;
    text-decoration: none;
    transition: color 0.3s ease;
}

.tinnitus-hero-breadcrumb a:hover {
    color: var(--tinnitus-yellow);
}

.tinnitus-hero-breadcrumb > i {
    font-size: 8px;
}

.tinnitus-hero-breadcrumb span {
    color: var(--tinnitus-yellow);
    font-weight: 650;
}

/* Hero Content */

.tinnitus-hero-content {
    max-width: 750px;
}

.tinnitus-hero-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 14px;
    padding: 8px 16px;
    color: var(--tinnitus-yellow);
    background: rgba(255, 255, 255, 0.075);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 30px;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.tinnitus-hero-label i {
    font-size: 17px;
}

.tinnitus-hero-content h1 {
    max-width: 720px;
    margin: 0 0 16px;
    color: var(--tinnitus-white);
    font-size: clamp(42px, 5.5vw, 67px);
    line-height: 1.07;
    font-weight: 800;
    letter-spacing: -2px;
}

.tinnitus-hero-content h1 span {
    position: relative;
    color: var(--tinnitus-yellow);
    white-space: nowrap;
}

.tinnitus-hero-content h1 span::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 2px;
    left: 0;
    height: 5px;
    background: rgba(255, 196, 0, 0.22);
    border-radius: 10px;
}

.tinnitus-hero-content > p {
    max-width: 690px;
    margin: 0 0 21px;
    color: rgba(255, 255, 255, 0.73);
    font-size: 15px;
    line-height: 1.8;
}

/* Features */

.tinnitus-hero-features {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-bottom: 27px;
}

.tinnitus-hero-features span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255, 255, 255, 0.88);
    font-size: 12px;
    font-weight: 600;
}

.tinnitus-hero-features i {
    color: var(--tinnitus-yellow);
    font-size: 14px;
}

/* Buttons */

.tinnitus-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

.tinnitus-primary-btn {
    display: inline-flex;
    min-height: 53px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 23px;
    color: var(--tinnitus-navy);
    background: var(--tinnitus-yellow);
    border-radius: 12px;
    box-shadow: 0 12px 28px rgba(255, 196, 0, 0.20);
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
    transition: 0.3s ease;
}

.tinnitus-primary-btn:hover {
    color: var(--tinnitus-navy);
    background: #ffffff;
    transform: translateY(-3px);
}

.tinnitus-primary-btn i {
    transition: transform 0.3s ease;
}

.tinnitus-primary-btn:hover i {
    transform: translateX(4px);
}

.tinnitus-call-btn {
    display: inline-flex;
    min-height: 53px;
    align-items: center;
    gap: 10px;
    padding: 7px 15px 7px 8px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.075);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 12px;
    text-decoration: none;
    transition: 0.3s ease;
}

.tinnitus-call-btn > i {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    color: var(--tinnitus-navy);
    background: #ffffff;
    border-radius: 10px;
    font-size: 15px;
}

.tinnitus-call-btn span,
.tinnitus-call-btn strong {
    display: block;
}

.tinnitus-call-btn span {
    color: rgba(255, 255, 255, 0.62);
    font-size: 9px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.tinnitus-call-btn strong {
    color: #ffffff;
    font-size: 12px;
    letter-spacing: 0;
}

.tinnitus-call-btn:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.13);
    border-color: rgba(255, 196, 0, 0.35);
    transform: translateY(-2px);
}

/* =========================================
   HERO VISUAL
========================================= */

.tinnitus-hero-visual {
    position: relative;
    min-height: 400px;
}

.tinnitus-main-visual {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 270px;
    height: 270px;
    padding: 30px;
    text-align: center;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.15),
            rgba(255, 255, 255, 0.055)
        );
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 50%;
    box-shadow:
        0 30px 65px rgba(0, 0, 0, 0.25),
        inset 0 0 45px rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(15px);
    flex-direction: column;
    transform: translate(-50%, -50%);
}

.tinnitus-ear-icon {
    display: grid;
    width: 86px;
    height: 86px;
    place-items: center;
    color: var(--tinnitus-navy);
    background: linear-gradient(
        145deg,
        #ffe67d,
        var(--tinnitus-yellow)
    );
    border-radius: 28px;
    box-shadow: 0 16px 36px rgba(255, 196, 0, 0.23);
    font-size: 43px;
}

.tinnitus-main-visual small {
    display: block;
    margin: 13px 0 3px;
    color: rgba(255, 255, 255, 0.60);
    font-size: 10px;
    font-weight: 650;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.tinnitus-main-visual > strong {
    color: #ffffff;
    font-size: 19px;
    font-weight: 750;
}

/* Sound Equalizer */

.tinnitus-sound-line {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    height: 27px;
    margin-top: 10px;
}

.tinnitus-sound-line span {
    display: block;
    width: 3px;
    height: 9px;
    background: var(--tinnitus-yellow);
    border-radius: 10px;
    animation: tinnitusSound 1.2s ease-in-out infinite;
}

.tinnitus-sound-line span:nth-child(2) {
    animation-delay: 0.1s;
}

.tinnitus-sound-line span:nth-child(3) {
    animation-delay: 0.2s;
}

.tinnitus-sound-line span:nth-child(4) {
    animation-delay: 0.3s;
}

.tinnitus-sound-line span:nth-child(5) {
    animation-delay: 0.4s;
}

.tinnitus-sound-line span:nth-child(6) {
    animation-delay: 0.5s;
}

.tinnitus-sound-line span:nth-child(7) {
    animation-delay: 0.6s;
}

/* Circular Waves */

.tinnitus-wave {
    position: absolute;
    top: 50%;
    left: 50%;
    border: 1px solid rgba(255, 196, 0, 0.25);
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.tinnitus-wave.wave-one {
    width: 305px;
    height: 305px;
}

.tinnitus-wave.wave-two {
    width: 350px;
    height: 350px;
    border-style: dashed;
    animation: tinnitusRotate 30s linear infinite;
}

.tinnitus-wave.wave-three {
    width: 395px;
    height: 395px;
    border-color: rgba(255, 255, 255, 0.07);
}

/* Floating Cards */

.tinnitus-floating-card {
    position: absolute;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 185px;
    padding: 11px 14px;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.7);
    border-radius: 13px;
    box-shadow: 0 17px 38px rgba(0, 0, 0, 0.22);
    animation: tinnitusFloat 4.5s ease-in-out infinite;
}

.tinnitus-card-icon {
    display: grid;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    place-items: center;
    color: var(--tinnitus-navy);
    background: var(--tinnitus-yellow);
    border-radius: 11px;
    font-size: 17px;
}

.tinnitus-floating-card span,
.tinnitus-floating-card strong {
    display: block;
}

.tinnitus-floating-card span {
    margin-bottom: 1px;
    color: #8a92a2;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.7px;
    text-transform: uppercase;
}

.tinnitus-floating-card strong {
    color: var(--tinnitus-navy);
    font-size: 11px;
    font-weight: 750;
}

.tinnitus-floating-card.card-assessment {
    top: 12px;
    left: -15px;
}

.tinnitus-floating-card.card-treatment {
    top: 88px;
    right: -26px;
    animation-delay: 0.9s;
}

.tinnitus-floating-card.card-support {
    right: 5px;
    bottom: 8px;
    animation-delay: 1.6s;
}

/* Decorative Background */

.tinnitus-hero-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.tinnitus-hero .shape-one {
    top: -250px;
    right: -180px;
    width: 570px;
    height: 570px;
    border: 85px solid rgba(255, 255, 255, 0.025);
}

.tinnitus-hero .shape-two {
    bottom: -230px;
    left: -180px;
    width: 470px;
    height: 470px;
    background: rgba(255, 196, 0, 0.025);
    border: 65px solid rgba(255, 255, 255, 0.018);
}

.tinnitus-hero-dots {
    position: absolute;
    top: 42px;
    left: 4%;
    width: 125px;
    height: 125px;
    opacity: 0.20;
    background-image:
        radial-gradient(
            rgba(255, 255, 255, 0.7) 1.5px,
            transparent 1.5px
        );
    background-size: 16px 16px;
}

/* Animations */

@keyframes tinnitusFloat {
    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

@keyframes tinnitusSound {
    0%,
    100% {
        height: 7px;
        opacity: 0.55;
    }

    50% {
        height: 24px;
        opacity: 1;
    }
}

@keyframes tinnitusRotate {
    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1100px) {
    .tinnitus-hero-container {
        grid-template-columns: minmax(0, 1fr) 350px;
        gap: 35px;
    }

    .tinnitus-main-visual {
        width: 235px;
        height: 235px;
    }

    .tinnitus-wave.wave-one {
        width: 270px;
        height: 270px;
    }

    .tinnitus-wave.wave-two {
        width: 310px;
        height: 310px;
    }

    .tinnitus-wave.wave-three {
        width: 345px;
        height: 345px;
    }

    .tinnitus-floating-card {
        min-width: 165px;
    }
}

@media (max-width: 900px) {
    .tinnitus-hero {
        min-height: auto;
        padding: 62px 18px;
    }

    .tinnitus-hero-container {
        grid-template-columns: 1fr;
    }

    .tinnitus-hero-content {
        max-width: 780px;
    }

    .tinnitus-hero-visual {
        display: none;
    }
}

@media (max-width: 767px) {
    .tinnitus-hero {
        padding: 48px 15px;
    }

    .tinnitus-hero-content {
        text-align: center;
    }

    .tinnitus-hero-breadcrumb,
    .tinnitus-hero-features,
    .tinnitus-hero-buttons {
        justify-content: center;
    }

    .tinnitus-hero-content h1 {
        margin-right: auto;
        margin-left: auto;
        font-size: 37px;
        letter-spacing: -1px;
    }

    .tinnitus-hero-content > p {
        margin-right: auto;
        margin-left: auto;
        font-size: 14px;
        line-height: 1.7;
    }
}

@media (max-width: 480px) {
    .tinnitus-hero {
        padding: 42px 14px;
    }

    .tinnitus-hero-breadcrumb {
        font-size: 10px;
    }

    .tinnitus-hero-label {
        font-size: 9px;
    }

    .tinnitus-hero-content h1 {
        font-size: 31px;
    }

    .tinnitus-hero-features {
        align-items: flex-start;
        flex-direction: column;
        width: fit-content;
        margin-right: auto;
        margin-left: auto;
        text-align: left;
    }

    .tinnitus-hero-buttons {
        align-items: stretch;
        flex-direction: column;
    }

    .tinnitus-primary-btn,
    .tinnitus-call-btn {
        width: 100%;
    }

    .tinnitus-call-btn {
        justify-content: center;
    }
}

/* Accessibility */

@media (prefers-reduced-motion: reduce) {
    .tinnitus-floating-card,
    .tinnitus-sound-line span,
    .tinnitus-wave.wave-two {
        animation: none;
    }
}

/* =========================================
   HEAR 'N' SAY SERVICES DROPDOWN
========================================= */

.hns-service-dropdown {
    position: relative;
}

.hns-services-menu {
    min-width: 345px;
    margin: 0;
    padding: 9px;
    background: #ffffff;
    border: 1px solid rgba(8, 22, 56, 0.09);
    border-radius: 16px;
    box-shadow: 0 22px 55px rgba(8, 22, 56, 0.17);
}

.hns-services-menu li {
    width: 100%;
    margin: 0;
    padding: 0;
}

.hns-services-menu .dropdown-item {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 10px 11px;
    color: #081638;
    white-space: normal;
    background: transparent;
    border-radius: 11px;
    transition:
        color 0.25s ease,
        background 0.25s ease,
        transform 0.25s ease;
}

.hns-services-menu .dropdown-item:hover,
.hns-services-menu .dropdown-item:focus {
    color: #081638;
    background: #edf2ff;
    transform: translateX(3px);
}

.hns-dropdown-icon {
    display: grid;
    flex: 0 0 43px;
    width: 43px;
    height: 43px;
    place-items: center;
    color: #19368f;
    background: #e7edff;
    border-radius: 11px;
    font-size: 18px;
    transition: 0.25s ease;
}

.hns-services-menu .dropdown-item:hover .hns-dropdown-icon {
    color: #081638;
    background: #ffc400;
}

.hns-dropdown-text {
    min-width: 0;
    flex: 1;
}

.hns-dropdown-text strong,
.hns-dropdown-text small {
    display: block;
}

.hns-dropdown-text strong {
    margin-bottom: 2px;
    color: #081638;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 700;
}

.hns-dropdown-text small {
    color: #798397;
    font-size: 10px;
    line-height: 1.4;
    font-weight: 400;
}

.hns-dropdown-arrow {
    flex-shrink: 0;
    color: #a1a9b8;
    font-size: 10px;
    transition: 0.25s ease;
}

.hns-services-menu .dropdown-item:hover .hns-dropdown-arrow {
    color: #19368f;
    transform: translateX(3px);
}

/* =========================================
   DESKTOP: OPEN DROPDOWN ON HOVER
========================================= */

@media (min-width: 992px) {
    .hns-service-dropdown::after {
        content: "";
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        height: 18px;
    }

    .hns-service-dropdown > .hns-services-menu {
        display: block;
        top: calc(100% + 13px);
        left: 50%;
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        transform: translate(-50%, 12px);
        transition:
            opacity 0.25s ease,
            transform 0.25s ease,
            visibility 0.25s ease;
    }

    .hns-service-dropdown > .hns-services-menu::before {
        content: "";
        position: absolute;
        top: -7px;
        left: 50%;
        width: 14px;
        height: 14px;
        background: #ffffff;
        border-top: 1px solid rgba(8, 22, 56, 0.09);
        border-left: 1px solid rgba(8, 22, 56, 0.09);
        transform: translateX(-50%) rotate(45deg);
    }

    .hns-service-dropdown:hover > .hns-services-menu,
    .hns-service-dropdown:focus-within > .hns-services-menu,
    .hns-service-dropdown > .hns-services-menu.show {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
        transform: translate(-50%, 0);
    }

    .hns-service-dropdown > .dropdown-toggle::after {
        transition: transform 0.25s ease;
    }

    .hns-service-dropdown:hover > .dropdown-toggle::after,
    .hns-service-dropdown:focus-within > .dropdown-toggle::after,
    .hns-service-dropdown > .dropdown-toggle.show::after {
        transform: rotate(180deg);
    }
}

/* =========================================
   MOBILE DROPDOWN
========================================= */

@media (max-width: 991px) {
    .hns-service-dropdown {
        width: 100%;
    }

    .hns-service-dropdown > .dropdown-toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
    }

    .hns-service-dropdown > .dropdown-toggle::after {
        margin-left: auto;
        transition: transform 0.25s ease;
    }

    .hns-service-dropdown > .dropdown-toggle.show::after {
        transform: rotate(180deg);
    }

    .hns-services-menu {
        width: 100%;
        min-width: 0;
        margin: 7px 0 10px;
        padding: 7px;
        background: #f4f7ff;
        border: 0;
        border-radius: 12px;
        box-shadow: none;
    }

    .hns-services-menu .dropdown-item {
        margin-bottom: 4px;
        padding: 9px;
        background: #ffffff;
    }

    .hns-services-menu li:last-child .dropdown-item {
        margin-bottom: 0;
    }

    .hns-dropdown-icon {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
        font-size: 15px;
    }

    .hns-dropdown-text strong {
        font-size: 12px;
    }

    .hns-dropdown-text small {
        font-size: 9px;
    }
}

/* ========================================
   TINNITUS ABOUT SECTION WITH IMAGE
======================================== */

.tinnitus-about {
    --ta-navy: #081638;
    --ta-dark-blue: #0c1d50;
    --ta-blue: #19368f;
    --ta-yellow: #ffc400;
    --ta-text: #566278;

    position: relative;
    padding: 78px 20px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 95% 10%,
            rgba(25, 54, 143, 0.07),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #f5f7fc 0%,
            #ffffff 50%,
            #f0f4ff 100%
        );
    font-family: "Poppins", sans-serif;
}

.tinnitus-about *,
.tinnitus-about *::before,
.tinnitus-about *::after {
    box-sizing: border-box;
}

.tinnitus-about-container {
    display: grid;
    grid-template-columns: minmax(390px, 0.9fr) minmax(0, 1.1fr);
    align-items: center;
    gap: 70px;
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
}

/* ========================================
   IMAGE
======================================== */

.tinnitus-about-image {
    position: relative;
    padding: 0 20px 28px 0;
}

.tinnitus-image-frame {
    position: relative;
    height: 570px;
    overflow: hidden;
    background: #dce4f3;
    border: 8px solid #ffffff;
    border-radius: 28px 80px 28px 28px;
    box-shadow: 0 25px 60px rgba(8, 22, 56, 0.18);
}

.tinnitus-image-frame img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
}

.tinnitus-about-image:hover .tinnitus-image-frame img {
    transform: scale(1.045);
}

.tinnitus-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            to top,
            rgba(8, 22, 56, 0.45),
            transparent 45%
        );
    pointer-events: none;
}

.tinnitus-image-tag {
    position: absolute;
    top: 21px;
    left: 21px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 14px;
    color: var(--ta-navy);
    background: var(--ta-yellow);
    border-radius: 30px;
    box-shadow: 0 8px 22px rgba(8, 22, 56, 0.20);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.tinnitus-image-tag i {
    font-size: 14px;
}

/* Floating Cards */

.tinnitus-experience-card,
.tinnitus-sound-card {
    position: absolute;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 11px;
    background: #ffffff;
    border: 1px solid #e2e7f0;
    border-radius: 14px;
    box-shadow: 0 15px 40px rgba(8, 22, 56, 0.17);
}

.tinnitus-experience-card {
    top: 105px;
    right: -30px;
    padding: 12px 15px;
}

.tinnitus-sound-card {
    right: -15px;
    bottom: 0;
    padding: 14px 17px;
}

.tinnitus-card-icon {
    display: grid;
    flex: 0 0 43px;
    width: 43px;
    height: 43px;
    place-items: center;
    color: var(--ta-navy);
    background: var(--ta-yellow);
    border-radius: 12px;
    font-size: 19px;
}

.tinnitus-experience-card strong,
.tinnitus-experience-card small,
.tinnitus-sound-card strong,
.tinnitus-sound-card small {
    display: block;
}

.tinnitus-experience-card strong,
.tinnitus-sound-card strong {
    color: var(--ta-navy);
    font-size: 12px;
    font-weight: 750;
}

.tinnitus-experience-card small,
.tinnitus-sound-card small {
    color: #7d8798;
    font-size: 9px;
}

/* Sound Bars */

.tinnitus-sound-bars {
    display: flex;
    align-items: center;
    gap: 3px;
    height: 39px;
    padding: 0 5px;
}

.tinnitus-sound-bars span {
    display: block;
    width: 4px;
    height: 12px;
    background: var(--ta-blue);
    border-radius: 5px;
    animation: taSoundBar 1.2s ease-in-out infinite;
}

.tinnitus-sound-bars span:nth-child(2) {
    animation-delay: 0.15s;
}

.tinnitus-sound-bars span:nth-child(3) {
    animation-delay: 0.30s;
}

.tinnitus-sound-bars span:nth-child(4) {
    animation-delay: 0.45s;
}

.tinnitus-sound-bars span:nth-child(5) {
    animation-delay: 0.60s;
}

/* Image Pattern */

.tinnitus-image-pattern {
    position: absolute;
    right: -10px;
    bottom: 55px;
    z-index: -1;
    width: 120px;
    height: 120px;
    opacity: 0.22;
    background-image:
        radial-gradient(
            var(--ta-blue) 1.5px,
            transparent 1.5px
        );
    background-size: 13px 13px;
}

/* ========================================
   CONTENT
======================================== */

.tinnitus-about-content {
    min-width: 0;
}

.tinnitus-section-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 13px;
    padding: 8px 15px;
    color: var(--ta-blue);
    background: #e7edff;
    border: 1px solid #d8e1ff;
    border-radius: 30px;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.tinnitus-section-label i {
    color: #d9a700;
    font-size: 16px;
}

.tinnitus-about-content h2 {
    margin: 0 0 17px;
    color: var(--ta-navy);
    font-size: clamp(33px, 4vw, 48px);
    line-height: 1.16;
    font-weight: 800;
    letter-spacing: -1.4px;
}

.tinnitus-about-content h2 span {
    display: block;
    color: var(--ta-blue);
}

.tinnitus-about-content > p {
    margin: 0 0 13px;
    color: var(--ta-text);
    font-size: 13px;
    line-height: 1.8;
}

/* Highlight */

.tinnitus-highlight-box {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin: 19px 0;
    padding: 17px;
    background: #ffffff;
    border: 1px solid #e0e6f0;
    border-left: 4px solid var(--ta-yellow);
    border-radius: 13px;
    box-shadow: 0 10px 28px rgba(8, 22, 56, 0.07);
}

.tinnitus-highlight-icon {
    display: grid;
    flex: 0 0 45px;
    width: 45px;
    height: 45px;
    place-items: center;
    color: #ffffff;
    background: linear-gradient(
        135deg,
        var(--ta-navy),
        var(--ta-blue)
    );
    border-radius: 11px;
    font-size: 19px;
}

.tinnitus-highlight-box p {
    margin: 0;
    color: var(--ta-text);
    font-size: 12px;
    line-height: 1.75;
}

.tinnitus-highlight-box strong {
    color: var(--ta-navy);
}

/* Benefits */

.tinnitus-benefits {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 20px 0;
}

.tinnitus-benefit {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 12px;
    background: #f0f4ff;
    border: 1px solid #dfe6f8;
    border-radius: 12px;
    transition: 0.3s ease;
}

.tinnitus-benefit:hover {
    background: #ffffff;
    border-color: rgba(25, 54, 143, 0.22);
    box-shadow: 0 8px 22px rgba(8, 22, 56, 0.08);
    transform: translateY(-2px);
}

.tinnitus-benefit > span {
    display: grid;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    place-items: center;
    color: var(--ta-blue);
    background: #ffffff;
    border-radius: 10px;
    font-size: 17px;
}

.tinnitus-benefit strong,
.tinnitus-benefit small {
    display: block;
}

.tinnitus-benefit strong {
    margin-bottom: 2px;
    color: var(--ta-navy);
    font-size: 11px;
    line-height: 1.4;
    font-weight: 750;
}

.tinnitus-benefit small {
    color: #788295;
    font-size: 9px;
    line-height: 1.4;
}

/* Buttons */

.tinnitus-bottom-area {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 13px;
}

.tinnitus-about-btn {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 21px;
    color: #ffffff;
    background: linear-gradient(
        135deg,
        var(--ta-navy),
        var(--ta-blue)
    );
    border-radius: 11px;
    box-shadow: 0 11px 25px rgba(8, 22, 56, 0.18);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
}

.tinnitus-about-btn:hover {
    color: var(--ta-navy);
    background: var(--ta-yellow);
    transform: translateY(-2px);
}

.tinnitus-about-btn i {
    transition: transform 0.3s ease;
}

.tinnitus-about-btn:hover i {
    transform: translateX(4px);
}

.tinnitus-phone-link {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    gap: 9px;
    color: var(--ta-navy);
    text-decoration: none;
}

.tinnitus-phone-link > i {
    display: grid;
    width: 43px;
    height: 43px;
    place-items: center;
    color: var(--ta-blue);
    background: #e8eeff;
    border-radius: 11px;
    font-size: 16px;
}

.tinnitus-phone-link span,
.tinnitus-phone-link strong {
    display: block;
}

.tinnitus-phone-link span {
    color: #7b8495;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
}

.tinnitus-phone-link strong {
    margin-top: 2px;
    color: var(--ta-navy);
    font-size: 12px;
}

/* Animation */

@keyframes taSoundBar {
    0%,
    100% {
        height: 9px;
    }

    50% {
        height: 30px;
    }
}

/* ========================================
   RESPONSIVE
======================================== */

@media (max-width: 1050px) {
    .tinnitus-about-container {
        grid-template-columns: minmax(340px, 0.85fr) minmax(0, 1.15fr);
        gap: 45px;
    }

    .tinnitus-image-frame {
        height: 520px;
    }

    .tinnitus-experience-card {
        right: -15px;
    }
}

@media (max-width: 900px) {
    .tinnitus-about {
        padding: 60px 18px;
    }

    .tinnitus-about-container {
        grid-template-columns: 1fr;
    }

    .tinnitus-about-image {
        width: 100%;
        max-width: 620px;
        margin: 0 auto;
    }

    .tinnitus-image-frame {
        height: 500px;
    }

    .tinnitus-about-content {
        text-align: center;
    }

    .tinnitus-about-content > p {
        text-align: left;
    }

    .tinnitus-highlight-box,
    .tinnitus-benefit {
        text-align: left;
    }

    .tinnitus-bottom-area {
        justify-content: center;
    }
}

@media (max-width: 600px) {
    .tinnitus-about {
        padding: 48px 14px;
    }

    .tinnitus-about-image {
        padding: 0 0 45px;
    }

    .tinnitus-image-frame {
        height: 400px;
        border-width: 5px;
        border-radius: 20px 55px 20px 20px;
    }

    .tinnitus-experience-card {
        top: 18px;
        right: 12px;
    }

    .tinnitus-sound-card {
        right: 15px;
        bottom: 15px;
    }

    .tinnitus-image-pattern {
        display: none;
    }

    .tinnitus-about-content h2 {
        font-size: 30px;
        letter-spacing: -0.6px;
    }

    .tinnitus-benefits {
        grid-template-columns: 1fr;
    }

    .tinnitus-highlight-box {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 430px) {
    .tinnitus-image-frame {
        height: 350px;
    }

    .tinnitus-image-tag {
        top: 14px;
        left: 14px;
        font-size: 8px;
    }

    .tinnitus-experience-card {
        top: auto;
        right: auto;
        bottom: 7px;
        left: 10px;
    }

    .tinnitus-sound-card {
        display: none;
    }

    .tinnitus-about-content h2 {
        font-size: 27px;
    }

    .tinnitus-bottom-area {
        align-items: stretch;
        flex-direction: column;
    }

    .tinnitus-about-btn {
        width: 100%;
    }

    .tinnitus-phone-link {
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .tinnitus-sound-bars span {
        animation: none;
    }
}
/* ========================================
   TINNITUS SECTION – READABLE FONT SIZES
   Add at the end of your CSS
======================================== */

.tinnitus-about-content h2 {
    font-size: clamp(38px, 4vw, 52px);
    line-height: 1.18;
    font-weight: 800;
    letter-spacing: -1px;
}

.tinnitus-about-content > p {
    color: #46536a;
    font-size: 16px;
    line-height: 1.85;
    font-weight: 400;
}

.tinnitus-section-label {
    padding: 9px 17px;
    font-size: 13px;
    line-height: 1.4;
}

.tinnitus-section-label i {
    font-size: 17px;
}

.tinnitus-highlight-box p {
    color: #46536a;
    font-size: 15px;
    line-height: 1.8;
}

.tinnitus-highlight-box strong {
    color: #081638;
    font-weight: 700;
}

.tinnitus-benefit {
    min-height: 76px;
    padding: 14px;
}

.tinnitus-benefit > span {
    flex: 0 0 45px;
    width: 45px;
    height: 45px;
    font-size: 19px;
}

.tinnitus-benefit strong {
    margin-bottom: 3px;
    font-size: 14px;
    line-height: 1.4;
}

.tinnitus-benefit small {
    color: #626e82;
    font-size: 12px;
    line-height: 1.5;
}

.tinnitus-about-btn {
    min-height: 54px;
    padding: 14px 23px;
    font-size: 14px;
}

.tinnitus-phone-link span {
    font-size: 11px;
    line-height: 1.4;
}

.tinnitus-phone-link strong {
    font-size: 14px;
}

.tinnitus-image-tag {
    padding: 10px 16px;
    font-size: 12px;
}

.tinnitus-experience-card strong,
.tinnitus-sound-card strong {
    font-size: 14px;
}

.tinnitus-experience-card small,
.tinnitus-sound-card small {
    font-size: 11px;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .tinnitus-about-content h2 {
        font-size: 42px;
    }

    .tinnitus-about-content > p {
        font-size: 16px;
    }

    .tinnitus-highlight-box p {
        font-size: 15px;
    }
}

/* Mobile */

@media (max-width: 600px) {
    .tinnitus-about-content h2 {
        font-size: 34px;
        line-height: 1.22;
    }

    .tinnitus-about-content > p {
        font-size: 15px;
        line-height: 1.8;
    }

    .tinnitus-section-label {
        font-size: 11px;
    }

    .tinnitus-highlight-box p {
        font-size: 14px;
        line-height: 1.75;
    }

    .tinnitus-benefit strong {
        font-size: 14px;
    }

    .tinnitus-benefit small {
        font-size: 12px;
    }

    .tinnitus-about-btn {
        font-size: 14px;
    }
}

/* Small Mobile */

@media (max-width: 420px) {
    .tinnitus-about-content h2 {
        font-size: 30px;
    }

    .tinnitus-about-content > p {
        font-size: 15px;
    }

    .tinnitus-image-tag {
        font-size: 10px;
    }
}

/* ==========================================
   UNDERSTANDING TINNITUS SECTION
========================================== */

.ut-section {
    --ut-navy: #081638;
    --ut-dark-blue: #0c1d50;
    --ut-blue: #19368f;
    --ut-yellow: #ffc400;
    --ut-text: #4e5b70;
    --ut-light: #edf2ff;

    position: relative;
    padding: 80px 20px;
    overflow: hidden;
    background:
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );
    font-family: "Poppins", sans-serif;
}

.ut-section *,
.ut-section *::before,
.ut-section *::after {
    box-sizing: border-box;
}

.ut-container {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(390px, 0.9fr);
    align-items: center;
    gap: 65px;
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
}

/* Decorative Circles */

.ut-background-circle {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.ut-circle-one {
    top: -230px;
    right: -170px;
    width: 520px;
    height: 520px;
    border: 75px solid rgba(255, 255, 255, 0.025);
}

.ut-circle-two {
    bottom: -210px;
    left: -170px;
    width: 430px;
    height: 430px;
    background: rgba(255, 196, 0, 0.025);
    border: 55px solid rgba(255, 255, 255, 0.018);
}

/* ==========================================
   CONTENT
========================================== */

.ut-section-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 9px 16px;
    color: var(--ut-yellow);
    background: rgba(255, 255, 255, 0.075);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 30px;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.ut-section-label i {
    font-size: 17px;
}

.ut-content h2 {
    margin: 0 0 17px;
    color: #ffffff;
    font-size: clamp(38px, 4.4vw, 52px);
    line-height: 1.16;
    font-weight: 800;
    letter-spacing: -1.3px;
}

.ut-content h2 span {
    display: block;
    color: var(--ut-yellow);
}

.ut-intro-text {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 16px;
    line-height: 1.85;
}

/* Information Highlight */

.ut-sound-info {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin: 22px 0;
    padding: 17px;
    background: rgba(255, 255, 255, 0.075);
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-left: 4px solid var(--ut-yellow);
    border-radius: 14px;
}

.ut-sound-icon {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    color: var(--ut-navy);
    background: var(--ut-yellow);
    border-radius: 12px;
    font-size: 21px;
}

.ut-sound-info strong {
    display: block;
    margin-bottom: 4px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
}

.ut-sound-info p {
    margin: 0;
    color: rgba(255, 255, 255, 0.68);
    font-size: 13px;
    line-height: 1.7;
}

/* Causes Heading */

.ut-causes-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 14px;
}

.ut-causes-heading span {
    display: block;
    margin-bottom: 3px;
    color: var(--ut-yellow);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.9px;
    text-transform: uppercase;
}

.ut-causes-heading h3 {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    line-height: 1.4;
    font-weight: 700;
}

.ut-causes-heading > i {
    color: rgba(255, 196, 0, 0.55);
    font-size: 29px;
}

/* Cause Cards */

.ut-causes-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
}

.ut-cause-card {
    display: flex;
    min-width: 0;
    min-height: 61px;
    align-items: center;
    gap: 9px;
    padding: 10px;
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 11px;
    transition: 0.3s ease;
}

.ut-cause-card:hover {
    background: rgba(255, 255, 255, 0.13);
    border-color: rgba(255, 196, 0, 0.34);
    transform: translateY(-3px);
}

.ut-cause-icon {
    display: grid;
    flex: 0 0 35px;
    width: 35px;
    height: 35px;
    place-items: center;
    color: var(--ut-yellow);
    background: rgba(255, 196, 0, 0.11);
    border-radius: 9px;
    font-size: 15px;
}

.ut-cause-card strong {
    color: rgba(255, 255, 255, 0.90);
    font-size: 11px;
    line-height: 1.45;
    font-weight: 650;
}

.ut-cause-wide {
    grid-column: span 2;
}

/* ==========================================
   IMAGE
========================================== */

.ut-image-column {
    position: relative;
}

.ut-image-wrapper {
    position: relative;
    height: 555px;
    padding: 8px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.10);
    border: 1px solid rgba(255, 255, 255, 0.17);
    border-radius: 80px 25px 25px 25px;
    box-shadow: 0 28px 65px rgba(0, 0, 0, 0.28);
}

.ut-image-wrapper img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 72px 18px 18px 18px;
    transition: transform 0.7s ease;
}

.ut-image-wrapper:hover img {
    transform: scale(1.04);
}

.ut-image-gradient {
    position: absolute;
    inset: 8px;
    background:
        linear-gradient(
            to top,
            rgba(8, 22, 56, 0.80),
            transparent 50%
        );
    border-radius: 72px 18px 18px 18px;
    pointer-events: none;
}

/* Image Caption */

.ut-image-caption {
    position: absolute;
    right: 27px;
    bottom: 27px;
    left: 27px;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    background: rgba(255, 255, 255, 0.94);
    border-radius: 13px;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.20);
}

.ut-caption-icon {
    display: grid;
    flex: 0 0 45px;
    width: 45px;
    height: 45px;
    place-items: center;
    color: var(--ut-navy);
    background: var(--ut-yellow);
    border-radius: 11px;
    font-size: 19px;
}

.ut-image-caption small,
.ut-image-caption strong {
    display: block;
}

.ut-image-caption small {
    margin-bottom: 2px;
    color: #707b8e;
    font-size: 10px;
    font-weight: 650;
    letter-spacing: 0.7px;
    text-transform: uppercase;
}

.ut-image-caption strong {
    color: var(--ut-navy);
    font-size: 13px;
    line-height: 1.4;
    font-weight: 750;
}

/* Sound Wave */

.ut-sound-wave {
    position: absolute;
    top: 24px;
    right: 24px;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 4px;
    height: 48px;
    padding: 8px 12px;
    background: var(--ut-yellow);
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(8, 22, 56, 0.20);
}

.ut-sound-wave span {
    display: block;
    width: 3px;
    height: 10px;
    background: var(--ut-navy);
    border-radius: 5px;
    animation: utSoundWave 1.2s ease-in-out infinite;
}

.ut-sound-wave span:nth-child(2) {
    animation-delay: 0.12s;
}

.ut-sound-wave span:nth-child(3) {
    animation-delay: 0.24s;
}

.ut-sound-wave span:nth-child(4) {
    animation-delay: 0.36s;
}

.ut-sound-wave span:nth-child(5) {
    animation-delay: 0.48s;
}

.ut-sound-wave span:nth-child(6) {
    animation-delay: 0.60s;
}

.ut-sound-wave span:nth-child(7) {
    animation-delay: 0.72s;
}

/* One Ear and Both Ear Cards */

.ut-ear-info-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 10px;
}

.ut-ear-info-cards > div {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 11px;
    background: rgba(255, 255, 255, 0.09);
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 11px;
}

.ut-ear-info-cards > div > span {
    display: grid;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    place-items: center;
    color: var(--ut-navy);
    background: var(--ut-yellow);
    border-radius: 9px;
    font-size: 16px;
}

.ut-ear-info-cards p,
.ut-ear-info-cards strong {
    display: block;
}

.ut-ear-info-cards p {
    margin: 0;
    color: rgba(255, 255, 255, 0.62);
    font-size: 9px;
    line-height: 1.5;
}

.ut-ear-info-cards strong {
    color: #ffffff;
    font-size: 12px;
}

/* Evaluation Box */

.ut-evaluation-box {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 10px;
    padding: 16px;
    background: #ffffff;
    border-radius: 13px;
    box-shadow: 0 16px 35px rgba(0, 0, 0, 0.18);
}

.ut-evaluation-icon {
    display: grid;
    flex: 0 0 45px;
    width: 45px;
    height: 45px;
    place-items: center;
    color: var(--ut-navy);
    background: var(--ut-yellow);
    border-radius: 11px;
    font-size: 19px;
}

.ut-evaluation-box span {
    display: block;
    margin-bottom: 4px;
    color: var(--ut-blue);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 0.7px;
    text-transform: uppercase;
}

.ut-evaluation-box p {
    margin: 0;
    color: var(--ut-text);
    font-size: 12px;
    line-height: 1.65;
}

/* Animation */

@keyframes utSoundWave {
    0%,
    100% {
        height: 8px;
    }

    50% {
        height: 28px;
    }
}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 1050px) {
    .ut-container {
        grid-template-columns: minmax(0, 1fr) 370px;
        gap: 40px;
    }

    .ut-causes-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ut-cause-wide {
        grid-column: span 2;
    }

    .ut-image-wrapper {
        height: 530px;
    }
}

@media (max-width: 900px) {
    .ut-section {
        padding: 62px 18px;
    }

    .ut-container {
        grid-template-columns: 1fr;
    }

    .ut-image-column {
        width: 100%;
        max-width: 600px;
        margin: 0 auto;
    }
}

@media (max-width: 600px) {
    .ut-section {
        padding: 48px 14px;
    }

    .ut-content {
        text-align: center;
    }

    .ut-content h2 {
        font-size: 34px;
        letter-spacing: -0.7px;
    }

    .ut-intro-text {
        font-size: 15px;
        line-height: 1.8;
        text-align: left;
    }

    .ut-sound-info,
    .ut-causes-heading,
    .ut-cause-card {
        text-align: left;
    }

    .ut-causes-heading > i {
        display: none;
    }

    .ut-causes-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ut-cause-wide {
        grid-column: span 2;
    }

    .ut-image-wrapper {
        height: 430px;
        border-radius: 50px 20px 20px 20px;
    }

    .ut-image-wrapper img,
    .ut-image-gradient {
        border-radius: 43px 14px 14px 14px;
    }

    .ut-ear-info-cards {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 430px) {
    .ut-content h2 {
        font-size: 30px;
    }

    .ut-section-label {
        font-size: 10px;
    }

    .ut-causes-grid {
        grid-template-columns: 1fr;
    }

    .ut-cause-wide {
        grid-column: auto;
    }

    .ut-image-wrapper {
        height: 380px;
    }

    .ut-image-caption {
        right: 18px;
        bottom: 18px;
        left: 18px;
    }

    .ut-image-caption strong {
        font-size: 11px;
    }

    .ut-ear-info-cards {
        grid-template-columns: 1fr;
    }

    .ut-evaluation-box {
        flex-direction: column;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ut-sound-wave span {
        animation: none;
    }
}

/* ==========================================
   TINNITUS SERVICES
========================================== */

.ts-heading-section,
.ts-service-section {
    --ts-navy: #081638;
    --ts-dark-blue: #0c1d50;
    --ts-blue: #19368f;
    --ts-yellow: #ffc400;
    --ts-text: #4e5b70;
    --ts-border: #dfe5f0;

    font-family: "Poppins", sans-serif;
}

.ts-heading-section *,
.ts-service-section *,
.ts-heading-section *::before,
.ts-service-section *::before,
.ts-heading-section *::after,
.ts-service-section *::after {
    box-sizing: border-box;
}

.ts-container {
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
}

/* ==========================================
   MAIN HEADING
========================================== */

.ts-heading-section {
    position: relative;
    padding: 65px 20px 55px;
    overflow: hidden;
    text-align: center;
    background:
        radial-gradient(
            circle at 85% 15%,
            rgba(255, 196, 0, 0.16),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            var(--ts-navy),
            var(--ts-dark-blue) 55%,
            var(--ts-blue)
        );
}

.ts-main-heading {
    max-width: 820px;
    margin: 0 auto;
}

.ts-heading-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 13px;
    padding: 9px 17px;
    color: var(--ts-yellow);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 30px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.ts-main-heading h2 {
    margin: 0 0 13px;
    color: #ffffff;
    font-size: clamp(38px, 5vw, 54px);
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: -1.3px;
}

.ts-main-heading p {
    margin: 0;
    color: rgba(255, 255, 255, 0.76);
    font-size: 16px;
    line-height: 1.8;
}

/* ==========================================
   SERVICE LAYOUT
========================================== */

.ts-service-section {
    position: relative;
    padding: 72px 20px;
    overflow: hidden;
}

.ts-light-section {
    background:
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f7f9fd 100%
        );
}

.ts-soft-section {
    background:
        linear-gradient(
            135deg,
            #edf2ff 0%,
            #f8faff 48%,
            #eef3ff 100%
        );
}

.ts-service-grid {
    display: grid;
    grid-template-columns: minmax(380px, 0.9fr) minmax(0, 1.1fr);
    align-items: center;
    gap: 70px;
}

.ts-service-grid.ts-reverse .ts-service-image {
    grid-column: 2;
    grid-row: 1;
}

.ts-service-grid.ts-reverse .ts-service-content {
    grid-column: 1;
    grid-row: 1;
}

/* ==========================================
   SERVICE IMAGE
========================================== */

.ts-service-image {
    position: relative;
    padding: 0 20px 25px 0;
}

.ts-image-frame {
    position: relative;
    height: 490px;
    padding: 7px;
    overflow: hidden;
    background: #ffffff;
    border-radius: 25px 70px 25px 25px;
    box-shadow: 0 24px 60px rgba(8, 22, 56, 0.17);
}

.ts-reverse .ts-service-image {
    padding: 0 0 25px 20px;
}

.ts-reverse .ts-image-frame {
    border-radius: 70px 25px 25px 25px;
}

.ts-image-frame img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 19px 63px 19px 19px;
    transition: transform 0.65s ease;
}

.ts-reverse .ts-image-frame img {
    border-radius: 63px 19px 19px 19px;
}

.ts-service-image:hover .ts-image-frame img {
    transform: scale(1.045);
}

.ts-image-frame::after {
    content: "";
    position: absolute;
    inset: 7px;
    background:
        linear-gradient(
            to top,
            rgba(8, 22, 56, 0.63),
            transparent 50%
        );
    border-radius: inherit;
    pointer-events: none;
}

.ts-service-number {
    position: absolute;
    top: 19px;
    left: 19px;
    z-index: 3;
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    color: var(--ts-navy);
    background: var(--ts-yellow);
    border: 5px solid rgba(255, 255, 255, 0.75);
    border-radius: 15px;
    box-shadow: 0 10px 25px rgba(8, 22, 56, 0.22);
    font-size: 16px;
    font-weight: 800;
}

.ts-image-label {
    position: absolute;
    right: 25px;
    bottom: 25px;
    left: 25px;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 13px 16px;
    color: #ffffff;
    background: rgba(8, 22, 56, 0.77);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 12px;
    backdrop-filter: blur(10px);
    font-size: 14px;
    font-weight: 700;
}

.ts-image-label i {
    color: var(--ts-yellow);
    font-size: 19px;
}

.ts-floating-card {
    position: absolute;
    right: -22px;
    bottom: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 210px;
    padding: 13px 15px;
    background: #ffffff;
    border: 1px solid var(--ts-border);
    border-radius: 13px;
    box-shadow: 0 15px 38px rgba(8, 22, 56, 0.16);
}

.ts-reverse .ts-floating-card {
    right: auto;
    left: -22px;
}

.ts-floating-card > i {
    display: grid;
    flex: 0 0 43px;
    width: 43px;
    height: 43px;
    place-items: center;
    color: var(--ts-navy);
    background: var(--ts-yellow);
    border-radius: 11px;
    font-size: 19px;
}

.ts-floating-card strong,
.ts-floating-card span {
    display: block;
}

.ts-floating-card strong {
    margin-bottom: 2px;
    color: var(--ts-navy);
    font-size: 14px;
    font-weight: 750;
}

.ts-floating-card span {
    color: #727d90;
    font-size: 11px;
}

/* ==========================================
   SERVICE CONTENT
========================================== */

.ts-service-content {
    min-width: 0;
}

.ts-service-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    padding: 8px 15px;
    color: var(--ts-blue);
    background: #e6edff;
    border: 1px solid #d7e0fa;
    border-radius: 30px;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 750;
    letter-spacing: 0.9px;
    text-transform: uppercase;
}

.ts-service-label i {
    color: #d6a400;
    font-size: 16px;
}

.ts-service-content h2 {
    margin: 0 0 9px;
    color: var(--ts-navy);
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.17;
    font-weight: 800;
    letter-spacing: -1px;
}

.ts-service-content h3 {
    margin: 0 0 14px;
    color: #2d3d5e;
    font-size: 18px;
    line-height: 1.55;
    font-weight: 650;
}

.ts-service-content > p {
    margin: 0 0 17px;
    color: var(--ts-text);
    font-size: 16px;
    line-height: 1.8;
}

.ts-list-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 11px;
    color: var(--ts-navy);
    font-size: 15px;
    font-weight: 750;
}

.ts-list-title i {
    color: #d7a500;
    font-size: 18px;
}

/* Points */

.ts-points-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

.ts-point {
    display: flex;
    min-width: 0;
    min-height: 55px;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: #ffffff;
    border: 1px solid var(--ts-border);
    border-radius: 11px;
    transition: 0.3s ease;
}

.ts-soft-section .ts-point {
    background: rgba(255, 255, 255, 0.80);
}

.ts-point:hover {
    border-color: rgba(25, 54, 143, 0.25);
    box-shadow: 0 8px 20px rgba(8, 22, 56, 0.08);
    transform: translateY(-2px);
}

.ts-point > i {
    display: grid;
    flex: 0 0 35px;
    width: 35px;
    height: 35px;
    place-items: center;
    color: var(--ts-blue);
    background: #e9efff;
    border-radius: 9px;
    font-size: 15px;
}

.ts-point span {
    color: #293854;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 600;
}

.ts-point-wide {
    grid-column: span 2;
}

/* Conclusion */

.ts-conclusion {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-top: 14px;
    padding: 14px 16px;
    background: var(--ts-navy);
    border-left: 4px solid var(--ts-yellow);
    border-radius: 11px;
}

.ts-conclusion > i {
    flex-shrink: 0;
    margin-top: 2px;
    color: var(--ts-yellow);
    font-size: 18px;
}

.ts-conclusion p {
    margin: 0;
    color: rgba(255, 255, 255, 0.86);
    font-size: 13px;
    line-height: 1.7;
}

.ts-service-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 17px;
    padding: 14px 22px;
    color: #ffffff;
    background: linear-gradient(
        135deg,
        var(--ts-navy),
        var(--ts-blue)
    );
    border-radius: 11px;
    box-shadow: 0 11px 25px rgba(8, 22, 56, 0.18);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
}

.ts-service-button:hover {
    color: var(--ts-navy);
    background: var(--ts-yellow);
    transform: translateY(-2px);
}

.ts-service-button i {
    transition: transform 0.3s ease;
}

.ts-service-button:hover i {
    transform: translateX(4px);
}

/* ==========================================
   TABLET
========================================== */

@media (max-width: 1050px) {
    .ts-service-grid {
        grid-template-columns: minmax(340px, 0.85fr) minmax(0, 1.15fr);
        gap: 43px;
    }

    .ts-image-frame {
        height: 470px;
    }

    .ts-service-content h2 {
        font-size: 38px;
    }

    .ts-service-content > p {
        font-size: 15px;
    }
}

/* ==========================================
   MOBILE AND SMALL TABLET
========================================== */

@media (max-width: 900px) {
    .ts-service-section {
        padding: 58px 18px;
    }

    .ts-service-grid,
    .ts-service-grid.ts-reverse {
        grid-template-columns: 1fr;
        gap: 38px;
    }

    .ts-service-grid.ts-reverse .ts-service-image,
    .ts-service-grid.ts-reverse .ts-service-content {
        grid-column: auto;
        grid-row: auto;
    }

    /* Keep image above content on mobile */
    .ts-service-grid.ts-reverse .ts-service-image {
        order: 1;
    }

    .ts-service-grid.ts-reverse .ts-service-content {
        order: 2;
    }

    .ts-service-image {
        width: 100%;
        max-width: 620px;
        margin: 0 auto;
    }

    .ts-service-content {
        text-align: center;
    }

    .ts-service-content > p,
    .ts-list-title,
    .ts-point,
    .ts-conclusion {
        text-align: left;
    }
}

/* ==========================================
   MOBILE
========================================== */

@media (max-width: 600px) {
    .ts-heading-section {
        padding: 50px 14px 43px;
    }

    .ts-main-heading h2 {
        font-size: 34px;
    }

    .ts-main-heading p {
        font-size: 15px;
    }

    .ts-heading-label {
        font-size: 11px;
    }

    .ts-service-section {
        padding: 48px 14px;
    }

    .ts-service-image,
    .ts-reverse .ts-service-image {
        padding: 0 0 40px;
    }

    .ts-image-frame {
        height: 420px;
        border-radius: 20px 50px 20px 20px;
    }

    .ts-reverse .ts-image-frame {
        border-radius: 50px 20px 20px 20px;
    }

    .ts-image-frame img {
        border-radius: 14px 44px 14px 14px;
    }

    .ts-reverse .ts-image-frame img {
        border-radius: 44px 14px 14px 14px;
    }

    .ts-floating-card,
    .ts-reverse .ts-floating-card {
        right: 14px;
        bottom: 4px;
        left: auto;
    }

    .ts-service-content h2 {
        font-size: 33px;
        line-height: 1.2;
    }

    .ts-service-content h3 {
        font-size: 16px;
    }

    .ts-service-content > p {
        font-size: 15px;
        line-height: 1.8;
    }

    .ts-points-grid {
        grid-template-columns: 1fr;
    }

    .ts-point-wide {
        grid-column: auto;
    }

    .ts-point span {
        font-size: 13px;
    }
}

/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 420px) {
    .ts-image-frame {
        height: 360px;
    }

    .ts-service-number {
        width: 48px;
        height: 48px;
        font-size: 14px;
    }

    .ts-image-label {
        right: 17px;
        bottom: 17px;
        left: 17px;
        font-size: 12px;
    }

    .ts-floating-card {
        min-width: 190px;
    }

    .ts-floating-card strong {
        font-size: 12px;
    }

    .ts-service-content h2 {
        font-size: 29px;
    }

    .ts-service-label {
        font-size: 10px;
    }

    .ts-conclusion {
        flex-direction: column;
    }

    .ts-service-button {
        width: 100%;
    }
}

/* ==========================================
   WHY CHOOSE US + COMMITMENT
========================================== */

.tc-why-section {
    --tcw-navy: #081638;
    --tcw-dark-blue: #0c1d50;
    --tcw-blue: #19368f;
    --tcw-yellow: #ffc400;
    --tcw-text: #4f5c72;

    position: relative;
    padding: 80px 20px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 90% 8%,
            rgba(255, 196, 0, 0.10),
            transparent 22%
        ),
        linear-gradient(
            135deg,
            #f4f7fd 0%,
            #ffffff 50%,
            #eef3ff 100%
        );
    font-family: "Poppins", sans-serif;
}

.tc-why-section *,
.tc-why-section *::before,
.tc-why-section *::after {
    box-sizing: border-box;
}

.tc-why-container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
}

/* Decorative Shapes */

.tc-why-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.tc-shape-one {
    top: -180px;
    right: -130px;
    width: 390px;
    height: 390px;
    border: 60px solid rgba(25, 54, 143, 0.035);
}

.tc-shape-two {
    bottom: -170px;
    left: -140px;
    width: 340px;
    height: 340px;
    background: rgba(255, 196, 0, 0.045);
}

/* ==========================================
   HEADING
========================================== */

.tc-why-heading {
    max-width: 800px;
    margin: 0 auto 42px;
    text-align: center;
}

.tc-why-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 13px;
    padding: 9px 17px;
    color: var(--tcw-blue);
    background: #e6edff;
    border: 1px solid #d7e0fb;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.tc-why-label i {
    color: #d7a500;
    font-size: 17px;
}

.tc-why-heading h2 {
    margin: 0 0 13px;
    color: var(--tcw-navy);
    font-size: clamp(38px, 5vw, 52px);
    line-height: 1.16;
    font-weight: 800;
    letter-spacing: -1.2px;
}

.tc-why-heading h2 span {
    color: var(--tcw-blue);
}

.tc-why-heading p {
    margin: 0;
    color: var(--tcw-text);
    font-size: 16px;
    line-height: 1.8;
}

/* ==========================================
   LAYOUT
========================================== */

.tc-why-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(355px, 0.65fr);
    align-items: stretch;
    gap: 25px;
}

/* ==========================================
   REASON CARDS
========================================== */

.tc-reasons-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.tc-reason-card {
    position: relative;
    min-width: 0;
    padding: 22px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid rgba(8, 22, 56, 0.09);
    border-radius: 16px;
    box-shadow: 0 11px 30px rgba(8, 22, 56, 0.07);
    transition: 0.35s ease;
}

.tc-reason-card::after {
    content: "";
    position: absolute;
    right: -38px;
    bottom: -38px;
    width: 90px;
    height: 90px;
    background: rgba(25, 54, 143, 0.035);
    border-radius: 50%;
}

.tc-reason-card:hover {
    border-color: rgba(25, 54, 143, 0.24);
    box-shadow: 0 18px 40px rgba(8, 22, 56, 0.12);
    transform: translateY(-5px);
}

.tc-reason-number {
    position: absolute;
    top: 15px;
    right: 17px;
    color: rgba(8, 22, 56, 0.10);
    font-size: 25px;
    font-weight: 800;
}

.tc-reason-icon {
    display: grid;
    width: 50px;
    height: 50px;
    margin-bottom: 14px;
    place-items: center;
    color: var(--tcw-blue);
    background: #e9efff;
    border-radius: 13px;
    font-size: 21px;
    transition: 0.3s ease;
}

.tc-reason-card:hover .tc-reason-icon {
    color: var(--tcw-navy);
    background: var(--tcw-yellow);
}

.tc-reason-card h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 7px;
    color: var(--tcw-navy);
    font-size: 17px;
    line-height: 1.4;
    font-weight: 750;
}

.tc-reason-card p {
    position: relative;
    z-index: 2;
    margin: 0;
    color: var(--tcw-text);
    font-size: 14px;
    line-height: 1.7;
}

/* ==========================================
   COMMITMENT
========================================== */

.tc-commitment {
    position: relative;
    padding: 29px;
    overflow: hidden;
    color: #ffffff;
    background:
        radial-gradient(
            circle at 90% 8%,
            rgba(255, 196, 0, 0.17),
            transparent 25%
        ),
        linear-gradient(
            145deg,
            var(--tcw-navy),
            var(--tcw-dark-blue) 55%,
            var(--tcw-blue)
        );
    border-radius: 22px;
    box-shadow: 0 23px 55px rgba(8, 22, 56, 0.21);
}

.tc-commitment::after {
    content: "";
    position: absolute;
    right: -100px;
    bottom: -105px;
    width: 250px;
    height: 250px;
    border: 40px solid rgba(255, 255, 255, 0.035);
    border-radius: 50%;
}

.tc-commitment-top {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 20px;
}

.tc-commitment-icon {
    display: grid;
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    place-items: center;
    color: var(--tcw-navy);
    background: var(--tcw-yellow);
    border-radius: 15px;
    box-shadow: 0 10px 25px rgba(255, 196, 0, 0.19);
    font-size: 24px;
}

.tc-commitment-top span {
    display: block;
    margin-bottom: 2px;
    color: var(--tcw-yellow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.tc-commitment-top h2 {
    margin: 0;
    color: #ffffff;
    font-size: 28px;
    font-weight: 800;
}

.tc-commitment > p {
    position: relative;
    z-index: 2;
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 15px;
    line-height: 1.8;
}

.tc-commitment > p strong {
    color: #ffffff;
}

/* Commitment Points */

.tc-commitment-points {
    position: relative;
    z-index: 2;
    display: grid;
    gap: 8px;
    margin: 20px 0;
}

.tc-commitment-points > div {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 9px 11px;
    color: rgba(255, 255, 255, 0.90);
    background: rgba(255, 255, 255, 0.075);
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 9px;
    font-size: 13px;
    font-weight: 600;
}

.tc-commitment-points i {
    flex-shrink: 0;
    color: var(--tcw-yellow);
    font-size: 15px;
}

/* Quote */

.tc-commitment blockquote {
    position: relative;
    z-index: 2;
    margin: 20px 0;
    padding: 17px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-left: 4px solid var(--tcw-yellow);
    border-radius: 11px;
}

.tc-commitment blockquote > i {
    display: block;
    margin-bottom: 5px;
    color: var(--tcw-yellow);
    font-size: 22px;
}

.tc-commitment blockquote p {
    margin: 0;
    color: rgba(255, 255, 255, 0.86);
    font-size: 14px;
    line-height: 1.75;
    font-style: italic;
}

/* Commitment Footer */

.tc-commitment-footer {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 12px;
}

.tc-sound-symbol {
    display: flex;
    flex: 0 0 53px;
    align-items: center;
    justify-content: center;
    gap: 3px;
    width: 53px;
    height: 53px;
    background: var(--tcw-yellow);
    border-radius: 13px;
}

.tc-sound-symbol span {
    display: block;
    width: 3px;
    height: 10px;
    background: var(--tcw-navy);
    border-radius: 5px;
    animation: tcwSound 1.2s ease-in-out infinite;
}

.tc-sound-symbol span:nth-child(2) {
    animation-delay: 0.15s;
}

.tc-sound-symbol span:nth-child(3) {
    animation-delay: 0.30s;
}

.tc-sound-symbol span:nth-child(4) {
    animation-delay: 0.45s;
}

.tc-sound-symbol span:nth-child(5) {
    animation-delay: 0.60s;
}

.tc-commitment-footer small,
.tc-commitment-footer strong {
    display: block;
}

.tc-commitment-footer small {
    margin-bottom: 2px;
    color: rgba(255, 255, 255, 0.57);
    font-size: 10px;
    text-transform: uppercase;
}

.tc-commitment-footer strong {
    color: #ffffff;
    font-size: 13px;
}

/* Button */

.tc-commitment-button {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    margin-top: 21px;
    padding: 14px 17px;
    color: var(--tcw-navy);
    background: var(--tcw-yellow);
    border-radius: 11px;
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
    transition: 0.3s ease;
}

.tc-commitment-button:hover {
    color: var(--tcw-navy);
    background: #ffffff;
    transform: translateY(-2px);
}

.tc-commitment-button i {
    transition: transform 0.3s ease;
}

.tc-commitment-button:hover i {
    transform: translateX(4px);
}

/* Animation */

@keyframes tcwSound {
    0%,
    100% {
        height: 8px;
    }

    50% {
        height: 28px;
    }
}

/* ==========================================
   TABLET
========================================== */

@media (max-width: 1050px) {
    .tc-why-layout {
        grid-template-columns: 1fr;
    }

    .tc-commitment {
        max-width: 760px;
        margin: 0 auto;
    }

    .tc-commitment-points {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ==========================================
   MOBILE
========================================== */

@media (max-width: 700px) {
    .tc-why-section {
        padding: 55px 15px;
    }

    .tc-why-heading {
        margin-bottom: 30px;
    }

    .tc-why-heading h2 {
        font-size: 34px;
    }

    .tc-why-heading p {
        font-size: 15px;
    }

    .tc-why-label {
        font-size: 11px;
    }

    .tc-reasons-grid {
        grid-template-columns: 1fr;
    }

    .tc-reason-card {
        padding: 20px;
    }

    .tc-reason-card h3 {
        font-size: 17px;
    }

    .tc-reason-card p {
        font-size: 14px;
    }

    .tc-commitment {
        padding: 24px 19px;
        border-radius: 18px;
    }

    .tc-commitment > p {
        font-size: 14px;
    }

    .tc-commitment-points {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 420px) {
    .tc-why-heading h2 {
        font-size: 30px;
    }

    .tc-commitment-top {
        align-items: flex-start;
    }

    .tc-commitment-top h2 {
        font-size: 24px;
    }

    .tc-commitment blockquote p {
        font-size: 13px;
    }

    .tc-commitment-footer {
        align-items: flex-start;
    }
}

@media (prefers-reduced-motion: reduce) {
    .tc-sound-symbol span {
        animation: none;
    }
}

/* Remove unwanted empty space from slider cards */
.swiper-wrapper {
    height: auto !important;
    align-items: stretch !important;
}

.swiper-slide {
    height: auto !important;
    min-height: 0 !important;
}

.swiper-slide > div {
    min-height: 0 !important;
    height: auto !important;
}

/* =========================================================
   FAQ
========================================================= */
    :root {
        --hfaq-navy: #081638;
        --hfaq-blue: #19368f;
        --hfaq-mid: #0c1d50;
        --hfaq-gold: #ffc400;
        --hfaq-white: #ffffff;
        --hfaq-light: #f4f7fc;
        --hfaq-text: #27324b;
        --hfaq-muted: #68738a;
        --hfaq-border: #dce4f1;
    }

    .hfaq-banner,
    .hfaq-section,
    .hfaq-banner *,
    .hfaq-section * {
        box-sizing: border-box;
    }

    .hfaq-container {
        width: min(1180px, calc(100% - 40px));
        margin-inline: auto;
    }

    /* =========================
       FAQ PAGE BANNER
    ========================= */

    .hfaq-banner {
        position: relative;
        isolation: isolate;
        min-height: 320px;
        display: grid;
        place-items: center;
        overflow: hidden;
        padding: 55px 0;
        font-family: "Manrope", Arial, sans-serif;
        text-align: center;
        color: var(--hfaq-white);
        background:
            radial-gradient(circle at 10% 20%, rgba(255, 196, 0, 0.22), transparent 24%),
            radial-gradient(circle at 90% 75%, rgba(65, 105, 220, 0.32), transparent 27%),
            linear-gradient(135deg, #081638 0%, #0c1d50 55%, #19368f 100%);
    }

    .hfaq-banner::before,
    .hfaq-banner::after {
        content: "";
        position: absolute;
        z-index: -1;
        border: 1px solid rgba(255, 196, 0, 0.20);
        border-radius: 50%;
    }

    .hfaq-banner::before {
        width: 390px;
        height: 390px;
        top: -250px;
        right: -85px;
    }

    .hfaq-banner::after {
        width: 270px;
        height: 270px;
        left: -70px;
        bottom: -190px;
    }

    .hfaq-banner-label {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 13px;
        padding: 7px 14px;
        border: 1px solid rgba(255, 255, 255, 0.24);
        border-radius: 50px;
        color: var(--hfaq-gold);
        background: rgba(255, 255, 255, 0.08);
        font-size: 12px;
        font-weight: 800;
        letter-spacing: 1.4px;
        text-transform: uppercase;
    }

    .hfaq-banner h1 {
        margin: 0 0 10px;
        font-size: clamp(38px, 5vw, 62px);
        font-weight: 800;
        line-height: 1.12;
        letter-spacing: -1.8px;
    }

    .hfaq-banner h1 span {
        color: var(--hfaq-gold);
    }

    .hfaq-banner p {
        width: min(720px, 100%);
        margin: 0 auto 17px;
        color: rgba(255, 255, 255, 0.82);
        font-size: 16px;
        line-height: 1.75;
    }

    .hfaq-breadcrumb {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        font-size: 13px;
        font-weight: 700;
    }

    .hfaq-breadcrumb a {
        color: var(--hfaq-gold);
        text-decoration: none;
    }

    .hfaq-breadcrumb i {
        color: rgba(255, 255, 255, 0.45);
        font-size: 9px;
    }

    /* =========================
       FAQ SECTION
    ========================= */

    .hfaq-section {
        padding: 78px 0 82px;
        font-family: "Manrope", Arial, sans-serif;
        color: var(--hfaq-text);
        background:
            linear-gradient(rgba(8, 22, 56, 0.025) 1px, transparent 1px),
            linear-gradient(90deg, rgba(8, 22, 56, 0.025) 1px, transparent 1px),
            var(--hfaq-light);
        background-size: 34px 34px;
    }

    .hfaq-heading {
        max-width: 760px;
        margin: 0 auto 32px;
        text-align: center;
    }

    .hfaq-heading-label {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 9px;
        color: var(--hfaq-blue);
        font-size: 12px;
        font-weight: 800;
        letter-spacing: 1.3px;
        text-transform: uppercase;
    }

    .hfaq-heading-label::before,
    .hfaq-heading-label::after {
        content: "";
        width: 28px;
        height: 2px;
        background: var(--hfaq-gold);
    }

    .hfaq-heading h2 {
        margin: 0;
        color: var(--hfaq-navy);
        font-size: clamp(29px, 4vw, 43px);
        font-weight: 800;
        line-height: 1.2;
        letter-spacing: -1.2px;
    }

    .hfaq-heading h2 span {
        color: var(--hfaq-blue);
    }

    .hfaq-heading p {
        margin: 12px 0 0;
        color: var(--hfaq-muted);
        font-size: 15px;
        line-height: 1.75;
    }

    .hfaq-tools {
        max-width: 930px;
        margin: 0 auto 28px;
    }

    .hfaq-search {
        position: relative;
        margin-bottom: 18px;
    }

    .hfaq-search > i {
        position: absolute;
        top: 50%;
        left: 20px;
        color: var(--hfaq-blue);
        transform: translateY(-50%);
    }

    .hfaq-search input {
        width: 100%;
        height: 58px;
        padding: 0 55px;
        border: 1px solid var(--hfaq-border);
        border-radius: 14px;
        outline: none;
        color: var(--hfaq-navy);
        background: var(--hfaq-white);
        font-family: inherit;
        font-size: 14px;
        font-weight: 600;
        box-shadow: 0 12px 30px rgba(8, 22, 56, 0.06);
        transition: 0.22s ease;
    }

    .hfaq-search input:focus {
        border-color: var(--hfaq-blue);
        box-shadow: 0 0 0 4px rgba(25, 54, 143, 0.10);
    }

    .hfaq-search-clear {
        position: absolute;
        top: 50%;
        right: 13px;
        width: 34px;
        height: 34px;
        display: none;
        place-items: center;
        border: 0;
        border-radius: 8px;
        color: var(--hfaq-muted);
        background: #f1f4fa;
        transform: translateY(-50%);
        cursor: pointer;
    }

    .hfaq-search-clear.show {
        display: grid;
    }

    .hfaq-filters {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        flex-wrap: wrap;
    }

    .hfaq-filter {
        min-height: 40px;
        padding: 8px 15px;
        border: 1px solid var(--hfaq-border);
        border-radius: 50px;
        color: var(--hfaq-navy);
        background: var(--hfaq-white);
        font-family: inherit;
        font-size: 12px;
        font-weight: 800;
        cursor: pointer;
        transition: 0.22s ease;
    }

    .hfaq-filter:hover,
    .hfaq-filter.active {
        border-color: var(--hfaq-navy);
        color: var(--hfaq-navy);
        background: var(--hfaq-gold);
    }

    .hfaq-layout {
        display: grid;
        grid-template-columns: 285px minmax(0, 1fr);
        align-items: start;
        gap: 30px;
    }

    .hfaq-help-card {
        position: sticky;
        top: 110px;
        overflow: hidden;
        padding: 28px;
        border-radius: 20px;
        color: var(--hfaq-white);
        background:
            radial-gradient(circle at top right, rgba(255, 196, 0, 0.23), transparent 33%),
            linear-gradient(145deg, var(--hfaq-navy), var(--hfaq-blue));
        box-shadow: 0 18px 45px rgba(8, 22, 56, 0.16);
    }

    .hfaq-help-icon {
        width: 58px;
        height: 58px;
        display: grid;
        place-items: center;
        margin-bottom: 18px;
        border-radius: 16px;
        color: var(--hfaq-navy);
        background: var(--hfaq-gold);
        font-size: 23px;
    }

    .hfaq-help-card h3 {
        margin: 0 0 8px;
        font-size: 22px;
        font-weight: 800;
        line-height: 1.3;
    }

    .hfaq-help-card p {
        margin: 0 0 20px;
        color: rgba(255, 255, 255, 0.75);
        font-size: 13px;
        line-height: 1.7;
    }

    .hfaq-help-link {
        display: flex;
        align-items: center;
        gap: 11px;
        margin-top: 11px;
        color: var(--hfaq-white);
        font-size: 13px;
        font-weight: 800;
        text-decoration: none;
    }

    .hfaq-help-link span {
        width: 35px;
        height: 35px;
        display: grid;
        place-items: center;
        flex-shrink: 0;
        border: 1px solid rgba(255, 255, 255, 0.20);
        border-radius: 9px;
        color: var(--hfaq-gold);
        background: rgba(255, 255, 255, 0.07);
    }

    .hfaq-list {
        display: grid;
        gap: 13px;
    }

    .hfaq-item {
        overflow: hidden;
        border: 1px solid var(--hfaq-border);
        border-radius: 16px;
        background: var(--hfaq-white);
        box-shadow: 0 10px 28px rgba(8, 22, 56, 0.055);
        transition: 0.25s ease;
    }

    .hfaq-item:hover,
    .hfaq-item.open {
        border-color: rgba(25, 54, 143, 0.32);
        box-shadow: 0 15px 38px rgba(8, 22, 56, 0.09);
    }

    .hfaq-question {
        width: 100%;
        display: grid;
        grid-template-columns: 42px minmax(0, 1fr) 38px;
        align-items: center;
        gap: 14px;
        padding: 18px 20px;
        border: 0;
        text-align: left;
        color: var(--hfaq-navy);
        background: var(--hfaq-white);
        font-family: inherit;
        font-size: 15px;
        font-weight: 800;
        cursor: pointer;
    }

    .hfaq-question-icon {
        width: 42px;
        height: 42px;
        display: grid;
        place-items: center;
        border-radius: 11px;
        color: var(--hfaq-blue);
        background: #edf2ff;
        transition: 0.25s ease;
    }

    .hfaq-plus {
        width: 36px;
        height: 36px;
        display: grid;
        place-items: center;
        border-radius: 10px;
        color: var(--hfaq-blue);
        background: #f3f6fb;
        transition: 0.25s ease;
    }

    .hfaq-item.open .hfaq-question-icon {
        color: var(--hfaq-navy);
        background: var(--hfaq-gold);
    }

    .hfaq-item.open .hfaq-plus {
        color: var(--hfaq-white);
        background: var(--hfaq-blue);
        transform: rotate(45deg);
    }

    .hfaq-answer {
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows 0.32s ease;
    }

    .hfaq-answer-inner {
        overflow: hidden;
    }

    .hfaq-answer-content {
        margin: 0 20px 0 76px;
        padding: 0 0 20px;
        color: var(--hfaq-muted);
        font-size: 14px;
        line-height: 1.75;
    }

    .hfaq-item.open .hfaq-answer {
        grid-template-rows: 1fr;
    }

    .hfaq-no-results {
        display: none;
        padding: 42px 20px;
        border: 1px dashed #c7d1e1;
        border-radius: 16px;
        text-align: center;
        background: var(--hfaq-white);
    }

    .hfaq-no-results.show {
        display: block;
    }

    .hfaq-no-results i {
        margin-bottom: 12px;
        color: #e5aa00;
        font-size: 33px;
    }

    .hfaq-no-results h3 {
        margin: 0;
        color: var(--hfaq-navy);
        font-size: 20px;
    }

    .hfaq-no-results p {
        margin: 5px 0 0;
        color: var(--hfaq-muted);
        font-size: 13px;
    }

    /* =========================
       RESPONSIVE
    ========================= */

    @media (max-width: 991px) {
        .hfaq-layout {
            grid-template-columns: 1fr;
        }

        .hfaq-help-card {
            position: relative;
            top: 0;
            display: grid;
            grid-template-columns: auto minmax(0, 1fr) auto;
            align-items: center;
            gap: 18px;
        }

        .hfaq-help-icon,
        .hfaq-help-card p {
            margin: 0;
        }

        .hfaq-help-links {
            display: flex;
            gap: 8px;
        }

        .hfaq-help-link {
            margin: 0;
        }

        .hfaq-help-link em {
            display: none;
        }
    }

    @media (max-width: 767px) {
        .hfaq-container {
            width: min(100% - 28px, 1180px);
        }

        .hfaq-banner {
            min-height: 275px;
            padding: 45px 0;
        }

        .hfaq-banner h1 {
            letter-spacing: -1px;
        }

        .hfaq-banner p {
            font-size: 14px;
        }

        .hfaq-section {
            padding: 60px 0 65px;
        }

        .hfaq-help-card {
            display: block;
            padding: 24px;
        }

        .hfaq-help-icon {
            margin-bottom: 15px;
        }

        .hfaq-help-card p {
            margin-bottom: 17px;
        }

        .hfaq-help-links {
            display: block;
        }

        .hfaq-help-link {
            margin-top: 10px;
        }

        .hfaq-help-link em {
            display: inline;
            font-style: normal;
        }
    }

    @media (max-width: 575px) {
        .hfaq-banner {
            min-height: 250px;
        }

        .hfaq-search input {
            height: 54px;
            padding-left: 47px;
            font-size: 13px;
        }

        .hfaq-search > i {
            left: 17px;
        }

        .hfaq-filters {
            justify-content: flex-start;
            flex-wrap: nowrap;
            overflow-x: auto;
            padding-bottom: 5px;
            scrollbar-width: none;
        }

        .hfaq-filters::-webkit-scrollbar {
            display: none;
        }

        .hfaq-filter {
            flex-shrink: 0;
        }

        .hfaq-question {
            grid-template-columns: 38px minmax(0, 1fr) 32px;
            gap: 10px;
            padding: 15px 13px;
            font-size: 13px;
            line-height: 1.5;
        }

        .hfaq-question-icon {
            width: 38px;
            height: 38px;
        }

        .hfaq-plus {
            width: 32px;
            height: 32px;
        }

        .hfaq-answer-content {
            margin: 0 14px 0 61px;
            padding-bottom: 17px;
            font-size: 13px;
        }
    }
 

 /*==================================================
         HEAR 'N' SAY SINGLE BLOG PAGE
     BANNER + POST SECTION ONLY

     Required in your existing <head>:
     1. Font Awesome
     2. Manrope font (optional)
==================================================*/

    :root {
        --hblog-navy: #081638;
        --hblog-mid: #0c1d50;
        --hblog-blue: #19368f;
        --hblog-gold: #ffc400;
        --hblog-gold-dark: #e0a900;
        --hblog-white: #ffffff;
        --hblog-light: #f4f7fc;
        --hblog-text: #26324a;
        --hblog-muted: #6c768a;
        --hblog-border: #dfe6f1;
        --hblog-shadow: 0 18px 45px rgba(8, 22, 56, 0.10);
    }

    .hblog-banner,
    .hblog-post-section,
    .hblog-banner *,
    .hblog-post-section * {
        box-sizing: border-box;
    }

    .hblog-container {
        width: min(1180px, calc(100% - 40px));
        margin-inline: auto;
    }

    /* =====================================================
       SINGLE BLOG BANNER
    ====================================================== */

    .hblog-banner {
        position: relative;
        isolation: isolate;
        min-height: 430px;
        display: grid;
        align-items: center;
        overflow: hidden;
        padding: 70px 0;
        font-family: "Manrope", Arial, sans-serif;
        color: var(--hblog-white);
        background:
            radial-gradient(circle at 10% 20%, rgba(255, 196, 0, 0.22), transparent 25%),
            radial-gradient(circle at 92% 72%, rgba(79, 117, 225, 0.32), transparent 28%),
            linear-gradient(135deg, #081638 0%, #0c1d50 54%, #19368f 100%);
    }

    .hblog-banner::before,
    .hblog-banner::after {
        content: "";
        position: absolute;
        z-index: -1;
        border: 1px solid rgba(255, 196, 0, 0.18);
        border-radius: 50%;
    }

    .hblog-banner::before {
        width: 460px;
        height: 460px;
        top: -310px;
        right: -100px;
    }

    .hblog-banner::after {
        width: 310px;
        height: 310px;
        bottom: -220px;
        left: -90px;
    }

    .hblog-banner-content {
        max-width: 900px;
        margin-inline: auto;
        text-align: center;
    }

    .hblog-category-badge {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 17px;
        padding: 8px 15px;
        border: 1px solid rgba(255, 255, 255, 0.25);
        border-radius: 50px;
        color: var(--hblog-navy);
        background: var(--hblog-gold);
        font-size: 12px;
        font-weight: 800;
        letter-spacing: 0.8px;
        text-transform: uppercase;
    }

    .hblog-banner h1 {
        margin: 0 auto 19px;
        font-size: clamp(36px, 5.5vw, 64px);
        font-weight: 800;
        line-height: 1.13;
        letter-spacing: -2px;
    }

    .hblog-banner h1 span {
        color: var(--hblog-gold);
    }

    .hblog-banner-summary {
        max-width: 730px;
        margin: 0 auto 23px;
        color: rgba(255, 255, 255, 0.80);
        font-size: 16px;
        line-height: 1.75;
    }

    .hblog-meta {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 18px;
        flex-wrap: wrap;
    }

    .hblog-meta-item {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: rgba(255, 255, 255, 0.83);
        font-size: 13px;
        font-weight: 700;
    }

    .hblog-meta-item i {
        color: var(--hblog-gold);
    }

    .hblog-meta-divider {
        width: 4px;
        height: 4px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.34);
    }

    .hblog-breadcrumb {
        position: absolute;
        left: 50%;
        bottom: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        width: max-content;
        max-width: calc(100% - 30px);
        color: rgba(255, 255, 255, 0.72);
        font-size: 12px;
        font-weight: 700;
        transform: translateX(-50%);
    }

    .hblog-breadcrumb a {
        color: var(--hblog-gold);
        text-decoration: none;
    }

    .hblog-breadcrumb i {
        font-size: 8px;
    }

    /* =====================================================
       BLOG POST SECTION
    ====================================================== */

    .hblog-post-section {
        padding: 76px 0 85px;
        font-family: "Manrope", Arial, sans-serif;
        color: var(--hblog-text);
        background:
            linear-gradient(rgba(8, 22, 56, 0.022) 1px, transparent 1px),
            linear-gradient(90deg, rgba(8, 22, 56, 0.022) 1px, transparent 1px),
            var(--hblog-light);
        background-size: 36px 36px;
    }

    .hblog-layout {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 330px;
        align-items: start;
        gap: 32px;
    }

    .hblog-article {
        overflow: hidden;
        border: 1px solid var(--hblog-border);
        border-radius: 23px;
        background: var(--hblog-white);
        box-shadow: var(--hblog-shadow);
    }

    .hblog-featured-image {
        position: relative;
        min-height: 440px;
        overflow: hidden;
        background: #dce4ef;
    }

    .hblog-featured-image img {
        display: block;
        width: 100%;
        min-height: 440px;
        object-fit: cover;
        object-position: center;
        transition: transform 0.7s ease;
    }

    .hblog-article:hover .hblog-featured-image img {
        transform: scale(1.025);
    }

    .hblog-image-label {
        position: absolute;
        left: 22px;
        bottom: 22px;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 15px;
        border-radius: 10px;
        color: var(--hblog-navy);
        background: rgba(255, 196, 0, 0.95);
        font-size: 12px;
        font-weight: 800;
        box-shadow: 0 10px 25px rgba(8, 22, 56, 0.18);
        backdrop-filter: blur(10px);
    }

    .hblog-content {
        padding: 39px 43px 42px;
    }

    .hblog-lead {
        margin: 0 0 27px;
        padding-left: 19px;
        border-left: 4px solid var(--hblog-gold);
        color: #3f4a61;
        font-size: 18px;
        font-weight: 600;
        line-height: 1.8;
    }

    .hblog-content h2 {
        position: relative;
        margin: 36px 0 15px;
        padding-bottom: 11px;
        color: var(--hblog-navy);
        font-size: clamp(24px, 3vw, 32px);
        font-weight: 800;
        line-height: 1.3;
        letter-spacing: -0.7px;
    }

    .hblog-content h2::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 55px;
        height: 3px;
        border-radius: 20px;
        background: var(--hblog-gold);
    }

    .hblog-content h3 {
        margin: 26px 0 10px;
        color: var(--hblog-blue);
        font-size: 20px;
        font-weight: 800;
        line-height: 1.4;
    }

    .hblog-content p {
        margin: 0 0 18px;
        color: var(--hblog-muted);
        font-size: 15px;
        line-height: 1.9;
    }

    .hblog-content strong {
        color: var(--hblog-navy);
    }

    .hblog-check-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 11px 15px;
        margin: 22px 0 25px;
        padding: 0;
        list-style: none;
    }

    .hblog-check-list li {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        padding: 13px 14px;
        border: 1px solid #e3e9f3;
        border-radius: 11px;
        color: #465169;
        background: #f8faff;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.55;
    }

    .hblog-check-list i {
        width: 22px;
        height: 22px;
        display: grid;
        place-items: center;
        flex-shrink: 0;
        margin-top: 1px;
        border-radius: 50%;
        color: var(--hblog-navy);
        background: var(--hblog-gold);
        font-size: 10px;
    }

    .hblog-info-box {
        position: relative;
        overflow: hidden;
        display: grid;
        grid-template-columns: 54px minmax(0, 1fr);
        gap: 16px;
        margin: 29px 0;
        padding: 23px;
        border: 1px solid rgba(25, 54, 143, 0.16);
        border-radius: 16px;
        background: linear-gradient(135deg, #edf3ff, #f8faff);
    }

    .hblog-info-icon {
        width: 54px;
        height: 54px;
        display: grid;
        place-items: center;
        border-radius: 14px;
        color: var(--hblog-white);
        background: linear-gradient(135deg, var(--hblog-navy), var(--hblog-blue));
        font-size: 21px;
    }

    .hblog-info-box h3 {
        margin: 0 0 5px;
        color: var(--hblog-navy);
        font-size: 17px;
    }

    .hblog-info-box p {
        margin: 0;
        font-size: 13px;
        line-height: 1.7;
    }

    .hblog-quote {
        position: relative;
        margin: 31px 0;
        padding: 28px 30px 27px 76px;
        border-radius: 17px;
        color: var(--hblog-white);
        background:
            radial-gradient(circle at top right, rgba(255, 196, 0, 0.22), transparent 34%),
            linear-gradient(135deg, var(--hblog-navy), var(--hblog-blue));
        box-shadow: 0 15px 35px rgba(8, 22, 56, 0.17);
    }

    .hblog-quote > i {
        position: absolute;
        top: 28px;
        left: 27px;
        color: var(--hblog-gold);
        font-size: 30px;
    }

    .hblog-quote p {
        margin: 0 0 8px;
        color: rgba(255, 255, 255, 0.91);
        font-size: 17px;
        font-weight: 600;
        font-style: italic;
        line-height: 1.75;
    }

    .hblog-quote cite {
        color: var(--hblog-gold);
        font-size: 12px;
        font-style: normal;
        font-weight: 800;
        letter-spacing: 0.6px;
        text-transform: uppercase;
    }

    .hblog-post-footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 22px;
        margin-top: 37px;
        padding-top: 25px;
        border-top: 1px solid var(--hblog-border);
    }

    .hblog-tags,
    .hblog-share {
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
    }

    .hblog-footer-title {
        margin-right: 3px;
        color: var(--hblog-navy);
        font-size: 13px;
        font-weight: 800;
    }

    .hblog-tag {
        padding: 7px 11px;
        border-radius: 7px;
        color: var(--hblog-blue);
        background: #edf2ff;
        font-size: 11px;
        font-weight: 800;
        text-decoration: none;
        transition: 0.22s ease;
    }

    .hblog-tag:hover {
        color: var(--hblog-navy);
        background: var(--hblog-gold);
    }

    .hblog-share-link {
        width: 35px;
        height: 35px;
        display: grid;
        place-items: center;
        border: 1px solid var(--hblog-border);
        border-radius: 9px;
        color: var(--hblog-blue);
        background: var(--hblog-white);
        font-size: 13px;
        text-decoration: none;
        transition: 0.22s ease;
    }

    .hblog-share-link:hover {
        border-color: var(--hblog-blue);
        color: var(--hblog-white);
        background: var(--hblog-blue);
        transform: translateY(-2px);
    }

    /* =====================================================
       SIDEBAR
    ====================================================== */

    .hblog-sidebar {
        position: sticky;
        top: 110px;
        display: grid;
        gap: 20px;
    }

    .hblog-widget {
        padding: 24px;
        border: 1px solid var(--hblog-border);
        border-radius: 18px;
        background: var(--hblog-white);
        box-shadow: 0 14px 35px rgba(8, 22, 56, 0.07);
    }

    .hblog-widget-title {
        position: relative;
        margin: 0 0 19px;
        padding-bottom: 10px;
        color: var(--hblog-navy);
        font-size: 18px;
        font-weight: 800;
    }

    .hblog-widget-title::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 42px;
        height: 3px;
        border-radius: 20px;
        background: var(--hblog-gold);
    }

    .hblog-search-form {
        position: relative;
    }

    .hblog-search-form input {
        width: 100%;
        height: 49px;
        padding: 0 50px 0 15px;
        border: 1px solid var(--hblog-border);
        border-radius: 10px;
        outline: none;
        color: var(--hblog-text);
        background: #f8faff;
        font-family: inherit;
        font-size: 13px;
        transition: 0.22s ease;
    }

    .hblog-search-form input:focus {
        border-color: var(--hblog-blue);
        box-shadow: 0 0 0 4px rgba(25, 54, 143, 0.08);
    }

    .hblog-search-form button {
        position: absolute;
        top: 5px;
        right: 5px;
        width: 39px;
        height: 39px;
        display: grid;
        place-items: center;
        border: 0;
        border-radius: 8px;
        color: var(--hblog-navy);
        background: var(--hblog-gold);
        cursor: pointer;
    }

    .hblog-category-list {
        display: grid;
        gap: 9px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .hblog-category-list a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 11px 12px;
        border: 1px solid #e7ebf3;
        border-radius: 10px;
        color: #48546a;
        background: #f9faff;
        font-size: 12px;
        font-weight: 800;
        text-decoration: none;
        transition: 0.22s ease;
    }

    .hblog-category-list a:hover {
        border-color: var(--hblog-gold);
        color: var(--hblog-navy);
        background: rgba(255, 196, 0, 0.13);
        transform: translateX(3px);
    }

    .hblog-category-list span {
        min-width: 25px;
        height: 25px;
        display: grid;
        place-items: center;
        border-radius: 7px;
        color: var(--hblog-blue);
        background: #eaf0ff;
        font-size: 10px;
    }

    .hblog-recent-list {
        display: grid;
        gap: 15px;
    }

    .hblog-recent-post {
        display: grid;
        grid-template-columns: 78px minmax(0, 1fr);
        align-items: center;
        gap: 12px;
        color: inherit;
        text-decoration: none;
    }

    .hblog-recent-image {
        width: 78px;
        height: 70px;
        overflow: hidden;
        border-radius: 10px;
        background: #e1e7f1;
    }

    .hblog-recent-image img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
        transition: transform 0.3s ease;
    }

    .hblog-recent-post:hover img {
        transform: scale(1.08);
    }

    .hblog-recent-content span {
        display: block;
        margin-bottom: 4px;
        color: var(--hblog-blue);
        font-size: 10px;
        font-weight: 800;
        text-transform: uppercase;
    }

    .hblog-recent-content h4 {
        display: -webkit-box;
        overflow: hidden;
        margin: 0;
        color: var(--hblog-navy);
        font-size: 12px;
        font-weight: 800;
        line-height: 1.45;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        transition: color 0.22s ease;
    }

    .hblog-recent-post:hover h4 {
        color: var(--hblog-blue);
    }

    .hblog-contact-widget {
        position: relative;
        overflow: hidden;
        color: var(--hblog-white);
        background:
            radial-gradient(circle at top right, rgba(255, 196, 0, 0.25), transparent 32%),
            linear-gradient(145deg, var(--hblog-navy), var(--hblog-blue));
    }

    .hblog-contact-icon {
        width: 54px;
        height: 54px;
        display: grid;
        place-items: center;
        margin-bottom: 16px;
        border-radius: 14px;
        color: var(--hblog-navy);
        background: var(--hblog-gold);
        font-size: 21px;
    }

    .hblog-contact-widget h3 {
        margin: 0 0 7px;
        font-size: 21px;
        font-weight: 800;
        line-height: 1.35;
    }

    .hblog-contact-widget p {
        margin: 0 0 17px;
        color: rgba(255, 255, 255, 0.76);
        font-size: 12px;
        line-height: 1.7;
    }

    .hblog-contact-btn {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        padding: 10px 15px;
        border-radius: 9px;
        color: var(--hblog-navy);
        background: var(--hblog-gold);
        font-size: 12px;
        font-weight: 800;
        text-decoration: none;
        transition: 0.22s ease;
    }

    .hblog-contact-btn:hover {
        background: var(--hblog-white);
        transform: translateY(-2px);
    }

    /* =====================================================
       RESPONSIVE
    ====================================================== */

    @media (max-width: 991px) {
        .hblog-layout {
            grid-template-columns: 1fr;
        }

        .hblog-sidebar {
            position: relative;
            top: 0;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .hblog-contact-widget {
            grid-column: 1 / -1;
        }
    }

    @media (max-width: 767px) {
        .hblog-container {
            width: min(100% - 28px, 1180px);
        }

        .hblog-banner {
            min-height: 390px;
            padding: 60px 0 72px;
        }

        .hblog-banner h1 {
            letter-spacing: -1px;
        }

        .hblog-banner-summary {
            font-size: 14px;
        }

        .hblog-meta {
            gap: 10px 14px;
        }

        .hblog-meta-divider {
            display: none;
        }

        .hblog-post-section {
            padding: 58px 0 65px;
        }

        .hblog-featured-image,
        .hblog-featured-image img {
            min-height: 330px;
        }

        .hblog-content {
            padding: 31px 27px 34px;
        }

        .hblog-check-list {
            grid-template-columns: 1fr;
        }

        .hblog-post-footer {
            align-items: flex-start;
            flex-direction: column;
        }
    }

    @media (max-width: 575px) {
        .hblog-banner {
            min-height: 370px;
        }

        .hblog-banner h1 {
            font-size: 35px;
        }

        .hblog-category-badge {
            font-size: 10px;
        }

        .hblog-meta-item {
            font-size: 11px;
        }

        .hblog-breadcrumb {
            overflow: hidden;
            white-space: nowrap;
            text-overflow: ellipsis;
        }

        .hblog-article {
            border-radius: 17px;
        }

        .hblog-featured-image,
        .hblog-featured-image img {
            min-height: 245px;
        }

        .hblog-image-label {
            left: 14px;
            bottom: 14px;
        }

        .hblog-content {
            padding: 25px 19px 28px;
        }

        .hblog-lead {
            font-size: 16px;
        }

        .hblog-content p {
            font-size: 14px;
            line-height: 1.85;
        }

        .hblog-info-box {
            grid-template-columns: 1fr;
        }

        .hblog-quote {
            padding: 62px 22px 24px;
        }

        .hblog-quote > i {
            top: 22px;
            left: 22px;
        }

        .hblog-quote p {
            font-size: 15px;
        }

        .hblog-sidebar {
            grid-template-columns: 1fr;
        }

        .hblog-contact-widget {
            grid-column: auto;
        }
    }

    /* ==========================================
   HEAR 'N' SAY GALLERY
=========================================== */

:root {
    --hns-navy: #081638;
    --hns-dark-blue: #0c1d50;
    --hns-blue: #19368f;
    --hns-yellow: #ffc400;
    --hns-white: #ffffff;
    --hns-light: #f7f9ff;
    --hns-text: #536078;
    --hns-border: #dfe6f4;
}

.hns-gallery-banner *,
.hns-gallery-section *,
.hns-gallery-lightbox * {
    box-sizing: border-box;
}

.hns-gallery-container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}


/* ==========================================
   BANNER
=========================================== */

.hns-gallery-banner {
    position: relative;
    min-height: 390px;
    display: flex;
    align-items: center;
    overflow: hidden;

    background-image:
        linear-gradient(
            90deg,
            rgba(8, 22, 56, 0.98) 0%,
            rgba(12, 29, 80, 0.91) 48%,
            rgba(25, 54, 143, 0.30) 100%
        ),
        url("https://images.pexels.com/photos/5452201/pexels-photo-5452201.jpeg?auto=compress&cs=tinysrgb&w=1920");

    background-size: cover;
    background-position: center 36%;
    background-repeat: no-repeat;
}

.hns-gallery-banner::before {
    content: "";
    position: absolute;
    left: -100px;
    top: -110px;
    width: 300px;
    height: 300px;
    border: 55px solid rgba(255, 196, 0, 0.07);
    border-radius: 50%;
}

.hns-gallery-banner::after {
    content: "";
    position: absolute;
    right: 7%;
    bottom: -150px;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    background: rgba(255, 196, 0, 0.08);
}

.hns-gallery-banner-pattern {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(
        circle,
        rgba(255, 255, 255, 0.11) 1.5px,
        transparent 1.5px
    );
    background-size: 30px 30px;
    opacity: 0.25;
}

.hns-gallery-banner .hns-gallery-container {
    position: relative;
    z-index: 3;
}

.hns-gallery-banner-content {
    max-width: 690px;
    padding: 65px 0;
}

.hns-gallery-banner-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-bottom: 15px;
    padding-left: 39px;
    color: var(--hns-yellow);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.hns-gallery-banner-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 28px;
    height: 3px;
    border-radius: 10px;
    background: var(--hns-yellow);
}

.hns-gallery-banner-content h1 {
    margin: 0 0 16px;
    color: var(--hns-white);
    font-size: clamp(44px, 6vw, 68px);
    line-height: 1.05;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.hns-gallery-banner-content p {
    max-width: 640px;
    margin: 0 0 25px;
    color: rgba(255, 255, 255, 0.88);
    font-size: 18px;
    line-height: 1.7;
}

.hns-gallery-breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 11px 19px;
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.10);
    color: var(--hns-white);
    font-size: 15px;
    font-weight: 600;
    backdrop-filter: blur(8px);
}

.hns-gallery-breadcrumb a {
    color: var(--hns-yellow);
    text-decoration: none;
}

.hns-gallery-breadcrumb a:hover {
    color: var(--hns-white);
}


/* ==========================================
   GALLERY SECTION
=========================================== */

.hns-gallery-section {
    position: relative;
    padding: 80px 0 90px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at top right,
            rgba(25, 54, 143, 0.08),
            transparent 30%
        ),
        var(--hns-light);
}

.hns-gallery-heading {
    max-width: 780px;
    margin: 0 auto 35px;
    text-align: center;
}

.hns-gallery-heading > span {
    display: inline-block;
    margin-bottom: 10px;
    color: var(--hns-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.hns-gallery-heading h2 {
    position: relative;
    margin: 0 0 18px;
    padding-bottom: 18px;
    color: var(--hns-dark-blue);
    font-size: clamp(32px, 4vw, 46px);
    line-height: 1.15;
    font-weight: 800;
}

.hns-gallery-heading h2::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 68px;
    height: 4px;
    border-radius: 20px;
    background: var(--hns-yellow);
    transform: translateX(-50%);
}

.hns-gallery-heading p {
    margin: 0;
    color: var(--hns-text);
    font-size: 17px;
    line-height: 1.75;
}


/* Gallery Filters */

.hns-gallery-filters {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 38px;
}

.hns-gallery-filter {
    min-height: 45px;
    padding: 10px 21px;
    border: 1px solid var(--hns-border);
    border-radius: 50px;
    background: var(--hns-white);
    color: var(--hns-dark-blue);
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 7px 20px rgba(8, 22, 56, 0.05);
    transition: 0.3s ease;
}

.hns-gallery-filter:hover {
    color: var(--hns-blue);
    border-color: var(--hns-blue);
    transform: translateY(-2px);
}

.hns-gallery-filter.active {
    color: var(--hns-white);
    border-color: var(--hns-blue);
    background: linear-gradient(
        135deg,
        var(--hns-navy),
        var(--hns-blue)
    );
    box-shadow: 0 10px 25px rgba(25, 54, 143, 0.23);
}


/* Gallery Grid */

.hns-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: 270px;
    grid-auto-flow: dense;
    gap: 20px;
}

.hns-gallery-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border-radius: 19px;
    background: var(--hns-white);
    box-shadow: 0 14px 35px rgba(8, 22, 56, 0.11);
    transition: transform 0.35s ease, opacity 0.35s ease;
}

.hns-gallery-card-wide {
    grid-column: span 2;
}

.hns-gallery-card-tall {
    grid-row: span 2;
}

.hns-gallery-card.hns-hidden {
    display: none;
}

.hns-gallery-card > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.65s ease;
}

.hns-gallery-card:hover > img {
    transform: scale(1.08);
}

.hns-gallery-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    padding: 25px;
    background: linear-gradient(
        to top,
        rgba(8, 22, 56, 0.97) 0%,
        rgba(8, 22, 56, 0.42) 50%,
        transparent 80%
    );
}

.hns-gallery-content {
    transform: translateY(7px);
    transition: transform 0.35s ease;
}

.hns-gallery-card:hover .hns-gallery-content {
    transform: translateY(0);
}

.hns-gallery-content span {
    display: block;
    margin-bottom: 7px;
    color: var(--hns-yellow);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.3px;
    text-transform: uppercase;
}

.hns-gallery-content h3 {
    margin: 0;
    color: var(--hns-white);
    font-size: 20px;
    line-height: 1.35;
    font-weight: 700;
}

.hns-gallery-view {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: var(--hns-yellow);
    color: var(--hns-dark-blue);
    font-size: 28px;
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
    opacity: 0;
    transform: translateY(12px);
    transition: 0.35s ease;
}

.hns-gallery-card:hover .hns-gallery-view,
.hns-gallery-view:focus {
    opacity: 1;
    transform: translateY(0);
}

.hns-gallery-view:hover {
    background: var(--hns-white);
    transform: rotate(90deg);
}


/* ==========================================
   LIGHTBOX
=========================================== */

.hns-gallery-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 70px 85px 40px;
    background: rgba(3, 9, 27, 0.95);
    backdrop-filter: blur(10px);
    opacity: 0;
    visibility: hidden;
    transition: 0.3s ease;
}

.hns-gallery-lightbox.hns-lightbox-open {
    opacity: 1;
    visibility: visible;
}

.hns-lightbox-inner {
    width: 100%;
    max-width: 1050px;
    text-align: center;
}

.hns-lightbox-inner img {
    max-width: 100%;
    max-height: 75vh;
    display: block;
    margin: 0 auto;
    border: 5px solid rgba(255, 255, 255, 0.14);
    border-radius: 15px;
    object-fit: contain;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.50);
}

.hns-lightbox-inner h3 {
    margin: 16px 0 0;
    color: var(--hns-white);
    font-size: 19px;
    font-weight: 600;
}

.hns-lightbox-close {
    position: absolute;
    top: 18px;
    right: 25px;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.10);
    color: var(--hns-white);
    font-size: 34px;
    line-height: 42px;
    cursor: pointer;
    transition: 0.3s ease;
}

.hns-lightbox-close:hover,
.hns-lightbox-arrow:hover {
    color: var(--hns-dark-blue);
    background: var(--hns-yellow);
}

.hns-lightbox-arrow {
    position: absolute;
    top: 50%;
    width: 52px;
    height: 52px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.10);
    color: var(--hns-white);
    font-size: 23px;
    cursor: pointer;
    transform: translateY(-50%);
    transition: 0.3s ease;
}

.hns-lightbox-previous {
    left: 22px;
}

.hns-lightbox-next {
    right: 22px;
}


/* ==========================================
   TABLET
=========================================== */

@media (max-width: 991px) {

    .hns-gallery-banner {
        min-height: 355px;
        background-position: 58% center;
    }

    .hns-gallery-section {
        padding: 70px 0 80px;
    }

    .hns-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: 260px;
    }

    .hns-gallery-card-wide {
        grid-column: span 2;
    }

    .hns-gallery-card-tall {
        grid-row: span 1;
    }
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width: 767px) {

    .hns-gallery-container {
        width: calc(100% - 30px);
    }

    .hns-gallery-banner {
        min-height: 375px;

        background-image:
            linear-gradient(
                90deg,
                rgba(8, 22, 56, 0.97),
                rgba(12, 29, 80, 0.76)
            ),
            url("https://images.pexels.com/photos/5452201/pexels-photo-5452201.jpeg?auto=compress&cs=tinysrgb&w=900");

        background-position: 64% center;
    }

    .hns-gallery-banner-content {
        padding: 50px 0;
    }

    .hns-gallery-banner-content h1 {
        font-size: 42px;
        letter-spacing: -0.5px;
    }

    .hns-gallery-banner-content p {
        font-size: 16px;
        line-height: 1.65;
    }

    .hns-gallery-section {
        padding: 58px 0 65px;
    }

    .hns-gallery-heading {
        margin-bottom: 28px;
    }

    .hns-gallery-heading h2 {
        font-size: 33px;
    }

    .hns-gallery-heading p {
        font-size: 16px;
    }

    .hns-gallery-filters {
        justify-content: flex-start;
        flex-wrap: nowrap;
        margin-right: -15px;
        margin-left: -15px;
        padding: 3px 15px 13px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .hns-gallery-filters::-webkit-scrollbar {
        display: none;
    }

    .hns-gallery-filter {
        flex: 0 0 auto;
        min-height: 43px;
        padding: 9px 18px;
        font-size: 14px;
    }

    .hns-gallery-grid {
        grid-template-columns: 1fr;
        grid-auto-rows: 275px;
        gap: 16px;
    }

    .hns-gallery-card-wide,
    .hns-gallery-card-tall {
        grid-column: span 1;
        grid-row: span 1;
    }

    .hns-gallery-overlay {
        padding: 20px;
    }

    .hns-gallery-content h3 {
        font-size: 18px;
    }

    .hns-gallery-view {
        width: 45px;
        height: 45px;
        flex-basis: 45px;
        opacity: 1;
        transform: none;
    }

    .hns-gallery-lightbox {
        padding: 65px 15px 80px;
    }

    .hns-lightbox-inner img {
        max-height: 67vh;
    }

    .hns-lightbox-close {
        top: 12px;
        right: 15px;
    }

    .hns-lightbox-arrow {
        top: auto;
        bottom: 15px;
        transform: none;
    }

    .hns-lightbox-previous {
        left: calc(50% - 62px);
    }

    .hns-lightbox-next {
        right: calc(50% - 62px);
    }
}


/* Small Mobile */

@media (max-width: 420px) {

    .hns-gallery-banner-content h1 {
        font-size: 37px;
    }

    .hns-gallery-banner-label {
        font-size: 12px;
    }

    .hns-gallery-heading h2 {
        font-size: 29px;
    }

    .hns-gallery-grid {
        grid-auto-rows: 255px;
    }
}

/* ==========================================
   HEAR 'N' SAY MEDIA PAGE
=========================================== */

:root {
    --hns-media-navy: #081638;
    --hns-media-dark: #0c1d50;
    --hns-media-blue: #19368f;
    --hns-media-yellow: #ffc400;
    --hns-media-white: #ffffff;
    --hns-media-light: #f7f9ff;
    --hns-media-text: #536078;
    --hns-media-border: #dfe6f4;
}

.hns-media-banner *,
.hns-media-section * {
    box-sizing: border-box;
}

.hns-media-container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}


/* ==========================================
   MEDIA BANNER
=========================================== */

.hns-media-banner {
    position: relative;
    min-height: 400px;
    display: flex;
    align-items: center;
    overflow: hidden;

    background-image:
        linear-gradient(
            90deg,
            rgba(8, 22, 56, 0.98) 0%,
            rgba(12, 29, 80, 0.92) 48%,
            rgba(25, 54, 143, 0.28) 100%
        ),
        url("https://images.pexels.com/photos/5452201/pexels-photo-5452201.jpeg?auto=compress&cs=tinysrgb&w=1920");

    background-size: cover;
    background-position: center 35%;
    background-repeat: no-repeat;
}

.hns-media-banner::before {
    content: "";
    position: absolute;
    top: -110px;
    left: -100px;
    width: 310px;
    height: 310px;
    border: 58px solid rgba(255, 196, 0, 0.07);
    border-radius: 50%;
}

.hns-media-banner::after {
    content: "";
    position: absolute;
    right: 7%;
    bottom: -150px;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    background: rgba(255, 196, 0, 0.08);
}

.hns-media-banner-pattern {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(
        circle,
        rgba(255, 255, 255, 0.11) 1.5px,
        transparent 1.5px
    );
    background-size: 30px 30px;
    opacity: 0.25;
}

.hns-media-banner .hns-media-container {
    position: relative;
    z-index: 3;
}

.hns-media-banner-content {
    max-width: 690px;
    padding: 65px 0;
}

.hns-media-banner-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-bottom: 15px;
    padding-left: 39px;
    color: var(--hns-media-yellow);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.hns-media-banner-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 28px;
    height: 3px;
    border-radius: 20px;
    background: var(--hns-media-yellow);
}

.hns-media-banner-content h1 {
    margin: 0 0 16px;
    color: var(--hns-media-white);
    font-size: clamp(44px, 6vw, 68px);
    line-height: 1.05;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.hns-media-banner-content p {
    max-width: 640px;
    margin: 0 0 25px;
    color: rgba(255, 255, 255, 0.88);
    font-size: 18px;
    line-height: 1.7;
}

.hns-media-breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 11px 19px;
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.10);
    color: var(--hns-media-white);
    font-size: 15px;
    font-weight: 600;
    backdrop-filter: blur(8px);
}

.hns-media-breadcrumb a {
    color: var(--hns-media-yellow);
    text-decoration: none;
}

.hns-media-breadcrumb a:hover {
    color: var(--hns-media-white);
}


/* ==========================================
   MEDIA SECTION
=========================================== */

.hns-media-section {
    padding: 80px 0 90px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at top right,
            rgba(25, 54, 143, 0.08),
            transparent 30%
        ),
        var(--hns-media-light);
}

.hns-media-heading {
    max-width: 790px;
    margin: 0 auto 40px;
    text-align: center;
}

.hns-media-subtitle {
    display: inline-block;
    margin-bottom: 10px;
    color: var(--hns-media-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.hns-media-heading h2 {
    position: relative;
    margin: 0 0 18px;
    padding-bottom: 18px;
    color: var(--hns-media-dark);
    font-size: clamp(32px, 4vw, 46px);
    line-height: 1.15;
    font-weight: 800;
}

.hns-media-heading h2::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 68px;
    height: 4px;
    border-radius: 20px;
    background: var(--hns-media-yellow);
    transform: translateX(-50%);
}

.hns-media-heading p {
    margin: 0;
    color: var(--hns-media-text);
    font-size: 17px;
    line-height: 1.75;
}


/* ==========================================
   FEATURED MEDIA
=========================================== */

.hns-featured-media {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(340px, 0.85fr);
    gap: 24px;
    margin-bottom: 65px;
}

.hns-featured-video {
    position: relative;
    min-height: 490px;
    overflow: hidden;
    border-radius: 24px;
    background: var(--hns-media-dark);
    box-shadow: 0 20px 45px rgba(8, 22, 56, 0.16);
}

.hns-featured-video > img {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.hns-featured-video:hover > img {
    transform: scale(1.06);
}

.hns-featured-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            to top,
            rgba(8, 22, 56, 0.98) 0%,
            rgba(8, 22, 56, 0.34) 58%,
            rgba(8, 22, 56, 0.12) 100%
        );
}

.hns-media-badge {
    position: absolute;
    top: 22px;
    left: 22px;
    z-index: 2;
    padding: 9px 15px;
    border-radius: 50px;
    background: var(--hns-media-yellow);
    color: var(--hns-media-dark);
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
}

.hns-featured-play {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 3;
    width: 76px;
    height: 76px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 7px solid rgba(255, 255, 255, 0.25);
    border-radius: 50%;
    background: var(--hns-media-yellow);
    cursor: pointer;
    transform: translate(-50%, -50%);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.28);
    transition: 0.3s ease;
}

.hns-featured-play:hover {
    background: var(--hns-media-white);
    transform: translate(-50%, -50%) scale(1.08);
}

.hns-featured-play svg {
    width: 31px;
    height: 31px;
    margin-left: 4px;
    fill: var(--hns-media-dark);
}

.hns-featured-content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    padding: 32px;
}

.hns-media-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 11px;
    color: var(--hns-media-yellow);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
}

.hns-meta-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--hns-media-white);
}

.hns-featured-content h3 {
    max-width: 650px;
    margin: 0 0 11px;
    color: var(--hns-media-white);
    font-size: clamp(25px, 3vw, 36px);
    line-height: 1.2;
    font-weight: 800;
}

.hns-featured-content p {
    max-width: 620px;
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 16px;
    line-height: 1.6;
}


/* Side Updates */

.hns-media-updates {
    display: grid;
    grid-template-rows: repeat(2, 1fr);
    gap: 20px;
}

.hns-update-card {
    display: grid;
    grid-template-columns: 145px 1fr;
    overflow: hidden;
    border: 1px solid var(--hns-media-border);
    border-radius: 20px;
    background: var(--hns-media-white);
    box-shadow: 0 12px 30px rgba(8, 22, 56, 0.08);
    transition: 0.35s ease;
}

.hns-update-card:hover {
    border-color: rgba(25, 54, 143, 0.30);
    transform: translateY(-4px);
    box-shadow: 0 18px 38px rgba(8, 22, 56, 0.13);
}

.hns-update-image {
    min-height: 100%;
    overflow: hidden;
}

.hns-update-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.hns-update-card:hover .hns-update-image img {
    transform: scale(1.07);
}

.hns-update-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px;
}

.hns-update-category {
    display: block;
    margin-bottom: 7px;
    color: var(--hns-media-blue);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.1px;
    text-transform: uppercase;
}

.hns-update-content h3 {
    margin: 0 0 8px;
    color: var(--hns-media-dark);
    font-size: 18px;
    line-height: 1.35;
    font-weight: 800;
}

.hns-update-content p {
    margin: 0 0 11px;
    color: var(--hns-media-text);
    font-size: 13px;
    line-height: 1.55;
}

.hns-update-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--hns-media-blue);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.hns-update-link span {
    transition: transform 0.3s ease;
}

.hns-update-link:hover span {
    transform: translateX(5px);
}


/* ==========================================
   MEDIA ROW HEADING
=========================================== */

.hns-media-row-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 25px;
}

.hns-media-row-heading > div > span {
    display: block;
    margin-bottom: 7px;
    color: var(--hns-media-blue);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.hns-media-row-heading h2 {
    margin: 0;
    color: var(--hns-media-dark);
    font-size: clamp(27px, 3vw, 37px);
    line-height: 1.2;
    font-weight: 800;
}

.hns-view-all {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
    padding: 11px 20px;
    border: 1px solid var(--hns-media-border);
    border-radius: 50px;
    background: var(--hns-media-white);
    color: var(--hns-media-blue);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    transition: 0.3s ease;
}

.hns-view-all:hover {
    border-color: var(--hns-media-blue);
    background: var(--hns-media-blue);
    color: var(--hns-media-white);
}


/* ==========================================
   MEDIA GRID
=========================================== */

.hns-media-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.hns-media-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--hns-media-border);
    border-radius: 20px;
    background: var(--hns-media-white);
    box-shadow: 0 12px 30px rgba(8, 22, 56, 0.08);
    transition: 0.35s ease;
}

.hns-media-card:hover {
    border-color: rgba(25, 54, 143, 0.28);
    transform: translateY(-7px);
    box-shadow: 0 20px 42px rgba(8, 22, 56, 0.14);
}

.hns-media-image {
    position: relative;
    height: 235px;
    overflow: hidden;
}

.hns-media-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(8, 22, 56, 0.52),
        transparent 62%
    );
}

.hns-media-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.55s ease;
}

.hns-media-card:hover .hns-media-image img {
    transform: scale(1.07);
}

.hns-card-category {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 3;
    padding: 7px 12px;
    border-radius: 50px;
    background: var(--hns-media-yellow);
    color: var(--hns-media-dark);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.hns-card-play {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 3;
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 5px solid rgba(255, 255, 255, 0.22);
    border-radius: 50%;
    background: var(--hns-media-white);
    cursor: pointer;
    transform: translate(-50%, -50%);
    transition: 0.3s ease;
}

.hns-card-play:hover {
    background: var(--hns-media-yellow);
    transform: translate(-50%, -50%) scale(1.08);
}

.hns-card-play svg {
    width: 25px;
    height: 25px;
    margin-left: 3px;
    fill: var(--hns-media-dark);
}

.hns-video-time {
    position: absolute;
    right: 15px;
    bottom: 14px;
    z-index: 3;
    padding: 5px 9px;
    border-radius: 5px;
    background: rgba(8, 22, 56, 0.90);
    color: var(--hns-media-white);
    font-size: 12px;
    font-weight: 700;
}

.hns-media-card-content {
    padding: 23px;
}

.hns-media-card-content h3 {
    margin: 0 0 10px;
    color: var(--hns-media-dark);
    font-size: 21px;
    line-height: 1.35;
    font-weight: 800;
}

.hns-media-card-content p {
    margin: 0 0 19px;
    color: var(--hns-media-text);
    font-size: 15px;
    line-height: 1.65;
}

.hns-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid var(--hns-media-border);
}

.hns-card-footer > span {
    color: var(--hns-media-text);
    font-size: 12px;
    font-weight: 700;
}

.hns-card-footer button {
    padding: 0;
    border: none;
    background: transparent;
    color: var(--hns-media-blue);
    font-family: inherit;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}


/* ==========================================
   TABLET RESPONSIVE
=========================================== */

@media (max-width: 1050px) {

    .hns-featured-media {
        grid-template-columns: 1fr;
    }

    .hns-media-updates {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: auto;
    }

    .hns-update-card {
        min-height: 235px;
    }

    .hns-media-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {

    .hns-media-container {
        width: calc(100% - 30px);
    }

    .hns-media-banner {
        min-height: 380px;

        background-image:
            linear-gradient(
                90deg,
                rgba(8, 22, 56, 0.97),
                rgba(12, 29, 80, 0.76)
            ),
            url("https://images.pexels.com/photos/5452201/pexels-photo-5452201.jpeg?auto=compress&cs=tinysrgb&w=900");

        background-position: 64% center;
    }

    .hns-media-banner-content {
        padding: 50px 0;
    }

    .hns-media-banner-content h1 {
        font-size: 42px;
        letter-spacing: -0.5px;
    }

    .hns-media-banner-content p {
        font-size: 16px;
        line-height: 1.65;
    }

    .hns-media-section {
        padding: 58px 0 65px;
    }

    .hns-media-heading {
        margin-bottom: 30px;
    }

    .hns-media-heading h2 {
        font-size: 33px;
    }

    .hns-media-heading p {
        font-size: 16px;
    }

    .hns-featured-media {
        gap: 18px;
        margin-bottom: 50px;
    }

    .hns-featured-video {
        min-height: 470px;
        border-radius: 19px;
    }

    .hns-featured-content {
        padding: 24px 21px;
    }

    .hns-featured-content h3 {
        font-size: 27px;
    }

    .hns-featured-content p {
        font-size: 15px;
    }

    .hns-featured-play {
        width: 68px;
        height: 68px;
    }

    .hns-media-updates {
        grid-template-columns: 1fr;
    }

    .hns-update-card {
        min-height: 220px;
    }

    .hns-media-row-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .hns-media-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .hns-media-image {
        height: 250px;
    }

    .hns-media-card-content {
        padding: 21px;
    }
}

@media (max-width: 480px) {

    .hns-media-banner-content h1 {
        font-size: 37px;
    }

    .hns-media-banner-label {
        font-size: 12px;
    }

    .hns-media-heading h2 {
        font-size: 29px;
    }

    .hns-featured-video {
        min-height: 450px;
    }

    .hns-media-badge {
        top: 16px;
        left: 16px;
    }

    .hns-update-card {
        grid-template-columns: 115px 1fr;
    }

    .hns-update-content {
        padding: 16px;
    }

    .hns-update-content h3 {
        font-size: 16px;
    }

    .hns-update-content p {
        display: none;
    }

    .hns-media-image {
        height: 225px;
    }

    .hns-card-footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* ==========================================
   VERTIGO & DIZZINESS CLINIC BANNER
=========================================== */

:root {
    --hns-vertigo-navy: #081638;
    --hns-vertigo-dark: #0c1d50;
    --hns-vertigo-blue: #19368f;
    --hns-vertigo-yellow: #ffc400;
    --hns-vertigo-white: #ffffff;
}

.hns-vertigo-banner,
.hns-vertigo-banner * {
    box-sizing: border-box;
}

.hns-vertigo-banner {
    position: relative;
    min-height: 440px;
    display: flex;
    align-items: center;
    overflow: hidden;

    background-image:
        linear-gradient(
            90deg,
            rgba(8, 22, 56, 0.99) 0%,
            rgba(12, 29, 80, 0.94) 43%,
            rgba(25, 54, 143, 0.55) 68%,
            rgba(8, 22, 56, 0.16) 100%
        ),
        url("images/vertigo-banner.avif");

    background-size: cover;
    background-position: center 32%;
    background-repeat: no-repeat;
}

.hns-vertigo-banner::before {
    content: "";
    position: absolute;
    top: -125px;
    left: -110px;
    width: 330px;
    height: 330px;
    border: 60px solid rgba(255, 196, 0, 0.06);
    border-radius: 50%;
}

.hns-vertigo-banner::after {
    content: "";
    position: absolute;
    right: 8%;
    bottom: -180px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: rgba(255, 196, 0, 0.07);
}

.hns-vertigo-pattern {
    position: absolute;
    inset: 0;
    z-index: 1;

    background-image:
        radial-gradient(
            circle,
            rgba(255, 255, 255, 0.11) 1.5px,
            transparent 1.5px
        );

    background-size: 31px 31px;
    opacity: 0.25;
    pointer-events: none;
}

.hns-vertigo-container {
    position: relative;
    z-index: 3;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.hns-vertigo-content {
    max-width: 760px;
    padding: 65px 0;
}

.hns-vertigo-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-bottom: 15px;
    padding-left: 40px;
    color: var(--hns-vertigo-yellow);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.hns-vertigo-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 29px;
    height: 3px;
    border-radius: 20px;
    background: var(--hns-vertigo-yellow);
}

.hns-vertigo-content h1 {
    max-width: 750px;
    margin: 0 0 17px;
    color: var(--hns-vertigo-white);
    font-size: clamp(43px, 5.5vw, 67px);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.7px;
}

.hns-vertigo-content h1 span {
    color: var(--hns-vertigo-yellow);
}

.hns-vertigo-content > p {
    max-width: 670px;
    margin: 0 0 24px;
    color: rgba(255, 255, 255, 0.87);
    font-size: 18px;
    line-height: 1.7;
}

.hns-vertigo-features {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 25px;
}

.hns-vertigo-features span {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 14px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.10);
    color: var(--hns-vertigo-white);
    font-size: 13px;
    font-weight: 700;
    backdrop-filter: blur(8px);
}

.hns-vertigo-features span::before {
    content: "";
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: var(--hns-vertigo-yellow);
    box-shadow: 0 0 0 4px rgba(255, 196, 0, 0.14);
}

.hns-vertigo-breadcrumb {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 11px;
    padding: 11px 18px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 50px;
    background: rgba(8, 22, 56, 0.38);
    color: var(--hns-vertigo-white);
    font-size: 14px;
    font-weight: 600;
    backdrop-filter: blur(9px);
}

.hns-vertigo-breadcrumb a {
    color: var(--hns-vertigo-yellow);
    text-decoration: none;
    transition: color 0.3s ease;
}

.hns-vertigo-breadcrumb a:hover {
    color: var(--hns-vertigo-white);
}

.hns-breadcrumb-arrow {
    color: rgba(255, 255, 255, 0.55);
    font-size: 19px;
    line-height: 1;
}


/* ==========================================
   TABLET
=========================================== */

@media (max-width: 991px) {

    .hns-vertigo-banner {
        min-height: 420px;
        background-position: 58% center;
    }

    .hns-vertigo-banner::after {
        right: -130px;
    }

    .hns-vertigo-content {
        max-width: 680px;
        padding: 58px 0;
    }
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width: 767px) {

    .hns-vertigo-container {
        width: calc(100% - 30px);
    }

    .hns-vertigo-banner {
        min-height: 470px;

        background-image:
            linear-gradient(
                90deg,
                rgba(8, 22, 56, 0.97) 0%,
                rgba(12, 29, 80, 0.88) 62%,
                rgba(25, 54, 143, 0.60) 100%
            ),
            url("images/vertigo-banner.avif");

        background-position: 62% center;
    }

    .hns-vertigo-content {
        max-width: 100%;
        padding: 50px 0;
    }

    .hns-vertigo-content h1 {
        font-size: 42px;
        letter-spacing: -0.8px;
    }

    .hns-vertigo-content > p {
        font-size: 16px;
        line-height: 1.65;
    }

    .hns-vertigo-features {
        gap: 8px;
    }

    .hns-vertigo-features span {
        padding: 8px 12px;
        font-size: 12px;
    }

    .hns-vertigo-breadcrumb {
        max-width: 100%;
        padding: 10px 15px;
        border-radius: 15px;
        font-size: 13px;
    }
}


/* ==========================================
   SMALL MOBILE
=========================================== */

@media (max-width: 430px) {

    .hns-vertigo-banner {
        min-height: 485px;
    }

    .hns-vertigo-label {
        padding-left: 34px;
        font-size: 12px;
        letter-spacing: 1.3px;
    }

    .hns-vertigo-label::before {
        width: 24px;
    }

    .hns-vertigo-content h1 {
        font-size: 36px;
    }

    .hns-vertigo-features {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* ==========================================
   VERTIGO & DIZZINESS INTRO SECTION
=========================================== */

:root {
    --hns-vi-navy: #081638;
    --hns-vi-dark: #0c1d50;
    --hns-vi-blue: #19368f;
    --hns-vi-yellow: #ffc400;
    --hns-vi-white: #ffffff;
    --hns-vi-light: #f6f8ff;
    --hns-vi-text: #526078;
    --hns-vi-border: #dfe6f4;
}

.hns-vertigo-intro,
.hns-vertigo-intro * {
    box-sizing: border-box;
}

.hns-vertigo-intro {
    position: relative;
    padding: 85px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at top right,
            rgba(25, 54, 143, 0.08),
            transparent 32%
        ),
        linear-gradient(180deg, #ffffff 0%, #f7f9ff 100%);
}

.hns-vertigo-intro-container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
    align-items: center;
    gap: 70px;
}


/* Decorative Shapes */

.hns-vertigo-intro-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-shape-one {
    top: -150px;
    right: -140px;
    width: 360px;
    height: 360px;
    border: 65px solid rgba(25, 54, 143, 0.04);
}

.hns-shape-two {
    left: -100px;
    bottom: -130px;
    width: 280px;
    height: 280px;
    background: rgba(255, 196, 0, 0.06);
}


/* ==========================================
   IMAGE COLUMN
=========================================== */

.hns-vertigo-intro-visual {
    position: relative;
    max-width: 500px;
    padding: 18px 0 30px 20px;
}

.hns-vertigo-main-image {
    position: relative;
    height: 610px;
    padding: 10px;
    border-radius: 30px;
    background: var(--hns-vi-white);
    box-shadow: 0 24px 60px rgba(8, 22, 56, 0.16);
}

.hns-vertigo-main-image::before {
    content: "";
    position: absolute;
    top: -18px;
    left: -18px;
    width: 120px;
    height: 120px;
    border-top: 5px solid var(--hns-vi-yellow);
    border-left: 5px solid var(--hns-vi-yellow);
    border-radius: 28px 0 0;
}

.hns-vertigo-main-image img {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 22px;
    object-fit: cover;
    object-position: center;
}

.hns-image-accent {
    position: absolute;
    right: -15px;
    bottom: -15px;
    z-index: 1;
    width: 165px;
    height: 165px;
    border-radius: 25px;
    background: var(--hns-vi-yellow);
}


/* Floating Balance Card */

.hns-vertigo-image-card {
    position: absolute;
    right: -38px;
    bottom: 0;
    z-index: 4;
    width: 280px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 17px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 17px;
    background: linear-gradient(
        135deg,
        var(--hns-vi-navy),
        var(--hns-vi-blue)
    );
    box-shadow: 0 18px 38px rgba(8, 22, 56, 0.25);
}

.hns-image-card-icon {
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: var(--hns-vi-yellow);
    color: var(--hns-vi-dark);
    font-size: 20px;
}

.hns-vertigo-image-card strong {
    display: block;
    margin-bottom: 4px;
    color: var(--hns-vi-white);
    font-size: 16px;
    line-height: 1.3;
}

.hns-vertigo-image-card span {
    display: block;
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
    line-height: 1.4;
}


/* Floating Diagnostics Card */

.hns-vertigo-experience-card {
    position: absolute;
    top: 55px;
    left: -28px;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 17px;
    border: 1px solid var(--hns-vi-border);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 15px 35px rgba(8, 22, 56, 0.13);
}

.hns-vertigo-experience-card > i {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: rgba(25, 54, 143, 0.10);
    color: var(--hns-vi-blue);
    font-size: 17px;
}

.hns-vertigo-experience-card > span {
    color: var(--hns-vi-text);
    font-size: 12px;
    line-height: 1.35;
}

.hns-vertigo-experience-card strong {
    display: block;
    color: var(--hns-vi-dark);
    font-size: 15px;
}


/* ==========================================
   CONTENT COLUMN
=========================================== */

.hns-vertigo-intro-content {
    min-width: 0;
}

.hns-vertigo-intro-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-bottom: 13px;
    padding-left: 37px;
    color: var(--hns-vi-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.hns-vertigo-intro-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 27px;
    height: 3px;
    border-radius: 20px;
    background: var(--hns-vi-yellow);
}

.hns-vertigo-intro-content > h2 {
    margin: 0 0 9px;
    color: var(--hns-vi-dark);
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: -1px;
}

.hns-vertigo-intro-content > h2 span {
    color: var(--hns-vi-blue);
}

.hns-vertigo-intro-content > h3 {
    margin: 0 0 22px;
    color: var(--hns-vi-blue);
    font-size: 21px;
    line-height: 1.4;
    font-weight: 700;
}

.hns-vertigo-intro-content > p {
    margin: 0 0 17px;
    color: var(--hns-vi-text);
    font-size: 16px;
    line-height: 1.8;
}


/* Highlight Box */

.hns-vertigo-highlight-box {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin: 23px 0;
    padding: 20px;
    border: 1px solid rgba(25, 54, 143, 0.13);
    border-left: 4px solid var(--hns-vi-yellow);
    border-radius: 0 16px 16px 0;
    background: var(--hns-vi-white);
    box-shadow: 0 12px 28px rgba(8, 22, 56, 0.07);
}

.hns-highlight-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: linear-gradient(
        135deg,
        var(--hns-vi-navy),
        var(--hns-vi-blue)
    );
    color: var(--hns-vi-yellow);
    font-size: 19px;
}

.hns-vertigo-highlight-box p {
    margin: 0;
    color: var(--hns-vi-text);
    font-size: 15px;
    line-height: 1.75;
}

.hns-vertigo-highlight-box strong {
    color: var(--hns-vi-dark);
}


/* Goal Box */

.hns-vertigo-goal {
    margin-top: 25px;
    padding: 23px;
    border-radius: 18px;
    background: linear-gradient(
        135deg,
        var(--hns-vi-navy),
        var(--hns-vi-blue)
    );
    box-shadow: 0 16px 35px rgba(8, 22, 56, 0.18);
}

.hns-goal-heading {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 9px;
}

.hns-goal-icon {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: var(--hns-vi-yellow);
    color: var(--hns-vi-dark);
    font-size: 15px;
}

.hns-goal-heading h4 {
    margin: 0;
    color: var(--hns-vi-white);
    font-size: 20px;
    font-weight: 800;
}

.hns-vertigo-goal > p {
    margin: 0 0 17px;
    color: rgba(255, 255, 255, 0.80);
    font-size: 15px;
    line-height: 1.65;
}

.hns-goal-points {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.hns-goal-points span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.09);
    color: var(--hns-vi-white);
    font-size: 12px;
    font-weight: 700;
}

.hns-goal-points i {
    color: var(--hns-vi-yellow);
    font-size: 10px;
}


/* ==========================================
   TABLET RESPONSIVE
=========================================== */

@media (max-width: 1050px) {

    .hns-vertigo-intro-container {
        grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
        gap: 45px;
    }

    .hns-vertigo-main-image {
        height: 570px;
    }

    .hns-vertigo-image-card {
        right: -15px;
        width: 250px;
    }

    .hns-vertigo-experience-card {
        left: -10px;
    }
}


/* ==========================================
   MOBILE RESPONSIVE
=========================================== */

@media (max-width: 850px) {

    .hns-vertigo-intro {
        padding: 65px 0;
    }

    .hns-vertigo-intro-container {
        grid-template-columns: 1fr;
        gap: 55px;
    }

    .hns-vertigo-intro-visual {
        width: 100%;
        max-width: 620px;
        margin: 0 auto;
        padding-left: 0;
    }

    .hns-vertigo-main-image {
        height: 530px;
    }

    .hns-vertigo-experience-card {
        left: -10px;
    }

    .hns-vertigo-image-card {
        right: 15px;
    }
}

@media (max-width: 600px) {

    .hns-vertigo-intro {
        padding: 55px 0 60px;
    }

    .hns-vertigo-intro-container {
        width: calc(100% - 30px);
        gap: 48px;
    }

    .hns-vertigo-main-image {
        height: 440px;
        padding: 7px;
        border-radius: 22px;
    }

    .hns-vertigo-main-image img {
        border-radius: 17px;
    }

    .hns-vertigo-experience-card {
        top: 32px;
        left: -5px;
        padding: 11px 13px;
    }

    .hns-vertigo-experience-card > i {
        width: 37px;
        height: 37px;
    }

    .hns-vertigo-image-card {
        right: 8px;
        bottom: -15px;
        width: min(265px, calc(100% - 25px));
        padding: 14px;
    }

    .hns-image-card-icon {
        width: 45px;
        height: 45px;
        flex-basis: 45px;
    }

    .hns-vertigo-intro-content > h2 {
        font-size: 34px;
    }

    .hns-vertigo-intro-content > h3 {
        font-size: 19px;
    }

    .hns-vertigo-intro-content > p {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-vertigo-highlight-box {
        gap: 13px;
        padding: 17px;
    }

    .hns-highlight-icon {
        width: 43px;
        height: 43px;
        flex-basis: 43px;
    }

    .hns-goal-points {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 420px) {

    .hns-vertigo-main-image {
        height: 390px;
    }

    .hns-vertigo-experience-card {
        display: none;
    }

    .hns-vertigo-intro-label {
        font-size: 12px;
    }

    .hns-vertigo-intro-content > h2 {
        font-size: 30px;
    }

    .hns-vertigo-highlight-box {
        flex-direction: column;
    }
}

/* ==========================================
   UNDERSTANDING VERTIGO SECTION
=========================================== */

:root {
    --hns-uv-navy: #081638;
    --hns-uv-dark: #0c1d50;
    --hns-uv-blue: #19368f;
    --hns-uv-yellow: #ffc400;
    --hns-uv-white: #ffffff;
    --hns-uv-light: #f5f8ff;
    --hns-uv-text: #536078;
    --hns-uv-border: #dfe6f4;
}

.hns-understanding-vertigo,
.hns-understanding-vertigo * {
    box-sizing: border-box;
}

.hns-understanding-vertigo {
    position: relative;
    padding: 85px 0 95px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at top left,
            rgba(25, 54, 143, 0.07),
            transparent 30%
        ),
        linear-gradient(180deg, #ffffff, #f5f8ff);
}

.hns-uv-container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.13fr) minmax(390px, 0.87fr);
    align-items: center;
    gap: 65px;
}


/* Decorative Shapes */

.hns-uv-bg-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-uv-shape-one {
    top: -170px;
    right: -150px;
    width: 400px;
    height: 400px;
    border: 70px solid rgba(25, 54, 143, 0.04);
}

.hns-uv-shape-two {
    left: -100px;
    bottom: -130px;
    width: 290px;
    height: 290px;
    background: rgba(255, 196, 0, 0.06);
}


/* ==========================================
   CONTENT
=========================================== */

.hns-uv-content {
    min-width: 0;
}

.hns-uv-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-bottom: 13px;
    padding-left: 38px;
    color: var(--hns-uv-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.hns-uv-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 27px;
    height: 3px;
    border-radius: 20px;
    background: var(--hns-uv-yellow);
}

.hns-uv-content > h2 {
    max-width: 700px;
    margin: 0 0 20px;
    color: var(--hns-uv-dark);
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.13;
    font-weight: 800;
    letter-spacing: -1.2px;
}

.hns-uv-content > h2 span {
    display: block;
    color: var(--hns-uv-blue);
}

.hns-uv-intro {
    margin: 0 0 27px;
    color: var(--hns-uv-text);
    font-size: 16px;
    line-height: 1.8;
}


/* Symptoms Heading */

.hns-uv-symptom-heading {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 17px;
}

.hns-uv-heading-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: linear-gradient(
        135deg,
        var(--hns-uv-navy),
        var(--hns-uv-blue)
    );
    color: var(--hns-uv-yellow);
    font-size: 18px;
    box-shadow: 0 10px 25px rgba(8, 22, 56, 0.17);
}

.hns-uv-symptom-heading > div > span {
    display: block;
    margin-bottom: 3px;
    color: var(--hns-uv-blue);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.hns-uv-symptom-heading h3 {
    margin: 0;
    color: var(--hns-uv-dark);
    font-size: 21px;
    line-height: 1.3;
    font-weight: 800;
}


/* Symptoms Grid */

.hns-uv-symptoms {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}

.hns-uv-symptom-card {
    min-width: 0;
    min-height: 68px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 13px;
    border: 1px solid var(--hns-uv-border);
    border-radius: 13px;
    background: var(--hns-uv-white);
    color: var(--hns-uv-dark);
    font-size: 14px;
    line-height: 1.45;
    font-weight: 700;
    box-shadow: 0 7px 20px rgba(8, 22, 56, 0.05);
    transition: 0.3s ease;
}

.hns-uv-symptom-card:hover {
    border-color: rgba(25, 54, 143, 0.30);
    transform: translateY(-3px);
    box-shadow: 0 12px 26px rgba(8, 22, 56, 0.10);
}

.hns-uv-symptom-icon {
    width: 39px;
    height: 39px;
    flex: 0 0 39px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: rgba(25, 54, 143, 0.09);
    color: var(--hns-uv-blue);
    font-size: 15px;
    transition: 0.3s ease;
}

.hns-uv-symptom-card:hover .hns-uv-symptom-icon {
    background: var(--hns-uv-yellow);
    color: var(--hns-uv-dark);
}


/* Diagnosis Note */

.hns-uv-diagnosis-note {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 22px;
    padding: 18px;
    border-radius: 16px;
    background: linear-gradient(
        135deg,
        var(--hns-uv-navy),
        var(--hns-uv-blue)
    );
    box-shadow: 0 15px 35px rgba(8, 22, 56, 0.18);
}

.hns-uv-note-icon {
    width: 47px;
    height: 47px;
    flex: 0 0 47px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: var(--hns-uv-yellow);
    color: var(--hns-uv-dark);
    font-size: 18px;
}

.hns-uv-diagnosis-note p {
    margin: 0;
    color: rgba(255, 255, 255, 0.82);
    font-size: 14px;
    line-height: 1.65;
}

.hns-uv-diagnosis-note strong {
    color: var(--hns-uv-white);
}


/* ==========================================
   IMAGE AREA
=========================================== */

.hns-uv-visual {
    position: relative;
    max-width: 470px;
    margin-left: auto;
    padding: 20px 12px 70px 0;
}

.hns-uv-image-wrap {
    position: relative;
    height: 650px;
    overflow: hidden;
    border: 9px solid var(--hns-uv-white);
    border-radius: 30px;
    background: var(--hns-uv-dark);
    box-shadow: 0 25px 60px rgba(8, 22, 56, 0.18);
}

.hns-uv-image-wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 21px;
    pointer-events: none;
}

.hns-uv-image-wrap > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: 45% center;
    transition: transform 0.7s ease;
}

.hns-uv-image-wrap:hover > img {
    transform: scale(1.05);
}

.hns-uv-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            to top,
            rgba(8, 22, 56, 0.95) 0%,
            rgba(8, 22, 56, 0.10) 48%,
            transparent 75%
        );
}


/* Circular Vertigo Effect */

.hns-uv-circle {
    position: absolute;
    top: 20%;
    right: 9%;
    border: 2px solid rgba(255, 196, 0, 0.50);
    border-radius: 50%;
    pointer-events: none;
}

.hns-uv-circle-one {
    width: 80px;
    height: 80px;
}

.hns-uv-circle-two {
    top: calc(20% - 18px);
    right: calc(9% - 18px);
    width: 116px;
    height: 116px;
    opacity: 0.65;
}

.hns-uv-circle-three {
    top: calc(20% - 37px);
    right: calc(9% - 37px);
    width: 154px;
    height: 154px;
    opacity: 0.35;
}


/* Image Content */

.hns-uv-image-content {
    position: absolute;
    right: 23px;
    bottom: 25px;
    left: 23px;
    display: flex;
    align-items: center;
    gap: 13px;
}

.hns-uv-image-content > span {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: var(--hns-uv-yellow);
    color: var(--hns-uv-dark);
    font-size: 18px;
}

.hns-uv-image-content strong {
    display: block;
    margin-bottom: 4px;
    color: var(--hns-uv-white);
    font-size: 17px;
}

.hns-uv-image-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
}


/* Floating Card */

.hns-uv-floating-card {
    position: absolute;
    top: 66px;
    left: -45px;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 17px;
    border: 1px solid var(--hns-uv-border);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 16px 38px rgba(8, 22, 56, 0.15);
}

.hns-uv-floating-icon {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: var(--hns-uv-yellow);
    color: var(--hns-uv-dark);
    font-size: 16px;
}

.hns-uv-floating-card small {
    display: block;
    margin-bottom: 3px;
    color: var(--hns-uv-text);
    font-size: 11px;
}

.hns-uv-floating-card strong {
    display: block;
    color: var(--hns-uv-dark);
    font-size: 15px;
}


/* Bottom Balance Card */

.hns-uv-balance-card {
    position: absolute;
    right: -18px;
    bottom: 18px;
    left: 35px;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 17px;
    padding: 17px;
    border-radius: 16px;
    background: linear-gradient(
        135deg,
        var(--hns-uv-navy),
        var(--hns-uv-blue)
    );
    box-shadow: 0 18px 40px rgba(8, 22, 56, 0.25);
}

.hns-uv-balance-card > div {
    flex: 1;
    text-align: center;
}

.hns-uv-balance-card span {
    display: block;
    margin-bottom: 3px;
    color: var(--hns-uv-yellow);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-uv-balance-card strong {
    color: var(--hns-uv-white);
    font-size: 13px;
    line-height: 1.3;
}

.hns-uv-balance-line {
    width: 1px;
    height: 37px;
    flex: 0 0 1px;
    margin: 0 !important;
    background: rgba(255, 255, 255, 0.20);
}


/* ==========================================
   TABLET
=========================================== */

@media (max-width: 1050px) {

    .hns-uv-container {
        grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.85fr);
        gap: 40px;
    }

    .hns-uv-image-wrap {
        height: 620px;
    }

    .hns-uv-floating-card {
        left: -20px;
    }

    .hns-uv-balance-card {
        right: 0;
    }
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width: 850px) {

    .hns-understanding-vertigo {
        padding: 65px 0 75px;
    }

    .hns-uv-container {
        grid-template-columns: 1fr;
        gap: 55px;
    }

    .hns-uv-visual {
        width: 100%;
        max-width: 590px;
        margin: 0 auto;
        order: -1;
    }

    .hns-uv-image-wrap {
        height: 580px;
    }

    .hns-uv-floating-card {
        left: -5px;
    }
}

@media (max-width: 600px) {

    .hns-understanding-vertigo {
        padding: 55px 0 65px;
    }

    .hns-uv-container {
        width: calc(100% - 30px);
        gap: 48px;
    }

    .hns-uv-content > h2 {
        font-size: 34px;
    }

    .hns-uv-intro {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-uv-symptoms {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .hns-uv-symptom-card {
        min-height: 62px;
    }

    .hns-uv-diagnosis-note {
        align-items: flex-start;
        padding: 16px;
    }

    .hns-uv-visual {
        padding-bottom: 62px;
    }

    .hns-uv-image-wrap {
        height: 500px;
        border-width: 7px;
        border-radius: 23px;
    }

    .hns-uv-floating-card {
        top: 45px;
    }

    .hns-uv-balance-card {
        right: 0;
        bottom: 10px;
        left: 15px;
    }
}

@media (max-width: 430px) {

    .hns-uv-label {
        font-size: 12px;
    }

    .hns-uv-content > h2 {
        font-size: 30px;
    }

    .hns-uv-image-wrap {
        height: 430px;
    }

    .hns-uv-floating-card {
        display: none;
    }

    .hns-uv-circle {
        display: none;
    }

    .hns-uv-balance-card {
        left: 8px;
        padding: 14px 9px;
        gap: 9px;
    }

    .hns-uv-balance-card strong {
        font-size: 11px;
    }
}

/* ==========================================
   VERTIGO & BALANCE SERVICES
=========================================== */

:root {
    --hns-vbs-navy: #081638;
    --hns-vbs-dark: #0c1d50;
    --hns-vbs-blue: #19368f;
    --hns-vbs-yellow: #ffc400;
    --hns-vbs-white: #ffffff;
    --hns-vbs-light: #f5f8ff;
    --hns-vbs-text: #536078;
    --hns-vbs-border: #dfe6f4;
}

.hns-vbs-section,
.hns-vbs-section * {
    box-sizing: border-box;
}

.hns-vbs-section {
    position: relative;
    padding: 85px 0 100px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at top right,
            rgba(25, 54, 143, 0.08),
            transparent 28%
        ),
        linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%);
}

.hns-vbs-container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}


/* Background Decoration */

.hns-vbs-bg-circle {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-vbs-circle-one {
    top: 250px;
    right: -180px;
    width: 420px;
    height: 420px;
    border: 75px solid rgba(25, 54, 143, 0.035);
}

.hns-vbs-circle-two {
    left: -170px;
    bottom: 300px;
    width: 360px;
    height: 360px;
    background: rgba(255, 196, 0, 0.05);
}


/* ==========================================
   SECTION HEADING
=========================================== */

.hns-vbs-heading {
    max-width: 820px;
    margin: 0 auto 50px;
    text-align: center;
}

.hns-vbs-subtitle {
    display: inline-block;
    margin-bottom: 10px;
    color: var(--hns-vbs-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.hns-vbs-heading h2 {
    position: relative;
    margin: 0 0 19px;
    padding-bottom: 19px;
    color: var(--hns-vbs-dark);
    font-size: clamp(35px, 4.5vw, 50px);
    line-height: 1.13;
    font-weight: 800;
    letter-spacing: -1.2px;
}

.hns-vbs-heading h2::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 72px;
    height: 4px;
    border-radius: 20px;
    background: var(--hns-vbs-yellow);
    transform: translateX(-50%);
}

.hns-vbs-heading p {
    margin: 0;
    color: var(--hns-vbs-text);
    font-size: 17px;
    line-height: 1.75;
}


/* ==========================================
   SERVICE ROW
=========================================== */

.hns-vbs-services-list {
    display: flex;
    flex-direction: column;
    gap: 34px;
}

.hns-vbs-row {
    position: relative;
    display: grid;
    grid-template-columns: minmax(360px, 0.88fr) minmax(0, 1.12fr);
    align-items: stretch;
    overflow: hidden;
    border: 1px solid var(--hns-vbs-border);
    border-radius: 26px;
    background: var(--hns-vbs-white);
    box-shadow: 0 15px 38px rgba(8, 22, 56, 0.09);
    transition: 0.35s ease;
}

.hns-vbs-row:hover {
    border-color: rgba(25, 54, 143, 0.28);
    transform: translateY(-5px);
    box-shadow: 0 24px 55px rgba(8, 22, 56, 0.14);
}

/* Reverse Even Services */

.hns-vbs-row:nth-child(even) {
    grid-template-columns: minmax(0, 1.12fr) minmax(360px, 0.88fr);
}

.hns-vbs-row:nth-child(even) .hns-vbs-image {
    order: 2;
}

.hns-vbs-row:nth-child(even) .hns-vbs-content {
    order: 1;
}


/* ==========================================
   SERVICE IMAGE
=========================================== */

.hns-vbs-image {
    position: relative;
    min-height: 430px;
    overflow: hidden;
    background: var(--hns-vbs-dark);
}

.hns-vbs-image > img {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
}

.hns-vbs-row:hover .hns-vbs-image > img {
    transform: scale(1.06);
}

.hns-vbs-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            to top,
            rgba(8, 22, 56, 0.92) 0%,
            rgba(8, 22, 56, 0.16) 55%,
            transparent 100%
        );
}

.hns-vbs-number {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border: 4px solid rgba(255, 255, 255, 0.20);
    border-radius: 15px;
    background: var(--hns-vbs-yellow);
    color: var(--hns-vbs-dark);
    font-size: 17px;
    font-weight: 900;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.20);
}

.hns-vbs-image-label {
    position: absolute;
    right: 20px;
    bottom: 20px;
    left: 20px;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 14px 16px;
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 14px;
    background: rgba(8, 22, 56, 0.68);
    color: var(--hns-vbs-white);
    font-size: 14px;
    font-weight: 700;
    backdrop-filter: blur(9px);
}

.hns-vbs-image-label i {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: var(--hns-vbs-yellow);
    color: var(--hns-vbs-dark);
    font-size: 15px;
}


/* ==========================================
   SERVICE CONTENT
=========================================== */

.hns-vbs-content {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(30px, 4vw, 48px);
}

.hns-vbs-service-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    margin-bottom: 10px;
    padding-left: 33px;
    color: var(--hns-vbs-blue);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.3px;
    text-transform: uppercase;
}

.hns-vbs-service-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 23px;
    height: 3px;
    border-radius: 20px;
    background: var(--hns-vbs-yellow);
}

.hns-vbs-content h3 {
    margin: 0 0 17px;
    color: var(--hns-vbs-dark);
    font-size: clamp(26px, 3vw, 34px);
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: -0.5px;
}

.hns-vbs-content > p {
    margin: 0 0 16px;
    color: var(--hns-vbs-text);
    font-size: 16px;
    line-height: 1.8;
}

.hns-vbs-content h4 {
    margin: 5px 0 14px;
    color: var(--hns-vbs-dark);
    font-size: 17px;
    line-height: 1.4;
    font-weight: 800;
}


/* ==========================================
   BULLET POINTS
=========================================== */

.hns-vbs-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.hns-vbs-points li {
    position: relative;
    min-height: 46px;
    display: flex;
    align-items: center;
    padding: 10px 12px 10px 38px;
    border: 1px solid var(--hns-vbs-border);
    border-radius: 10px;
    background: var(--hns-vbs-light);
    color: var(--hns-vbs-dark);
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
}

.hns-vbs-points li::before {
    content: "✓";
    position: absolute;
    left: 12px;
    width: 18px;
    height: 18px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--hns-vbs-blue);
    color: var(--hns-vbs-white);
    font-size: 10px;
    font-weight: 900;
}


/* ==========================================
   NOTE BOX
=========================================== */

.hns-vbs-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    border-left: 4px solid var(--hns-vbs-yellow);
    border-radius: 0 13px 13px 0;
    background: linear-gradient(
        135deg,
        var(--hns-vbs-navy),
        var(--hns-vbs-blue)
    );
}

.hns-vbs-note > i {
    margin-top: 3px;
    color: var(--hns-vbs-yellow);
    font-size: 18px;
}

.hns-vbs-note p {
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 14px;
    line-height: 1.65;
}


/* ==========================================
   BENEFIT STRIP
=========================================== */

.hns-vbs-benefit-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 7px;
}

.hns-vbs-benefit-strip span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 12px;
    border: 1px solid rgba(25, 54, 143, 0.14);
    border-radius: 50px;
    background: rgba(25, 54, 143, 0.07);
    color: var(--hns-vbs-dark);
    font-size: 13px;
    font-weight: 700;
}

.hns-vbs-benefit-strip i {
    color: var(--hns-vbs-blue);
    font-size: 11px;
}


/* ==========================================
   FEATURE BOX
=========================================== */

.hns-vbs-feature-box {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 7px;
    padding: 17px;
    border: 1px solid var(--hns-vbs-border);
    border-radius: 15px;
    background: var(--hns-vbs-light);
}

.hns-vbs-feature-icon {
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: linear-gradient(
        135deg,
        var(--hns-vbs-navy),
        var(--hns-vbs-blue)
    );
    color: var(--hns-vbs-yellow);
    font-size: 19px;
}

.hns-vbs-feature-box strong {
    display: block;
    margin-bottom: 4px;
    color: var(--hns-vbs-dark);
    font-size: 15px;
}

.hns-vbs-feature-box p {
    margin: 0;
    color: var(--hns-vbs-text);
    font-size: 13px;
    line-height: 1.55;
}


/* ==========================================
   SYSTEM GRID
=========================================== */

.hns-vbs-system-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 7px;
}

.hns-vbs-system-grid span {
    min-height: 85px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 9px;
    padding: 12px;
    border: 1px solid var(--hns-vbs-border);
    border-radius: 13px;
    background: var(--hns-vbs-light);
    color: var(--hns-vbs-dark);
    font-size: 12px;
    line-height: 1.4;
    font-weight: 700;
    text-align: center;
}

.hns-vbs-system-grid i {
    color: var(--hns-vbs-blue);
    font-size: 21px;
}


/* ==========================================
   TABLET RESPONSIVE
=========================================== */

@media (max-width: 991px) {

    .hns-vbs-section {
        padding: 70px 0 80px;
    }

    .hns-vbs-row,
    .hns-vbs-row:nth-child(even) {
        grid-template-columns: minmax(300px, 0.8fr) minmax(0, 1.2fr);
    }

    .hns-vbs-image {
        min-height: 470px;
    }

    .hns-vbs-content {
        padding: 30px;
    }

    .hns-vbs-points {
        grid-template-columns: 1fr;
    }

    .hns-vbs-system-grid {
        grid-template-columns: 1fr;
    }

    .hns-vbs-system-grid span {
        min-height: 60px;
        flex-direction: row;
    }
}


/* ==========================================
   MOBILE RESPONSIVE
=========================================== */

@media (max-width: 767px) {

    .hns-vbs-section {
        padding: 58px 0 65px;
    }

    .hns-vbs-container {
        width: calc(100% - 30px);
    }

    .hns-vbs-heading {
        margin-bottom: 35px;
    }

    .hns-vbs-heading h2 {
        font-size: 34px;
    }

    .hns-vbs-heading p {
        font-size: 16px;
        line-height: 1.7;
    }

    .hns-vbs-services-list {
        gap: 24px;
    }

    .hns-vbs-row,
    .hns-vbs-row:nth-child(even) {
        grid-template-columns: 1fr;
        border-radius: 20px;
    }

    .hns-vbs-row:nth-child(even) .hns-vbs-image,
    .hns-vbs-image {
        order: 1;
    }

    .hns-vbs-row:nth-child(even) .hns-vbs-content,
    .hns-vbs-content {
        order: 2;
    }

    .hns-vbs-image {
        min-height: 310px;
    }

    .hns-vbs-content {
        padding: 27px 22px 30px;
    }

    .hns-vbs-content h3 {
        font-size: 27px;
    }

    .hns-vbs-content > p {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-vbs-content h4 {
        font-size: 16px;
    }

    .hns-vbs-points {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hns-vbs-benefit-strip {
        align-items: flex-start;
        flex-direction: column;
    }

    .hns-vbs-system-grid {
        grid-template-columns: 1fr;
    }
}


/* ==========================================
   SMALL MOBILE
=========================================== */

@media (max-width: 500px) {

    .hns-vbs-heading h2 {
        font-size: 30px;
    }

    .hns-vbs-subtitle {
        font-size: 12px;
    }

    .hns-vbs-image {
        min-height: 270px;
    }

    .hns-vbs-number {
        top: 14px;
        left: 14px;
        width: 47px;
        height: 47px;
        font-size: 15px;
    }

    .hns-vbs-image-label {
        right: 14px;
        bottom: 14px;
        left: 14px;
        padding: 11px 13px;
        font-size: 12px;
    }

    .hns-vbs-content {
        padding: 25px 18px 27px;
    }

    .hns-vbs-content h3 {
        font-size: 25px;
    }

    .hns-vbs-points {
        grid-template-columns: 1fr;
    }

    .hns-vbs-note {
        flex-direction: column;
    }

    .hns-vbs-feature-box {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* ==========================================
   WHY CHOOSE US & OUR COMMITMENT
=========================================== */

:root {
    --hns-vwc-navy: #081638;
    --hns-vwc-dark: #0c1d50;
    --hns-vwc-blue: #19368f;
    --hns-vwc-yellow: #ffc400;
    --hns-vwc-white: #ffffff;
    --hns-vwc-light: #f5f8ff;
    --hns-vwc-text: #536078;
    --hns-vwc-border: #dfe6f4;
}

.hns-vwc-section,
.hns-vwc-section * {
    box-sizing: border-box;
}

.hns-vwc-section {
    position: relative;
    padding: 85px 0 95px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at top right,
            rgba(25, 54, 143, 0.08),
            transparent 30%
        ),
        linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%);
}

.hns-vwc-container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}


/* Decorative Shapes */

.hns-vwc-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-vwc-shape-one {
    top: -170px;
    right: -150px;
    width: 400px;
    height: 400px;
    border: 70px solid rgba(25, 54, 143, 0.04);
}

.hns-vwc-shape-two {
    left: -130px;
    bottom: -160px;
    width: 340px;
    height: 340px;
    background: rgba(255, 196, 0, 0.055);
}


/* ==========================================
   SECTION HEADING
=========================================== */

.hns-vwc-heading {
    max-width: 850px;
    margin: 0 auto 43px;
    text-align: center;
}

.hns-vwc-subtitle {
    display: inline-block;
    margin-bottom: 10px;
    color: var(--hns-vwc-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.hns-vwc-heading h2 {
    position: relative;
    margin: 0 0 18px;
    padding-bottom: 19px;
    color: var(--hns-vwc-dark);
    font-size: clamp(35px, 4.5vw, 49px);
    line-height: 1.14;
    font-weight: 800;
    letter-spacing: -1.2px;
}

.hns-vwc-heading h2::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 72px;
    height: 4px;
    border-radius: 20px;
    background: var(--hns-vwc-yellow);
    transform: translateX(-50%);
}

.hns-vwc-heading p {
    margin: 0;
    color: var(--hns-vwc-text);
    font-size: 17px;
    line-height: 1.75;
}


/* ==========================================
   WHY CHOOSE CARDS
=========================================== */

.hns-vwc-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 42px;
}

.hns-vwc-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    padding: 25px 21px;
    border: 1px solid var(--hns-vwc-border);
    border-radius: 18px;
    background: var(--hns-vwc-white);
    box-shadow: 0 11px 28px rgba(8, 22, 56, 0.07);
    transition: 0.35s ease;
}

.hns-vwc-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 75px;
    height: 75px;
    border-radius: 0 0 0 100%;
    background: rgba(25, 54, 143, 0.04);
    transition: 0.4s ease;
}

.hns-vwc-card:hover {
    border-color: rgba(25, 54, 143, 0.28);
    transform: translateY(-7px);
    box-shadow: 0 19px 40px rgba(8, 22, 56, 0.13);
}

.hns-vwc-card:hover::before {
    width: 110px;
    height: 110px;
    background: rgba(255, 196, 0, 0.10);
}

.hns-vwc-number {
    position: absolute;
    top: 14px;
    right: 16px;
    color: rgba(12, 29, 80, 0.13);
    font-size: 31px;
    font-weight: 900;
    line-height: 1;
}

.hns-vwc-icon {
    position: relative;
    z-index: 2;
    width: 57px;
    height: 57px;
    display: grid;
    place-items: center;
    margin-bottom: 18px;
    border-radius: 15px;
    background: linear-gradient(
        135deg,
        var(--hns-vwc-navy),
        var(--hns-vwc-blue)
    );
    color: var(--hns-vwc-yellow);
    font-size: 21px;
    box-shadow: 0 11px 25px rgba(8, 22, 56, 0.18);
    transition: 0.35s ease;
}

.hns-vwc-card:hover .hns-vwc-icon {
    color: var(--hns-vwc-dark);
    background: var(--hns-vwc-yellow);
    transform: rotate(-5deg) scale(1.06);
}

.hns-vwc-card h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 10px;
    color: var(--hns-vwc-dark);
    font-size: 18px;
    line-height: 1.4;
    font-weight: 800;
}

.hns-vwc-card p {
    position: relative;
    z-index: 2;
    margin: 0;
    color: var(--hns-vwc-text);
    font-size: 14px;
    line-height: 1.68;
}


/* ==========================================
   OUR COMMITMENT
=========================================== */

.hns-vwc-commitment {
    position: relative;
    overflow: hidden;
    padding: 38px;
    border-radius: 25px;
    background:
        radial-gradient(
            circle at right top,
            rgba(255, 196, 0, 0.13),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            var(--hns-vwc-navy),
            var(--hns-vwc-dark) 55%,
            var(--hns-vwc-blue)
        );
    box-shadow: 0 23px 55px rgba(8, 22, 56, 0.22);
}

.hns-vwc-commitment::before {
    content: "";
    position: absolute;
    top: -80px;
    right: -65px;
    width: 220px;
    height: 220px;
    border: 40px solid rgba(255, 255, 255, 0.04);
    border-radius: 50%;
}

.hns-vwc-commitment-heading {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 21px;
}

.hns-vwc-commitment-icon {
    width: 62px;
    height: 62px;
    flex: 0 0 62px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    background: var(--hns-vwc-yellow);
    color: var(--hns-vwc-dark);
    font-size: 24px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.20);
}

.hns-vwc-commitment-heading span {
    display: block;
    margin-bottom: 3px;
    color: var(--hns-vwc-yellow);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.3px;
    text-transform: uppercase;
}

.hns-vwc-commitment-heading h2 {
    margin: 0;
    color: var(--hns-vwc-white);
    font-size: clamp(28px, 3vw, 37px);
    line-height: 1.2;
    font-weight: 800;
}

.hns-vwc-commitment-content {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}

.hns-vwc-commitment-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.80);
    font-size: 15px;
    line-height: 1.75;
}

.hns-vwc-commitment-content strong {
    color: var(--hns-vwc-white);
}


/* Commitment Points */

.hns-vwc-commitment-points {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 26px;
    padding-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.13);
}

.hns-vwc-commitment-points > div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.07);
}

.hns-vwc-commitment-points i {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: rgba(255, 196, 0, 0.13);
    color: var(--hns-vwc-yellow);
    font-size: 16px;
}

.hns-vwc-commitment-points small {
    display: block;
    margin-bottom: 3px;
    color: rgba(255, 255, 255, 0.60);
    font-size: 10px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.hns-vwc-commitment-points strong {
    display: block;
    color: var(--hns-vwc-white);
    font-size: 13px;
    line-height: 1.35;
}


/* ==========================================
   TABLET
=========================================== */

@media (max-width: 991px) {

    .hns-vwc-section {
        padding: 70px 0 80px;
    }

    .hns-vwc-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hns-vwc-commitment-points {
        grid-template-columns: 1fr;
    }
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width: 767px) {

    .hns-vwc-section {
        padding: 58px 0 65px;
    }

    .hns-vwc-container {
        width: calc(100% - 30px);
    }

    .hns-vwc-heading {
        margin-bottom: 32px;
    }

    .hns-vwc-heading h2 {
        font-size: 33px;
    }

    .hns-vwc-heading p {
        font-size: 16px;
    }

    .hns-vwc-grid {
        gap: 14px;
        margin-bottom: 30px;
    }

    .hns-vwc-card {
        padding: 22px 18px;
    }

    .hns-vwc-commitment {
        padding: 28px 22px;
        border-radius: 20px;
    }

    .hns-vwc-commitment-content {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}


/* ==========================================
   SMALL MOBILE
=========================================== */

@media (max-width: 520px) {

    .hns-vwc-heading h2 {
        font-size: 29px;
    }

    .hns-vwc-subtitle {
        font-size: 12px;
    }

    .hns-vwc-grid {
        grid-template-columns: 1fr;
    }

    .hns-vwc-card h3 {
        font-size: 18px;
    }

    .hns-vwc-card p {
        font-size: 15px;
    }

    .hns-vwc-commitment-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .hns-vwc-commitment-content p {
        font-size: 15px;
    }

    .hns-vwc-commitment-points > div {
        align-items: flex-start;
    }
}

/*==============================
Speech Banner
==============================*/

.speech-banner{
    position:relative;
    width:100%;
    min-height:520px;
    display:flex;
    align-items:center;
    background:url("images/banner-pages.jpg") center center/cover no-repeat;
    overflow:hidden;
}

.speech-banner-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,
    rgba(6,18,55,.92) 0%,
    rgba(9,27,80,.82) 45%,
    rgba(9,27,80,.25) 100%);
}

.speech-banner .container{
    position:relative;
    z-index:2;
}

.speech-banner-content{
    max-width:700px;
    color:#fff;
    padding:100px 0;
}

.speech-tag{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:rgba(255,255,255,.12);
    color:#ffc400;
    padding:10px 20px;
    border-radius:50px;
    font-size:16px;
    font-weight:600;
    margin-bottom:22px;
    backdrop-filter:blur(10px);
}

.speech-tag i{
    font-size:18px;
}

.speech-banner h1{
    font-size:58px;
    line-height:1.15;
    font-weight:800;
    margin-bottom:25px;
}

.speech-banner p{
    font-size:20px;
    line-height:1.9;
    color:#e8edf8;
    margin-bottom:35px;
}

.speech-buttons{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
    margin-bottom:35px;
}

.btn-primary-custom{
    background:#ffc400;
    color:#081638;
    text-decoration:none;
    padding:16px 34px;
    border-radius:50px;
    font-weight:700;
    transition:.4s;
}

.btn-primary-custom:hover{
    background:#fff;
    color:#081638;
}

.btn-secondary-custom{
    border:2px solid rgba(255,255,255,.4);
    color:#fff;
    text-decoration:none;
    padding:16px 34px;
    border-radius:50px;
    font-weight:700;
    transition:.4s;
}

.btn-secondary-custom:hover{
    background:#fff;
    color:#081638;
}

.speech-breadcrumb{
    display:flex;
    align-items:center;
    gap:12px;
    list-style:none;
    margin:0;
    padding:0;
    color:#fff;
    font-size:16px;
}

.speech-breadcrumb a{
    color:#ffc400;
    text-decoration:none;
}

.speech-breadcrumb i{
    font-size:13px;
}

@media(max-width:991px){

.speech-banner{
    min-height:480px;
}

.speech-banner-content{
    max-width:100%;
    padding:80px 0;
}

.speech-banner h1{
    font-size:44px;
}

.speech-banner p{
    font-size:18px;
}

}

@media(max-width:767px){

.speech-banner{
    min-height:420px;
    background-position:70% center;
}

.speech-banner-content{
    text-align:center;
    padding:70px 0;
}

.speech-banner h1{
    font-size:34px;
}

.speech-banner p{
    font-size:16px;
    line-height:1.8;
}

.speech-buttons{
    justify-content:center;
}

.speech-breadcrumb{
    justify-content:center;
    flex-wrap:wrap;
}

}

/* ==========================================
   SPEECH & LANGUAGE THERAPY INTRODUCTION
=========================================== */

:root {
    --hns-slt-navy: #081638;
    --hns-slt-dark: #0c1d50;
    --hns-slt-blue: #19368f;
    --hns-slt-yellow: #ffc400;
    --hns-slt-white: #ffffff;
    --hns-slt-light: #f5f8ff;
    --hns-slt-text: #536078;
    --hns-slt-border: #dfe6f4;
}

.hns-slt-intro,
.hns-slt-intro * {
    box-sizing: border-box;
}

.hns-slt-intro {
    position: relative;
    padding: 85px 0 95px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at top right,
            rgba(25, 54, 143, 0.08),
            transparent 30%
        ),
        linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%);
}

.hns-slt-container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(390px, 0.88fr) minmax(0, 1.12fr);
    align-items: center;
    gap: 70px;
}


/* Decorative Shapes */

.hns-slt-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-slt-shape-one {
    top: -170px;
    right: -150px;
    width: 400px;
    height: 400px;
    border: 70px solid rgba(25, 54, 143, 0.04);
}

.hns-slt-shape-two {
    left: -120px;
    bottom: -150px;
    width: 320px;
    height: 320px;
    background: rgba(255, 196, 0, 0.06);
}


/* ==========================================
   IMAGE COLUMN
=========================================== */

.hns-slt-visual {
    position: relative;
    max-width: 500px;
    padding: 18px 0 75px 15px;
}

.hns-slt-image-wrap {
    position: relative;
    height: 650px;
    overflow: hidden;
    border: 9px solid var(--hns-slt-white);
    border-radius: 29px;
    background: var(--hns-slt-dark);
    box-shadow: 0 25px 60px rgba(8, 22, 56, 0.17);
}

.hns-slt-image-wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 20px;
    pointer-events: none;
}

.hns-slt-image-wrap > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
}

.hns-slt-image-wrap:hover > img {
    transform: scale(1.06);
}

.hns-slt-image-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(8, 22, 56, 0.96) 0%,
        rgba(8, 22, 56, 0.16) 48%,
        transparent 75%
    );
}

.hns-slt-image-content {
    position: absolute;
    right: 24px;
    bottom: 27px;
    left: 24px;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 13px;
}

.hns-slt-image-icon {
    width: 51px;
    height: 51px;
    flex: 0 0 51px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: var(--hns-slt-yellow);
    color: var(--hns-slt-dark);
    font-size: 20px;
}

.hns-slt-image-content small {
    display: block;
    margin-bottom: 4px;
    color: var(--hns-slt-yellow);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-slt-image-content strong {
    display: block;
    color: var(--hns-slt-white);
    font-size: 17px;
    line-height: 1.4;
}


/* Floating Card */

.hns-slt-floating-card {
    position: absolute;
    top: 65px;
    left: -35px;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 15px 18px;
    border: 1px solid var(--hns-slt-border);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 17px 38px rgba(8, 22, 56, 0.15);
}

.hns-slt-floating-card > span {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: var(--hns-slt-yellow);
    color: var(--hns-slt-dark);
    font-size: 17px;
}

.hns-slt-floating-card small {
    display: block;
    margin-bottom: 3px;
    color: var(--hns-slt-text);
    font-size: 11px;
}

.hns-slt-floating-card strong {
    display: block;
    color: var(--hns-slt-dark);
    font-size: 15px;
}


/* Communication Card */

.hns-slt-communication-card {
    position: absolute;
    right: -25px;
    bottom: 18px;
    left: 35px;
    z-index: 5;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    padding: 16px;
    border-radius: 17px;
    background: linear-gradient(
        135deg,
        var(--hns-slt-navy),
        var(--hns-slt-blue)
    );
    box-shadow: 0 19px 42px rgba(8, 22, 56, 0.27);
}

.hns-slt-communication-card > div {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 7px;
    padding: 10px 6px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.07);
}

.hns-slt-communication-card i {
    color: var(--hns-slt-yellow);
    font-size: 18px;
}

.hns-slt-communication-card span {
    color: var(--hns-slt-white);
    font-size: 12px;
    font-weight: 700;
}


/* ==========================================
   CONTENT COLUMN
=========================================== */

.hns-slt-content {
    min-width: 0;
}

.hns-slt-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-bottom: 13px;
    padding-left: 38px;
    color: var(--hns-slt-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.hns-slt-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 27px;
    height: 3px;
    border-radius: 20px;
    background: var(--hns-slt-yellow);
}

.hns-slt-content > h2 {
    margin: 0 0 8px;
    color: var(--hns-slt-dark);
    font-size: clamp(36px, 4.5vw, 51px);
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: -1.2px;
}

.hns-slt-content > h2 span {
    color: var(--hns-slt-blue);
}

.hns-slt-content > h3 {
    margin: 0 0 22px;
    color: var(--hns-slt-blue);
    font-size: 21px;
    line-height: 1.4;
    font-weight: 700;
}

.hns-slt-content > p {
    margin: 0 0 17px;
    color: var(--hns-slt-text);
    font-size: 16px;
    line-height: 1.8;
}


/* ==========================================
   CLINIC HIGHLIGHT
=========================================== */

.hns-slt-highlight {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin: 23px 0;
    padding: 19px;
    border: 1px solid rgba(25, 54, 143, 0.14);
    border-left: 4px solid var(--hns-slt-yellow);
    border-radius: 0 15px 15px 0;
    background: var(--hns-slt-white);
    box-shadow: 0 11px 28px rgba(8, 22, 56, 0.07);
}

.hns-slt-highlight-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: linear-gradient(
        135deg,
        var(--hns-slt-navy),
        var(--hns-slt-blue)
    );
    color: var(--hns-slt-yellow);
    font-size: 18px;
}

.hns-slt-highlight p {
    margin: 0;
    color: var(--hns-slt-text);
    font-size: 15px;
    line-height: 1.72;
}

.hns-slt-highlight strong {
    color: var(--hns-slt-dark);
}


/* ==========================================
   SERVICE HIGHLIGHTS
=========================================== */

.hns-slt-services {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 22px 0;
}

.hns-slt-service {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--hns-slt-border);
    border-radius: 13px;
    background: var(--hns-slt-white);
    box-shadow: 0 7px 19px rgba(8, 22, 56, 0.05);
}

.hns-slt-service > span {
    width: 39px;
    height: 39px;
    flex: 0 0 39px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: rgba(25, 54, 143, 0.09);
    color: var(--hns-slt-blue);
    font-size: 15px;
}

.hns-slt-service strong {
    display: block;
    margin-bottom: 3px;
    color: var(--hns-slt-dark);
    font-size: 13px;
    line-height: 1.35;
}

.hns-slt-service small {
    display: block;
    color: var(--hns-slt-text);
    font-size: 10px;
    line-height: 1.4;
}


/* ==========================================
   BELIEF STATEMENT
=========================================== */

.hns-slt-belief {
    padding: 21px;
    border-radius: 17px;
    background:
        radial-gradient(
            circle at right top,
            rgba(255, 196, 0, 0.13),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            var(--hns-slt-navy),
            var(--hns-slt-blue)
        );
    box-shadow: 0 16px 36px rgba(8, 22, 56, 0.19);
}

.hns-slt-belief-heading {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 9px;
}

.hns-slt-belief-heading > span {
    width: 39px;
    height: 39px;
    flex: 0 0 39px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: var(--hns-slt-yellow);
    color: var(--hns-slt-dark);
    font-size: 16px;
}

.hns-slt-belief-heading h4 {
    margin: 0;
    color: var(--hns-slt-white);
    font-size: 19px;
    font-weight: 800;
}

.hns-slt-belief > p {
    margin: 0;
    color: rgba(255, 255, 255, 0.81);
    font-size: 14px;
    line-height: 1.7;
}


/* ==========================================
   TABLET
=========================================== */

@media (max-width: 1050px) {

    .hns-slt-container {
        grid-template-columns: minmax(340px, 0.82fr) minmax(0, 1.18fr);
        gap: 45px;
    }

    .hns-slt-image-wrap {
        height: 620px;
    }

    .hns-slt-floating-card {
        left: -15px;
    }

    .hns-slt-communication-card {
        right: 0;
    }

    .hns-slt-services {
        grid-template-columns: 1fr;
    }
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width: 850px) {

    .hns-slt-intro {
        padding: 65px 0 75px;
    }

    .hns-slt-container {
        grid-template-columns: 1fr;
        gap: 55px;
    }

    .hns-slt-visual {
        width: 100%;
        max-width: 600px;
        margin: 0 auto;
    }

    .hns-slt-image-wrap {
        height: 580px;
    }

    .hns-slt-content > h2 {
        font-size: 40px;
    }

    .hns-slt-services {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {

    .hns-slt-intro {
        padding: 55px 0 65px;
    }

    .hns-slt-container {
        width: calc(100% - 30px);
        gap: 48px;
    }

    .hns-slt-visual {
        padding: 10px 0 65px;
    }

    .hns-slt-image-wrap {
        height: 480px;
        border-width: 7px;
        border-radius: 23px;
    }

    .hns-slt-floating-card {
        top: 38px;
        left: -5px;
    }

    .hns-slt-communication-card {
        right: 5px;
        bottom: 8px;
        left: 10px;
    }

    .hns-slt-content > h2 {
        font-size: 34px;
    }

    .hns-slt-content > h3 {
        font-size: 19px;
    }

    .hns-slt-content > p {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-slt-highlight {
        gap: 13px;
        padding: 17px;
    }

    .hns-slt-services {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 420px) {

    .hns-slt-image-wrap {
        height: 410px;
    }

    .hns-slt-floating-card {
        display: none;
    }

    .hns-slt-label {
        font-size: 12px;
    }

    .hns-slt-content > h2 {
        font-size: 30px;
    }

    .hns-slt-highlight {
        flex-direction: column;
    }

    .hns-slt-communication-card {
        padding: 11px;
    }

    .hns-slt-communication-card > div {
        padding: 8px 3px;
    }
}

/* ==========================================
   WHY SPEECH & LANGUAGE THERAPY IS IMPORTANT
=========================================== */

:root {
    --hns-sli-navy: #081638;
    --hns-sli-dark: #0c1d50;
    --hns-sli-blue: #19368f;
    --hns-sli-yellow: #ffc400;
    --hns-sli-white: #ffffff;
    --hns-sli-light: #f5f8ff;
    --hns-sli-text: #536078;
    --hns-sli-border: #dfe6f4;
}

.hns-sli-section,
.hns-sli-section * {
    box-sizing: border-box;
}

.hns-sli-section {
    position: relative;
    padding: 85px 0 95px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at bottom left,
            rgba(255, 196, 0, 0.07),
            transparent 28%
        ),
        linear-gradient(180deg, #f5f8ff 0%, #ffffff 100%);
}

.hns-sli-container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(390px, 0.88fr);
    align-items: center;
    gap: 70px;
}


/* Decorative Shapes */

.hns-sli-decoration {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-sli-decoration-one {
    top: -160px;
    right: -150px;
    width: 390px;
    height: 390px;
    border: 68px solid rgba(25, 54, 143, 0.04);
}

.hns-sli-decoration-two {
    left: -110px;
    bottom: -130px;
    width: 290px;
    height: 290px;
    background: rgba(255, 196, 0, 0.055);
}


/* ==========================================
   CONTENT
=========================================== */

.hns-sli-content {
    min-width: 0;
}

.hns-sli-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-bottom: 13px;
    padding-left: 38px;
    color: var(--hns-sli-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.hns-sli-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 27px;
    height: 3px;
    border-radius: 20px;
    background: var(--hns-sli-yellow);
}

.hns-sli-content > h2 {
    margin: 0 0 20px;
    color: var(--hns-sli-dark);
    font-size: clamp(35px, 4.5vw, 49px);
    line-height: 1.13;
    font-weight: 800;
    letter-spacing: -1.1px;
}

.hns-sli-content > h2 span {
    display: block;
    color: var(--hns-sli-blue);
}

.hns-sli-content > p {
    margin: 0 0 22px;
    color: var(--hns-sli-text);
    font-size: 16px;
    line-height: 1.8;
}


/* ==========================================
   HIGHLIGHT BOX
=========================================== */

.hns-sli-highlight {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 22px;
    padding: 18px;
    border: 1px solid rgba(25, 54, 143, 0.14);
    border-left: 4px solid var(--hns-sli-yellow);
    border-radius: 0 15px 15px 0;
    background: var(--hns-sli-white);
    box-shadow: 0 11px 28px rgba(8, 22, 56, 0.07);
}

.hns-sli-highlight-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: linear-gradient(
        135deg,
        var(--hns-sli-navy),
        var(--hns-sli-blue)
    );
    color: var(--hns-sli-yellow);
    font-size: 18px;
}

.hns-sli-highlight strong {
    display: block;
    margin-bottom: 5px;
    color: var(--hns-sli-dark);
    font-size: 17px;
    font-weight: 800;
}

.hns-sli-highlight p {
    margin: 0;
    color: var(--hns-sli-text);
    font-size: 14px;
    line-height: 1.65;
}


/* ==========================================
   BENEFIT CARDS
=========================================== */

.hns-sli-benefits {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 22px;
}

.hns-sli-benefit {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 12px;
    border: 1px solid var(--hns-sli-border);
    border-radius: 13px;
    background: var(--hns-sli-white);
    box-shadow: 0 7px 19px rgba(8, 22, 56, 0.05);
    transition: 0.3s ease;
}

.hns-sli-benefit:hover {
    border-color: rgba(25, 54, 143, 0.28);
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(8, 22, 56, 0.10);
}

.hns-sli-benefit > span {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: rgba(25, 54, 143, 0.09);
    color: var(--hns-sli-blue);
    font-size: 16px;
    transition: 0.3s ease;
}

.hns-sli-benefit:hover > span {
    background: var(--hns-sli-yellow);
    color: var(--hns-sli-dark);
}

.hns-sli-benefit strong {
    display: block;
    margin-bottom: 3px;
    color: var(--hns-sli-dark);
    font-size: 14px;
    line-height: 1.35;
}

.hns-sli-benefit small {
    display: block;
    color: var(--hns-sli-text);
    font-size: 11px;
    line-height: 1.4;
}


/* ==========================================
   FAMILY-CENTRED CARE
=========================================== */

.hns-sli-family-box {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px;
    border-radius: 16px;
    background:
        radial-gradient(
            circle at right top,
            rgba(255, 196, 0, 0.13),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            var(--hns-sli-navy),
            var(--hns-sli-blue)
        );
    box-shadow: 0 15px 35px rgba(8, 22, 56, 0.18);
}

.hns-sli-family-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: var(--hns-sli-yellow);
    color: var(--hns-sli-dark);
    font-size: 19px;
}

.hns-sli-family-box p {
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 14px;
    line-height: 1.65;
}


/* ==========================================
   IMAGE COLUMN
=========================================== */

.hns-sli-visual {
    position: relative;
    max-width: 490px;
    margin-left: auto;
    padding: 18px 12px 75px 0;
}

.hns-sli-image {
    position: relative;
    height: 640px;
    overflow: hidden;
    border: 9px solid var(--hns-sli-white);
    border-radius: 29px;
    background: var(--hns-sli-dark);
    box-shadow: 0 25px 60px rgba(8, 22, 56, 0.17);
}

.hns-sli-image::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 20px;
    pointer-events: none;
}

.hns-sli-image > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
}

.hns-sli-image:hover > img {
    transform: scale(1.06);
}

.hns-sli-image-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(8, 22, 56, 0.96) 0%,
        rgba(8, 22, 56, 0.14) 50%,
        transparent 76%
    );
}

.hns-sli-image-message {
    position: absolute;
    right: 23px;
    bottom: 27px;
    left: 23px;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 13px;
}

.hns-sli-image-message > span {
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: var(--hns-sli-yellow);
    color: var(--hns-sli-dark);
    font-size: 19px;
}

.hns-sli-image-message small {
    display: block;
    margin-bottom: 4px;
    color: var(--hns-sli-yellow);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-sli-image-message strong {
    display: block;
    color: var(--hns-sli-white);
    font-size: 17px;
    line-height: 1.4;
}


/* Floating Card */

.hns-sli-floating-card {
    position: absolute;
    top: 65px;
    right: -25px;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 15px 17px;
    border: 1px solid var(--hns-sli-border);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 17px 38px rgba(8, 22, 56, 0.15);
}

.hns-sli-floating-card > span {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: var(--hns-sli-yellow);
    color: var(--hns-sli-dark);
    font-size: 17px;
}

.hns-sli-floating-card small {
    display: block;
    margin-bottom: 3px;
    color: var(--hns-sli-text);
    font-size: 11px;
}

.hns-sli-floating-card strong {
    display: block;
    color: var(--hns-sli-dark);
    font-size: 15px;
}


/* Progress Card */

.hns-sli-progress-card {
    position: absolute;
    right: 25px;
    bottom: 17px;
    left: -35px;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 17px;
    border-radius: 16px;
    background: linear-gradient(
        135deg,
        var(--hns-sli-navy),
        var(--hns-sli-blue)
    );
    box-shadow: 0 19px 42px rgba(8, 22, 56, 0.27);
}

.hns-sli-progress-icon {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: var(--hns-sli-yellow);
    color: var(--hns-sli-dark);
    font-size: 18px;
}

.hns-sli-progress-card span {
    display: block;
    margin-bottom: 4px;
    color: var(--hns-sli-yellow);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-sli-progress-card strong {
    display: block;
    color: var(--hns-sli-white);
    font-size: 15px;
    line-height: 1.4;
}


/* ==========================================
   TABLET
=========================================== */

@media (max-width: 1050px) {

    .hns-sli-container {
        grid-template-columns: minmax(0, 1.16fr) minmax(340px, 0.84fr);
        gap: 45px;
    }

    .hns-sli-image {
        height: 610px;
    }

    .hns-sli-floating-card {
        right: -5px;
    }

    .hns-sli-progress-card {
        left: -15px;
    }
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width: 850px) {

    .hns-sli-section {
        padding: 65px 0 75px;
    }

    .hns-sli-container {
        grid-template-columns: 1fr;
        gap: 55px;
    }

    .hns-sli-visual {
        width: 100%;
        max-width: 600px;
        margin: 0 auto;
    }

    .hns-sli-image {
        height: 570px;
    }
}

@media (max-width: 600px) {

    .hns-sli-section {
        padding: 55px 0 65px;
    }

    .hns-sli-container {
        width: calc(100% - 30px);
        gap: 48px;
    }

    .hns-sli-content > h2 {
        font-size: 34px;
    }

    .hns-sli-content > p {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-sli-benefits {
        grid-template-columns: 1fr;
    }

    .hns-sli-highlight,
    .hns-sli-family-box {
        align-items: flex-start;
    }

    .hns-sli-visual {
        padding-bottom: 65px;
    }

    .hns-sli-image {
        height: 480px;
        border-width: 7px;
        border-radius: 23px;
    }

    .hns-sli-floating-card {
        top: 40px;
        right: -5px;
    }

    .hns-sli-progress-card {
        right: 5px;
        bottom: 8px;
        left: 5px;
    }
}

@media (max-width: 420px) {

    .hns-sli-label {
        font-size: 12px;
    }

    .hns-sli-content > h2 {
        font-size: 30px;
    }

    .hns-sli-image {
        height: 410px;
    }

    .hns-sli-floating-card {
        display: none;
    }

    .hns-sli-highlight,
    .hns-sli-family-box {
        flex-direction: column;
    }
}

/* ==========================================
   CONDITIONS WE HELP MANAGE
=========================================== */

:root {
    --hns-condition-navy: #081638;
    --hns-condition-dark: #0c1d50;
    --hns-condition-blue: #19368f;
    --hns-condition-yellow: #ffc400;
    --hns-condition-white: #ffffff;
    --hns-condition-light: #f5f8ff;
    --hns-condition-text: #536078;
    --hns-condition-border: #dfe6f4;
}

.hns-conditions-section,
.hns-conditions-section * {
    box-sizing: border-box;
}

.hns-conditions-section {
    position: relative;
    padding: 85px 0 95px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at top right,
            rgba(25, 54, 143, 0.08),
            transparent 30%
        ),
        linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%);
}

.hns-conditions-container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}


/* Decorative Shapes */

.hns-conditions-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-conditions-shape-one {
    top: -170px;
    right: -160px;
    width: 410px;
    height: 410px;
    border: 72px solid rgba(25, 54, 143, 0.04);
}

.hns-conditions-shape-two {
    left: -130px;
    bottom: -150px;
    width: 330px;
    height: 330px;
    background: rgba(255, 196, 0, 0.055);
}


/* ==========================================
   SECTION HEADING
=========================================== */

.hns-conditions-heading {
    max-width: 850px;
    margin: 0 auto 43px;
    text-align: center;
}

.hns-conditions-subtitle {
    display: inline-block;
    margin-bottom: 10px;
    color: var(--hns-condition-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.hns-conditions-heading h2 {
    position: relative;
    margin: 0 0 18px;
    padding-bottom: 19px;
    color: var(--hns-condition-dark);
    font-size: clamp(35px, 4.5vw, 49px);
    line-height: 1.14;
    font-weight: 800;
    letter-spacing: -1.2px;
}

.hns-conditions-heading h2::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 72px;
    height: 4px;
    border-radius: 20px;
    background: var(--hns-condition-yellow);
    transform: translateX(-50%);
}

.hns-conditions-heading p {
    margin: 0;
    color: var(--hns-condition-text);
    font-size: 17px;
    line-height: 1.75;
}


/* ==========================================
   CONDITIONS GRID
=========================================== */

.hns-conditions-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 17px;
    margin-bottom: 38px;
}

.hns-condition-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    padding: 23px 19px;
    border: 1px solid var(--hns-condition-border);
    border-radius: 17px;
    background: var(--hns-condition-white);
    box-shadow: 0 10px 27px rgba(8, 22, 56, 0.07);
    transition: 0.35s ease;
}

.hns-condition-card::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 65px;
    height: 65px;
    border-radius: 100% 0 0;
    background: rgba(25, 54, 143, 0.04);
    transition: 0.35s ease;
}

.hns-condition-card:hover {
    border-color: rgba(25, 54, 143, 0.28);
    transform: translateY(-6px);
    box-shadow: 0 18px 38px rgba(8, 22, 56, 0.13);
}

.hns-condition-card:hover::before {
    width: 95px;
    height: 95px;
    background: rgba(255, 196, 0, 0.10);
}

.hns-condition-number {
    position: absolute;
    top: 15px;
    right: 16px;
    color: rgba(12, 29, 80, 0.12);
    font-size: 27px;
    font-weight: 900;
    line-height: 1;
}

.hns-condition-icon {
    position: relative;
    z-index: 2;
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    margin-bottom: 17px;
    border-radius: 14px;
    background: linear-gradient(
        135deg,
        var(--hns-condition-navy),
        var(--hns-condition-blue)
    );
    color: var(--hns-condition-yellow);
    font-size: 20px;
    box-shadow: 0 10px 24px rgba(8, 22, 56, 0.18);
    transition: 0.35s ease;
}

.hns-condition-card:hover .hns-condition-icon {
    background: var(--hns-condition-yellow);
    color: var(--hns-condition-dark);
    transform: rotate(-5deg) scale(1.06);
}

.hns-condition-card h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 8px;
    color: var(--hns-condition-dark);
    font-size: 17px;
    line-height: 1.4;
    font-weight: 800;
}

.hns-condition-card p {
    position: relative;
    z-index: 2;
    margin: 0;
    color: var(--hns-condition-text);
    font-size: 13px;
    line-height: 1.65;
}


/* ==========================================
   EVALUATION STATEMENT
=========================================== */

.hns-conditions-evaluation {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1.3fr) minmax(310px, 0.7fr);
    align-items: center;
    gap: 20px;
    overflow: hidden;
    padding: 28px;
    border-radius: 21px;
    background:
        radial-gradient(
            circle at right top,
            rgba(255, 196, 0, 0.14),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            var(--hns-condition-navy),
            var(--hns-condition-blue)
        );
    box-shadow: 0 20px 48px rgba(8, 22, 56, 0.22);
}

.hns-conditions-evaluation::before {
    content: "";
    position: absolute;
    top: -90px;
    right: -70px;
    width: 220px;
    height: 220px;
    border: 40px solid rgba(255, 255, 255, 0.04);
    border-radius: 50%;
}

.hns-evaluation-icon {
    position: relative;
    z-index: 2;
    width: 68px;
    height: 68px;
    display: grid;
    place-items: center;
    border-radius: 17px;
    background: var(--hns-condition-yellow);
    color: var(--hns-condition-dark);
    font-size: 25px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.20);
}

.hns-evaluation-content {
    position: relative;
    z-index: 2;
}

.hns-evaluation-content > span {
    display: block;
    margin-bottom: 4px;
    color: var(--hns-condition-yellow);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.hns-evaluation-content h3 {
    margin: 0 0 7px;
    color: var(--hns-condition-white);
    font-size: 23px;
    line-height: 1.3;
    font-weight: 800;
}

.hns-evaluation-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.79);
    font-size: 14px;
    line-height: 1.65;
}

.hns-evaluation-points {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
}

.hns-evaluation-points span {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 9px 11px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.07);
    color: var(--hns-condition-white);
    font-size: 12px;
    font-weight: 700;
}

.hns-evaluation-points i {
    color: var(--hns-condition-yellow);
    font-size: 11px;
}


/* ==========================================
   TABLET
=========================================== */

@media (max-width: 1050px) {

    .hns-conditions-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .hns-conditions-evaluation {
        grid-template-columns: auto 1fr;
    }

    .hns-evaluation-points {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width: 767px) {

    .hns-conditions-section {
        padding: 58px 0 65px;
    }

    .hns-conditions-container {
        width: calc(100% - 30px);
    }

    .hns-conditions-heading {
        margin-bottom: 32px;
    }

    .hns-conditions-heading h2 {
        font-size: 33px;
    }

    .hns-conditions-heading p {
        font-size: 16px;
    }

    .hns-conditions-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 13px;
    }

    .hns-condition-card {
        padding: 21px 17px;
    }

    .hns-condition-card p {
        font-size: 14px;
    }

    .hns-conditions-evaluation {
        grid-template-columns: 1fr;
        padding: 24px 20px;
    }

    .hns-evaluation-points {
        grid-column: auto;
        grid-template-columns: 1fr;
    }
}


/* ==========================================
   SMALL MOBILE
=========================================== */

@media (max-width: 520px) {

    .hns-conditions-heading h2 {
        font-size: 29px;
    }

    .hns-conditions-subtitle {
        font-size: 12px;
    }

    .hns-conditions-grid {
        grid-template-columns: 1fr;
    }

    .hns-condition-card {
        min-height: auto;
    }

    .hns-condition-card h3 {
        font-size: 18px;
    }

    .hns-condition-card p {
        font-size: 15px;
    }

    .hns-evaluation-icon {
        width: 58px;
        height: 58px;
        font-size: 21px;
    }
}

/* ==========================================
   FINAL CONDITIONS SLIDER FIX
=========================================== */

.hns-conditions-slider-wrap {
    position: relative !important;
    width: 100% !important;
    margin: 0 0 38px !important;
    padding: 8px 4px 0 !important;
    overflow: visible !important;
}

.hnsConditionsSlider .swiper-wrapper {
    display: flex !important;
    align-items: stretch !important;
}

.hnsConditionsSlider .swiper-slide {
    height: auto !important;
    display: flex !important;
}


/* ==========================================
   CARD HEIGHT FIX
=========================================== */

.hnsConditionsSlider .hns-condition-card {
    position: relative !important;
    width: 20% !important;
    height: auto !important;
    min-height: 285px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 24px 20px !important;
    overflow: hidden !important;
    border: 1px solid #dfe6f4 !important;
    border-radius: 17px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 27px rgba(8, 22, 56, 0.08) !important;
}


/* ==========================================
   ICON SIZE FIX
=========================================== */

.hnsConditionsSlider .hns-condition-icon {
    width: 54px !important;
    min-width: 54px !important;
    max-width: 54px !important;

    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;

    flex: 0 0 54px !important;

    display: grid !important;
    place-items: center !important;

    margin: 0 0 17px !important;
    padding: 0 !important;

    border: none !important;
    border-radius: 14px !important;

    background: linear-gradient(
        135deg,
        #081638,
        #19368f
    ) !important;

    color: #ffc400 !important;
    font-size: 20px !important;
    line-height: 1 !important;

    box-shadow: 0 10px 24px rgba(8, 22, 56, 0.18) !important;
}

.hnsConditionsSlider .hns-condition-icon i {
    width: auto !important;
    height: auto !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffc400 !important;
    font-size: 20px !important;
    line-height: 1 !important;
}

.hnsConditionsSlider .hns-condition-card:hover .hns-condition-icon {
    background: #ffc400 !important;
    color: #0c1d50 !important;
    transform: rotate(-5deg) scale(1.05) !important;
}

.hnsConditionsSlider .hns-condition-card:hover .hns-condition-icon i {
    color: #0c1d50 !important;
}


/* ==========================================
   NUMBER FIX
=========================================== */

.hnsConditionsSlider .hns-condition-number {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;

    width: auto !important;
    height: auto !important;

    display: block !important;
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    color: rgba(12, 29, 80, 0.13) !important;

    font-size: 27px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}


/* ==========================================
   CARD TEXT FIX
=========================================== */

.hnsConditionsSlider .hns-condition-card h3 {
    width: 100% !important;
    margin: 0 0 9px !important;
    color: #0c1d50 !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 800 !important;
}

.hnsConditionsSlider .hns-condition-card p {
    width: 100% !important;
    flex-grow: 1 !important;
    margin: 0 !important;
    color: #536078 !important;
    font-size: 14px !important;
    line-height: 1.68 !important;
}


/* ==========================================
   SLIDER CONTROLS
=========================================== */

.hns-slider-controls {
    width: 100% !important;
    min-height: 50px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    margin-top: 5px !important;
}


/* Navigation Buttons */

.hns-slider-controls .hns-conditions-arrow {
    position: static !important;

    width: 47px !important;
    min-width: 47px !important;
    max-width: 47px !important;

    height: 47px !important;
    min-height: 47px !important;
    max-height: 47px !important;

    display: grid !important;
    place-items: center !important;
    flex: 0 0 47px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: none !important;
    border-radius: 50% !important;

    appearance: none !important;
    -webkit-appearance: none !important;

    background: linear-gradient(
        135deg,
        #081638,
        #19368f
    ) !important;

    color: #ffffff !important;
    font-family: inherit !important;
    font-size: 15px !important;
    line-height: 1 !important;

    cursor: pointer !important;
    box-shadow: 0 10px 25px rgba(8, 22, 56, 0.20) !important;
    transition: 0.3s ease !important;
}

.hns-slider-controls .hns-conditions-arrow i {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: 1 !important;
}

.hns-slider-controls .hns-conditions-arrow:hover {
    background: #ffc400 !important;
    color: #0c1d50 !important;
    transform: translateY(-3px) !important;
}

.hns-slider-controls .hns-conditions-arrow:hover i {
    color: #0c1d50 !important;
}

.hns-slider-controls .hns-conditions-arrow.swiper-button-disabled {
    opacity: 0.40 !important;
    cursor: not-allowed !important;
    transform: none !important;
}


/* ==========================================
   PAGINATION
=========================================== */

.hns-slider-controls .hns-conditions-pagination {
    position: static !important;
    width: auto !important;
    min-width: 90px !important;
    max-width: 160px !important;
    height: 30px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: none !important;
    overflow: hidden !important;
}

.hns-slider-controls
.hns-conditions-pagination
.swiper-pagination-bullet {
    width: 8px !important;
    height: 8px !important;
    flex: 0 0 8px !important;

    display: block !important;
    margin: 0 4px !important;
    padding: 0 !important;

    border-radius: 20px !important;
    background: #19368f !important;
    opacity: 0.25 !important;
    transition: 0.3s ease !important;
}

.hns-slider-controls
.hns-conditions-pagination
.swiper-pagination-bullet-active {
    width: 25px !important;
    flex-basis: 25px !important;
    background: #ffc400 !important;
    opacity: 1 !important;
}


/* ==========================================
   TABLET
=========================================== */

@media (max-width: 991px) {

    .hnsConditionsSlider .hns-condition-card {
        min-height: 275px !important;
    }
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width: 767px) {

    .hnsConditionsSlider .hns-condition-card {
        min-height: 265px !important;
    }

    .hnsConditionsSlider .hns-condition-card h3 {
        font-size: 18px !important;
    }

    .hnsConditionsSlider .hns-condition-card p {
        font-size: 15px !important;
    }

    .hns-slider-controls {
        gap: 14px !important;
    }
}


/* ==========================================
   SMALL MOBILE
=========================================== */

@media (max-width: 480px) {

    .hnsConditionsSlider .hns-condition-card {
        min-height: 275px !important;
        padding: 24px 19px !important;
    }

    .hns-slider-controls .hns-conditions-arrow {
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        flex-basis: 44px !important;
    }

    .hns-slider-controls .hns-conditions-pagination {
        min-width: 75px !important;
        max-width: 110px !important;
    }
}
/* ==========================================
   FOUR-CARD CONDITIONS SLIDER
=========================================== */

.hns-conditions-slider-wrap {
    position: relative;
    width: 100%;
    margin-bottom: 38px;
}

.hnsConditionsSlider {
    width: 100% !important;
    padding: 10px 4px 22px;
    overflow: hidden;
}

.hnsConditionsSlider .swiper-wrapper {
    align-items: stretch;
}


/*
IMPORTANT:
Do not add width: 100% to swiper-slide.
Swiper automatically calculates each card width.
*/

.hnsConditionsSlider .swiper-slide {
    height: auto;
    box-sizing: border-box;
}


/* Card */

.hnsConditionsSlider .hns-condition-card {
    position: relative;
    min-height: 290px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px 20px;
    overflow: hidden;
    border: 1px solid #dfe6f4;
    border-radius: 17px;
    background: #ffffff;
    box-shadow: 0 10px 27px rgba(8, 22, 56, 0.08);
    transition: 0.35s ease;
}

.hnsConditionsSlider .hns-condition-card:hover {
    border-color: rgba(25, 54, 143, 0.30);
    transform: translateY(-5px);
    box-shadow: 0 18px 38px rgba(8, 22, 56, 0.13);
}


/* Decorative Corner */

.hnsConditionsSlider .hns-condition-card::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 65px;
    height: 65px;
    border-radius: 100% 0 0;
    background: rgba(25, 54, 143, 0.045);
}


/* Number */

.hnsConditionsSlider .hns-condition-number {
    position: absolute;
    top: 16px;
    right: 16px;
    display: block;
    background: transparent;
    color: rgba(12, 29, 80, 0.13);
    font-size: 27px;
    font-weight: 900;
    line-height: 1;
}


/* Icon */

.hnsConditionsSlider .hns-condition-icon {
    width: 54px;
    min-width: 54px;
    height: 54px;
    min-height: 54px;
    flex: 0 0 54px;
    display: grid;
    place-items: center;
    margin: 0 0 17px;
    padding: 0;
    border-radius: 14px;
    background: linear-gradient(
        135deg,
        #081638,
        #19368f
    );
    color: #ffc400;
    font-size: 20px;
    line-height: 1;
    box-shadow: 0 10px 24px rgba(8, 22, 56, 0.18);
}

.hnsConditionsSlider .hns-condition-icon i {
    color: #ffc400;
    font-size: 20px;
    line-height: 1;
}

.hnsConditionsSlider
.hns-condition-card:hover
.hns-condition-icon {
    background: #ffc400;
    color: #0c1d50;
}

.hnsConditionsSlider
.hns-condition-card:hover
.hns-condition-icon i {
    color: #0c1d50;
}


/* Card Content */

.hnsConditionsSlider .hns-condition-card h3 {
    margin: 0 0 9px;
    color: #0c1d50;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 800;
}

.hnsConditionsSlider .hns-condition-card p {
    flex-grow: 1;
    margin: 0;
    color: #536078;
    font-size: 14px;
    line-height: 1.68;
}


/* ==========================================
   SLIDER CONTROLS
=========================================== */

.hns-slider-controls {
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-top: 8px;
}

.hns-conditions-arrow {
    position: static;
    width: 47px;
    min-width: 47px;
    height: 47px;
    min-height: 47px;
    display: grid;
    place-items: center;
    flex: 0 0 47px;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 50%;
    appearance: none;
    -webkit-appearance: none;
    background: linear-gradient(
        135deg,
        #081638,
        #19368f
    );
    color: #ffffff;
    font-size: 15px;
    cursor: pointer;
    box-shadow: 0 10px 25px rgba(8, 22, 56, 0.20);
    transition: 0.3s ease;
}

.hns-conditions-arrow i {
    color: #ffffff;
    font-size: 15px;
}

.hns-conditions-arrow:hover {
    background: #ffc400;
    color: #0c1d50;
    transform: translateY(-3px);
}

.hns-conditions-arrow:hover i {
    color: #0c1d50;
}

.hns-conditions-arrow.swiper-button-disabled {
    opacity: 0.40;
    cursor: not-allowed;
}


/* Pagination */

.hns-conditions-pagination {
    position: static !important;
    width: auto !important;
    min-width: 100px;
    max-width: 170px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: none !important;
}

.hns-conditions-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    margin: 0 4px !important;
    border-radius: 20px;
    background: #19368f;
    opacity: 0.25;
    transition: 0.3s ease;
}

.hns-conditions-pagination .swiper-pagination-bullet-active {
    width: 25px;
    background: #ffc400;
    opacity: 1;
}


/* ==========================================
   RESPONSIVE
=========================================== */

@media (max-width: 991px) {

    .hnsConditionsSlider .hns-condition-card {
        min-height: 280px;
    }
}

@media (max-width: 767px) {

    .hnsConditionsSlider .hns-condition-card {
        min-height: 270px;
    }

    .hnsConditionsSlider .hns-condition-card p {
        font-size: 15px;
    }
}

@media (max-width: 480px) {

    .hnsConditionsSlider .hns-condition-card {
        min-height: 265px;
        padding: 24px 19px;
    }

    .hns-conditions-arrow {
        width: 44px;
        min-width: 44px;
        height: 44px;
        min-height: 44px;
        flex-basis: 44px;
    }
}

/* ==========================================
   SPEECH & LANGUAGE THERAPY SERVICES
=========================================== */

:root {
    --hns-sls-navy: #081638;
    --hns-sls-dark: #0c1d50;
    --hns-sls-blue: #19368f;
    --hns-sls-yellow: #ffc400;
    --hns-sls-white: #ffffff;
    --hns-sls-light: #f5f8ff;
    --hns-sls-text: #536078;
    --hns-sls-border: #dfe6f4;
}

.hns-sls-section,
.hns-sls-section * {
    box-sizing: border-box;
}

.hns-sls-section {
    position: relative;
    padding: 85px 0 100px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at top right,
            rgba(25, 54, 143, 0.08),
            transparent 30%
        ),
        linear-gradient(180deg, #ffffff, #f5f8ff);
}

.hns-sls-container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}


/* Decorative Shapes */

.hns-sls-shape {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.hns-sls-shape-one {
    top: 250px;
    right: -170px;
    width: 400px;
    height: 400px;
    border: 70px solid rgba(25, 54, 143, 0.035);
}

.hns-sls-shape-two {
    left: -150px;
    bottom: 300px;
    width: 350px;
    height: 350px;
    background: rgba(255, 196, 0, 0.05);
}


/* ==========================================
   SECTION HEADING
=========================================== */

.hns-sls-heading {
    max-width: 850px;
    margin: 0 auto 50px;
    text-align: center;
}

.hns-sls-subtitle {
    display: inline-block;
    margin-bottom: 10px;
    color: var(--hns-sls-blue);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.hns-sls-heading h2 {
    position: relative;
    margin: 0 0 19px;
    padding-bottom: 19px;
    color: var(--hns-sls-dark);
    font-size: clamp(35px, 4.5vw, 50px);
    line-height: 1.13;
    font-weight: 800;
    letter-spacing: -1.2px;
}

.hns-sls-heading h2::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 72px;
    height: 4px;
    border-radius: 20px;
    background: var(--hns-sls-yellow);
    transform: translateX(-50%);
}

.hns-sls-heading p {
    margin: 0;
    color: var(--hns-sls-text);
    font-size: 17px;
    line-height: 1.75;
}


/* ==========================================
   SERVICE ROWS
=========================================== */

.hns-sls-list {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.hns-sls-row {
    display: grid;
    grid-template-columns: minmax(360px, 0.88fr) minmax(0, 1.12fr);
    align-items: stretch;
    overflow: hidden;
    border: 1px solid var(--hns-sls-border);
    border-radius: 26px;
    background: var(--hns-sls-white);
    box-shadow: 0 15px 38px rgba(8, 22, 56, 0.09);
    transition: 0.35s ease;
}

.hns-sls-row:hover {
    border-color: rgba(25, 54, 143, 0.28);
    transform: translateY(-5px);
    box-shadow: 0 24px 55px rgba(8, 22, 56, 0.14);
}


/* Reverse Even Rows */

.hns-sls-row:nth-child(even) {
    grid-template-columns: minmax(0, 1.12fr) minmax(360px, 0.88fr);
}

.hns-sls-row:nth-child(even) .hns-sls-image {
    order: 2;
}

.hns-sls-row:nth-child(even) .hns-sls-content {
    order: 1;
}


/* ==========================================
   SERVICE IMAGE
=========================================== */

.hns-sls-image {
    position: relative;
    min-height: 480px;
    overflow: hidden;
    background: var(--hns-sls-dark);
}

.hns-sls-image > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
}

.hns-sls-row:hover .hns-sls-image > img {
    transform: scale(1.06);
}

.hns-sls-image-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(8, 22, 56, 0.94) 0%,
        rgba(8, 22, 56, 0.16) 55%,
        transparent 100%
    );
}

.hns-sls-number {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border: 4px solid rgba(255, 255, 255, 0.20);
    border-radius: 15px;
    background: var(--hns-sls-yellow);
    color: var(--hns-sls-dark);
    font-size: 17px;
    font-weight: 900;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.20);
}

.hns-sls-image-label {
    position: absolute;
    right: 20px;
    bottom: 20px;
    left: 20px;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 14px 16px;
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 14px;
    background: rgba(8, 22, 56, 0.70);
    color: var(--hns-sls-white);
    font-size: 14px;
    font-weight: 700;
    backdrop-filter: blur(9px);
}

.hns-sls-image-label i {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: var(--hns-sls-yellow);
    color: var(--hns-sls-dark);
    font-size: 15px;
}


/* ==========================================
   SERVICE CONTENT
=========================================== */

.hns-sls-content {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(30px, 4vw, 47px);
}

.hns-sls-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    margin-bottom: 10px;
    padding-left: 33px;
    color: var(--hns-sls-blue);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.3px;
    text-transform: uppercase;
}

.hns-sls-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 23px;
    height: 3px;
    border-radius: 20px;
    background: var(--hns-sls-yellow);
}

.hns-sls-content h3 {
    margin: 0 0 17px;
    color: var(--hns-sls-dark);
    font-size: clamp(26px, 3vw, 34px);
    line-height: 1.22;
    font-weight: 800;
    letter-spacing: -0.5px;
}

.hns-sls-content > p {
    margin: 0 0 16px;
    color: var(--hns-sls-text);
    font-size: 16px;
    line-height: 1.8;
}

.hns-sls-content h4 {
    margin: 5px 0 14px;
    color: var(--hns-sls-dark);
    font-size: 17px;
    line-height: 1.4;
    font-weight: 800;
}


/* ==========================================
   SERVICE POINTS
=========================================== */

.hns-sls-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.hns-sls-points li {
    position: relative;
    min-height: 46px;
    display: flex;
    align-items: center;
    padding: 10px 12px 10px 38px;
    border: 1px solid var(--hns-sls-border);
    border-radius: 10px;
    background: var(--hns-sls-light);
    color: var(--hns-sls-dark);
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
}

.hns-sls-points li::before {
    content: "✓";
    position: absolute;
    left: 12px;
    width: 18px;
    height: 18px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--hns-sls-blue);
    color: var(--hns-sls-white);
    font-size: 10px;
    font-weight: 900;
}


/* ==========================================
   NOTE BOX
=========================================== */

.hns-sls-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    border-left: 4px solid var(--hns-sls-yellow);
    border-radius: 0 13px 13px 0;
    background: linear-gradient(
        135deg,
        var(--hns-sls-navy),
        var(--hns-sls-blue)
    );
}

.hns-sls-note > i {
    margin-top: 3px;
    color: var(--hns-sls-yellow);
    font-size: 18px;
}

.hns-sls-note p {
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 14px;
    line-height: 1.65;
}


/* ==========================================
   TABLET
=========================================== */

@media (max-width: 991px) {

    .hns-sls-section {
        padding: 70px 0 80px;
    }

    .hns-sls-row,
    .hns-sls-row:nth-child(even) {
        grid-template-columns: minmax(300px, 0.78fr) minmax(0, 1.22fr);
    }

    .hns-sls-image {
        min-height: 520px;
    }

    .hns-sls-content {
        padding: 30px;
    }

    .hns-sls-points {
        grid-template-columns: 1fr;
    }
}


/* ==========================================
   MOBILE
=========================================== */

@media (max-width: 767px) {

    .hns-sls-section {
        padding: 58px 0 65px;
    }

    .hns-sls-container {
        width: calc(100% - 30px);
    }

    .hns-sls-heading {
        margin-bottom: 35px;
    }

    .hns-sls-heading h2 {
        font-size: 33px;
    }

    .hns-sls-heading p {
        font-size: 16px;
    }

    .hns-sls-list {
        gap: 24px;
    }

    .hns-sls-row,
    .hns-sls-row:nth-child(even) {
        grid-template-columns: 1fr;
        border-radius: 20px;
    }

    .hns-sls-row .hns-sls-image,
    .hns-sls-row:nth-child(even) .hns-sls-image {
        order: 1;
    }

    .hns-sls-row .hns-sls-content,
    .hns-sls-row:nth-child(even) .hns-sls-content {
        order: 2;
    }

    .hns-sls-image {
        min-height: 325px;
    }

    .hns-sls-content {
        padding: 28px 22px 30px;
    }

    .hns-sls-content h3 {
        font-size: 27px;
    }

    .hns-sls-content > p {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-sls-points {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* ==========================================
   SMALL MOBILE
=========================================== */

@media (max-width: 500px) {

    .hns-sls-heading h2 {
        font-size: 29px;
    }

    .hns-sls-subtitle {
        font-size: 12px;
    }

    .hns-sls-image {
        min-height: 280px;
    }

    .hns-sls-number {
        top: 14px;
        left: 14px;
        width: 47px;
        height: 47px;
        font-size: 15px;
    }

    .hns-sls-image-label {
        right: 14px;
        bottom: 14px;
        left: 14px;
        padding: 11px 13px;
        font-size: 12px;
    }

    .hns-sls-content {
        padding: 25px 18px 27px;
    }

    .hns-sls-content h3 {
        font-size: 24px;
    }

    .hns-sls-points {
        grid-template-columns: 1fr;
    }

    .hns-sls-note {
        flex-direction: column;
    }
}

/* =========================================
   WHY CHOOSE HEAR 'N' SAY CLINIC
========================================= */

* {
    box-sizing: border-box;
}

.hns-closing {
    padding: 85px 20px;
    background:
        radial-gradient(circle at 100% 0%, rgba(25, 54, 143, 0.08), transparent 32%),
        linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%);
    font-family: "Manrope", Arial, sans-serif;
    color: #10204d;
    overflow: hidden;
}

.hns-wrap {
    width: min(1180px, 100%);
    margin: 0 auto;
}

/* Main layout */

.hns-choice-grid {
    display: grid;
    grid-template-columns: 0.92fr 1.08fr;
    align-items: center;
    gap: 55px;
}

/* Image */

.hns-image-box {
    position: relative;
    min-height: 580px;
}

.hns-image-box::before {
    content: "";
    position: absolute;
    top: -16px;
    right: 55px;
    bottom: 30px;
    left: -16px;
    border: 2px solid rgba(255, 196, 0, 0.55);
    border-radius: 32px;
}

.hns-main-image {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 550px;
    object-fit: cover;
    object-position: center;
    border-radius: 28px;
    box-shadow: 0 25px 60px rgba(8, 25, 73, 0.16);
}

/* Image badge */

.hns-trust-badge {
    position: absolute;
    right: -22px;
    bottom: 2px;
    z-index: 2;
    width: 210px;
    padding: 21px;
    color: #ffffff;
    background: linear-gradient(135deg, #081638, #19368f);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 20px;
    box-shadow: 0 18px 35px rgba(8, 25, 73, 0.25);
}

.hns-trust-badge strong {
    display: block;
    margin-bottom: 9px;
    color: #ffc400;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.25;
}

.hns-trust-badge span {
    display: block;
    color: #e7ecfb;
    font-size: 13px;
    line-height: 1.6;
}

/* Heading */

.hns-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    color: #17358c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.4px;
    line-height: 1.4;
    text-transform: uppercase;
}

.hns-eyebrow::before {
    content: "";
    width: 34px;
    height: 3px;
    flex-shrink: 0;
    background: #ffc400;
    border-radius: 20px;
}

.hns-title {
    margin: 0 0 18px;
    color: #091b4f;
    font-size: clamp(32px, 4vw, 48px);
    font-weight: 800;
    letter-spacing: -1.2px;
    line-height: 1.15;
}

.hns-intro {
    max-width: 750px;
    margin: 0 0 32px;
    color: #5c6786;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.75;
}

/* Benefits grid */

.hns-benefits {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.hns-benefit {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    min-height: 105px;
    padding: 18px;
    background: #ffffff;
    border: 1px solid #dde5f5;
    border-radius: 17px;
    box-shadow: 0 9px 28px rgba(25, 54, 143, 0.06);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.hns-benefit:hover {
    transform: translateY(-4px);
    border-color: #ffc400;
    box-shadow: 0 16px 32px rgba(25, 54, 143, 0.12);
}

.hns-check {
    display: grid;
    place-items: center;
    width: 31px;
    height: 31px;
    flex: 0 0 31px;
    color: #081638;
    background: #ffc400;
    border-radius: 9px;
    font-size: 17px;
    font-weight: 900;
    line-height: 1;
}

.hns-benefit p {
    margin: 2px 0 0;
    color: #14275d;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.55;
}

/* =========================================
   OUR COMMITMENT
========================================= */

.hns-commitment {
    position: relative;
    display: grid;
    grid-template-columns: 1.08fr 0.92fr;
    align-items: center;
    gap: 55px;
    margin-top: 85px;
    padding: 58px;
    color: #ffffff;
    background: linear-gradient(135deg, #081638 0%, #0c1d50 55%, #19368f 100%);
    border-radius: 30px;
    box-shadow: 0 25px 65px rgba(8, 22, 56, 0.18);
    overflow: hidden;
}

.hns-commitment::before {
    content: "";
    position: absolute;
    top: -190px;
    right: -150px;
    width: 390px;
    height: 390px;
    border: 80px solid rgba(255, 255, 255, 0.04);
    border-radius: 50%;
}

.hns-commitment::after {
    content: "";
    position: absolute;
    bottom: -90px;
    left: 35%;
    width: 190px;
    height: 190px;
    background: rgba(255, 196, 0, 0.05);
    border-radius: 50%;
}

.hns-commitment-copy,
.hns-commitment-image {
    position: relative;
    z-index: 1;
}

.hns-commitment .hns-eyebrow {
    color: #ffc400;
}

.hns-commitment .hns-title {
    max-width: 600px;
    color: #ffffff;
    font-size: clamp(30px, 3.5vw, 43px);
}

.hns-commitment p {
    margin: 15px 0 0;
    color: #d8e0f5;
    font-size: 15.5px;
    font-weight: 500;
    line-height: 1.8;
}

.hns-highlight {
    color: #ffc400;
    font-weight: 700;
}

.hns-commitment-image {
    display: block;
    width: 100%;
    height: 370px;
    object-fit: cover;
    object-position: center;
    border: 5px solid rgba(255, 255, 255, 0.1);
    border-radius: 22px;
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.25);
}

/* =========================================
   TABLET RESPONSIVE
========================================= */

@media (max-width: 1024px) {
    .hns-closing {
        padding: 70px 20px;
    }

    .hns-choice-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .hns-image-box {
        width: 100%;
        max-width: 720px;
        min-height: auto;
        margin: 0 auto;
    }

    .hns-main-image {
        height: 500px;
    }

    .hns-trust-badge {
        right: 20px;
    }

    .hns-choice-content {
        width: 100%;
    }

    .hns-commitment {
        grid-template-columns: 1fr;
        gap: 35px;
        padding: 46px;
    }

    .hns-commitment-image {
        height: 360px;
    }
}

/* =========================================
   MOBILE RESPONSIVE
========================================= */

@media (max-width: 767px) {
    .hns-closing {
        padding: 58px 16px;
    }

    .hns-choice-grid {
        gap: 38px;
    }

    .hns-title {
        font-size: 32px;
        letter-spacing: -0.7px;
    }

    .hns-intro {
        margin-bottom: 27px;
        font-size: 15px;
        line-height: 1.7;
    }

    .hns-benefits {
        grid-template-columns: 1fr;
    }

    .hns-benefit {
        min-height: auto;
        padding: 16px;
    }

    .hns-benefit p {
        font-size: 14px;
    }

    .hns-image-box::before {
        display: none;
    }

    .hns-main-image {
        height: 390px;
        border-radius: 22px;
    }

    .hns-trust-badge {
        position: relative;
        right: auto;
        bottom: auto;
        width: calc(100% - 24px);
        margin: -42px auto 0;
        padding: 18px;
    }

    .hns-trust-badge strong {
        font-size: 21px;
    }

    .hns-commitment {
        gap: 28px;
        margin-top: 60px;
        padding: 34px 23px;
        border-radius: 23px;
    }

    .hns-commitment .hns-title {
        font-size: 30px;
    }

    .hns-commitment p {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-commitment-image {
        height: 285px;
        border-width: 3px;
        border-radius: 18px;
    }
}

/* Small mobile */

@media (max-width: 420px) {
    .hns-closing {
        padding-right: 14px;
        padding-left: 14px;
    }

    .hns-eyebrow {
        font-size: 11px;
        letter-spacing: 1px;
    }

    .hns-title {
        font-size: 28px;
    }

    .hns-main-image {
        height: 330px;
    }

    .hns-check {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
        font-size: 15px;
    }

    .hns-commitment {
        padding: 29px 19px;
    }

    .hns-commitment .hns-title {
        font-size: 27px;
    }

    .hns-commitment-image {
        height: 240px;
    }
}

 /* Active Services parent menu */
.hns-service-dropdown > .nav-link.active {
    color: #0c1d50 !important;
    border-radius: 8px;
    font-weight: 700;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

/* Active dropdown item */
.hns-services-menu .dropdown-item.active {
    color: #ffffff !important;
    background: linear-gradient(
        135deg,
        #081638,
        #19368f
    ) !important;
}

/* Active dropdown text */
.hns-services-menu .dropdown-item.active strong,
.hns-services-menu .dropdown-item.active small {
    color: #ffffff !important;
}

/* Active item icon */
.hns-services-menu .dropdown-item.active .hns-dropdown-icon {
    color: #081638 !important;
    background: #ffc400 !important;
}

/* Active item arrow */
.hns-services-menu .dropdown-item.active .hns-dropdown-arrow {
    color: #ffc400 !important;
}

/* =========================================
   HNS ASD CENTRE INTRO SECTION
========================================= */

.hns-asd-intro {
    position: relative;
    padding: 85px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 15%, rgba(255,196,0,.09), transparent 28%),
        radial-gradient(circle at 92% 85%, rgba(70,110,255,.13), transparent 32%),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );
}

.hns-asd-intro::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.06);
    right: -170px;
    top: -170px;
}

.hns-asd-intro::after {
    content: "";
    position: absolute;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    border: 1px solid rgba(255,196,0,.08);
    left: -120px;
    bottom: -130px;
}

.hns-asd-intro .container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

.hns-asd-grid {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    align-items: center;
    gap: 65px;
}


/* IMAGE */

.hns-asd-image-wrap {
    position: relative;
}

.hns-asd-image {
    position: relative;
    min-height: 590px;
    overflow: hidden;
    border-radius: 30px;
    border: 1px solid rgba(255,255,255,.15);
    box-shadow:
        0 30px 70px rgba(0,0,0,.35),
        0 0 0 8px rgba(255,255,255,.025);
}

.hns-asd-image img {
    width: 100%;
    height: 100%;
    min-height: 590px;
    object-fit: cover;
    display: block;
    transition: transform .7s ease;
}

.hns-asd-image:hover img {
    transform: scale(1.04);
}

.hns-asd-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            to top,
            rgba(5,15,44,.8) 0%,
            rgba(5,15,44,.15) 45%,
            transparent 70%
        );
}


/* Image badge */

.hns-asd-image-badge {
    position: absolute;
    left: 25px;
    right: 25px;
    bottom: 25px;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 17px 20px;
    border-radius: 18px;
    color: #fff;
    background: rgba(8,22,56,.75);
    border: 1px solid rgba(255,255,255,.17);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}

.hns-asd-badge-icon {
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 14px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #081638;
    font-size: 20px;
    background: #ffc400;
}

.hns-asd-image-badge strong,
.hns-asd-image-badge small {
    display: block;
}

.hns-asd-image-badge strong {
    font-size: 16px;
    margin-bottom: 3px;
}

.hns-asd-image-badge small {
    color: rgba(255,255,255,.73);
    font-size: 13px;
}


/* decorative dots */

.hns-asd-dot {
    position: absolute;
    border-radius: 50%;
    background: #ffc400;
    box-shadow: 0 0 30px rgba(255,196,0,.45);
}

.hns-asd-dot-one {
    width: 15px;
    height: 15px;
    right: -25px;
    top: 80px;
}

.hns-asd-dot-two {
    width: 9px;
    height: 9px;
    right: 20px;
    top: 40px;
    opacity: .6;
}


/* CONTENT */

.hns-asd-content {
    color: #fff;
}

.hns-asd-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 9px 16px;
    margin-bottom: 17px;
    border-radius: 50px;
    color: #ffc400;
    background: rgba(255,196,0,.09);
    border: 1px solid rgba(255,196,0,.22);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .8px;
    text-transform: uppercase;
}

.hns-asd-label i {
    font-size: 12px;
}

.hns-asd-content h2 {
    margin: 0;
    max-width: 720px;
    color: #fff;
    font-size: clamp(34px, 4vw, 52px);
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: -1.4px;
}

.hns-asd-content h2 span {
    display: block;
    margin-top: 6px;
    color: #ffc400;
}


/* title separator */

.hns-asd-title-line {
    max-width: 185px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 20px 0 24px;
}

.hns-asd-title-line span {
    height: 1px;
    flex: 1;
    background: rgba(255,196,0,.55);
}

.hns-asd-title-line i {
    font-size: 10px;
    color: #ffc400;
}


/* paragraphs */

.hns-asd-content > p {
    margin: 0 0 16px;
    color: rgba(255,255,255,.78);
    font-size: 16px;
    line-height: 1.85;
}

.hns-asd-content > p strong {
    color: #fff;
    font-weight: 700;
}


/* FEATURE GRID */

.hns-asd-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-top: 28px;
}

.hns-asd-feature {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 86px;
    padding: 14px 15px;
    border-radius: 15px;
    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.1);
    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.hns-asd-feature:hover {
    transform: translateY(-4px);
    background: rgba(255,255,255,.09);
    border-color: rgba(255,196,0,.32);
}

.hns-asd-feature > span {
    width: 44px;
    height: 44px;
    min-width: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #ffc400;
    background: rgba(255,196,0,.11);
    border: 1px solid rgba(255,196,0,.16);
    font-size: 17px;
}

.hns-asd-feature strong,
.hns-asd-feature small {
    display: block;
}

.hns-asd-feature strong {
    margin-bottom: 4px;
    color: #fff;
    font-size: 15px;
}

.hns-asd-feature small {
    color: rgba(255,255,255,.62);
    font-size: 12.5px;
    line-height: 1.4;
}


/* BOTTOM HIGHLIGHT */

.hns-asd-highlight {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-top: 26px;
    padding: 20px;
    border-radius: 17px;
    background:
        linear-gradient(
            120deg,
            rgba(255,196,0,.12),
            rgba(255,255,255,.045)
        );
    border-left: 3px solid #ffc400;
}

.hns-asd-highlight-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #081638;
    background: #ffc400;
    font-size: 17px;
}

.hns-asd-highlight p {
    margin: 0;
    color: rgba(255,255,255,.78);
    font-size: 14.5px;
    line-height: 1.75;
}

.hns-asd-highlight strong {
    color: #fff;
}


/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 991px) {

    .hns-asd-intro {
        padding: 70px 0;
    }

    .hns-asd-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .hns-asd-image {
        min-height: 520px;
        max-width: 700px;
        margin: auto;
    }

    .hns-asd-image img {
        min-height: 520px;
    }

    .hns-asd-content {
        max-width: 760px;
        margin: auto;
    }
}


@media (max-width: 767px) {

    .hns-asd-intro {
        padding: 55px 0;
    }

    .hns-asd-intro .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-asd-grid {
        gap: 35px;
    }

    .hns-asd-image {
        min-height: 410px;
        border-radius: 22px;
    }

    .hns-asd-image img {
        min-height: 410px;
    }

    .hns-asd-image-badge {
        left: 15px;
        right: 15px;
        bottom: 15px;
        padding: 13px 14px;
    }

    .hns-asd-content h2 {
        font-size: 34px;
        letter-spacing: -.8px;
    }

    .hns-asd-content > p {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-asd-features {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 480px) {

    .hns-asd-image {
        min-height: 350px;
    }

    .hns-asd-image img {
        min-height: 350px;
    }

    .hns-asd-label {
        font-size: 11px;
        letter-spacing: .45px;
    }

    .hns-asd-content h2 {
        font-size: 30px;
    }

    .hns-asd-badge-icon {
        width: 42px;
        height: 42px;
        min-width: 42px;
    }

    .hns-asd-image-badge strong {
        font-size: 14px;
    }

    .hns-asd-image-badge small {
        font-size: 11px;
    }

    .hns-asd-highlight {
        padding: 16px;
    }
}

/* =========================================
   UNDERSTANDING ASD
========================================= */

.hns-understand-asd {
    position: relative;
    padding: 85px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 5% 15%,
        rgba(255,196,0,.08), transparent 27%),
        radial-gradient(circle at 95% 90%,
        rgba(55,101,255,.13), transparent 30%),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );
}

.hns-understand-asd::before {
    content: "";
    position: absolute;
    width: 450px;
    height: 450px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.05);
    left: -220px;
    top: -230px;
}

.hns-understand-asd::after {
    content: "";
    position: absolute;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    border: 1px solid rgba(255,196,0,.07);
    right: -180px;
    bottom: -200px;
}

.hns-understand-asd .container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin: auto;
}


/* GRID */

.hns-understand-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    align-items: center;
    gap: 65px;
}


/* =========================================
   LEFT CONTENT
========================================= */

.hns-understand-content {
    color: #fff;
}

.hns-understand-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 9px 16px;
    margin-bottom: 18px;

    border-radius: 50px;

    color: #ffc400;

    background: rgba(255,196,0,.09);
    border: 1px solid rgba(255,196,0,.25);

    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .8px;
}

.hns-understand-content h2 {
    margin: 0;

    color: #fff;

    font-size: clamp(36px, 4vw, 53px);
    line-height: 1.12;

    font-weight: 800;
    letter-spacing: -1.5px;
}

.hns-understand-content h2 span {
    display: block;
    margin-top: 6px;
    color: #ffc400;
}


/* LINE */

.hns-understand-line {
    width: 130px;
    display: flex;
    align-items: center;
    gap: 8px;

    margin: 22px 0 25px;
}

.hns-understand-line span {
    width: 100px;
    height: 2px;

    background: linear-gradient(
        90deg,
        #ffc400,
        rgba(255,196,0,.15)
    );
}

.hns-understand-line i {
    color: #ffc400;
    font-size: 7px;
}


/* TEXT */

.hns-understand-content p {
    margin: 0 0 17px;

    color: rgba(255,255,255,.76);

    font-size: 16px;
    line-height: 1.85;
}

.hns-understand-content .hns-understand-lead {
    font-size: 17px;
}

.hns-understand-content strong {
    color: #fff;
}


/* =========================================
   EARLY INTERVENTION
========================================= */

.hns-early-box {
    display: flex;
    align-items: flex-start;
    gap: 17px;

    margin-top: 30px;
    padding: 22px;

    border-radius: 18px;

    background:
        linear-gradient(
            120deg,
            rgba(255,196,0,.14),
            rgba(255,255,255,.045)
        );

    border: 1px solid rgba(255,196,0,.18);
    border-left: 4px solid #ffc400;
}

.hns-early-icon {
    width: 52px;
    height: 52px;
    min-width: 52px;

    display: flex;
    justify-content: center;
    align-items: center;

    border-radius: 15px;

    color: #081638;
    background: #ffc400;

    font-size: 21px;
}

.hns-early-box span {
    display: block;

    margin-bottom: 7px;

    color: #ffc400;

    font-size: 15px;
    font-weight: 800;

    text-transform: uppercase;
    letter-spacing: .5px;
}

.hns-early-box p {
    margin: 0;

    font-size: 14px;
    line-height: 1.7;
}


/* =========================================
   RIGHT CARD
========================================= */

.hns-asd-signs-card {
    position: relative;

    padding: 34px;

    border-radius: 28px;

    background: rgba(255,255,255,.075);

    border: 1px solid rgba(255,255,255,.13);

    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);

    box-shadow:
        0 30px 65px rgba(0,0,0,.22),
        inset 0 1px 0 rgba(255,255,255,.08);
}


/* HEADER */

.hns-signs-header {
    display: flex;
    align-items: center;
    gap: 16px;

    padding-bottom: 22px;
    margin-bottom: 20px;

    border-bottom: 1px solid rgba(255,255,255,.1);
}

.hns-signs-icon {
    width: 58px;
    height: 58px;
    min-width: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 17px;

    color: #081638;
    background: #ffc400;

    font-size: 23px;

    box-shadow: 0 10px 25px rgba(255,196,0,.15);
}

.hns-signs-header span {
    display: block;

    margin-bottom: 4px;

    color: #ffc400;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1px;
    text-transform: uppercase;
}

.hns-signs-header h3 {
    margin: 0;

    color: #fff;

    font-size: 24px;
    font-weight: 750;
}


/* =========================================
   SIGNS GRID
========================================= */

.hns-signs-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 11px;
}

.hns-sign-item {
    min-height: 74px;

    display: flex;
    align-items: center;
    gap: 12px;

    padding: 13px 14px;

    border-radius: 13px;

    color: rgba(255,255,255,.85);

    background: rgba(255,255,255,.045);

    border: 1px solid rgba(255,255,255,.075);

    font-size: 13.5px;
    line-height: 1.45;

    transition:
        transform .3s ease,
        background .3s ease,
        border-color .3s ease;
}

.hns-sign-item:hover {
    transform: translateY(-3px);

    background: rgba(255,255,255,.08);

    border-color: rgba(255,196,0,.3);
}

.hns-sign-item i {
    width: 38px;
    height: 38px;
    min-width: 38px;

    display: flex;
    justify-content: center;
    align-items: center;

    border-radius: 10px;

    color: #ffc400;

    background: rgba(255,196,0,.1);

    font-size: 15px;
}


/* last item */

.hns-sign-item:last-child {
    grid-column: span 2;
}


/* =========================================
   NOTE
========================================= */

.hns-signs-note {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-top: 18px;
    padding: 15px 17px;

    border-radius: 13px;

    background: rgba(255,196,0,.08);
    border: 1px solid rgba(255,196,0,.14);
}

.hns-signs-note i {
    color: #ffc400;
    font-size: 17px;
}

.hns-signs-note p {
    margin: 0;

    color: rgba(255,255,255,.72);

    font-size: 12.5px;
    line-height: 1.55;
}


/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 991px) {

    .hns-understand-asd {
        padding: 70px 0;
    }

    .hns-understand-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .hns-understand-content,
    .hns-asd-signs-card {
        max-width: 760px;
        width: 100%;
        margin: auto;
    }
}


@media (max-width: 767px) {

    .hns-understand-asd {
        padding: 55px 0;
    }

    .hns-understand-asd .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-understand-content h2 {
        font-size: 34px;
        letter-spacing: -.8px;
    }

    .hns-understand-content p {
        font-size: 15px;
        line-height: 1.75;
    }

    .hns-asd-signs-card {
        padding: 24px 18px;
        border-radius: 22px;
    }

    .hns-signs-list {
        grid-template-columns: 1fr;
    }

    .hns-sign-item:last-child {
        grid-column: auto;
    }

    .hns-signs-header h3 {
        font-size: 20px;
    }

    .hns-early-box {
        padding: 18px;
    }
}


@media (max-width: 480px) {

    .hns-understand-content h2 {
        font-size: 30px;
    }

    .hns-understand-label {
        font-size: 11px;
    }

    .hns-signs-header {
        align-items: flex-start;
    }

    .hns-signs-icon {
        width: 48px;
        height: 48px;
        min-width: 48px;
        font-size: 19px;
    }

    .hns-signs-header h3 {
        font-size: 18px;
    }

    .hns-sign-item {
        min-height: 66px;
        font-size: 13px;
    }

    .hns-early-icon {
        width: 46px;
        height: 46px;
        min-width: 46px;
    }
}

/* =====================================================
   AUTISM SERVICES MAIN SECTION
===================================================== */

.hns-autism-services {
    position: relative;
    padding: 90px 0;
    overflow: hidden;
    background: #f5f8ff;
}

.hns-autism-services .container,
.hns-multi-approach .container {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}


/* =====================================================
   HEADING
===================================================== */

.hns-autism-services-heading {
    max-width: 760px;
    margin: 0 auto 65px;
    text-align: center;
}

.hns-autism-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    padding: 9px 16px;
    margin-bottom: 16px;

    border-radius: 50px;

    color: #19368f;
    background: rgba(25,54,143,.08);

    font-size: 13px;
    font-weight: 800;
    letter-spacing: .7px;
    text-transform: uppercase;
}

.hns-autism-eyebrow i {
    color: #ffc400;
}

.hns-autism-services-heading h2 {
    margin: 0 0 15px;

    color: #081638;

    font-size: clamp(36px, 4vw, 52px);
    line-height: 1.1;
    font-weight: 800;
}

.hns-autism-services-heading h2 span {
    color: #19368f;
}

.hns-autism-services-heading p {
    margin: auto;

    color: #5d6981;

    font-size: 17px;
    line-height: 1.75;
}


/* =====================================================
   SERVICE ROW
===================================================== */

.hns-autism-service-row {
    position: relative;

    display: grid;
    grid-template-columns: 1fr 1fr;

    align-items: stretch;

    gap: 0;

    margin-bottom: 55px;

    overflow: hidden;

    border-radius: 28px;

    background: #ffffff;

    border: 1px solid #e7ebf4;

    box-shadow:
        0 18px 55px rgba(8,22,56,.08);

    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

.hns-autism-service-row:hover {
    transform: translateY(-5px);

    box-shadow:
        0 28px 75px rgba(8,22,56,.13);
}

.hns-autism-service-row.reverse .hns-autism-service-content {
    order: 2;
}

.hns-autism-service-row.reverse .hns-autism-service-image {
    order: 1;
}


/* =====================================================
   CONTENT SIDE
===================================================== */

.hns-autism-service-content {
    position: relative;

    padding: 48px 45px 44px;

    background:
        radial-gradient(
            circle at top right,
            rgba(25,54,143,.05),
            transparent 35%
        ),
        #fff;
}

.hns-service-number {
    position: absolute;

    right: 28px;
    top: 16px;

    color: rgba(8,22,56,.045);

    font-size: 82px;
    line-height: 1;
    font-weight: 900;

    pointer-events: none;
}

.hns-service-small-title {
    position: relative;
    z-index: 2;

    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 12px;

    color: #19368f;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: .8px;
    text-transform: uppercase;
}

.hns-service-small-title i {
    width: 28px;
    height: 28px;

    display: inline-flex;
    justify-content: center;
    align-items: center;

    border-radius: 8px;

    color: #081638;
    background: #ffc400;

    font-size: 11px;
}

.hns-autism-service-content h3 {
    position: relative;
    z-index: 2;

    margin: 0 0 14px;

    color: #081638;

    font-size: 31px;
    line-height: 1.2;
    font-weight: 800;
}

.hns-autism-service-content > p {
    margin: 0 0 20px;

    color: #667187;

    font-size: 15.5px;
    line-height: 1.75;
}

.hns-autism-service-content h4 {
    margin: 0 0 13px;

    color: #16254b;

    font-size: 15px;
    font-weight: 800;
}


/* =====================================================
   LIST
===================================================== */

.hns-autism-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 9px 15px;

    padding: 0;
    margin: 0 0 22px;

    list-style: none;
}

.hns-autism-list li {
    display: flex;
    align-items: flex-start;
    gap: 9px;

    color: #4f5e77;

    font-size: 13.5px;
    line-height: 1.5;
}

.hns-autism-list li i {
    width: 20px;
    height: 20px;
    min-width: 20px;

    display: flex;
    justify-content: center;
    align-items: center;

    margin-top: 1px;

    border-radius: 50%;

    color: #081638;
    background: #ffc400;

    font-size: 8px;
}


/* =====================================================
   NOTE BOX
===================================================== */

.hns-service-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;

    padding: 15px 16px;

    border-radius: 13px;

    background:
        linear-gradient(
            120deg,
            rgba(255,196,0,.12),
            rgba(25,54,143,.045)
        );

    border-left: 3px solid #ffc400;
}

.hns-service-note > i {
    margin-top: 2px;

    color: #19368f;

    font-size: 17px;
}

.hns-service-note p {
    margin: 0;

    color: #4d5a73;

    font-size: 13px;
    line-height: 1.65;
}


/* =====================================================
   IMAGE
===================================================== */

.hns-autism-service-image {
    position: relative;

    min-height: 100%;

    overflow: hidden;

    background: #081638;
}

.hns-autism-service-image img {
    width: 100%;
    height: 100%;
    min-height: 540px;

    display: block;

    object-fit: cover;

    transition: transform .8s ease;
}

.hns-autism-service-row:hover
.hns-autism-service-image img {
    transform: scale(1.055);
}

.hns-service-image-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8,22,56,.85) 0%,
            rgba(8,22,56,.16) 45%,
            transparent 70%
        );
}


/* IMAGE LABEL */

.hns-service-image-label {
    position: absolute;

    left: 25px;
    right: 25px;
    bottom: 24px;

    display: flex;
    align-items: center;
    gap: 13px;

    padding: 15px 17px;

    border-radius: 15px;

    background: rgba(8,22,56,.78);

    border: 1px solid rgba(255,255,255,.16);

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    color: #fff;
}

.hns-service-image-label > i {
    width: 43px;
    height: 43px;
    min-width: 43px;

    display: flex;
    justify-content: center;
    align-items: center;

    border-radius: 12px;

    color: #081638;
    background: #ffc400;

    font-size: 17px;
}

.hns-service-image-label strong,
.hns-service-image-label span {
    display: block;
}

.hns-service-image-label strong {
    margin-bottom: 2px;

    font-size: 15px;
}

.hns-service-image-label span {
    color: rgba(255,255,255,.68);

    font-size: 12px;
}


/* =====================================================
   MULTIDISCIPLINARY APPROACH
===================================================== */

.hns-multi-approach {
    position: relative;

    padding: 85px 0;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(255,196,0,.1),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 90%,
            rgba(71,103,255,.15),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );
}

.hns-multi-wrapper {
    position: relative;
    z-index: 2;
}


/* MULTI HEADING */

.hns-multi-heading {
    max-width: 790px;

    margin: 0 auto 40px;

    text-align: center;
}

.hns-multi-heading > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    padding: 8px 15px;
    margin-bottom: 14px;

    border-radius: 50px;

    color: #ffc400;

    background: rgba(255,196,0,.09);

    border: 1px solid rgba(255,196,0,.2);

    font-size: 12px;
    font-weight: 800;

    letter-spacing: .8px;
    text-transform: uppercase;
}

.hns-multi-heading h2 {
    margin: 0 0 16px;

    color: #fff;

    font-size: clamp(36px, 4vw, 51px);
    line-height: 1.12;

    font-weight: 800;
}

.hns-multi-heading h2 strong {
    color: #ffc400;
}

.hns-multi-heading p {
    margin: 0;

    color: rgba(255,255,255,.7);

    font-size: 16px;
    line-height: 1.75;
}


/* SPECIALISTS */

.hns-specialist-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 14px;

    max-width: 1050px;

    margin: auto;
}

.hns-specialist-card {
    min-height: 118px;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 11px;

    padding: 17px;

    text-align: center;

    border-radius: 17px;

    color: #fff;

    background: rgba(255,255,255,.06);

    border: 1px solid rgba(255,255,255,.11);

    transition:
        transform .3s ease,
        background .3s ease,
        border-color .3s ease;
}

.hns-specialist-card:hover {
    transform: translateY(-5px);

    background: rgba(255,255,255,.1);

    border-color: rgba(255,196,0,.3);
}

.hns-specialist-card i {
    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 13px;

    color: #081638;
    background: #ffc400;

    font-size: 18px;
}

.hns-specialist-card span {
    font-size: 13px;
    line-height: 1.4;

    font-weight: 700;
}


/* LAST ITEM CENTER */

.hns-specialist-card:last-child {
    grid-column: 2 / span 2;
}


/* MULTI DESCRIPTION */

.hns-multi-description {
    max-width: 950px;

    display: flex;
    align-items: center;

    gap: 18px;

    margin: 32px auto 0;

    padding: 22px 25px;

    border-radius: 18px;

    background: rgba(255,255,255,.065);

    border: 1px solid rgba(255,255,255,.11);
}

.hns-multi-description-icon {
    width: 58px;
    height: 58px;
    min-width: 58px;

    display: flex;
    justify-content: center;
    align-items: center;

    border-radius: 16px;

    color: #081638;
    background: #ffc400;

    font-size: 22px;
}

.hns-multi-description p {
    margin: 0;

    color: rgba(255,255,255,.74);

    font-size: 14.5px;
    line-height: 1.75;
}

.hns-multi-description strong {
    color: #fff;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .hns-autism-services {
        padding: 70px 0;
    }

    .hns-autism-service-row {
        grid-template-columns: 1fr;
    }

    .hns-autism-service-row.reverse
    .hns-autism-service-content {
        order: 1;
    }

    .hns-autism-service-row.reverse
    .hns-autism-service-image {
        order: 2;
    }

    .hns-autism-service-image img {
        height: 470px;
        min-height: 470px;
    }

    .hns-specialist-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .hns-specialist-card:last-child {
        grid-column: span 2;
    }
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .hns-autism-services {
        padding: 55px 0;
    }

    .hns-autism-services .container,
    .hns-multi-approach .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-autism-services-heading {
        margin-bottom: 40px;
    }

    .hns-autism-services-heading h2 {
        font-size: 34px;
    }

    .hns-autism-services-heading p {
        font-size: 15px;
    }

    .hns-autism-service-row {
        margin-bottom: 32px;
        border-radius: 21px;
    }

    .hns-autism-service-content {
        padding: 32px 22px 28px;
    }

    .hns-autism-service-content h3 {
        font-size: 25px;
    }

    .hns-service-number {
        right: 15px;
        top: 14px;

        font-size: 60px;
    }

    .hns-autism-list {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .hns-autism-service-image img {
        min-height: 340px;
        height: 340px;
    }

    .hns-service-image-label {
        left: 15px;
        right: 15px;
        bottom: 15px;
    }

    .hns-multi-approach {
        padding: 60px 0;
    }

    .hns-multi-heading h2 {
        font-size: 34px;
    }

    .hns-multi-description {
        align-items: flex-start;
        padding: 18px;
    }
}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .hns-autism-services-heading h2,
    .hns-multi-heading h2 {
        font-size: 30px;
    }

    .hns-autism-service-content {
        padding: 29px 18px 24px;
    }

    .hns-autism-service-content h3 {
        font-size: 23px;
    }

    .hns-autism-service-content > p {
        font-size: 14.5px;
    }

    .hns-autism-service-image img {
        min-height: 300px;
        height: 300px;
    }

    .hns-service-image-label {
        padding: 12px;
    }

    .hns-service-image-label > i {
        width: 38px;
        height: 38px;
        min-width: 38px;
    }

    .hns-specialist-grid {
        grid-template-columns: 1fr;
    }

    .hns-specialist-card:last-child {
        grid-column: auto;
    }

    .hns-specialist-card {
        min-height: 105px;
    }

    .hns-multi-description {
        flex-direction: column;
    }
}

/* =====================================================
   WHY CHOOSE + OUR COMMITMENT
===================================================== */

.hns-autism-trust-section {
    position: relative;
    padding: 90px 0;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(25,54,143,.07),
            transparent 28%
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(255,196,0,.08),
            transparent 25%
        ),
        #f5f8ff;
}

.hns-autism-trust-section::before {
    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    left: -220px;
    top: -180px;

    border-radius: 50%;

    border: 1px solid rgba(25,54,143,.07);
}

.hns-autism-trust-section::after {
    content: "";

    position: absolute;

    width: 330px;
    height: 330px;

    right: -170px;
    bottom: -170px;

    border-radius: 50%;

    border: 1px solid rgba(255,196,0,.13);
}

.hns-autism-trust-section .container {
    position: relative;
    z-index: 2;

    width: min(1180px, calc(100% - 40px));
    margin: auto;
}


/* =====================================================
   GRID
===================================================== */

.hns-autism-trust-grid {
    display: grid;

    grid-template-columns: 1.15fr .85fr;

    gap: 28px;

    align-items: stretch;
}


/* =====================================================
   SHARED TAG
===================================================== */

.hns-autism-section-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    padding: 8px 15px;
    margin-bottom: 15px;

    border-radius: 50px;

    color: #19368f;

    background: rgba(25,54,143,.07);

    border: 1px solid rgba(25,54,143,.1);

    font-size: 12px;
    font-weight: 800;

    letter-spacing: .7px;
    text-transform: uppercase;
}

.hns-autism-section-tag i {
    color: #ffc400;
}


/* =====================================================
   WHY CHOOSE CARD
===================================================== */

.hns-autism-why-card {
    position: relative;

    padding: 45px;

    border-radius: 28px;

    background:
        radial-gradient(
            circle at top right,
            rgba(25,54,143,.05),
            transparent 35%
        ),
        #ffffff;

    border: 1px solid #e6ebf4;

    box-shadow:
        0 20px 55px rgba(8,22,56,.08);
}

.hns-autism-why-card h2 {
    margin: 0 0 14px;

    color: #081638;

    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.12;

    font-weight: 800;

    letter-spacing: -1px;
}

.hns-autism-why-card h2 span {
    display: block;

    color: #19368f;
}

.hns-autism-intro-text {
    max-width: 690px;

    margin: 0 0 30px;

    color: #667187;

    font-size: 15.5px;
    line-height: 1.75;
}


/* =====================================================
   WHY LIST
===================================================== */

.hns-autism-why-list {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 12px;
}

.hns-autism-why-item {
    display: flex;
    align-items: center;

    gap: 12px;

    min-height: 88px;

    padding: 14px;

    border-radius: 15px;

    background: #f8faff;

    border: 1px solid #e8edf5;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.hns-autism-why-item:hover {
    transform: translateY(-4px);

    background: #ffffff;

    border-color: rgba(25,54,143,.22);

    box-shadow:
        0 12px 30px rgba(8,22,56,.08);
}

.hns-why-icon {
    width: 46px;
    height: 46px;

    min-width: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 13px;

    color: #081638;

    background:
        linear-gradient(
            135deg,
            #ffd64d,
            #ffc400
        );

    font-size: 17px;

    box-shadow:
        0 8px 18px rgba(255,196,0,.18);
}

.hns-autism-why-item strong,
.hns-autism-why-item small {
    display: block;
}

.hns-autism-why-item strong {
    margin-bottom: 4px;

    color: #081638;

    font-size: 14px;
    line-height: 1.35;

    font-weight: 800;
}

.hns-autism-why-item small {
    color: #778197;

    font-size: 12px;
    line-height: 1.4;
}


/* LAST ITEM FULL WIDTH */

.hns-autism-why-item:last-child {
    grid-column: span 2;
}


/* =====================================================
   COMMITMENT CARD
===================================================== */

.hns-autism-commitment-card {
    position: relative;

    overflow: hidden;

    min-height: 100%;

    border-radius: 28px;

    background:
        linear-gradient(
            145deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );

    box-shadow:
        0 25px 65px rgba(8,22,56,.2);
}

.hns-autism-commitment-card::before {
    content: "";

    position: absolute;

    width: 280px;
    height: 280px;

    right: -120px;
    top: -100px;

    border-radius: 50%;

    border: 1px solid rgba(255,255,255,.08);
}

.hns-autism-commitment-card::after {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    left: -85px;
    bottom: -80px;

    border-radius: 50%;

    border: 1px solid rgba(255,196,0,.13);
}

.hns-commitment-glow {
    position: absolute;

    width: 300px;
    height: 300px;

    right: -120px;
    bottom: -120px;

    border-radius: 50%;

    background: rgba(255,196,0,.1);

    filter: blur(25px);
}


/* CONTENT */

.hns-commitment-content {
    position: relative;
    z-index: 2;

    height: 100%;

    padding: 45px 38px;

    color: #fff;
}


/* BIG ICON */

.hns-commitment-icon {
    width: 72px;
    height: 72px;

    display: flex;
    justify-content: center;
    align-items: center;

    margin-bottom: 24px;

    border-radius: 20px;

    color: #081638;

    background:
        linear-gradient(
            135deg,
            #ffd84f,
            #ffc400
        );

    font-size: 28px;

    box-shadow:
        0 15px 32px rgba(255,196,0,.2);
}


/* LIGHT TAG */

.hns-light-tag {
    color: #ffc400;

    background: rgba(255,196,0,.09);

    border-color: rgba(255,196,0,.18);
}


/* TITLE */

.hns-commitment-content h2 {
    margin: 0 0 20px;

    color: #fff;

    font-size: clamp(36px, 4vw, 48px);
    line-height: 1.1;

    font-weight: 800;

    letter-spacing: -1px;
}

.hns-commitment-content h2 span {
    display: block;

    color: #ffc400;
}


/* TEXT */

.hns-commitment-content > p {
    margin: 0 0 16px;

    color: rgba(255,255,255,.76);

    font-size: 15px;
    line-height: 1.78;
}

.hns-commitment-content > p strong {
    color: #fff;
}


/* =====================================================
   VALUE ITEMS
===================================================== */

.hns-commitment-values {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 10px;

    margin: 25px 0;
}

.hns-commitment-value {
    display: flex;
    align-items: center;

    gap: 10px;

    padding: 12px 13px;

    border-radius: 12px;

    background: rgba(255,255,255,.06);

    border: 1px solid rgba(255,255,255,.09);

    color: #fff;

    font-size: 13px;
    font-weight: 700;

    transition:
        transform .3s ease,
        background .3s ease,
        border-color .3s ease;
}

.hns-commitment-value:hover {
    transform: translateY(-3px);

    background: rgba(255,255,255,.1);

    border-color: rgba(255,196,0,.25);
}

.hns-commitment-value i {
    width: 34px;
    height: 34px;

    display: flex;
    justify-content: center;
    align-items: center;

    border-radius: 10px;

    color: #081638;

    background: #ffc400;

    font-size: 13px;
}


/* =====================================================
   HIGHLIGHT
===================================================== */

.hns-commitment-highlight {
    display: flex;
    align-items: flex-start;

    gap: 13px;

    padding: 18px;

    margin-top: 24px;

    border-radius: 16px;

    background:
        linear-gradient(
            120deg,
            rgba(255,196,0,.13),
            rgba(255,255,255,.05)
        );

    border-left: 3px solid #ffc400;
}

.hns-commitment-highlight > span {
    width: 38px;
    height: 38px;

    min-width: 38px;

    display: flex;
    justify-content: center;
    align-items: center;

    border-radius: 11px;

    background: rgba(255,196,0,.13);

    color: #ffc400;

    font-size: 15px;
}

.hns-commitment-highlight p {
    margin: 0;

    color: rgba(255,255,255,.75);

    font-size: 13.5px;
    line-height: 1.7;
}

.hns-commitment-highlight strong {
    color: #fff;
}


/* =====================================================
   BOTTOM STATEMENT
===================================================== */

.hns-commitment-bottom {
    display: flex;
    align-items: center;

    gap: 14px;

    margin-top: 27px;
}

.hns-commitment-line {
    width: 45px;
    height: 2px;

    background: #ffc400;
}

.hns-commitment-bottom small,
.hns-commitment-bottom strong {
    display: block;
}

.hns-commitment-bottom small {
    margin-bottom: 3px;

    color: rgba(255,255,255,.6);

    font-size: 11px;

    letter-spacing: .6px;
    text-transform: uppercase;
}

.hns-commitment-bottom strong {
    color: #ffc400;

    font-size: 16px;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .hns-autism-trust-section {
        padding: 70px 0;
    }

    .hns-autism-trust-grid {
        grid-template-columns: 1fr;
    }

    .hns-autism-commitment-card {
        min-height: auto;
    }
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .hns-autism-trust-section {
        padding: 55px 0;
    }

    .hns-autism-trust-section .container {
        width: min(100% - 28px, 1180px);
    }

    .hns-autism-why-card,
    .hns-commitment-content {
        padding: 30px 22px;
    }

    .hns-autism-why-card,
    .hns-autism-commitment-card {
        border-radius: 22px;
    }

    .hns-autism-why-card h2,
    .hns-commitment-content h2 {
        font-size: 34px;
    }

    .hns-autism-why-list {
        grid-template-columns: 1fr;
    }

    .hns-autism-why-item:last-child {
        grid-column: auto;
    }

    .hns-autism-why-item {
        min-height: 80px;
    }

    .hns-commitment-icon {
        width: 60px;
        height: 60px;

        font-size: 23px;
    }
}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .hns-autism-why-card,
    .hns-commitment-content {
        padding: 27px 18px;
    }

    .hns-autism-why-card h2,
    .hns-commitment-content h2 {
        font-size: 30px;
    }

    .hns-autism-intro-text,
    .hns-commitment-content > p {
        font-size: 14.5px;
    }

    .hns-autism-why-item {
        padding: 12px;
    }

    .hns-why-icon {
        width: 42px;
        height: 42px;

        min-width: 42px;
    }

    .hns-commitment-values {
        grid-template-columns: 1fr;
    }

    .hns-commitment-highlight {
        padding: 15px;
    }
}

/* =========================================================
   CEREBRAL PALSY REHABILITATION PAGE
========================================================= */

.hns-cp-page {
    --cp-navy: #081638;
    --cp-blue: #0c1d50;
    --cp-light-blue: #19368f;
    --cp-yellow: #ffc400;
    --cp-text: #59657b;
    --cp-light: #f5f8ff;

    overflow: hidden;
}

.hns-cp-page *,
.hns-cp-page *::before,
.hns-cp-page *::after {
    box-sizing: border-box;
}

.hns-cp-container {
    position: relative;
    z-index: 2;

    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

.hns-cp-section {
    position: relative;
    padding: 85px 0;
}

.hns-cp-split {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    align-items: center;
    gap: 65px;
}

.hns-cp-reverse {
    grid-template-columns: 1.05fr .95fr;
}


/* =========================================================
   COMMON TAG
========================================================= */

.hns-cp-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    padding: 8px 15px;
    margin-bottom: 15px;

    border-radius: 50px;

    color: var(--cp-light-blue);
    background: rgba(25,54,143,.07);
    border: 1px solid rgba(25,54,143,.12);

    font-size: 12px;
    font-weight: 800;
    letter-spacing: .7px;
    text-transform: uppercase;
}

.hns-cp-tag i {
    color: var(--cp-yellow);
}

.hns-cp-tag-dark {
    color: var(--cp-yellow);
    background: rgba(255,196,0,.08);
    border-color: rgba(255,196,0,.2);
}


/* =========================================================
   TYPOGRAPHY
========================================================= */

.hns-cp-content h2,
.hns-cp-center-heading h2,
.hns-cp-trust-card h2 {
    margin: 0 0 20px;

    color: var(--cp-navy);

    font-size: clamp(36px, 4vw, 51px);
    line-height: 1.12;

    font-weight: 800;
    letter-spacing: -1.3px;
}

.hns-cp-content h2 span,
.hns-cp-center-heading h2 span,
.hns-cp-trust-card h2 span {
    display: block;
    color: var(--cp-light-blue);
}

.hns-cp-content p,
.hns-cp-trust-card p {
    margin: 0 0 16px;

    color: var(--cp-text);

    font-size: 15.5px;
    line-height: 1.8;
}

.hns-cp-content p strong {
    color: var(--cp-navy);
}

.hns-cp-lead {
    font-size: 17px !important;
    font-weight: 600;
    color: #33415f !important;
}

.hns-cp-line {
    width: 85px;
    height: 3px;

    margin: -5px 0 23px;

    border-radius: 10px;

    background: linear-gradient(
        90deg,
        var(--cp-yellow),
        var(--cp-light-blue)
    );
}


/* =========================================================
   IMAGE
========================================================= */

.hns-cp-image-wrap {
    position: relative;
}

.hns-cp-image {
    position: relative;

    min-height: 560px;

    overflow: hidden;

    border-radius: 28px;

    box-shadow: 0 25px 65px rgba(8,22,56,.17);
}

.hns-cp-image img {
    width: 100%;
    height: 100%;
    min-height: 560px;

    position: absolute;
    inset: 0;

    display: block;
    object-fit: cover;

    transition: transform .7s ease;
}

.hns-cp-image:hover img {
    transform: scale(1.045);
}

.hns-cp-image-shade {
    position: absolute;
    inset: 0;

    background: linear-gradient(
        to top,
        rgba(8,22,56,.82),
        rgba(8,22,56,.06) 60%
    );
}

.hns-cp-image-card {
    position: absolute;

    left: 22px;
    right: 22px;
    bottom: 22px;

    display: flex;
    align-items: center;
    gap: 13px;

    padding: 16px;

    color: #fff;

    border-radius: 16px;

    background: rgba(8,22,56,.78);
    border: 1px solid rgba(255,255,255,.17);

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.hns-cp-image-card > span {
    width: 45px;
    height: 45px;
    min-width: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 12px;

    color: var(--cp-navy);
    background: var(--cp-yellow);

    font-size: 18px;
}

.hns-cp-image-card strong,
.hns-cp-image-card small {
    display: block;
}

.hns-cp-image-card strong {
    margin-bottom: 3px;
    font-size: 15px;
}

.hns-cp-image-card small {
    color: rgba(255,255,255,.68);
    font-size: 12px;
}


/* floating */

.hns-cp-floating-card {
    position: absolute;

    right: -20px;
    top: 35px;

    padding: 14px 18px;

    border-radius: 14px;

    background: var(--cp-yellow);

    box-shadow: 0 12px 30px rgba(8,22,56,.17);
}

.hns-cp-floating-card strong,
.hns-cp-floating-card span {
    display: block;
}

.hns-cp-floating-card strong {
    color: var(--cp-navy);
    font-size: 14px;
}

.hns-cp-floating-card span {
    margin-top: 2px;
    color: #35415a;
    font-size: 11px;
}


/* =========================================================
   INTRO
========================================================= */

.hns-cp-intro {
    background:
        radial-gradient(circle at 8% 10%, rgba(25,54,143,.06), transparent 25%),
        #fff;
}

.hns-cp-mini-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 9px;

    margin-top: 27px;
}

.hns-cp-mini-grid div {
    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 8px;

    padding: 14px 8px;

    text-align: center;

    border-radius: 13px;

    background: #f6f8fd;
    border: 1px solid #e6ebf4;

    color: var(--cp-navy);

    font-size: 12px;
    font-weight: 700;
}

.hns-cp-mini-grid i {
    color: var(--cp-light-blue);
    font-size: 20px;
}


/* =========================================================
   DARK SECTION
========================================================= */

.hns-cp-dark,
.hns-cp-outcomes {
    overflow: hidden;

    background:
        radial-gradient(circle at 10% 20%, rgba(255,196,0,.09), transparent 27%),
        radial-gradient(circle at 90% 80%, rgba(63,100,255,.15), transparent 30%),
        linear-gradient(
            135deg,
            var(--cp-navy),
            var(--cp-blue) 55%,
            var(--cp-light-blue)
        );
}

.hns-cp-content-light h2 {
    color: #fff;
}

.hns-cp-content-light h2 span {
    color: var(--cp-yellow);
}

.hns-cp-content-light p {
    color: rgba(255,255,255,.74);
}

.hns-cp-content-light p strong {
    color: #fff;
}


/* focus */

.hns-cp-focus-box {
    display: flex;
    align-items: center;
    gap: 14px;

    margin: 24px 0 17px;
    padding: 16px;

    border-radius: 15px;

    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.1);
}

.hns-cp-focus-icon {
    width: 47px;
    height: 47px;
    min-width: 47px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 12px;

    color: var(--cp-navy);
    background: var(--cp-yellow);
}

.hns-cp-focus-box strong {
    display: block;

    margin-bottom: 3px;

    color: #fff;
}

.hns-cp-focus-box p {
    margin: 0;
    font-size: 12.5px;
}


/* goals */

.hns-cp-goals {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 8px;
}

.hns-cp-goals span {
    display: flex;
    align-items: center;
    gap: 8px;

    padding: 10px;

    color: rgba(255,255,255,.82);

    border-radius: 10px;

    background: rgba(255,255,255,.05);

    font-size: 13px;
}

.hns-cp-goals i {
    color: var(--cp-yellow);
}


/* quote */

.hns-cp-quote {
    display: flex;
    gap: 12px;

    margin-top: 18px;
    padding: 15px;

    border-left: 3px solid var(--cp-yellow);

    background: rgba(255,196,0,.07);

    border-radius: 0 12px 12px 0;
}

.hns-cp-quote i {
    color: var(--cp-yellow);
}

.hns-cp-quote p {
    margin: 0;

    font-size: 13px;
    font-style: italic;
}


/* =========================================================
   CENTER HEADING
========================================================= */

.hns-cp-center-heading {
    max-width: 780px;

    margin: 0 auto 42px;

    text-align: center;
}

.hns-cp-center-heading p {
    margin: auto;

    color: var(--cp-text);

    font-size: 16px;
    line-height: 1.75;
}


/* =========================================================
   COLLABORATION
========================================================= */

.hns-cp-collaboration {
    background: var(--cp-light);
}

.hns-cp-team-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 13px;
}

.hns-cp-team-card {
    min-height: 145px;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 13px;

    padding: 18px;

    text-align: center;

    border-radius: 17px;

    background: #fff;
    border: 1px solid #e6ebf4;

    box-shadow: 0 12px 30px rgba(8,22,56,.05);

    transition: .3s ease;
}

.hns-cp-team-card:hover {
    transform: translateY(-5px);

    border-color: rgba(25,54,143,.2);

    box-shadow: 0 18px 40px rgba(8,22,56,.1);
}

.hns-cp-team-card i {
    width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 13px;

    color: var(--cp-navy);
    background: var(--cp-yellow);

    font-size: 19px;
}

.hns-cp-team-card strong {
    color: var(--cp-navy);

    font-size: 13px;
    line-height: 1.45;
}

.hns-cp-team-card:last-child {
    grid-column: 2 / span 2;
}

.hns-cp-team-bottom {
    max-width: 900px;

    display: flex;
    align-items: center;
    gap: 15px;

    margin: 28px auto 0;
    padding: 19px 22px;

    border-radius: 15px;

    color: #fff;

    background: linear-gradient(
        135deg,
        var(--cp-navy),
        var(--cp-light-blue)
    );
}

.hns-cp-team-bottom i {
    color: var(--cp-yellow);
    font-size: 27px;
}

.hns-cp-team-bottom p {
    margin: 0;

    color: rgba(255,255,255,.78);

    font-size: 14px;
    line-height: 1.65;
}

.hns-cp-team-bottom strong {
    color: #fff;
}


/* =========================================================
   BEYOND CLINIC
========================================================= */

.hns-cp-beyond {
    background: #fff;
}

.hns-cp-family-points {
    display: grid;
    gap: 10px;

    margin-top: 25px;
}

.hns-cp-family-points > div {
    display: flex;
    align-items: center;
    gap: 13px;

    padding: 13px;

    border-radius: 13px;

    background: #f6f8fd;
    border: 1px solid #e8ecf4;
}

.hns-cp-family-points i {
    width: 42px;
    height: 42px;
    min-width: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 11px;

    color: var(--cp-navy);
    background: var(--cp-yellow);
}

.hns-cp-family-points span {
    color: var(--cp-text);

    font-size: 12px;
    line-height: 1.5;
}

.hns-cp-family-points strong {
    display: block;

    margin-bottom: 2px;

    color: var(--cp-navy);

    font-size: 14px;
}


/* =========================================================
   SERVICES
========================================================= */

.hns-cp-services {
    background: var(--cp-light);
}

.hns-cp-services-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 13px;
}

.hns-cp-service-card {
    display: flex;
    align-items: center;

    gap: 15px;

    min-height: 105px;

    padding: 17px;

    border-radius: 16px;

    background: #fff;
    border: 1px solid #e5eaf3;

    transition: .3s ease;
}

.hns-cp-service-card:hover {
    transform: translateY(-4px);

    border-color: rgba(25,54,143,.22);

    box-shadow: 0 14px 35px rgba(8,22,56,.08);
}

.hns-cp-service-card > span {
    width: 52px;
    height: 52px;
    min-width: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 14px;

    color: var(--cp-navy);
    background: var(--cp-yellow);

    font-size: 19px;
}

.hns-cp-service-card strong {
    display: block;

    margin-bottom: 4px;

    color: var(--cp-navy);

    font-size: 15px;
}

.hns-cp-service-card p {
    margin: 0;

    color: #778197;

    font-size: 12.5px;
    line-height: 1.5;
}


/* =========================================================
   OUTCOMES
========================================================= */

.hns-cp-outcome-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 9px;

    margin-top: 24px;
}

.hns-cp-outcome-list > div {
    display: flex;
    align-items: flex-start;
    gap: 9px;

    padding: 11px;

    border-radius: 11px;

    color: rgba(255,255,255,.8);
    background: rgba(255,255,255,.055);

    font-size: 13px;
    line-height: 1.5;
}

.hns-cp-outcome-list i {
    width: 20px;
    height: 20px;
    min-width: 20px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: var(--cp-navy);
    background: var(--cp-yellow);

    font-size: 8px;
}


/* visual */

.hns-cp-outcome-visual {
    position: relative;

    min-height: 500px;

    display: grid;
    grid-template-columns: repeat(2, 1fr);

    align-content: center;

    gap: 20px;

    padding: 40px;
}

.hns-cp-outcome-visual::before {
    content: "";

    position: absolute;
    inset: 50% auto auto 50%;

    width: 320px;
    height: 320px;

    transform: translate(-50%, -50%);

    border-radius: 50%;

    border: 1px solid rgba(255,196,0,.18);
}

.hns-cp-outcome-center {
    position: absolute;
    z-index: 3;

    left: 50%;
    top: 50%;

    width: 190px;
    height: 190px;

    transform: translate(-50%, -50%);

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    text-align: center;

    border-radius: 50%;

    background: var(--cp-yellow);

    box-shadow: 0 20px 50px rgba(0,0,0,.2);

    color: var(--cp-navy);
}

.hns-cp-outcome-center i {
    margin-bottom: 10px;
    font-size: 35px;
}

.hns-cp-outcome-center strong {
    font-size: 18px;
}

.hns-cp-outcome-center span {
    font-size: 12px;
}

.hns-cp-outcome-stat {
    position: relative;
    z-index: 2;

    min-height: 125px;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 8px;

    color: #fff;

    border-radius: 17px;

    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.11);
}

.hns-cp-outcome-stat i {
    color: var(--cp-yellow);
    font-size: 22px;
}

.hns-cp-outcome-stat strong {
    font-size: 13px;
}


/* =========================================================
   FINAL
========================================================= */

.hns-cp-final {
    background: #f5f8ff;
}

.hns-cp-final-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;

    gap: 25px;
}

.hns-cp-trust-card,
.hns-cp-milestone-card {
    padding: 40px;

    border-radius: 25px;
}

.hns-cp-trust-card {
    background: #fff;
    border: 1px solid #e6ebf4;

    box-shadow: 0 18px 50px rgba(8,22,56,.07);
}

.hns-cp-trust-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 10px;

    margin-top: 25px;
}

.hns-cp-trust-features > div {
    display: flex;
    align-items: center;
    gap: 10px;

    padding: 13px;

    border-radius: 12px;

    color: var(--cp-navy);

    background: #f6f8fd;

    font-size: 12px;
    font-weight: 700;
}

.hns-cp-trust-features i {
    color: var(--cp-light-blue);
}


/* milestone */

.hns-cp-milestone-card {
    position: relative;
    overflow: hidden;

    color: #fff;

    background:
        radial-gradient(circle at 100% 0, rgba(255,196,0,.14), transparent 35%),
        linear-gradient(
            135deg,
            var(--cp-navy),
            var(--cp-blue),
            var(--cp-light-blue)
        );
}

.hns-cp-milestone-icon {
    width: 65px;
    height: 65px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    border-radius: 18px;

    color: var(--cp-navy);
    background: var(--cp-yellow);

    font-size: 25px;
}

.hns-cp-milestone-card > span {
    color: var(--cp-yellow);

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;
    letter-spacing: 1px;
}

.hns-cp-milestone-card h2 {
    margin: 10px 0 18px;

    color: #fff;

    font-size: 40px;
    line-height: 1.1;
}

.hns-cp-milestone-card h2 strong {
    display: block;
    color: var(--cp-yellow);
}

.hns-cp-milestone-card > p {
    color: rgba(255,255,255,.76);

    font-size: 14.5px;
    line-height: 1.75;
}

.hns-cp-milestone-card > p strong {
    color: #fff;
}

.hns-cp-milestone-quote {
    display: flex;
    gap: 12px;

    margin-top: 23px;
    padding: 18px;

    border-radius: 14px;

    background: rgba(255,255,255,.07);
    border-left: 3px solid var(--cp-yellow);
}

.hns-cp-milestone-quote i {
    color: var(--cp-yellow);
}

.hns-cp-milestone-quote p {
    margin: 0;

    color: rgba(255,255,255,.73);

    font-size: 13px;
    line-height: 1.7;
}

.hns-cp-milestone-footer {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-top: 25px;
}

.hns-cp-milestone-footer span {
    width: 40px;
    height: 2px;

    background: var(--cp-yellow);
}

.hns-cp-milestone-footer strong {
    color: var(--cp-yellow);
    font-size: 13px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .hns-cp-section {
        padding: 70px 0;
    }

    .hns-cp-split,
    .hns-cp-reverse {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .hns-cp-dark .hns-cp-content,
    .hns-cp-outcomes .hns-cp-content {
        order: 1;
    }

    .hns-cp-dark .hns-cp-image-wrap,
    .hns-cp-outcomes .hns-cp-outcome-visual {
        order: 2;
    }

    .hns-cp-image {
        min-height: 470px;
    }

    .hns-cp-image img {
        min-height: 470px;
    }

    .hns-cp-team-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .hns-cp-team-card:last-child {
        grid-column: span 2;
    }

    .hns-cp-final-grid {
        grid-template-columns: 1fr;
    }

    .hns-cp-outcome-visual {
        max-width: 650px;
        width: 100%;
        margin: auto;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .hns-cp-section {
        padding: 55px 0;
    }

    .hns-cp-container {
        width: min(100% - 28px, 1180px);
    }

    .hns-cp-content h2,
    .hns-cp-center-heading h2,
    .hns-cp-trust-card h2 {
        font-size: 33px;
        letter-spacing: -.7px;
    }

    .hns-cp-content p {
        font-size: 15px;
        line-height: 1.72;
    }

    .hns-cp-image {
        min-height: 380px;
        border-radius: 21px;
    }

    .hns-cp-image img {
        min-height: 380px;
    }

    .hns-cp-floating-card {
        display: none;
    }

    .hns-cp-mini-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .hns-cp-team-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .hns-cp-services-grid {
        grid-template-columns: 1fr;
    }

    .hns-cp-outcome-list {
        grid-template-columns: 1fr;
    }

    .hns-cp-trust-card,
    .hns-cp-milestone-card {
        padding: 28px 22px;
    }

    .hns-cp-milestone-card h2 {
        font-size: 34px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .hns-cp-content h2,
    .hns-cp-center-heading h2,
    .hns-cp-trust-card h2 {
        font-size: 29px;
    }

    .hns-cp-image {
        min-height: 320px;
    }

    .hns-cp-image img {
        min-height: 320px;
    }

    .hns-cp-image-card {
        left: 13px;
        right: 13px;
        bottom: 13px;

        padding: 12px;
    }

    .hns-cp-goals {
        grid-template-columns: 1fr;
    }

    .hns-cp-team-grid {
        grid-template-columns: 1fr;
    }

    .hns-cp-team-card:last-child {
        grid-column: auto;
    }

    .hns-cp-team-card {
        min-height: 115px;
    }

    .hns-cp-team-bottom {
        align-items: flex-start;
    }

    .hns-cp-trust-features {
        grid-template-columns: 1fr;
    }

    .hns-cp-outcome-visual {
        min-height: 440px;
        padding: 15px;
        gap: 12px;
    }

    .hns-cp-outcome-center {
        width: 150px;
        height: 150px;
    }

    .hns-cp-outcome-center i {
        font-size: 28px;
    }

    .hns-cp-outcome-center strong {
        font-size: 15px;
    }

    .hns-cp-outcome-stat {
        min-height: 105px;
    }

    .hns-cp-milestone-card h2 {
        font-size: 30px;
    }
}

/* =========================================================
   SLI PREMIUM INTRO
========================================================= */

.sli-premium-intro {
    position: relative;

    width: 100%;
    height: auto;

    padding: 85px 0;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(25, 54, 143, 0.08),
            transparent 30%
        ),
        radial-gradient(
            circle at 5% 90%,
            rgba(255, 196, 0, 0.07),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f8faff 55%,
            #f1f5ff 100%
        );
}


/* =========================================================
   CONTAINER
========================================================= */

.sli-premium-container {
    position: relative;
    z-index: 2;

    width: min(1180px, calc(100% - 40px));

    margin: 0 auto;
}


/* =========================================================
   GRID
========================================================= */

.sli-premium-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(0, .95fr);

    align-items: center;

    gap: 65px;

    width: 100%;
}


/* =========================================================
   LEFT CONTENT
========================================================= */

.sli-premium-content {
    width: 100%;
}


/* LABEL */

.sli-premium-label {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 17px;

    padding: 9px 16px;

    border-radius: 50px;

    color: #19368f;

    background: rgba(25, 54, 143, 0.07);

    border: 1px solid rgba(25, 54, 143, 0.12);

    font-size: 12px;

    font-weight: 800;

    letter-spacing: .7px;

    text-transform: uppercase;
}


.sli-premium-label i {
    color: #ffc400;
}


/* =========================================================
   TITLE
========================================================= */

.sli-premium-content h1 {
    max-width: 650px;

    margin: 0;

    color: #081638;

    font-size: clamp(42px, 4.5vw, 60px);

    line-height: 1.06;

    font-weight: 800;

    letter-spacing: -1.5px;
}


.sli-premium-content h1 span {
    display: block;

    color: #19368f;
}


/* =========================================================
   LINE
========================================================= */

.sli-premium-line {
    width: 95px;

    height: 3px;

    margin: 22px 0 25px;

    border-radius: 30px;

    background:
        linear-gradient(
            90deg,
            #ffc400,
            #19368f
        );
}


/* =========================================================
   TEXT
========================================================= */

.sli-premium-content > p {
    max-width: 680px;

    margin: 0 0 15px;

    color: #5e6980;

    font-size: 16px;

    line-height: 1.75;
}


.sli-premium-content > p strong {
    color: #081638;
}


.sli-premium-content .sli-premium-lead {
    color: #2c3955;

    font-size: 18px;

    line-height: 1.65;

    font-weight: 600;
}


/* =========================================================
   SLI INFORMATION BOX
========================================================= */

.sli-premium-info {
    display: flex;

    align-items: center;

    gap: 14px;

    margin: 22px 0;

    padding: 17px;

    border-radius: 15px;

    background:
        linear-gradient(
            120deg,
            rgba(255, 196, 0, .13),
            rgba(25, 54, 143, .04)
        );

    border-left: 4px solid #ffc400;
}


.sli-premium-info-icon {
    width: 48px;
    height: 48px;

    min-width: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 13px;

    color: #081638;

    background: #ffc400;

    font-size: 18px;
}


.sli-premium-info p {
    margin: 0;

    color: #56627a;

    font-size: 13.5px;

    line-height: 1.65;
}


.sli-premium-info strong {
    color: #081638;
}


/* =========================================================
   FEATURE GRID
========================================================= */

.sli-premium-features {
    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 11px;

    margin-top: 28px;
}


.sli-premium-feature {
    display: flex;

    align-items: center;

    gap: 12px;

    min-height: 82px;

    padding: 13px;

    border-radius: 14px;

    background: #ffffff;

    border: 1px solid #e5eaf3;

    box-shadow:
        0 8px 26px rgba(8, 22, 56, 0.05);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}


.sli-premium-feature:hover {
    transform: translateY(-4px);

    border-color: rgba(25, 54, 143, .2);

    box-shadow:
        0 15px 34px rgba(8, 22, 56, .09);
}


.sli-premium-feature > span {
    width: 45px;
    height: 45px;

    min-width: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    color: #081638;

    background: #ffc400;

    font-size: 17px;
}


.sli-premium-feature strong,
.sli-premium-feature small {
    display: block;
}


.sli-premium-feature strong {
    margin-bottom: 3px;

    color: #081638;

    font-size: 14px;
}


.sli-premium-feature small {
    color: #788398;

    font-size: 11px;

    line-height: 1.4;
}


/* =========================================================
   RIGHT VISUAL
========================================================= */

.sli-premium-visual {
    width: 100%;

    display: flex;

    flex-direction: column;

    gap: 13px;
}


/* =========================================================
   MAIN IMAGE
========================================================= */

.sli-premium-main-image {
    position: relative;

    width: 100%;

    height: 530px;

    overflow: hidden;

    border-radius: 130px 28px 28px 28px;

    background: #081638;

    box-shadow:
        0 25px 65px rgba(8, 22, 56, .17);
}


.sli-premium-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform .7s ease;
}


.sli-premium-main-image:hover img {
    transform: scale(1.04);
}


/* IMAGE OVERLAY */

.sli-premium-image-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8, 22, 56, .83) 0%,
            rgba(8, 22, 56, .10) 55%,
            transparent 78%
        );
}


/* IMAGE CONTENT */

.sli-premium-image-content {
    position: absolute;

    left: 20px;
    right: 20px;
    bottom: 20px;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 15px;

    border-radius: 15px;

    color: #fff;

    background: rgba(8, 22, 56, .82);

    border: 1px solid rgba(255,255,255,.15);

    backdrop-filter: blur(12px);

    -webkit-backdrop-filter: blur(12px);
}


.sli-premium-image-content > span {
    width: 44px;
    height: 44px;

    min-width: 44px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    color: #081638;

    background: #ffc400;

    font-size: 16px;
}


.sli-premium-image-content strong,
.sli-premium-image-content small {
    display: block;
}


.sli-premium-image-content strong {
    margin-bottom: 3px;

    font-size: 14px;
}


.sli-premium-image-content small {
    color: rgba(255,255,255,.68);

    font-size: 11px;
}


/* =========================================================
   BOTTOM VISUAL
========================================================= */

.sli-premium-visual-bottom {
    display: grid;

    grid-template-columns: 155px 1fr;

    gap: 12px;
}


/* SMALL IMAGE */

.sli-premium-small-image {
    height: 145px;

    overflow: hidden;

    border-radius: 18px;

    box-shadow:
        0 12px 30px rgba(8, 22, 56, .09);
}


.sli-premium-small-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/* SUPPORT BOX */

.sli-premium-support-box {
    min-height: 145px;

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 18px;

    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            #081638 0%,
            #0c1d50 55%,
            #19368f 100%
        );

    box-shadow:
        0 12px 30px rgba(8, 22, 56, .12);
}


.sli-premium-support-box > span {
    width: 48px;
    height: 48px;

    min-width: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 13px;

    color: #081638;

    background: #ffc400;

    font-size: 18px;
}


.sli-premium-support-box strong {
    display: block;

    margin-bottom: 5px;

    color: #ffffff;

    font-size: 15px;
}


.sli-premium-support-box p {
    margin: 0;

    color: rgba(255,255,255,.67);

    font-size: 11.5px;

    line-height: 1.55;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .sli-premium-intro {
        padding: 65px 0;
    }


    .sli-premium-grid {
        grid-template-columns: 1fr;

        gap: 45px;
    }


    .sli-premium-content {
        max-width: 760px;
    }


    .sli-premium-content h1 {
        max-width: 700px;

        font-size: 48px;
    }


    .sli-premium-content > p {
        max-width: 760px;
    }


    .sli-premium-visual {
        max-width: 700px;

        margin: 0 auto;
    }


    .sli-premium-main-image {
        height: 500px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .sli-premium-intro {
        padding: 48px 0 55px;
    }


    .sli-premium-container {
        width: calc(100% - 28px);
    }


    .sli-premium-grid {
        display: flex;

        flex-direction: column;

        gap: 35px;
    }


    .sli-premium-content {
        width: 100%;
    }


    .sli-premium-content h1 {
        width: 100%;

        font-size: 37px;

        line-height: 1.08;

        letter-spacing: -.8px;
    }


    .sli-premium-content > p {
        width: 100%;

        font-size: 15px;

        line-height: 1.7;
    }


    .sli-premium-content .sli-premium-lead {
        font-size: 16.5px;
    }


    .sli-premium-features {
        grid-template-columns: repeat(2, 1fr);
    }


    .sli-premium-main-image {
        height: 430px;

        border-radius: 70px 20px 20px 20px;
    }


    .sli-premium-visual-bottom {
        grid-template-columns: 130px 1fr;
    }


    .sli-premium-small-image {
        height: 130px;
    }


    .sli-premium-support-box {
        min-height: 130px;

        padding: 14px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .sli-premium-intro {
        padding: 40px 0 48px;
    }


    .sli-premium-label {
        padding: 7px 11px;

        font-size: 10px;
    }


    .sli-premium-content h1 {
        font-size: 32px;
    }


    .sli-premium-info {
        align-items: flex-start;

        padding: 14px;
    }


    .sli-premium-features {
        grid-template-columns: 1fr;
    }


    .sli-premium-main-image {
        height: 360px;

        border-radius: 50px 18px 18px 18px;
    }


    .sli-premium-image-content {
        left: 12px;
        right: 12px;
        bottom: 12px;

        padding: 11px;
    }


    .sli-premium-image-content small {
        display: none;
    }


    .sli-premium-visual-bottom {
        grid-template-columns: 1fr;
    }


    .sli-premium-small-image {
        height: 220px;
    }


    .sli-premium-support-box {
        min-height: 120px;
    }

}

/* =========================================================
   SLI SERVICE PAGE
========================================================= */

.sli-service-page {
    --sli-navy: #081638;
    --sli-blue: #0c1d50;
    --sli-royal: #19368f;
    --sli-yellow: #ffc400;
    --sli-light: #f5f8ff;
    --sli-text: #5e6980;

    width: 100%;
    overflow: hidden;
}

.sli-service-page *,
.sli-service-page *::before,
.sli-service-page *::after {
    box-sizing: border-box;
}

.sli-page-container {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}


/* =========================================================
   COMMON HEADINGS
========================================================= */

.sli-section-tag,
.sli-dark-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 14px;
    padding: 8px 14px;

    border-radius: 50px;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: .7px;
    text-transform: uppercase;
}

.sli-section-tag {
    color: var(--sli-royal);
    background: rgba(25,54,143,.07);
    border: 1px solid rgba(25,54,143,.11);
}

.sli-section-tag i {
    color: var(--sli-yellow);
}

.sli-dark-tag {
    color: var(--sli-yellow);
    background: rgba(255,196,0,.08);
    border: 1px solid rgba(255,196,0,.18);
}

.sli-center-heading {
    max-width: 780px;
    margin: 0 auto 42px;
    text-align: center;
}

.sli-center-heading h2 {
    margin: 0;

    color: var(--sli-navy);

    font-size: clamp(36px, 4vw, 50px);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1px;
}

.sli-center-heading h2 span {
    color: var(--sli-royal);
}

.sli-center-heading > p {
    margin: 16px auto 0;

    color: var(--sli-text);

    font-size: 15px;
    line-height: 1.75;
}


/* =========================================================
   01. LANGUAGE CHALLENGE
========================================================= */

.sli-challenge-section {
    padding: 80px 0;
    background: #fff;
}

.sli-challenge-grid {
    display: grid;
    grid-template-columns: .88fr 1.12fr;
    gap: 55px;
    align-items: center;
}


/* IMAGE */

.sli-challenge-visual {
    position: relative;

    min-height: 650px;

    overflow: hidden;

    border-radius: 25px 110px 25px 25px;

    box-shadow: 0 25px 60px rgba(8,22,56,.14);
}

.sli-challenge-visual > img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.sli-challenge-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8,22,56,.86),
            rgba(8,22,56,.05) 60%
        );
}

.sli-challenge-image-box {
    position: absolute;

    left: 20px;
    right: 20px;
    bottom: 20px;

    display: flex;
    align-items: center;
    gap: 12px;

    padding: 16px;

    border-radius: 14px;

    color: #fff;
    background: rgba(8,22,56,.84);

    backdrop-filter: blur(10px);
}

.sli-challenge-image-box > i {
    width: 45px;
    height: 45px;
    min-width: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 12px;

    color: var(--sli-navy);
    background: var(--sli-yellow);
}

.sli-challenge-image-box strong,
.sli-challenge-image-box span {
    display: block;
}

.sli-challenge-image-box strong {
    margin-bottom: 3px;
    font-size: 14px;
}

.sli-challenge-image-box span {
    color: rgba(255,255,255,.65);
    font-size: 11px;
}


/* CONTENT */

.sli-challenge-content h2,
.sli-school-content h2 {
    margin: 0 0 18px;

    color: var(--sli-navy);

    font-size: clamp(36px, 4vw, 50px);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1px;
}

.sli-challenge-content h2 span,
.sli-school-content h2 span {
    display: block;
    color: var(--sli-royal);
}

.sli-challenge-content > p,
.sli-school-content > p {
    margin: 0 0 17px;

    color: var(--sli-text);

    font-size: 15px;
    line-height: 1.75;
}

.sli-challenge-content h3 {
    margin: 24px 0 14px;

    color: var(--sli-navy);

    font-size: 16px;
    font-weight: 700;
}


/* SIGNS */

.sli-sign-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 8px;
}

.sli-sign-list > div {
    display: flex;
    align-items: center;
    gap: 9px;

    min-height: 52px;

    padding: 9px 11px;

    border-radius: 10px;

    background: var(--sli-light);
    border: 1px solid #e6ebf3;

    color: #4e5c76;

    font-size: 12px;
    line-height: 1.4;
}

.sli-sign-list i {
    width: 23px;
    height: 23px;
    min-width: 23px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: var(--sli-navy);
    background: var(--sli-yellow);

    font-size: 8px;
}

.sli-sign-wide {
    grid-column: span 2;
}

.sli-important-note {
    display: flex;
    align-items: flex-start;
    gap: 11px;

    margin-top: 17px;
    padding: 15px;

    border-left: 3px solid var(--sli-yellow);
    border-radius: 0 11px 11px 0;

    background: rgba(255,196,0,.08);
}

.sli-important-note i {
    margin-top: 3px;
    color: var(--sli-royal);
}

.sli-important-note p {
    margin: 0;

    color: #59667e;

    font-size: 12.5px;
    line-height: 1.6;
}


/* =========================================================
   02. ASSESSMENT
========================================================= */

.sli-assessment-section {
    padding: 80px 0;

    background:
        radial-gradient(
            circle at 95% 5%,
            rgba(25,54,143,.06),
            transparent 25%
        ),
        var(--sli-light);
}

.sli-assessment-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 13px;
}

.sli-assessment-card {
    position: relative;

    min-height: 220px;

    padding: 24px 19px;

    overflow: hidden;

    border-radius: 17px;

    background: #fff;
    border: 1px solid #e5eaf2;

    box-shadow: 0 10px 28px rgba(8,22,56,.045);

    transition: .3s ease;
}

.sli-assessment-card:hover {
    transform: translateY(-5px);

    border-color: rgba(25,54,143,.18);

    box-shadow: 0 18px 40px rgba(8,22,56,.09);
}

.sli-card-number {
    position: absolute;

    right: 12px;
    top: 5px;

    color: rgba(8,22,56,.05);

    font-size: 47px;
    font-weight: 900;
}

.sli-card-icon {
    width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 17px;

    border-radius: 13px;

    color: var(--sli-navy);
    background: var(--sli-yellow);

    font-size: 17px;
}

.sli-assessment-card h3 {
    margin: 0 0 8px;

    color: var(--sli-navy);

    font-size: 15px;
    line-height: 1.35;
}

.sli-assessment-card p {
    margin: 0;

    color: #778197;

    font-size: 12px;
    line-height: 1.6;
}


/* RESULT */

.sli-assessment-result {
    max-width: 800px;

    display: flex;
    align-items: center;
    gap: 13px;

    margin: 28px auto 0;
    padding: 16px 18px;

    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            var(--sli-navy),
            var(--sli-royal)
        );
}

.sli-assessment-result > span {
    width: 40px;
    height: 40px;
    min-width: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 10px;

    color: var(--sli-navy);
    background: var(--sli-yellow);
}

.sli-assessment-result p {
    margin: 0;

    color: rgba(255,255,255,.72);

    font-size: 13px;
    line-height: 1.6;
}

.sli-assessment-result strong {
    color: #fff;
}


/* =========================================================
   03. INTERVENTION
========================================================= */

.sli-intervention-section {
    padding: 80px 0;

    background:
        linear-gradient(
            135deg,
            var(--sli-navy),
            var(--sli-blue) 55%,
            var(--sli-royal)
        );
}

.sli-intervention-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;

    gap: 55px;
    align-items: center;
}

.sli-intervention-content h2,
.sli-why-heading h2 {
    margin: 0 0 19px;

    color: #fff;

    font-size: clamp(36px, 4vw, 50px);
    line-height: 1.08;

    font-weight: 800;
    letter-spacing: -1px;
}

.sli-intervention-content h2 span,
.sli-why-heading h2 span {
    display: block;
    color: var(--sli-yellow);
}

.sli-intervention-content > p {
    margin: 0 0 23px;

    color: rgba(255,255,255,.72);

    font-size: 15px;
    line-height: 1.75;
}


/* THERAPY LIST */

.sli-intervention-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 8px;
}

.sli-intervention-list > div {
    display: flex;
    align-items: center;
    gap: 8px;

    min-height: 45px;

    padding: 9px;

    border-radius: 9px;

    color: rgba(255,255,255,.78);

    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.06);

    font-size: 12px;
}

.sli-intervention-list i {
    width: 20px;
    height: 20px;
    min-width: 20px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: var(--sli-navy);
    background: var(--sli-yellow);

    font-size: 7px;
}

.sli-intervention-note {
    display: flex;
    align-items: flex-start;
    gap: 11px;

    margin-top: 19px;
    padding: 14px;

    border-radius: 11px;

    background: rgba(255,196,0,.07);
    border-left: 3px solid var(--sli-yellow);
}

.sli-intervention-note i {
    margin-top: 3px;
    color: var(--sli-yellow);
}

.sli-intervention-note p {
    margin: 0;

    color: rgba(255,255,255,.7);

    font-size: 12px;
    line-height: 1.6;
}


/* INTERVENTION IMAGE */

.sli-intervention-image {
    position: relative;

    min-height: 590px;

    overflow: hidden;

    border-radius: 100px 24px 24px 24px;

    box-shadow: 0 25px 55px rgba(0,0,0,.18);
}

.sli-intervention-image > img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.sli-intervention-image-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8,22,56,.9),
            transparent 60%
        );
}

.sli-image-feature {
    position: absolute;

    left: 18px;
    right: 18px;
    bottom: 18px;

    display: flex;
    align-items: center;
    gap: 11px;

    padding: 14px;

    border-radius: 13px;

    color: #fff;
    background: rgba(8,22,56,.84);

    backdrop-filter: blur(10px);
}

.sli-image-feature > i {
    width: 42px;
    height: 42px;
    min-width: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 11px;

    color: var(--sli-navy);
    background: var(--sli-yellow);
}

.sli-image-feature strong,
.sli-image-feature span {
    display: block;
}

.sli-image-feature strong {
    margin-bottom: 3px;
    font-size: 14px;
}

.sli-image-feature span {
    color: rgba(255,255,255,.64);
    font-size: 10px;
}


/* =========================================================
   04. SCHOOL SUPPORT
========================================================= */

.sli-school-section {
    padding: 80px 0;
    background: #fff;
}

.sli-school-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;

    gap: 55px;
    align-items: center;
}


/* SCHOOL IMAGE */

.sli-school-image {
    position: relative;

    min-height: 560px;

    overflow: hidden;

    border-radius: 25px;

    box-shadow: 0 25px 55px rgba(8,22,56,.13);
}

.sli-school-image > img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.sli-school-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8,22,56,.8),
            transparent 60%
        );
}

.sli-school-badge {
    position: absolute;

    left: 18px;
    right: 18px;
    bottom: 18px;

    display: flex;
    align-items: center;
    gap: 11px;

    padding: 14px;

    border-radius: 13px;

    color: #fff;
    background: rgba(8,22,56,.84);
}

.sli-school-badge > i {
    width: 42px;
    height: 42px;
    min-width: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 11px;

    color: var(--sli-navy);
    background: var(--sli-yellow);
}

.sli-school-badge strong,
.sli-school-badge span {
    display: block;
}

.sli-school-badge strong {
    font-size: 14px;
}

.sli-school-badge span {
    margin-top: 2px;

    color: rgba(255,255,255,.65);

    font-size: 10px;
}


/* SCHOOL LIST */

.sli-school-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 9px;
}

.sli-school-list > div {
    display: flex;
    align-items: center;
    gap: 10px;

    min-height: 62px;

    padding: 10px;

    border-radius: 11px;

    background: var(--sli-light);
    border: 1px solid #e5eaf2;
}

.sli-school-list span {
    width: 37px;
    height: 37px;
    min-width: 37px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 10px;

    color: var(--sli-navy);
    background: var(--sli-yellow);
}

.sli-school-list strong {
    color: #4b5872;

    font-size: 11.5px;
    line-height: 1.4;
}

.sli-school-bottom {
    display: flex;
    align-items: center;
    gap: 11px;

    margin-top: 18px;
    padding: 14px;

    border-radius: 11px;

    background: var(--sli-navy);
}

.sli-school-bottom i {
    color: var(--sli-yellow);
}

.sli-school-bottom p {
    margin: 0;

    color: #fff;

    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.5;
}


/* =========================================================
   05. PARENTS
========================================================= */

.sli-parent-section {
    padding: 80px 0;

    background: var(--sli-light);
}

.sli-parent-box {
    padding: 45px;

    border-radius: 25px;

    background: #fff;

    box-shadow: 0 15px 45px rgba(8,22,56,.06);
}

.sli-parent-heading {
    text-align: center;
}

.sli-parent-heading h2 {
    margin: 0;

    color: var(--sli-navy);

    font-size: clamp(36px,4vw,50px);
    line-height: 1.08;
    font-weight: 800;
}

.sli-parent-heading h2 span {
    color: var(--sli-royal);
}

.sli-parent-intro {
    max-width: 800px;

    margin: 17px auto 30px;

    text-align: center;
}

.sli-parent-intro p {
    margin: 0;

    color: var(--sli-text);

    font-size: 14px;
    line-height: 1.75;
}


/* PARENT PROCESS */

.sli-parent-process {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 12px;
}

.sli-parent-process article {
    position: relative;

    min-height: 215px;

    padding: 23px 18px;

    overflow: hidden;

    border-radius: 15px;

    background: var(--sli-light);
    border: 1px solid #e5eaf2;
}

.sli-parent-process article > span {
    position: absolute;

    right: 10px;
    top: 3px;

    color: rgba(8,22,56,.05);

    font-size: 45px;
    font-weight: 900;
}

.sli-parent-process article > i {
    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 16px;

    border-radius: 12px;

    color: var(--sli-navy);
    background: var(--sli-yellow);
}

.sli-parent-process h3 {
    margin: 0 0 7px;

    color: var(--sli-navy);

    font-size: 14px;
}

.sli-parent-process p {
    margin: 0;

    color: #778197;

    font-size: 11.5px;
    line-height: 1.6;
}


/* MESSAGE */

.sli-parent-message {
    max-width: 900px;

    display: flex;
    align-items: flex-start;
    gap: 12px;

    margin: 25px auto 0;
    padding: 16px 18px;

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            var(--sli-navy),
            var(--sli-royal)
        );
}

.sli-parent-message > i {
    margin-top: 3px;

    color: var(--sli-yellow);

    font-size: 18px;
}

.sli-parent-message p {
    margin: 0;

    color: rgba(255,255,255,.7);

    font-size: 12.5px;
    line-height: 1.65;
}

.sli-parent-message strong {
    color: #fff;
}


/* =========================================================
   06. WHY CHOOSE
========================================================= */

.sli-why-section {
    padding: 80px 0;

    background:
        radial-gradient(
            circle at 95% 5%,
            rgba(255,196,0,.09),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            var(--sli-navy),
            var(--sli-blue) 55%,
            var(--sli-royal)
        );
}

.sli-why-heading {
    display: grid;
    grid-template-columns: 1fr 1fr;

    gap: 55px;
    align-items: end;

    margin-bottom: 35px;
}

.sli-why-heading > p {
    margin: 0;

    color: rgba(255,255,255,.68);

    font-size: 14px;
    line-height: 1.75;
}

.sli-why-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 11px;
}

.sli-why-grid article {
    position: relative;

    min-height: 200px;

    padding: 21px;

    overflow: hidden;

    border-radius: 15px;

    background: rgba(255,255,255,.065);
    border: 1px solid rgba(255,255,255,.1);

    transition: .3s ease;
}

.sli-why-grid article:hover {
    transform: translateY(-5px);

    background: rgba(255,255,255,.1);

    border-color: rgba(255,196,0,.28);
}

.sli-why-grid article > span {
    position: absolute;

    right: 11px;
    top: 3px;

    color: rgba(255,255,255,.055);

    font-size: 45px;
    font-weight: 900;
}

.sli-why-grid article > i {
    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 17px;

    border-radius: 12px;

    color: var(--sli-navy);
    background: var(--sli-yellow);
}

.sli-why-grid h3 {
    margin: 0 0 7px;

    color: #fff;

    font-size: 14px;
}

.sli-why-grid p {
    margin: 0;

    color: rgba(255,255,255,.62);

    font-size: 11.5px;
    line-height: 1.55;
}


/* =========================================================
   07. FIND THEIR VOICE
========================================================= */

.sli-voice-section {
    position: relative;

    padding: 85px 0;

    background:
        radial-gradient(
            circle at 10% 90%,
            rgba(255,196,0,.07),
            transparent 25%
        ),
        #fff;
}

.sli-voice-box {
    max-width: 900px;

    margin: 0 auto;

    text-align: center;
}

.sli-voice-icon {
    width: 70px;
    height: 70px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin: 0 auto 17px;

    border-radius: 20px;

    color: var(--sli-navy);
    background: var(--sli-yellow);

    font-size: 25px;

    box-shadow: 0 12px 28px rgba(255,196,0,.22);
}

.sli-voice-label {
    display: block;

    margin-bottom: 8px;

    color: var(--sli-royal);

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.sli-voice-box h2 {
    margin: 0 0 18px;

    color: var(--sli-navy);

    font-size: clamp(40px,5vw,58px);
    line-height: 1.05;
    font-weight: 800;
    letter-spacing: -1.4px;
}

.sli-voice-box h2 span {
    display: block;
    color: var(--sli-royal);
}

.sli-voice-box > p {
    max-width: 800px;

    margin: 0 auto;

    color: var(--sli-text);

    font-size: 15px;
    line-height: 1.8;
}

.sli-voice-box > p strong {
    color: var(--sli-navy);
}


/* VALUES */

.sli-voice-values {
    max-width: 700px;

    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 9px;

    margin: 28px auto;
}

.sli-voice-values > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;

    padding: 15px;

    border-radius: 12px;

    background: var(--sli-light);
    border: 1px solid #e5eaf2;
}

.sli-voice-values i {
    color: var(--sli-royal);
    font-size: 18px;
}

.sli-voice-values strong {
    color: var(--sli-navy);
    font-size: 12px;
}


/* FINAL STATEMENT */

.sli-voice-statement {
    display: flex;
    align-items: center;
    gap: 17px;

    margin-top: 25px;
}

.sli-voice-statement > span {
    flex: 1;

    height: 1px;

    background: #dfe4ed;
}

.sli-voice-statement p {
    max-width: 620px;

    margin: 0;

    color: #69758b;

    font-size: 12.5px;
    line-height: 1.7;
}

.sli-voice-statement strong {
    color: var(--sli-navy);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .sli-challenge-section,
    .sli-assessment-section,
    .sli-intervention-section,
    .sli-school-section,
    .sli-parent-section,
    .sli-why-section,
    .sli-voice-section {
        padding: 65px 0;
    }


    .sli-challenge-grid,
    .sli-intervention-grid,
    .sli-school-grid {
        grid-template-columns: 1fr;

        gap: 40px;
    }


    .sli-challenge-visual {
        min-height: 500px;
    }


    .sli-assessment-grid,
    .sli-parent-process,
    .sli-why-grid {
        grid-template-columns: repeat(2, 1fr);
    }


    .sli-intervention-image {
        min-height: 500px;
    }


    .sli-school-image {
        min-height: 480px;

        order: 2;
    }


    .sli-school-content {
        order: 1;
    }


    .sli-why-heading {
        grid-template-columns: 1fr;

        gap: 12px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .sli-page-container {
        width: calc(100% - 28px);
    }


    .sli-challenge-section,
    .sli-assessment-section,
    .sli-intervention-section,
    .sli-school-section,
    .sli-parent-section,
    .sli-why-section,
    .sli-voice-section {
        padding: 52px 0;
    }


    .sli-challenge-content h2,
    .sli-center-heading h2,
    .sli-intervention-content h2,
    .sli-school-content h2,
    .sli-parent-heading h2,
    .sli-why-heading h2 {
        font-size: 33px;
    }


    .sli-challenge-visual,
    .sli-intervention-image,
    .sli-school-image {
        min-height: 400px;
    }


    .sli-sign-list,
    .sli-intervention-list,
    .sli-school-list {
        grid-template-columns: 1fr;
    }


    .sli-sign-wide {
        grid-column: auto;
    }


    .sli-assessment-grid,
    .sli-parent-process,
    .sli-why-grid {
        grid-template-columns: 1fr;
    }


    .sli-assessment-card,
    .sli-parent-process article,
    .sli-why-grid article {
        min-height: auto;
    }


    .sli-parent-box {
        padding: 30px 20px;
    }


    .sli-voice-values {
        grid-template-columns: repeat(2, 1fr);
    }


    .sli-voice-box h2 {
        font-size: 38px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .sli-challenge-content h2,
    .sli-center-heading h2,
    .sli-intervention-content h2,
    .sli-school-content h2,
    .sli-parent-heading h2,
    .sli-why-heading h2 {
        font-size: 30px;
    }


    .sli-challenge-visual,
    .sli-intervention-image,
    .sli-school-image {
        min-height: 340px;

        border-radius: 20px;
    }


    .sli-challenge-image-box span,
    .sli-image-feature span,
    .sli-school-badge span {
        display: none;
    }


    .sli-parent-box {
        padding: 25px 15px;
    }


    .sli-voice-box h2 {
        font-size: 32px;
    }


    .sli-voice-statement > span {
        display: none;
    }

}

/* =========================================================
   HEAR 'N' SAY - SERVICES DROPDOWN SCROLL FIX
========================================================= */

/* Desktop */
@media (min-width: 992px) {

    .hns-services-menu {
        max-height: calc(100vh - 140px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;

        overscroll-behavior: contain;

        scrollbar-width: thin;
        scrollbar-color: #10266E #081638;
    }


    /* Chrome / Edge / Safari */

    .hns-services-menu::-webkit-scrollbar {
        width: 7px;
    }

    .hns-services-menu::-webkit-scrollbar-track {
        background: #081638;
        border-radius: 10px;
    }

    .hns-services-menu::-webkit-scrollbar-thumb {
        background: #10266E;
        border-radius: 10px;
    }

    .hns-services-menu::-webkit-scrollbar-thumb:hover {
        background: #ffd633;
    }

}


/* =========================================================
   MOBILE SERVICES MENU SCROLL
========================================================= */

@media (max-width: 991px) {

    .hns-services-menu {
        position: relative !important;

        width: 100% !important;

        max-height: 55vh !important;

        overflow-y: auto !important;
        overflow-x: hidden !important;

        -webkit-overflow-scrolling: touch;

        overscroll-behavior: contain;

        scrollbar-width: thin;
        scrollbar-color: #10266E #081638;
    }


    .hns-services-menu::-webkit-scrollbar {
        width: 5px;
    }


    .hns-services-menu::-webkit-scrollbar-track {
        background: rgba(8, 22, 56, 0.08);
    }


    .hns-services-menu::-webkit-scrollbar-thumb {
        background: #10266E;
        border-radius: 20px;
    }

}

/* ==========================================
   HEAR N SAY MOBILE SERVICES DROPDOWN
========================================== */

.mobile-dropdown {
    width: 100%;
}

/* Services Button */
.mobile-dropdown-toggle {
    width: 100%;
    border: 0;
    background: transparent;
    padding: 14px 15px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    color: #ffffff;
    font-size: 16px;
    font-weight: 600;

    cursor: pointer;
    text-align: left;
}

/* Arrow */
.mobile-dropdown-toggle i {
    font-size: 14px;
    transition: transform 0.3s ease;
}

/* Rotate arrow */
.mobile-dropdown.active .mobile-dropdown-toggle i {
    transform: rotate(180deg);
}


/* ==========================================
   SUB MENU
========================================== */

.mobile-submenu {
    display: none;

    margin: 4px 10px 10px;
    padding: 7px;

    list-style: none;

    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;

    /* SCROLL */
    max-height: 300px;
    overflow-y: auto;
    overflow-x: hidden;

    -webkit-overflow-scrolling: touch;
}


/* Open submenu */
.mobile-dropdown.active .mobile-submenu {
    display: block;
}


/* Service links */
.mobile-submenu li {
    margin: 0;
    padding: 0;
}

.mobile-submenu li a {
    display: flex;
    align-items: center;
    gap: 11px;

    padding: 11px 12px;

    color: #ffffff;
    text-decoration: none;

    font-size: 14px;
    font-weight: 500;

    border-radius: 8px;

    transition: all 0.25s ease;
}


/* Icons */
.mobile-submenu li a i {
    width: 30px;
    height: 30px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    background: rgba(255,196,0,0.12);

    color: #ffc400;

    border-radius: 7px;

    font-size: 14px;
}


/* Hover */
.mobile-submenu li a:hover {
    background: rgba(255,255,255,0.08);
    color: #ffc400;
}


/* ==========================================
   PREMIUM SCROLLBAR
========================================== */

.mobile-submenu::-webkit-scrollbar {
    width: 4px;
}

.mobile-submenu::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.05);
    border-radius: 20px;
}

.mobile-submenu::-webkit-scrollbar-thumb {
    background: #ffc400;
    border-radius: 20px;
}


/* Firefox */
.mobile-submenu {
    scrollbar-width: thin;
    scrollbar-color: #ffc400 transparent;
}

/* =====================================================
   HEAR N SAY MOBILE MENU - COLOR FIX
===================================================== */

@media (max-width: 991.98px) {

    /* MAIN MOBILE MENU LINKS */
    .mobile-nav > li > a {
        color: #081638 !important;
        font-size: 16px;
        font-weight: 600;
        text-decoration: none;
    }

    .mobile-nav > li > a:hover,
    .mobile-nav > li > a:focus {
        color: #19368f !important;
    }


    /* =========================================
       SERVICES BUTTON
    ========================================= */

    .mobile-nav .mobile-dropdown-toggle {
        width: 100%;

        display: flex;
        align-items: center;
        justify-content: space-between;

        padding: 14px 15px;

        background: transparent !important;
        border: none !important;

        color: #081638 !important;

        font-size: 16px;
        font-weight: 700;

        text-align: left;
        cursor: pointer;
    }


    /* Services arrow */
    .mobile-nav .mobile-dropdown-toggle i {
        color: #19368f !important;
        font-size: 14px;

        transition: transform 0.3s ease;
    }

    .mobile-nav .mobile-dropdown.active
    .mobile-dropdown-toggle i {
        transform: rotate(180deg);
    }


    /* =========================================
       SERVICES DROPDOWN BOX
    ========================================= */

    .mobile-nav .mobile-submenu {

        display: none;

        list-style: none;

        margin: 5px 10px 12px !important;
        padding: 8px !important;

        background: #f4f7ff !important;

        border: 1px solid #e2e8f5 !important;

        border-radius: 12px;

        max-height: 310px;

        overflow-y: auto;
        overflow-x: hidden;

        box-shadow:
            inset 0 0 0 1px rgba(8,22,56,0.02);
    }


    /* Show dropdown */
    .mobile-nav .mobile-dropdown.active
    .mobile-submenu {
        display: block !important;
    }


    /* =========================================
       SERVICE LINKS
    ========================================= */

    .mobile-nav .mobile-submenu li a {

        display: flex !important;
        align-items: center;

        gap: 11px;

        width: 100%;

        padding: 11px 10px !important;

        color: #081638 !important;

        font-size: 14px;
        font-weight: 600;

        line-height: 1.4;

        text-decoration: none !important;

        border-radius: 8px;

        transition: all 0.25s ease;
    }


    /* SERVICE ICON */
    .mobile-nav .mobile-submenu li a i {

        width: 32px;
        height: 32px;

        flex: 0 0 32px;

        display: flex;
        align-items: center;
        justify-content: center;

        background: #081638 !important;

        color: #ffc400 !important;

        border-radius: 8px;

        font-size: 14px;
    }


    /* Hover */
    .mobile-nav .mobile-submenu li a:hover {

        background: #ffffff !important;

        color: #19368f !important;

        transform: translateX(2px);
    }


    /* =========================================
       ACTIVE SERVICE
    ========================================= */

    .mobile-nav .mobile-submenu li a.active {

        background: #081638 !important;

        color: #ffffff !important;
    }

    .mobile-nav .mobile-submenu li a.active i {

        background: #ffc400 !important;

        color: #081638 !important;
    }


    /* =========================================
       SCROLLBAR
    ========================================= */

    .mobile-nav .mobile-submenu::-webkit-scrollbar {
        width: 4px;
    }

    .mobile-nav .mobile-submenu::-webkit-scrollbar-track {
        background: #e8edf7;
    }

    .mobile-nav .mobile-submenu::-webkit-scrollbar-thumb {
        background: #ffc400;
        border-radius: 20px;
    }

}

/* =========================================
   PROSTHETICS & ORTHOTICS CENTRE
========================================= */

.po-page {
    --po-navy: #081638;
    --po-blue: #19368f;
    --po-blue2: #0c1d50;
    --po-yellow: #ffc400;
    --po-text: #27324a;
    --po-muted: #68738b;
    --po-light: #f5f7fc;
    --po-white: #ffffff;

    overflow: hidden;
    background: #fff;
    color: var(--po-text);
}

.po-page *,
.po-page *::before,
.po-page *::after {
    box-sizing: border-box;
}

.po-container {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}


/* ================= HERO ================= */

.po-hero-section {
    position: relative;
    padding: 85px 0;
    background:
        radial-gradient(circle at 10% 20%, rgba(255,196,0,.12), transparent 28%),
        linear-gradient(135deg, #081638 0%, #0c1d50 55%, #19368f 100%);
}

.po-hero-grid {
    display: grid;
    grid-template-columns: 1.08fr .92fr;
    gap: 65px;
    align-items: center;
}

.po-eyebrow,
.po-mini-title {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--po-yellow);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-size: 14px;
    font-weight: 800;
}

.po-eyebrow {
    padding: 10px 16px;
    border: 1px solid rgba(255,196,0,.3);
    border-radius: 50px;
    background: rgba(255,255,255,.06);
}

.po-hero-content h1 {
    color: #fff;
    font-size: clamp(38px, 4.5vw, 64px);
    line-height: 1.08;
    margin: 24px 0;
    font-weight: 800;
    letter-spacing: -1.8px;
}

.po-hero-content h1 span {
    display: block;
    color: var(--po-yellow);
}

.po-hero-content p {
    color: rgba(255,255,255,.8);
    font-size: 17px;
    line-height: 1.8;
    margin: 0 0 15px;
}

.po-hero-content p strong {
    color: #fff;
}

.po-hero-features {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.po-hero-features span {
    display: flex;
    gap: 8px;
    align-items: center;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    padding: 10px 14px;
    border-radius: 8px;
    background: rgba(255,255,255,.08);
}

.po-hero-features i {
    color: var(--po-yellow);
}

.po-hero-image {
    position: relative;
    padding: 20px;
}

.po-hero-image img {
    width: 100%;
    height: 530px;
    object-fit: cover;
    border-radius: 28px;
    position: relative;
    z-index: 2;
    box-shadow: 0 30px 70px rgba(0,0,0,.3);
}

.po-image-shape {
    position: absolute;
    width: 80%;
    height: 80%;
    right: -10px;
    top: -5px;
    border: 2px solid rgba(255,196,0,.55);
    border-radius: 30px;
}

.po-floating-card {
    position: absolute;
    z-index: 4;
    left: -25px;
    bottom: 50px;
    display: flex;
    align-items: center;
    gap: 13px;
    background: #fff;
    padding: 15px 18px;
    border-radius: 15px;
    box-shadow: 0 18px 45px rgba(0,0,0,.22);
}

.po-floating-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--po-yellow);
    color: var(--po-navy);
    display: grid;
    place-items: center;
    font-size: 20px;
}

.po-floating-card strong,
.po-floating-card small {
    display: block;
}

.po-floating-card strong {
    color: var(--po-navy);
    font-size: 15px;
}

.po-floating-card small {
    color: var(--po-muted);
    margin-top: 3px;
}


/* ================= GENERAL HEADING ================= */

.po-section-heading {
    max-width: 760px;
    text-align: center;
    margin: 0 auto 45px;
}

.po-section-heading > span {
    color: var(--po-blue);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-size: 13px;
}

.po-section-heading h2 {
    color: var(--po-navy);
    font-size: clamp(31px, 4vw, 46px);
    line-height: 1.15;
    margin: 12px 0 15px;
}

.po-section-heading p {
    font-size: 17px;
    color: var(--po-muted);
    line-height: 1.75;
}


/* ================= UNDERSTANDING ================= */

.po-understanding-section {
    padding: 85px 0;
}

.po-understanding-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

.po-type-card {
    position: relative;
    padding: 38px;
    border-radius: 22px;
    background: #fff;
    border: 1px solid #e6eaf3;
    box-shadow: 0 15px 45px rgba(8,22,56,.07);
    overflow: hidden;
    transition: .35s;
}

.po-type-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 22px 55px rgba(8,22,56,.13);
}

.po-type-featured {
    background: linear-gradient(135deg, var(--po-navy), var(--po-blue));
}

.po-type-number {
    position: absolute;
    right: 25px;
    top: 12px;
    font-size: 70px;
    font-weight: 900;
    color: rgba(25,54,143,.06);
}

.po-type-featured .po-type-number {
    color: rgba(255,255,255,.07);
}

.po-type-icon {
    width: 65px;
    height: 65px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    background: rgba(255,196,0,.17);
    color: var(--po-navy);
    font-size: 26px;
    margin-bottom: 22px;
}

.po-type-card h3 {
    font-size: 26px;
    color: var(--po-navy);
    margin-bottom: 12px;
}

.po-type-card p {
    color: var(--po-muted);
    line-height: 1.8;
    font-size: 16px;
}

.po-type-featured h3,
.po-type-featured p,
.po-type-featured .po-type-bottom {
    color: #fff;
}

.po-type-featured p {
    color: rgba(255,255,255,.78);
}

.po-type-featured .po-type-icon {
    background: var(--po-yellow);
}

.po-type-bottom {
    margin-top: 22px;
    font-weight: 700;
    color: var(--po-blue);
}

.po-type-bottom i {
    color: var(--po-yellow);
    margin-right: 8px;
}


/* ================= ASSESSMENT ================= */

.po-assessment-section {
    padding: 80px 0;
    background: var(--po-light);
}

.po-assessment-box {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    background: #fff;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(8,22,56,.08);
}

.po-assessment-image {
    position: relative;
    min-height: 540px;
}

.po-assessment-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
}

.po-image-label {
    position: absolute;
    left: 25px;
    right: 25px;
    bottom: 25px;
    padding: 16px;
    border-radius: 12px;
    background: rgba(8,22,56,.9);
    color: #fff;
    font-weight: 700;
}

.po-image-label i {
    color: var(--po-yellow);
    margin-right: 8px;
}

.po-assessment-content {
    padding: 55px;
}

.po-assessment-content h2,
.po-rehab-content h2 {
    font-size: clamp(32px, 4vw, 45px);
    color: var(--po-navy);
    margin: 12px 0 18px;
}

.po-assessment-content > p,
.po-rehab-content > p {
    color: var(--po-muted);
    font-size: 16px;
    line-height: 1.8;
}

.po-assessment-points {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin: 25px 0;
}

.po-assessment-points div {
    padding: 14px;
    background: var(--po-light);
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    font-size: 14px;
}

.po-assessment-points i {
    color: var(--po-blue);
}

.po-highlight-text {
    background: rgba(255,196,0,.13);
    border-left: 4px solid var(--po-yellow);
    padding: 16px 18px;
    border-radius: 0 10px 10px 0;
    color: var(--po-navy) !important;
    font-weight: 600;
}


/* ================= SERVICES ================= */

.po-services-section {
    padding: 90px 0;
    background:
        radial-gradient(circle at 80% 20%, rgba(255,196,0,.09), transparent 25%),
        linear-gradient(135deg, var(--po-navy), var(--po-blue2));
}

.po-heading-light h2 {
    color: #fff;
}

.po-heading-light > span {
    color: var(--po-yellow);
}

.po-heading-light p {
    color: rgba(255,255,255,.7);
}

.po-services-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.po-service-card {
    padding: 27px 23px;
    border: 1px solid rgba(255,255,255,.11);
    background: rgba(255,255,255,.07);
    border-radius: 17px;
    transition: .35s;
}

.po-service-card:hover {
    background: #fff;
    transform: translateY(-6px);
}

.po-service-card > i {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--po-yellow);
    color: var(--po-navy);
    font-size: 19px;
    margin-bottom: 18px;
}

.po-service-card h3 {
    color: #fff;
    font-size: 18px;
    margin-bottom: 9px;
}

.po-service-card p {
    color: rgba(255,255,255,.67);
    line-height: 1.65;
    font-size: 14px;
}

.po-service-card:hover h3 {
    color: var(--po-navy);
}

.po-service-card:hover p {
    color: var(--po-muted);
}


/* ================= REHAB ================= */

.po-rehab-section {
    padding: 90px 0;
}

.po-rehab-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 60px;
    align-items: center;
}

.po-check-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 13px;
    margin-top: 28px;
}

.po-check-grid div {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    color: var(--po-text);
    font-weight: 600;
    line-height: 1.5;
}

.po-check-grid i {
    color: var(--po-blue);
    margin-top: 4px;
}

.po-rehab-visual {
    position: relative;
}

.po-rehab-visual img {
    width: 100%;
    height: 480px;
    object-fit: cover;
    border-radius: 26px;
}

.po-rehab-stat {
    position: absolute;
    left: -30px;
    bottom: 30px;
    padding: 18px 25px;
    border-radius: 15px;
    background: var(--po-yellow);
    box-shadow: 0 15px 35px rgba(8,22,56,.18);
}

.po-rehab-stat strong,
.po-rehab-stat span {
    display: block;
}

.po-rehab-stat strong {
    font-size: 30px;
    color: var(--po-navy);
}

.po-rehab-stat span {
    font-weight: 700;
    color: var(--po-navy);
}


/* ================= CARE ================= */

.po-care-section {
    padding: 85px 0;
    background: var(--po-light);
}

.po-care-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

.po-care-card {
    padding: 40px;
    background: #fff;
    border-radius: 22px;
    box-shadow: 0 15px 45px rgba(8,22,56,.06);
}

.po-care-icon {
    width: 60px;
    height: 60px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: var(--po-yellow);
    color: var(--po-navy);
    font-size: 23px;
    margin-bottom: 20px;
}

.po-care-card > span {
    color: var(--po-blue);
    font-weight: 800;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1.2px;
}

.po-care-card h3 {
    font-size: 27px;
    color: var(--po-navy);
    margin: 9px 0 14px;
}

.po-care-card > p {
    color: var(--po-muted);
    line-height: 1.8;
}

.po-care-note {
    margin-top: 20px;
    padding: 14px;
    background: var(--po-light);
    border-radius: 10px;
    color: var(--po-navy);
    font-weight: 600;
}

.po-care-note i {
    color: var(--po-blue);
    margin-right: 7px;
}

.po-specialists {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 20px;
}

.po-specialists span {
    padding: 8px 12px;
    border-radius: 30px;
    background: rgba(25,54,143,.08);
    color: var(--po-blue);
    font-size: 12px;
    font-weight: 700;
}


/* ================= WHY CHOOSE ================= */

.po-why-section {
    padding: 90px 0;
}

.po-why-wrapper {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    border-radius: 28px;
    overflow: hidden;
    background: linear-gradient(135deg, var(--po-navy), var(--po-blue));
    box-shadow: 0 25px 70px rgba(8,22,56,.15);
}

.po-why-heading {
    padding: 55px;
    background: rgba(0,0,0,.12);
}

.po-why-heading > span {
    color: var(--po-yellow);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.4px;
    font-size: 13px;
}

.po-why-heading h2 {
    color: #fff;
    font-size: clamp(32px, 4vw, 47px);
    line-height: 1.15;
    margin: 14px 0 20px;
}

.po-why-heading h2 strong {
    color: var(--po-yellow);
}

.po-why-heading p {
    color: rgba(255,255,255,.72);
    line-height: 1.8;
}

.po-why-icon-big {
    margin-top: 30px;
    font-size: 55px;
    color: var(--po-yellow);
}

.po-why-list {
    padding: 38px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.po-why-item {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 16px;
    border-radius: 12px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.09);
}

.po-why-item span {
    min-width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    background: var(--po-yellow);
    border-radius: 50%;
    color: var(--po-navy);
    font-size: 12px;
    font-weight: 900;
}

.po-why-item p {
    color: #fff;
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
}


/* ================= FINAL ================= */

.po-future-section {
    padding: 0 0 90px;
}

.po-future-box {
    position: relative;
    max-width: 1000px;
    margin: auto;
    text-align: center;
    padding: 60px 65px;
    background: var(--po-light);
    border-radius: 28px;
}

.po-future-icon {
    width: 70px;
    height: 70px;
    margin: 0 auto 20px;
    display: grid;
    place-items: center;
    background: var(--po-yellow);
    color: var(--po-navy);
    border-radius: 50%;
    font-size: 27px;
}

.po-future-box > span {
    color: var(--po-blue);
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: 1.4px;
    font-size: 13px;
}

.po-future-box h2 {
    color: var(--po-navy);
    font-size: clamp(32px, 4vw, 47px);
    line-height: 1.15;
    margin: 12px 0 20px;
}

.po-future-box h2 strong {
    color: var(--po-blue);
}

.po-future-box > p {
    color: var(--po-muted);
    line-height: 1.8;
    font-size: 16px;
}

.po-future-line {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 25px 0;
}

.po-future-line span {
    height: 1px;
    background: #d7ddea;
    flex: 1;
}

.po-future-line p {
    color: var(--po-navy);
    font-size: 13px;
    font-weight: 800;
    margin: 0;
}

.po-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 25px;
    border-radius: 8px;
    background: var(--po-yellow);
    color: var(--po-navy);
    font-weight: 800;
    text-decoration: none;
    transition: .3s;
}

.po-cta-btn:hover {
    background: var(--po-navy);
    color: #fff;
    transform: translateY(-3px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .po-hero-grid,
    .po-assessment-box,
    .po-rehab-grid,
    .po-why-wrapper {
        grid-template-columns: 1fr;
    }

    .po-services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .po-hero-image {
        max-width: 650px;
        margin: auto;
        width: 100%;
    }

    .po-assessment-image {
        min-height: 430px;
    }

    .po-rehab-visual {
        max-width: 650px;
        margin: auto;
        width: 100%;
    }

    .po-rehab-stat {
        left: 20px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .po-container {
        width: min(100% - 28px, 1180px);
    }

    .po-hero-section,
    .po-understanding-section,
    .po-assessment-section,
    .po-services-section,
    .po-rehab-section,
    .po-care-section,
    .po-why-section {
        padding: 60px 0;
    }

    .po-hero-grid {
        gap: 35px;
    }

    .po-hero-content h1 {
        font-size: 37px;
        letter-spacing: -1px;
    }

    .po-hero-content p {
        font-size: 16px;
    }

    .po-hero-image {
        padding: 0;
    }

    .po-hero-image img {
        height: 390px;
        border-radius: 20px;
    }

    .po-image-shape {
        display: none;
    }

    .po-floating-card {
        position: relative;
        left: 0;
        bottom: auto;
        margin: -35px 15px 0;
    }

    .po-understanding-grid,
    .po-care-grid,
    .po-check-grid,
    .po-why-list {
        grid-template-columns: 1fr;
    }

    .po-type-card,
    .po-care-card {
        padding: 28px;
    }

    .po-assessment-content {
        padding: 30px 22px;
    }

    .po-assessment-image {
        min-height: 350px;
    }

    .po-assessment-points {
        grid-template-columns: 1fr;
    }

    .po-services-grid {
        grid-template-columns: 1fr;
    }

    .po-service-card {
        padding: 24px;
    }

    .po-rehab-grid {
        gap: 35px;
    }

    .po-rehab-visual img {
        height: 380px;
    }

    .po-why-heading,
    .po-why-list {
        padding: 30px 22px;
    }

    .po-future-section {
        padding-bottom: 60px;
    }

    .po-future-box {
        padding: 40px 22px;
        border-radius: 20px;
    }

    .po-future-line span {
        display: none;
    }

    .po-future-line {
        justify-content: center;
    }

    .po-future-line p {
        line-height: 1.7;
    }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .po-hero-content h1 {
        font-size: 33px;
    }

    .po-section-heading h2,
    .po-assessment-content h2,
    .po-rehab-content h2,
    .po-why-heading h2,
    .po-future-box h2 {
        font-size: 30px;
    }

    .po-hero-features {
        flex-direction: column;
        align-items: flex-start;
    }

    .po-hero-image img {
        height: 330px;
    }

    .po-rehab-visual img {
        height: 330px;
    }

    .po-image-label {
        left: 15px;
        right: 15px;
        bottom: 15px;
        font-size: 13px;
    }

    .po-cta-btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 991px) {

    .navbar-nav {
        text-align: center !important;
    }

    .navbar-nav .nav-item {
        width: 100%;
        text-align: center !important;
    }

    .navbar-nav .nav-link {
        display: flex !important;
        align-items: center;
        justify-content: center !important;
        text-align: center !important;
        width: 100%;
    }
}

/* =========================================
   CONDITIONS WE HELP IMPROVE
========================================= */

.hns-condition-section {
    position: relative;
    padding: 85px 0 80px;
    background:
        radial-gradient(
            circle at 95% 10%,
            rgba(25, 54, 143, 0.08),
            transparent 27%
        ),
        #f6f8fc;
    overflow: hidden;
}


/* =========================================
   HEADING
========================================= */

.hns-condition-heading {
    display: grid;
    grid-template-columns: 1fr .8fr;
    gap: 70px;
    align-items: end;
    margin-bottom: 42px;
}


.hns-condition-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    color: #19368f;

    font-size: 13px;
    font-weight: 800;

    text-transform: uppercase;
    letter-spacing: 1.4px;

    margin-bottom: 13px;
}


.hns-condition-label i {
    color: #ffc400;
    font-size: 16px;
}


.hns-condition-heading h2 {
    margin: 0;

    color: #081638;

    font-size: clamp(36px, 4vw, 52px);
    line-height: 1.08;

    font-weight: 800;

    letter-spacing: -1.3px;
}


.hns-condition-heading h2 span {
    display: block;
    color: #19368f;
}


.hns-condition-heading-right p {
    margin: 0;

    color: #66728a;

    font-size: 16px;
    line-height: 1.75;
}


/* =========================================
   NAVIGATION ARROWS
========================================= */

.hns-condition-arrows {
    display: flex;
    gap: 10px;

    margin-top: 20px;
}


.hns-condition-prev,
.hns-condition-next {
    width: 46px;
    height: 46px;

    border: 0;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    font-size: 15px;

    transition: all .3s ease;
}


.hns-condition-prev {
    background: #ffffff;
    color: #081638;

    border: 1px solid #dde3ef;
}


.hns-condition-next {
    background: #ffc400;
    color: #081638;
}


.hns-condition-prev:hover,
.hns-condition-next:hover {
    background: #081638;
    color: #ffffff;

    transform: translateY(-3px);
}


/* =========================================
   SWIPER
========================================= */

.hnsConditionSwiper {
    overflow: visible;
    padding-bottom: 50px;
}


.hnsConditionSwiper .swiper-slide {
    height: auto;
}


/* =========================================
   CARD
========================================= */

.hns-condition-card {
    height: 100%;

    background: #ffffff;

    border: 1px solid #e6eaf2;

    border-radius: 22px;

    overflow: hidden;

    box-shadow:
        0 12px 35px rgba(8, 22, 56, 0.07);

    transition:
        transform .35s ease,
        box-shadow .35s ease;
}


.hns-condition-card:hover {
    transform: translateY(-8px);

    box-shadow:
        0 22px 55px rgba(8, 22, 56, 0.14);
}


/* =========================================
   IMAGE
========================================= */

.hns-condition-image {
    position: relative;

    height: 225px;

    overflow: hidden;
}


.hns-condition-image::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8, 22, 56, .75),
            rgba(8, 22, 56, .05) 65%
        );

    pointer-events: none;
}


.hns-condition-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;

    transition: transform .6s ease;
}


.hns-condition-card:hover
.hns-condition-image img {
    transform: scale(1.07);
}


/* =========================================
   NUMBER
========================================= */

.hns-condition-number {
    position: absolute;

    top: 16px;
    left: 17px;

    z-index: 3;

    min-width: 46px;
    height: 36px;

    padding: 0 12px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: rgba(8, 22, 56, .84);

    backdrop-filter: blur(8px);

    border: 1px solid
        rgba(255, 255, 255, .2);

    border-radius: 8px;

    color: #ffffff;

    font-size: 13px;
    font-weight: 800;
}


/* =========================================
   IMAGE ICON
========================================= */

.hns-condition-icon {
    position: absolute;

    right: 18px;
    bottom: 17px;

    z-index: 4;

    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 14px;

    background: #ffc400;

    color: #081638;

    font-size: 19px;

    box-shadow:
        0 10px 25px rgba(0, 0, 0, .2);
}


/* =========================================
   BODY
========================================= */

.hns-condition-body {
    padding: 25px 24px 24px;
}


.hns-condition-category {
    color: #19368f;

    font-size: 12px;
    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: 1.1px;
}


.hns-condition-body h3 {
    margin: 8px 0 10px;

    color: #081638;

    font-size: 22px;
    line-height: 1.25;

    font-weight: 800;
}


.hns-condition-body p {
    margin: 0 0 20px;

    color: #69758b;

    font-size: 14px;
    line-height: 1.7;
}


/* =========================================
   LINK
========================================= */

.hns-condition-link {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    color: #081638;

    font-size: 14px;
    font-weight: 800;

    text-decoration: none;

    padding-top: 17px;

    border-top: 1px solid #edf0f5;

    transition: color .3s ease;
}


.hns-condition-link i {
    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #f3f5fa;

    color: #19368f;

    transition: all .3s ease;
}


.hns-condition-link:hover {
    color: #19368f;
}


.hns-condition-link:hover i {
    background: #ffc400;
    color: #081638;

    transform: translateX(3px);
}


/* =========================================
   PAGINATION
========================================= */

.hns-condition-pagination {
    bottom: 0 !important;
}


.hns-condition-pagination
.swiper-pagination-bullet {

    width: 8px;
    height: 8px;

    background: #19368f;

    opacity: .25;

    transition: .3s;
}


.hns-condition-pagination
.swiper-pagination-bullet-active {

    width: 28px;

    border-radius: 10px;

    opacity: 1;

    background: #19368f;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .hns-condition-section {
        padding: 70px 0 65px;
    }


    .hns-condition-heading {
        grid-template-columns: 1fr;

        gap: 20px;

        margin-bottom: 35px;
    }


    .hns-condition-heading-right {
        max-width: 700px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .hns-condition-section {
        padding: 55px 0;
    }


    .hns-condition-heading {
        text-align: center;

        margin-bottom: 30px;
    }


    .hns-condition-label {
        justify-content: center;
    }


    .hns-condition-heading h2 {
        font-size: 34px;

        letter-spacing: -.6px;
    }


    .hns-condition-heading-right p {
        font-size: 15px;
        line-height: 1.7;
    }


    .hns-condition-arrows {
        justify-content: center;
    }


    .hns-condition-image {
        height: 235px;
    }


    .hns-condition-body {
        padding: 22px 20px;
    }


    .hns-condition-body h3 {
        font-size: 21px;
    }


    .hnsConditionSwiper {
        padding-bottom: 42px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .hns-condition-heading h2 {
        font-size: 31px;
    }


    .hns-condition-image {
        height: 220px;
    }


    .hns-condition-body p {
        font-size: 14px;
    }

}

.hns-condition-card {
    cursor: pointer;
}

.hns-condition-card:focus {
    outline: 3px solid #ffc400;
    outline-offset: 3px;
}

.hns-condition-card:hover .hns-condition-link {
    color: #19368f;
}

.hns-condition-card:hover .hns-condition-link i {
    background: #ffc400;
    color: #081638;
    transform: translateX(4px);
}

/* =========================================
   OUR TEAM BANNER
========================================= */

.hns-team-banner {
    position: relative;
    min-height: 420px;
    display: flex;
    align-items: center;

    padding: 85px 0;

    overflow: hidden;

    background:
        linear-gradient(
            90deg,
            rgba(8, 22, 56, 0.98) 0%,
            rgba(12, 29, 80, 0.94) 45%,
            rgba(25, 54, 143, 0.78) 100%
        ),
        url("images/banner-pages.jpg")
        center / cover no-repeat;
}


/* dark overlay */
.hns-team-banner-overlay {
    position: absolute;
    inset: 0;

    background:
        radial-gradient(
            circle at 85% 25%,
            rgba(255, 196, 0, 0.16),
            transparent 28%
        );

    pointer-events: none;
}


/* content */
.hns-team-banner-content {
    position: relative;
    z-index: 3;

    max-width: 820px;
}


/* small label */
.hns-team-banner-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    padding: 10px 16px;

    border-radius: 50px;

    border: 1px solid rgba(255, 196, 0, 0.35);

    background: rgba(255, 255, 255, 0.07);

    color: #ffc400;

    font-size: 13px;
    font-weight: 800;

    text-transform: uppercase;
    letter-spacing: 1.4px;

    backdrop-filter: blur(10px);
}


.hns-team-banner-label i {
    font-size: 15px;
}


/* heading */
.hns-team-banner h1 {
    margin: 20px 0 18px;

    color: #ffffff;

    font-size: clamp(42px, 5vw, 65px);
    line-height: 1.05;

    font-weight: 800;

    letter-spacing: -1.8px;
}


.hns-team-banner h1 span {
    color: #ffc400;
}


/* description */
.hns-team-banner p {
    max-width: 700px;

    margin: 0 0 28px;

    color: rgba(255, 255, 255, 0.82);

    font-size: 17px;
    line-height: 1.8;

    font-weight: 400;
}


/* breadcrumb */
.hns-team-breadcrumb {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 12px;

    padding: 11px 16px;

    border-radius: 10px;

    backdrop-filter: blur(12px);
}


.hns-team-breadcrumb a,
.hns-team-breadcrumb strong {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;
}


.hns-team-breadcrumb a {
    color: #ffffff;

    transition: 0.3s ease;
}


.hns-team-breadcrumb a:hover {
    color: #ffc400;
}


.hns-team-breadcrumb strong {
    color: #ffc400;
}


.hns-team-breadcrumb > span {
    color: rgba(255, 255, 255, 0.5);

    font-size: 10px;
}


/* decorative circles */
.hns-team-banner-decoration {
    position: absolute;

    border-radius: 50%;

    border: 1px solid rgba(255, 196, 0, 0.16);

    pointer-events: none;
}


.hns-team-decoration-one {
    width: 270px;
    height: 270px;

    right: 8%;
    top: -110px;
}


.hns-team-decoration-two {
    width: 180px;
    height: 180px;

    right: 2%;
    bottom: -85px;

    background: rgba(255, 196, 0, 0.04);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .hns-team-banner {
        min-height: 380px;

        padding: 70px 0;

        background-position: center;
    }


    .hns-team-banner-content {
        max-width: 720px;
    }


    .hns-team-banner h1 {
        font-size: 48px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .hns-team-banner {
        min-height: auto;

        padding: 65px 0;

        text-align: center;

        background:
            linear-gradient(
                rgba(8, 22, 56, 0.93),
                rgba(12, 29, 80, 0.94)
            ),
            url("https://images.unsplash.com/photo-1576091160399-112ba8d25d1d?auto=format&fit=crop&w=1000&q=85")
            center / cover no-repeat;
    }


    .hns-team-banner-content {
        margin: 0 auto;
    }


    .hns-team-banner-label {
        justify-content: center;
    }


    .hns-team-banner h1 {
        font-size: 38px;

        letter-spacing: -1px;

        line-height: 1.1;
    }


    .hns-team-banner p {
        margin-left: auto;
        margin-right: auto;

        font-size: 15px;
        line-height: 1.7;
    }


    .hns-team-breadcrumb {
        justify-content: center;
    }


    .hns-team-banner-decoration {
        display: none;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .hns-team-banner {
        padding: 55px 0;
    }


    .hns-team-banner h1 {
        font-size: 33px;
    }


    .hns-team-banner-label {
        font-size: 11px;

        padding: 9px 13px;
    }


    .hns-team-breadcrumb {
        width: 100%;

        justify-content: center;
    }

}

/* =========================================
   OUR TEAM SECTION
========================================= */

.hns-team-section {
    position: relative;
    padding: 90px 0;
    background:
        radial-gradient(circle at 5% 5%,
            rgba(25,54,143,.07),
            transparent 25%),
        #f6f8fc;
    overflow: hidden;
}

.hns-team-section *,
.hns-team-section *::before,
.hns-team-section *::after {
    box-sizing: border-box;
}


/* =========================================
   HEADING
========================================= */

.hns-team-intro {
    max-width: 850px;
    margin: 0 auto 50px;
    text-align: center;
}

.hns-team-small-title {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 13px;

    color: #19368f;

    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

.hns-team-small-title i {
    color: #ffc400;
}

.hns-team-intro h2 {
    margin: 0 0 17px;

    color: #081638;

    font-size: clamp(35px, 4vw, 50px);
    line-height: 1.12;
    font-weight: 800;

    letter-spacing: -1.3px;
}

.hns-team-intro h2 span {
    color: #19368f;
}

.hns-team-intro p {
    max-width: 760px;
    margin: auto;

    color: #68738b;

    font-size: 16px;
    line-height: 1.8;
}


/* =========================================
   TWO PROFILES PER ROW
========================================= */

.hns-team-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 26px;
}


/* =========================================
   TEAM CARD
========================================= */

.hns-team-card {
    display: grid;

    grid-template-columns: 42% 58%;

    min-height: 430px;

    background: #ffffff;

    border: 1px solid #e5eaf3;
    border-radius: 22px;

    overflow: hidden;

    box-shadow:
        0 14px 40px rgba(8,22,56,.07);

    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

.hns-team-card:hover {
    transform: translateY(-6px);

    box-shadow:
        0 22px 55px rgba(8,22,56,.13);
}


/* =========================================
   IMAGE
========================================= */

.hns-team-photo {
    position: relative;

    min-height: 100%;

    overflow: hidden;

    background: #e8edf6;
}

.hns-team-photo::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8,22,56,.65),
            transparent 50%
        );

    pointer-events: none;
}

.hns-team-photo img {
    width: 100%;
    height: 100%;

    position: absolute;

    object-fit: cover;
    object-position: center;

    display: block;

    transition: transform .6s ease;
}

.hns-team-card:hover
.hns-team-photo img {
    transform: scale(1.05);
}


/* =========================================
   NUMBER
========================================= */

.hns-team-number {
    position: absolute;

    top: 16px;
    left: 16px;

    z-index: 3;

    width: 42px;
    height: 35px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 8px;

    background: rgba(8,22,56,.82);

    border: 1px solid
        rgba(255,255,255,.18);

    color: #ffffff;

    font-size: 12px;
    font-weight: 800;

    backdrop-filter: blur(8px);
}


/* =========================================
   IMAGE ICON
========================================= */

.hns-team-photo-icon {
    position: absolute;

    left: 18px;
    bottom: 18px;

    z-index: 4;

    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 14px;

    background: #ffc400;

    color: #081638;

    font-size: 19px;

    box-shadow:
        0 10px 25px rgba(0,0,0,.2);
}


/* =========================================
   CONTENT
========================================= */

.hns-team-card-content {
    padding: 30px 27px;

    display: flex;
    flex-direction: column;

    justify-content: center;
}


/* Role */

.hns-team-role {
    display: inline-block;

    align-self: flex-start;

    margin-bottom: 8px;

    color: #19368f;

    font-size: 11px;
    font-weight: 800;

    text-transform: uppercase;
    letter-spacing: 1.1px;
}


/* Name */

.hns-team-card-content h3 {
    margin: 0 0 5px;

    color: #081638;

    font-size: 24px;
    line-height: 1.2;

    font-weight: 800;
}


/* Qualification */

.hns-team-card-content h4 {
    margin: 0 0 17px;

    color: #19368f;

    font-size: 13px;
    line-height: 1.5;

    font-weight: 700;
}


/* Description */

.hns-team-card-content p {
    margin: 0 0 11px;

    color: #68738b;

    font-size: 13.5px;
    line-height: 1.72;
}


/* =========================================
   EXPERTISE
========================================= */

.hns-team-expertise {
    display: flex;
    flex-wrap: wrap;

    gap: 6px;

    margin-top: 10px;
}

.hns-team-expertise span {
    display: inline-flex;

    padding: 7px 10px;

    border-radius: 30px;

    background: rgba(25,54,143,.07);

    border: 1px solid
        rgba(25,54,143,.09);

    color: #19368f;

    font-size: 10px;
    font-weight: 800;
}


/* =========================================
   PREMIUM TOP BORDER
========================================= */

.hns-team-card-content {
    position: relative;
}

.hns-team-card-content::before {
    content: "";

    position: absolute;

    top: 0;
    left: 27px;

    width: 45px;
    height: 3px;

    background: #ffc400;

    border-radius: 0 0 5px 5px;
}


/* =========================================
   LARGE TABLET
========================================= */

@media (max-width: 1199px) {

    .hns-team-card {
        grid-template-columns: 40% 60%;
    }

    .hns-team-card-content {
        padding: 26px 22px;
    }

    .hns-team-card-content h3 {
        font-size: 21px;
    }

    .hns-team-card-content p {
        font-size: 13px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .hns-team-section {
        padding: 70px 0;
    }

    .hns-team-grid {
        grid-template-columns: 1fr;
    }

    .hns-team-card {
        grid-template-columns: 38% 62%;

        min-height: 400px;
    }

    .hns-team-card-content {
        padding: 32px;
    }

    .hns-team-card-content h3 {
        font-size: 25px;
    }

    .hns-team-card-content p {
        font-size: 14px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .hns-team-section {
        padding: 55px 0;
    }

    .hns-team-intro {
        margin-bottom: 35px;
    }

    .hns-team-intro h2 {
        font-size: 34px;
    }

    .hns-team-intro p {
        font-size: 15px;
    }


    /* One card per row */

    .hns-team-grid {
        grid-template-columns: 1fr;

        gap: 20px;
    }


    /* image above / content below */

    .hns-team-card {
        display: block;

        min-height: auto;

        border-radius: 18px;
    }

    .hns-team-photo {
        width: 100%;
        height: 350px;
        min-height: 350px;
    }

    .hns-team-photo img {
        position: relative;
    }

    .hns-team-card-content {
        padding: 27px 22px 25px;
    }

    .hns-team-card-content::before {
        left: 22px;
    }

    .hns-team-card-content h3 {
        font-size: 24px;
    }

    .hns-team-card-content h4 {
        font-size: 13px;
    }

    .hns-team-card-content p {
        font-size: 14px;
        line-height: 1.7;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .hns-team-intro h2 {
        font-size: 30px;
    }

    .hns-team-photo {
        height: 315px;
        min-height: 315px;
    }

    .hns-team-card-content {
        padding: 25px 19px;
    }

    .hns-team-card-content h3 {
        font-size: 22px;
    }

    .hns-team-expertise span {
        font-size: 10px;
    }

} 

/* =====================================================
   HEAR 'N' SAY - MOBILE SERVICES MENU ALIGNMENT FIX
   Add this at the END of your CSS
===================================================== */

@media (max-width: 991px) {

    /* Keep all mobile menu items aligned equally */
    .mobile-nav > li {
        width: 100%;
        position: relative;
        margin: 0;
        padding: 0;
    }

    .mobile-nav > li > a {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        padding: 14px 18px !important;
        margin: 0 !important;
        text-align: left;
        box-sizing: border-box;
    }

    /* SERVICES MENU - remove extra left spacing */
    .mobile-nav > li.menu-item-has-children > a,
    .mobile-nav > li.has-dropdown > a,
    .mobile-nav > li.dropdown > a {
        padding-left: 18px !important;
        margin-left: 0 !important;
        transform: none !important;
    }

    /* If Services has separate text/icon wrapper */
    .mobile-nav .services-menu > a,
    .mobile-nav .service-menu > a {
        padding-left: 18px !important;
        margin-left: 0 !important;
    }


    /* =================================================
       DROPDOWN - OPEN FROM RIGHT
    ================================================= */

    .mobile-nav .sub-menu,
    .mobile-nav .dropdown-menu,
    .mobile-nav .services-dropdown {
        position: relative !important;

        left: auto !important;
        right: 0 !important;

        width: calc(100% - 18px) !important;

        margin-left: auto !important;
        margin-right: 0 !important;

        padding: 8px 0 !important;

        box-sizing: border-box;
    }


    /* Dropdown items start from right side */
    .mobile-nav .sub-menu li,
    .mobile-nav .dropdown-menu li,
    .mobile-nav .services-dropdown li {
        width: 100%;
        margin: 0 !important;
        padding: 0 !important;
    }


    .mobile-nav .sub-menu li a,
    .mobile-nav .dropdown-menu li a,
    .mobile-nav .services-dropdown li a {
        width: 100%;

        display: flex;
        align-items: center;

        padding: 11px 18px !important;

        margin: 0 !important;

        box-sizing: border-box;
    }


    /* Dropdown arrow stays on right */
    .mobile-nav > li > a .dropdown-icon,
    .mobile-nav > li > a .submenu-toggle,
    .mobile-nav > li > a .fa-chevron-down,
    .mobile-nav > li > a .fa-angle-down {
        margin-left: auto !important;
        margin-right: 0 !important;
    }

}

/* ==========================================================
   HEAR 'N' SAY - PARENT TRAINING PROGRAMME
========================================================== */

.pt-page {
    --pt-dark: #081638;
    --pt-blue: #0c1d50;
    --pt-blue2: #19368f;
    --pt-yellow: #ffc400;
    --pt-text: #17233f;
    --pt-muted: #64708a;
    --pt-light: #f5f7fc;
    --pt-white: #ffffff;

    width: 100%;
    overflow: hidden;
    background: #fff;
    font-family: inherit;
}

.pt-page * {
    box-sizing: border-box;
}

.pt-container {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

.pt-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--pt-blue2);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.pt-label i {
    color: var(--pt-yellow);
}

.pt-page h2 {
    margin: 0 0 20px;
    color: var(--pt-dark);
    font-size: clamp(32px, 4vw, 50px);
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -1.3px;
}

.pt-page h2 span {
    color: var(--pt-blue2);
}

.pt-page p {
    font-size: 17px;
    line-height: 1.8;
    color: var(--pt-muted);
}


/* INTRO */

.pt-intro {
    padding: 80px 0;
    background:
        radial-gradient(circle at 8% 15%, rgba(255,196,0,.12), transparent 28%),
        linear-gradient(180deg, #fff, #f7f9ff);
}

.pt-intro-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    align-items: center;
    gap: 65px;
}

.pt-intro-content > p {
    margin: 0 0 17px;
}

.pt-highlight {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 28px;
    padding: 19px 22px;
    border-radius: 15px;
    background: var(--pt-dark);
    box-shadow: 0 15px 35px rgba(8,22,56,.14);
}

.pt-highlight > i {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--pt-yellow);
    color: var(--pt-dark);
    font-size: 18px;
}

.pt-highlight p {
    color: #fff;
    margin: 0;
    line-height: 1.6;
    font-size: 15px;
}

.pt-intro-image {
    position: relative;
}

.pt-intro-image > img {
    display: block;
    width: 100%;
    height: 550px;
    object-fit: cover;
    border-radius: 30px 8px 30px 8px;
    box-shadow: 0 25px 55px rgba(8,22,56,.18);
}

.pt-image-badge {
    position: absolute;
    left: -35px;
    bottom: 35px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 15px 20px;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 15px 40px rgba(8,22,56,.2);
}

.pt-image-badge > span {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--pt-yellow);
    display: grid;
    place-items: center;
    color: var(--pt-dark);
}

.pt-image-badge small,
.pt-image-badge strong {
    display: block;
}

.pt-image-badge small {
    color: #7c8599;
    font-size: 12px;
}

.pt-image-badge strong {
    color: var(--pt-dark);
    font-size: 15px;
}


/* HEADING */

.pt-heading {
    max-width: 760px;
}

.pt-heading-center {
    margin: 0 auto 42px;
    text-align: center;
}

.pt-heading-center p {
    margin: 0 auto;
}


/* WHY */

.pt-why {
    padding: 80px 0;
}

.pt-benefit-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.pt-benefit {
    position: relative;
    padding: 27px 23px;
    border: 1px solid #e7eaf3;
    border-radius: 18px;
    background: #fff;
    transition: .3s ease;
}

.pt-benefit:hover {
    transform: translateY(-6px);
    border-color: rgba(25,54,143,.3);
    box-shadow: 0 18px 40px rgba(8,22,56,.1);
}

.pt-benefit > span {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: #fff8dc;
    color: var(--pt-blue2);
    font-size: 21px;
    margin-bottom: 18px;
}

.pt-benefit h3 {
    margin: 0 0 8px;
    color: var(--pt-dark);
    font-size: 18px;
}

.pt-benefit p {
    margin: 0;
    font-size: 14px;
    line-height: 1.65;
}

.pt-bottom-note {
    margin-top: 28px;
    padding: 18px 25px;
    border-radius: 13px;
    text-align: center;
    background: #f5f7fc;
    color: var(--pt-dark);
    font-weight: 700;
}

.pt-bottom-note i {
    color: var(--pt-yellow);
    margin-right: 8px;
}


/* PROGRAMME */

.pt-programme {
    padding: 85px 0;
    background: #f5f7fc;
}

.pt-programme-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    align-items: center;
    gap: 65px;
}

.pt-programme-image {
    position: relative;
}

.pt-programme-image > img {
    width: 100%;
    height: 580px;
    display: block;
    object-fit: cover;
    border-radius: 8px 30px 8px 30px;
}

.pt-floating-card {
    position: absolute;
    right: -25px;
    bottom: 30px;
    background: var(--pt-dark);
    color: #fff;
    border-radius: 14px;
    padding: 17px 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    box-shadow: 0 15px 35px rgba(8,22,56,.2);
}

.pt-floating-card i {
    color: var(--pt-yellow);
    font-size: 25px;
}

.pt-floating-card strong,
.pt-floating-card small {
    display: block;
}

.pt-floating-card small {
    color: rgba(255,255,255,.68);
    margin-top: 3px;
}

.pt-programme-content > p {
    margin: 0 0 22px;
}

.pt-check-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.pt-check-grid > div {
    display: flex;
    gap: 10px;
    color: #263451;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 600;
}

.pt-check-grid i {
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--pt-yellow);
    color: var(--pt-dark);
    font-size: 10px;
}

.pt-small-note {
    padding-top: 18px;
    margin-top: 20px !important;
    border-top: 1px solid #dfe4ef;
    font-style: italic;
}


/* EVERYDAY MOMENTS */

.pt-moments {
    padding: 70px 0;
}

.pt-moments-box {
    padding: 55px;
    border-radius: 25px;
    display: grid;
    grid-template-columns: 1.5fr .5fr;
    align-items: center;
    gap: 50px;
    background:
        radial-gradient(circle at 100% 0%, rgba(255,196,0,.2), transparent 32%),
        linear-gradient(135deg, #081638, #0c1d50 55%, #19368f);
}

.pt-moments .pt-label {
    color: var(--pt-yellow);
}

.pt-moments h2 {
    color: #fff;
}

.pt-moments h2 span {
    color: var(--pt-yellow);
}

.pt-moments p {
    color: rgba(255,255,255,.78);
}

.pt-moment-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 23px 0;
}

.pt-moment-tags span {
    padding: 10px 14px;
    border-radius: 50px;
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.12);
    color: #fff;
    font-size: 13px;
}

.pt-moment-tags i {
    color: var(--pt-yellow);
    margin-right: 6px;
}

.pt-moments-number {
    min-height: 230px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    border-left: 1px solid rgba(255,255,255,.16);
}

.pt-moments-number strong {
    color: #fff;
    font-size: 35px;
}

.pt-moments-number span {
    color: var(--pt-yellow);
    font-size: 47px;
    line-height: 1;
    font-weight: 900;
}

.pt-moments-number small {
    color: rgba(255,255,255,.65);
    margin-top: 12px;
    line-height: 1.5;
}


/* GUIDANCE */

.pt-guidance {
    padding: 85px 0;
    background: #f7f9fd;
}

.pt-guidance-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    align-items: center;
    gap: 65px;
}

.pt-guidance-content > p {
    margin-bottom: 25px;
}

.pt-guidance-content h3 {
    color: var(--pt-dark);
    font-size: 18px;
    margin-bottom: 18px;
}

.pt-guidance-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.pt-guidance-list li {
    padding: 8px 0;
    color: #35415b;
    font-weight: 600;
}

.pt-guidance-list i {
    color: var(--pt-blue2);
    margin-right: 9px;
}

.pt-quote {
    display: flex;
    gap: 15px;
    padding: 20px;
    margin-top: 25px;
    background: #fff;
    border-left: 4px solid var(--pt-yellow);
    box-shadow: 0 10px 30px rgba(8,22,56,.06);
}

.pt-quote i {
    color: var(--pt-yellow);
    font-size: 25px;
}

.pt-quote p {
    margin: 0;
    color: var(--pt-dark);
    font-weight: 700;
    font-size: 15px;
}

.pt-guidance-image img {
    display: block;
    width: 100%;
    height: 540px;
    object-fit: cover;
    border-radius: 30px 8px 30px 8px;
}


/* TEAM */

.pt-team {
    padding: 80px 0;
    background: linear-gradient(135deg, #081638, #0c1d50 55%, #19368f);
}

.pt-team .pt-label {
    color: var(--pt-yellow);
}

.pt-light h2 {
    color: #fff;
}

.pt-light h2 span {
    color: var(--pt-yellow);
}

.pt-light p {
    color: rgba(255,255,255,.7);
}

.pt-team-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 13px;
}

.pt-team-item {
    min-height: 145px;
    padding: 22px 12px;
    border-radius: 15px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.06);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: .3s ease;
}

.pt-team-item:hover {
    transform: translateY(-5px);
    background: rgba(255,255,255,.11);
}

.pt-team-item i {
    color: var(--pt-yellow);
    font-size: 28px;
    margin-bottom: 14px;
}

.pt-team-item span {
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
}

.pt-team-bottom {
    max-width: 850px;
    margin: 30px auto 0 !important;
    color: rgba(255,255,255,.72) !important;
    text-align: center;
}


/* WHY CHOOSE */

.pt-choose {
    padding: 85px 0;
}

.pt-choose-grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 70px;
    align-items: center;
}

.pt-choose-icon {
    width: 100px;
    height: 100px;
    margin-top: 30px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #fff7d7;
    color: var(--pt-blue2);
    font-size: 42px;
}

.pt-choose-list {
    border-top: 1px solid #e3e7ef;
}

.pt-choose-list > div {
    display: grid;
    grid-template-columns: 60px 1fr;
    gap: 15px;
    align-items: center;
    padding: 16px 5px;
    border-bottom: 1px solid #e3e7ef;
    transition: .25s ease;
}

.pt-choose-list > div:hover {
    padding-left: 13px;
    background: #fafbfe;
}

.pt-choose-list span {
    color: var(--pt-blue2);
    font-weight: 900;
    font-size: 15px;
}

.pt-choose-list p {
    margin: 0;
    color: var(--pt-dark);
    font-weight: 700;
    font-size: 15px;
}


/* FINAL */

.pt-final {
    padding: 25px 0 85px;
}

.pt-final-box {
    position: relative;
    overflow: hidden;
    padding: 65px 70px;
    text-align: center;
    border-radius: 28px;
    background:
        radial-gradient(circle at 15% 100%, rgba(255,196,0,.2), transparent 30%),
        linear-gradient(135deg, #081638, #0c1d50 55%, #19368f);
}

.pt-final-icon {
    width: 70px;
    height: 70px;
    display: grid;
    place-items: center;
    margin: 0 auto 20px;
    border-radius: 50%;
    background: var(--pt-yellow);
    color: var(--pt-dark);
    font-size: 27px;
}

.pt-final .pt-label {
    color: var(--pt-yellow);
}

.pt-final h2 {
    color: #fff;
}

.pt-final h2 span {
    color: var(--pt-yellow);
}

.pt-final p {
    max-width: 850px;
    margin: 0 auto;
    color: rgba(255,255,255,.78);
}

.pt-final-line {
    max-width: 800px;
    margin: 25px auto;
    padding-top: 22px;
    border-top: 1px solid rgba(255,255,255,.14);
    color: #fff;
    font-size: 16px;
    line-height: 1.7;
    font-weight: 700;
}

.pt-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 24px;
    border-radius: 50px;
    background: var(--pt-yellow);
    color: var(--pt-dark);
    text-decoration: none;
    font-weight: 800;
    transition: .3s ease;
}

.pt-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(255,196,0,.25);
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 991px) {

    .pt-container {
        width: min(100% - 32px, 760px);
    }

    .pt-intro-grid,
    .pt-programme-grid,
    .pt-guidance-grid,
    .pt-choose-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .pt-benefit-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .pt-team-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .pt-intro-image > img,
    .pt-programme-image > img,
    .pt-guidance-image img {
        height: 450px;
    }

    .pt-image-badge {
        left: 20px;
    }

    .pt-floating-card {
        right: 20px;
    }

    .pt-moments-box {
        grid-template-columns: 1fr;
    }

    .pt-moments-number {
        min-height: auto;
        padding-top: 30px;
        border-left: 0;
        border-top: 1px solid rgba(255,255,255,.16);
    }

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767px) {

    .pt-container {
        width: calc(100% - 28px);
    }

    .pt-intro,
    .pt-why,
    .pt-programme,
    .pt-guidance,
    .pt-team,
    .pt-choose {
        padding: 55px 0;
    }

    .pt-page h2 {
        font-size: 30px;
        letter-spacing: -.6px;
    }

    .pt-page p {
        font-size: 15px;
        line-height: 1.75;
    }

    .pt-intro-grid {
        gap: 30px;
    }

    .pt-intro-image > img,
    .pt-programme-image > img,
    .pt-guidance-image img {
        height: 340px;
        border-radius: 20px;
    }

    .pt-image-badge,
    .pt-floating-card {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        margin: -25px 15px 0;
    }

    .pt-benefit-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .pt-benefit {
        padding: 21px;
    }

    .pt-check-grid {
        grid-template-columns: 1fr;
    }

    .pt-moments {
        padding: 45px 0;
    }

    .pt-moments-box {
        padding: 35px 22px;
        border-radius: 20px;
        gap: 25px;
    }

    .pt-moments-number strong {
        font-size: 28px;
    }

    .pt-moments-number span {
        font-size: 40px;
    }

    .pt-team-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .pt-team-item {
        min-height: 125px;
    }

    .pt-choose-icon {
        width: 75px;
        height: 75px;
        font-size: 30px;
    }

    .pt-final {
        padding: 10px 0 55px;
    }

    .pt-final-box {
        padding: 45px 20px;
        border-radius: 20px;
    }

}


/* EXTRA SMALL MOBILE */

@media (max-width: 480px) {

    .pt-team-grid {
        grid-template-columns: 1fr 1fr;
        gap: 9px;
    }

    .pt-team-item {
        padding: 18px 8px;
    }

    .pt-moment-tags span {
        font-size: 12px;
    }

    .pt-choose-list > div {
        grid-template-columns: 42px 1fr;
    }

}

/* ============================================
   HEAR N SAY - OCCUPATIONAL THERAPY
============================================ */

.hns-ot-section{
    width:100%;
    background:
        radial-gradient(circle at 5% 10%, rgba(255,196,0,.10), transparent 25%),
        linear-gradient(180deg,#f7f9ff 0%,#ffffff 100%);
    padding:55px 0;
    overflow:hidden;
    font-family:inherit;
}

.hns-ot-container{
    width:min(1280px,92%);
    margin:auto;
}


/* COMMON */

.hns-ot-label{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    font-weight:800;
    letter-spacing:2px;
    color:#19368f;
    margin-bottom:9px;
}

.hns-ot-label:before{
    content:"";
    width:28px;
    height:3px;
    background:#ffc400;
    border-radius:10px;
}

.hns-ot-section h2,
.hns-ot-section h3,
.hns-ot-section h4{
    margin-top:0;
}

.hns-ot-section h2 span,
.hns-ot-section h3 span{
    color:#19368f;
}


/* ================= INTRO ================= */

.hns-ot-intro{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    align-items:center;
    gap:45px;
    margin-bottom:45px;
}

.hns-ot-intro-image{
    height:410px;
    position:relative;
    border-radius:26px;
    overflow:hidden;
    box-shadow:0 25px 60px rgba(8,22,56,.14);
}

.hns-ot-intro-image:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        transparent 50%,
        rgba(8,22,56,.45)
    );
}

.hns-ot-intro-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:.5s;
}

.hns-ot-intro:hover .hns-ot-intro-image img{
    transform:scale(1.04);
}

.hns-ot-image-badge{
    position:absolute;
    left:20px;
    bottom:20px;
    z-index:2;
    background:#fff;
    color:#081638;
    padding:11px 17px;
    border-radius:30px;
    font-size:14px;
    font-weight:800;
    display:flex;
    align-items:center;
    gap:8px;
    box-shadow:0 10px 30px rgba(0,0,0,.15);
}

.hns-ot-image-badge i{
    color:#19368f;
}

.hns-ot-intro-content h2{
    font-size:clamp(34px,4vw,52px);
    line-height:1.08;
    color:#081638;
    margin-bottom:17px;
    font-weight:800;
}

.hns-ot-intro-content p{
    font-size:17px;
    line-height:1.7;
    color:#556074;
    margin:0 0 12px;
}

.hns-ot-mini-points{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:20px 0;
}

.hns-ot-mini-points div{
    background:#eef2ff;
    color:#081638;
    padding:9px 14px;
    border-radius:30px;
    font-size:14px;
    font-weight:700;
}

.hns-ot-mini-points i{
    color:#19368f;
    margin-right:5px;
}

.hns-ot-main-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:13px 22px;
    border-radius:8px;
    background:linear-gradient(135deg,#081638,#19368f);
    color:#fff;
    font-size:15px;
    font-weight:800;
    text-decoration:none;
    transition:.3s;
}

.hns-ot-main-btn:hover{
    transform:translateY(-2px);
    color:#ffc400;
}


/* =============== BENEFIT =============== */

.hns-ot-benefit{
    background:linear-gradient(135deg,#081638,#0c1d50 55%,#19368f);
    border-radius:24px;
    padding:28px 30px;
    color:#fff;
    margin-bottom:48px;
}

.hns-ot-benefit .hns-ot-label{
    color:#ffc400;
}

.hns-ot-benefit-title h3{
    font-size:29px;
    margin-bottom:20px;
    color:#fff;
}

.hns-ot-condition-wrap{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}

.hns-ot-condition-wrap span{
    padding:9px 13px;
    border-radius:8px;
    font-size:14px;
    font-weight:600;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
}

.hns-ot-condition-wrap i{
    color:#ffc400;
    margin-right:5px;
}


/* =============== ASSESSMENT =============== */

.hns-ot-assessment{
    margin-bottom:48px;
}

.hns-ot-heading-row{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:22px;
}

.hns-ot-heading-row h3{
    font-size:34px;
    line-height:1.15;
    color:#081638;
    margin-bottom:0;
}

.hns-ot-slider-buttons{
    display:flex;
    gap:8px;
}

.hns-ot-prev,
.hns-ot-next{
    border:none;
    width:45px;
    height:45px;
    border-radius:50%;
    cursor:pointer;
    background:#081638;
    color:#fff;
    font-size:15px;
    transition:.3s;
}

.hns-ot-prev:hover,
.hns-ot-next:hover{
    background:#ffc400;
    color:#081638;
}

.hns-ot-slider{
    overflow:hidden;
    width:100%;
}

.hns-ot-slider-track{
    display:flex;
    gap:20px;
    transition:transform .55s cubic-bezier(.25,.8,.25,1);
    touch-action:pan-y;
}

.hns-ot-card{
    flex:0 0 calc((100% - 40px) / 3);
    background:#fff;
    border:1px solid #e7ebf5;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 15px 38px rgba(8,22,56,.08);
}

.hns-ot-card-image{
    height:205px;
    overflow:hidden;
}

.hns-ot-card-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.45s;
}

.hns-ot-card:hover img{
    transform:scale(1.06);
}

.hns-ot-card-body{
    padding:22px;
    position:relative;
}

.hns-ot-card-body > span{
    position:absolute;
    right:18px;
    top:18px;
    font-size:32px;
    font-weight:900;
    color:#eef1fa;
}

.hns-ot-card-icon{
    width:45px;
    height:45px;
    border-radius:12px;
    display:grid;
    place-items:center;
    background:#fff5cc;
    color:#19368f;
    font-size:19px;
    margin-bottom:13px;
}

.hns-ot-card h4{
    font-size:21px;
    color:#081638;
    margin-bottom:9px;
}

.hns-ot-card p{
    font-size:15px;
    line-height:1.6;
    color:#657086;
    margin-bottom:10px;
}

.hns-ot-card ul{
    margin:8px 0 0;
    padding:0;
    list-style:none;
}

.hns-ot-card ul li{
    color:#536078;
    font-size:14px;
    padding:3px 0;
}

.hns-ot-card ul li:before{
    content:"✓";
    color:#19368f;
    font-weight:900;
    margin-right:7px;
}

.hns-ot-tags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}

.hns-ot-tags b{
    padding:6px 9px;
    font-size:12px;
    color:#19368f;
    background:#edf1ff;
    border-radius:20px;
}

.hns-ot-dots{
    display:flex;
    justify-content:center;
    gap:6px;
    margin-top:18px;
}

.hns-ot-dot{
    width:8px;
    height:8px;
    border-radius:20px;
    border:none;
    background:#cbd2e4;
    cursor:pointer;
    transition:.3s;
}

.hns-ot-dot.active{
    width:28px;
    background:#19368f;
}


/* ============== PROCESS ============== */

.hns-ot-personalized{
    background:#f1f4fc;
    padding:30px;
    border-radius:24px;
    margin-bottom:28px;
}

.hns-ot-personalized-head{
    text-align:center;
    margin-bottom:25px;
}

.hns-ot-personalized-head h3{
    font-size:30px;
    color:#081638;
    margin-bottom:0;
}

.hns-ot-process{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
}

.hns-ot-process-item{
    background:#fff;
    min-width:130px;
    min-height:105px;
    padding:15px 12px;
    border-radius:15px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    text-align:center;
    border:1px solid #e2e6f1;
}

.hns-ot-process-item i{
    font-size:22px;
    color:#19368f;
    margin-bottom:7px;
}

.hns-ot-process-item span{
    font-size:13px;
    line-height:1.35;
    font-weight:800;
    color:#081638;
}

.hns-ot-process-final{
    background:linear-gradient(135deg,#081638,#19368f);
}

.hns-ot-process-final i{
    color:#ffc400;
}

.hns-ot-process-final span{
    color:#fff;
}

.hns-ot-arrow{
    color:#19368f;
    opacity:.45;
}

.hns-ot-review{
    text-align:center;
    font-size:14px;
    line-height:1.6;
    color:#667085;
    margin:18px 0 0;
}


/* ============== BOTTOM BOXES ============== */

.hns-ot-bottom-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin-bottom:28px;
}

.hns-ot-info-box{
    display:flex;
    gap:17px;
    align-items:flex-start;
    padding:25px;
    background:#fff;
    border:1px solid #e6eaf3;
    border-radius:18px;
    box-shadow:0 12px 35px rgba(8,22,56,.06);
}

.hns-ot-info-icon{
    min-width:52px;
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:#edf1ff;
    color:#19368f;
    font-size:21px;
}

.hns-ot-info-box span{
    font-size:11px;
    letter-spacing:1.5px;
    font-weight:800;
    color:#19368f;
}

.hns-ot-info-box h4{
    font-size:20px;
    color:#081638;
    margin:5px 0 7px;
}

.hns-ot-info-box p{
    font-size:14.5px;
    color:#667085;
    line-height:1.6;
    margin:0;
}

.hns-ot-goal-box{
    background:linear-gradient(135deg,#fffaf0,#fff);
}


/* ================= CTA ================= */

.hns-ot-cta{
    background:
        linear-gradient(135deg,#081638,#0c1d50 55%,#19368f);
    border-radius:24px;
    padding:27px 30px;
    display:flex;
    align-items:center;
    gap:22px;
    color:#fff;
    position:relative;
    overflow:hidden;
}

.hns-ot-cta:after{
    content:"";
    position:absolute;
    right:-60px;
    top:-90px;
    width:250px;
    height:250px;
    border-radius:50%;
    border:50px solid rgba(255,196,0,.08);
}

.hns-ot-cta-icon{
    min-width:65px;
    width:65px;
    height:65px;
    display:grid;
    place-items:center;
    background:#ffc400;
    color:#081638;
    border-radius:17px;
    font-size:25px;
}

.hns-ot-cta-content{
    flex:1;
    position:relative;
    z-index:2;
}

.hns-ot-cta-content > span{
    color:#ffc400;
    font-size:12px;
    font-weight:900;
    letter-spacing:1.5px;
}

.hns-ot-cta-content h3{
    color:#fff;
    font-size:26px;
    margin:4px 0 6px;
}

.hns-ot-cta-content p{
    color:rgba(255,255,255,.76);
    font-size:14px;
    line-height:1.55;
    margin:0;
    max-width:720px;
}

.hns-ot-cta-actions{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    gap:8px;
}

.hns-ot-cta-btn{
    text-decoration:none;
    padding:13px 19px;
    background:#ffc400;
    color:#081638;
    border-radius:8px;
    font-weight:900;
    font-size:14px;
    display:flex;
    align-items:center;
    gap:8px;
}

.hns-ot-call-btn{
    width:47px;
    height:47px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.3);
    color:#fff;
    border-radius:8px;
    text-decoration:none;
}


/* ============== RESPONSIVE ============== */

@media(max-width:1050px){

    .hns-ot-card{
        flex-basis:calc((100% - 20px) / 2);
    }

    .hns-ot-process{
        overflow-x:auto;
        justify-content:flex-start;
        padding-bottom:8px;
    }

    .hns-ot-process-item{
        min-width:135px;
    }
}

@media(max-width:850px){

    .hns-ot-section{
        padding:42px 0;
    }

    .hns-ot-intro{
        grid-template-columns:1fr;
        gap:25px;
    }

    .hns-ot-intro-image{
        height:350px;
    }

    .hns-ot-bottom-grid{
        grid-template-columns:1fr;
    }

    .hns-ot-cta{
        align-items:flex-start;
        flex-wrap:wrap;
    }

    .hns-ot-cta-actions{
        width:100%;
    }
}

@media(max-width:650px){

    .hns-ot-section{
        padding:34px 0;
    }

    .hns-ot-container{
        width:92%;
    }

    .hns-ot-intro-image{
        height:300px;
        border-radius:19px;
    }

    .hns-ot-intro-content h2{
        font-size:34px;
    }

    .hns-ot-intro-content p{
        font-size:16px;
    }

    .hns-ot-benefit{
        padding:22px 18px;
    }

    .hns-ot-benefit-title h3{
        font-size:25px;
    }

    .hns-ot-condition-wrap span{
        font-size:13px;
    }

    .hns-ot-heading-row{
        align-items:center;
    }

    .hns-ot-heading-row h3{
        font-size:28px;
    }

    .hns-ot-card{
        flex-basis:100%;
    }

    .hns-ot-card-image{
        height:220px;
    }

    .hns-ot-personalized{
        padding:23px 16px;
    }

    .hns-ot-personalized-head h3{
        font-size:26px;
    }

    .hns-ot-arrow{
        min-width:20px;
    }

    .hns-ot-info-box{
        padding:20px;
    }

    .hns-ot-cta{
        padding:23px 20px;
    }

    .hns-ot-cta-icon{
        width:55px;
        min-width:55px;
        height:55px;
    }

    .hns-ot-cta-content h3{
        font-size:23px;
    }
}

@media(max-width:430px){

    .hns-ot-heading-row{
        align-items:flex-end;
    }

    .hns-ot-slider-buttons button{
        width:39px;
        height:39px;
    }

    .hns-ot-mini-points{
        gap:6px;
    }

    .hns-ot-mini-points div{
        font-size:12px;
        padding:7px 10px;
    }

    .hns-ot-card-image{
        height:200px;
    }

    .hns-ot-cta-actions{
        flex-wrap:wrap;
    }

    .hns-ot-cta-btn{
        flex:1;
        justify-content:center;
    }
}

/* ==========================================
   HEAR N SAY - BEHAVIOUR THERAPY SECTION
========================================== */

.hns-bt-section{
    width:100%;
    padding:55px 0;
    overflow:hidden;
    background:
        radial-gradient(circle at 90% 5%,rgba(255,196,0,.1),transparent 24%),
        linear-gradient(180deg,#f7f9ff,#fff);
}

.hns-bt-container{
    width:min(1280px,92%);
    margin:auto;
}

.hns-bt-label{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-bottom:9px;
    color:#19368f;
    font-size:13px;
    font-weight:800;
    letter-spacing:1.8px;
}

.hns-bt-label:before{
    content:"";
    width:28px;
    height:3px;
    border-radius:20px;
    background:#ffc400;
}

.hns-bt-section h2,
.hns-bt-section h3,
.hns-bt-section h4{
    margin-top:0;
}

.hns-bt-section h2 span,
.hns-bt-section h3 span{
    color:#19368f;
}


/* INTRO */

.hns-bt-intro{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:45px;
    align-items:center;
    margin-bottom:40px;
}

.hns-bt-image{
    height:395px;
    overflow:hidden;
    border-radius:25px;
    position:relative;
    box-shadow:0 22px 55px rgba(8,22,56,.14);
}

.hns-bt-image:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        transparent 50%,
        rgba(8,22,56,.55)
    );
}

.hns-bt-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.5s;
}

.hns-bt-intro:hover .hns-bt-image img{
    transform:scale(1.04);
}

.hns-bt-image-badge{
    position:absolute;
    z-index:2;
    left:20px;
    bottom:20px;
    padding:11px 17px;
    border-radius:30px;
    background:#fff;
    color:#081638;
    font-size:14px;
    font-weight:800;
}

.hns-bt-image-badge i{
    color:#19368f;
    margin-right:6px;
}

.hns-bt-content h2{
    color:#081638;
    font-size:clamp(34px,4vw,51px);
    line-height:1.08;
    margin-bottom:17px;
    font-weight:800;
}

.hns-bt-content p{
    color:#58647a;
    font-size:17px;
    line-height:1.68;
    margin:0 0 12px;
}

.hns-bt-focus{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin:18px 0;
}

.hns-bt-focus span{
    padding:9px 13px;
    border-radius:30px;
    background:#edf1ff;
    color:#081638;
    font-size:13px;
    font-weight:700;
}

.hns-bt-focus i{
    color:#19368f;
    margin-right:5px;
}

.hns-bt-main-btn{
    display:inline-flex;
    align-items:center;
    gap:9px;
    text-decoration:none;
    color:#fff;
    background:linear-gradient(135deg,#081638,#19368f);
    padding:13px 21px;
    border-radius:8px;
    font-size:15px;
    font-weight:800;
    transition:.3s;
}

.hns-bt-main-btn:hover{
    color:#ffc400;
    transform:translateY(-2px);
}


/* WHO CAN BENEFIT */

.hns-bt-benefit{
    background:linear-gradient(
        135deg,
        #081638,
        #0c1d50 55%,
        #19368f
    );
    border-radius:23px;
    padding:27px 30px;
    color:#fff;
    margin-bottom:45px;
}

.hns-bt-benefit-heading > span{
    color:#ffc400;
    letter-spacing:1.7px;
    font-size:12px;
    font-weight:800;
}

.hns-bt-benefit-heading h3{
    font-size:28px;
    color:#fff;
    margin:4px 0 18px;
}

.hns-bt-condition-list{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.hns-bt-condition-list span{
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.13);
    border-radius:8px;
    padding:8px 12px;
    font-size:13.5px;
    font-weight:600;
}

.hns-bt-condition-list i{
    color:#ffc400;
    margin-right:5px;
}


/* ABC */

.hns-bt-abc{
    margin-bottom:45px;
}

.hns-bt-section-title{
    text-align:center;
    max-width:760px;
    margin:0 auto 23px;
}

.hns-bt-section-title h3{
    color:#081638;
    font-size:34px;
    margin-bottom:8px;
}

.hns-bt-section-title p{
    color:#667085;
    font-size:15px;
    line-height:1.6;
    margin:0;
}

.hns-bt-abc-grid{
    display:flex;
    align-items:stretch;
    gap:12px;
}

.hns-bt-abc-card{
    flex:1;
    display:flex;
    gap:15px;
    align-items:flex-start;
    padding:21px;
    background:#fff;
    border:1px solid #e4e9f3;
    border-radius:18px;
    box-shadow:0 12px 32px rgba(8,22,56,.06);
}

.hns-bt-letter{
    min-width:50px;
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#081638;
    background:#ffc400;
    font-size:25px;
    font-weight:900;
}

.hns-bt-abc-card span{
    color:#19368f;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.3px;
}

.hns-bt-abc-card h4{
    color:#081638;
    font-size:18px;
    margin:3px 0 6px;
}

.hns-bt-abc-card p{
    color:#667085;
    font-size:14px;
    line-height:1.55;
    margin:0;
}

.hns-bt-abc-arrow{
    display:flex;
    align-items:center;
    color:#19368f;
    opacity:.45;
}


/* SLIDER */

.hns-bt-slider-section{
    margin-bottom:45px;
}

.hns-bt-slider-heading{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:20px;
    margin-bottom:20px;
}

.hns-bt-slider-heading h3{
    color:#081638;
    font-size:33px;
    margin:0;
}

.hns-bt-controls{
    display:flex;
    gap:8px;
}

.hns-bt-prev,
.hns-bt-next{
    width:44px;
    height:44px;
    border:none;
    border-radius:50%;
    background:#081638;
    color:#fff;
    cursor:pointer;
    transition:.3s;
}

.hns-bt-prev:hover,
.hns-bt-next:hover{
    background:#ffc400;
    color:#081638;
}

.hns-bt-slider{
    width:100%;
    overflow:hidden;
}

.hns-bt-track{
    display:flex;
    gap:18px;
    transition:transform .55s ease;
    touch-action:pan-y;
}

.hns-bt-card{
    flex:0 0 calc((100% - 36px) / 3);
    padding:23px;
    border-radius:19px;
    background:#fff;
    border:1px solid #e3e8f2;
    box-shadow:0 12px 34px rgba(8,22,56,.07);
    position:relative;
    min-height:300px;
}

.hns-bt-card-icon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:#fff5cc;
    color:#19368f;
    font-size:20px;
    margin-bottom:15px;
}

.hns-bt-number{
    position:absolute;
    top:18px;
    right:19px;
    color:#edf0f8;
    font-size:34px;
    font-weight:900;
}

.hns-bt-card h4{
    color:#081638;
    font-size:20px;
    margin-bottom:8px;
}

.hns-bt-card p{
    color:#687387;
    font-size:14.5px;
    line-height:1.6;
}

.hns-bt-card ul{
    margin:10px 0 0;
    padding:0;
    list-style:none;
}

.hns-bt-card li{
    color:#536078;
    font-size:13.5px;
    padding:3px 0;
}

.hns-bt-card li:before{
    content:"✓";
    color:#19368f;
    font-weight:900;
    margin-right:7px;
}

.hns-bt-tag-wrap{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:15px;
}

.hns-bt-tag-wrap span{
    padding:6px 9px;
    border-radius:20px;
    background:#edf1ff;
    color:#19368f;
    font-size:12px;
    font-weight:700;
}

.hns-bt-dots{
    display:flex;
    justify-content:center;
    gap:6px;
    margin-top:17px;
}

.hns-bt-dot{
    width:8px;
    height:8px;
    border:none;
    background:#cbd2e2;
    border-radius:20px;
    cursor:pointer;
}

.hns-bt-dot.active{
    width:27px;
    background:#19368f;
}


/* THERAPY FLOW */

.hns-bt-plan{
    padding:28px;
    margin-bottom:27px;
    border-radius:23px;
    background:#f0f3fb;
}

.hns-bt-plan-heading{
    text-align:center;
    margin-bottom:23px;
}

.hns-bt-plan-heading h3{
    color:#081638;
    font-size:29px;
    margin-bottom:0;
}

.hns-bt-flow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
}

.hns-bt-flow-item{
    min-width:130px;
    min-height:102px;
    background:#fff;
    border:1px solid #e0e5ef;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    text-align:center;
    padding:13px;
}

.hns-bt-flow-item i{
    color:#19368f;
    font-size:21px;
    margin-bottom:7px;
}

.hns-bt-flow-item span{
    color:#081638;
    font-size:13px;
    line-height:1.35;
    font-weight:800;
}

.hns-bt-flow-arrow{
    color:#19368f;
    opacity:.4;
}

.hns-bt-flow-final{
    background:linear-gradient(135deg,#081638,#19368f);
}

.hns-bt-flow-final span{
    color:#fff;
}

.hns-bt-flow-final i{
    color:#ffc400;
}


/* BOTTOM */

.hns-bt-bottom{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:19px;
    margin-bottom:27px;
}

.hns-bt-info{
    padding:23px;
    display:flex;
    gap:16px;
    border-radius:18px;
    background:#fff;
    border:1px solid #e4e8f1;
    box-shadow:0 10px 30px rgba(8,22,56,.06);
}

.hns-bt-info-icon{
    min-width:52px;
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#19368f;
    background:#edf1ff;
    font-size:20px;
}

.hns-bt-info span{
    color:#19368f;
    font-size:11px;
    letter-spacing:1.4px;
    font-weight:800;
}

.hns-bt-info h4{
    color:#081638;
    margin:4px 0 7px;
    font-size:19px;
}

.hns-bt-info p{
    color:#667085;
    font-size:14px;
    line-height:1.6;
    margin:0;
}

.hns-bt-goal{
    background:linear-gradient(135deg,#fff9e7,#fff);
}


/* CTA */

.hns-bt-cta{
    display:flex;
    align-items:center;
    gap:20px;
    padding:26px 29px;
    color:#fff;
    border-radius:23px;
    background:linear-gradient(
        135deg,
        #081638,
        #0c1d50 55%,
        #19368f
    );
}

.hns-bt-cta-icon{
    min-width:62px;
    width:62px;
    height:62px;
    display:grid;
    place-items:center;
    background:#ffc400;
    color:#081638;
    border-radius:16px;
    font-size:23px;
}

.hns-bt-cta-text{
    flex:1;
}

.hns-bt-cta-text > span{
    color:#ffc400;
    font-size:11px;
    font-weight:900;
    letter-spacing:1.5px;
}

.hns-bt-cta-text h3{
    color:#fff;
    font-size:25px;
    margin:4px 0 5px;
}

.hns-bt-cta-text p{
    margin:0;
    color:rgba(255,255,255,.75);
    font-size:14px;
    line-height:1.55;
}

.hns-bt-cta-btn{
    white-space:nowrap;
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:#ffc400;
    color:#081638;
    padding:13px 18px;
    text-decoration:none;
    font-size:14px;
    font-weight:900;
    border-radius:8px;
}


/* RESPONSIVE */

@media(max-width:1050px){

    .hns-bt-card{
        flex-basis:calc((100% - 18px) / 2);
    }

    .hns-bt-flow{
        overflow-x:auto;
        justify-content:flex-start;
        padding-bottom:7px;
    }

    .hns-bt-flow-item{
        min-width:135px;
    }
}

@media(max-width:850px){

    .hns-bt-section{
        padding:42px 0;
    }

    .hns-bt-intro{
        grid-template-columns:1fr;
        gap:25px;
    }

    .hns-bt-image{
        height:345px;
    }

    .hns-bt-abc-grid{
        flex-direction:column;
    }

    .hns-bt-abc-arrow{
        justify-content:center;
        transform:rotate(90deg);
    }

    .hns-bt-bottom{
        grid-template-columns:1fr;
    }

    .hns-bt-cta{
        flex-wrap:wrap;
    }

    .hns-bt-cta-btn{
        margin-left:82px;
    }
}

@media(max-width:650px){

    .hns-bt-section{
        padding:34px 0;
    }

    .hns-bt-image{
        height:290px;
    }

    .hns-bt-content h2{
        font-size:34px;
    }

    .hns-bt-content p{
        font-size:16px;
    }

    .hns-bt-benefit{
        padding:22px 18px;
    }

    .hns-bt-benefit-heading h3{
        font-size:24px;
    }

    .hns-bt-section-title h3,
    .hns-bt-slider-heading h3{
        font-size:27px;
    }

    .hns-bt-card{
        flex-basis:100%;
    }

    .hns-bt-card{
        min-height:285px;
    }

    .hns-bt-plan{
        padding:22px 15px;
    }

    .hns-bt-plan-heading h3{
        font-size:25px;
    }

    .hns-bt-cta{
        padding:22px 18px;
    }

    .hns-bt-cta-text h3{
        font-size:22px;
    }

    .hns-bt-cta-btn{
        margin-left:0;
        width:100%;
        justify-content:center;
    }
}

/* ============================================
   HEAR N SAY - PROSTHETICS & ORTHOTICS
============================================ */

.hns-po-section{
    width:100%;
    padding:55px 0;
    overflow:hidden;
    background:
        radial-gradient(circle at 5% 5%,rgba(255,196,0,.10),transparent 22%),
        linear-gradient(180deg,#f6f8fe 0%,#fff 100%);
}

.hns-po-container{
    width:min(1280px,92%);
    margin:auto;
}

.hns-po-label{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#19368f;
    font-size:12px;
    font-weight:900;
    letter-spacing:1.7px;
    margin-bottom:10px;
}

.hns-po-label:before{
    content:"";
    width:30px;
    height:3px;
    border-radius:20px;
    background:#ffc400;
}

.hns-po-section h2,
.hns-po-section h3,
.hns-po-section h4{
    margin-top:0;
}

.hns-po-section h2 span,
.hns-po-section h3 span{
    color:#19368f;
}


/* ================= INTRO ================= */

.hns-po-intro{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:45px;
    align-items:center;
    margin-bottom:40px;
}

.hns-po-intro-content h2{
    color:#081638;
    font-size:clamp(36px,4.2vw,54px);
    line-height:1.06;
    font-weight:850;
    margin-bottom:18px;
}

.hns-po-intro-content p{
    color:#59657a;
    font-size:17px;
    line-height:1.68;
    margin:0 0 12px;
}

.hns-po-highlights{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:19px 0;
}

.hns-po-highlights div{
    padding:9px 13px;
    border-radius:30px;
    background:#edf1ff;
    color:#081638;
    font-size:13px;
    font-weight:800;
}

.hns-po-highlights i{
    color:#19368f;
    margin-right:5px;
}

.hns-po-main-btn{
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:13px 21px;
    border-radius:8px;
    background:linear-gradient(135deg,#081638,#19368f);
    color:#fff;
    text-decoration:none;
    font-size:14px;
    font-weight:900;
    transition:.3s;
}

.hns-po-main-btn:hover{
    color:#ffc400;
    transform:translateY(-2px);
}

.hns-po-intro-image{
    height:400px;
    border-radius:25px;
    overflow:hidden;
    position:relative;
    box-shadow:0 25px 60px rgba(8,22,56,.15);
}

.hns-po-intro-image:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        transparent 50%,
        rgba(8,22,56,.58)
    );
}

.hns-po-intro-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:.5s;
}

.hns-po-intro:hover .hns-po-intro-image img{
    transform:scale(1.04);
}

.hns-po-image-card{
    position:absolute;
    left:18px;
    right:18px;
    bottom:18px;
    z-index:3;
    display:flex;
    align-items:center;
    gap:13px;
    padding:13px 15px;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(10px);
    border-radius:14px;
}

.hns-po-image-card > i{
    width:45px;
    height:45px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:#ffc400;
    color:#081638;
    font-size:19px;
}

.hns-po-image-card strong{
    display:block;
    color:#081638;
    font-size:15px;
}

.hns-po-image-card span{
    color:#667085;
    font-size:12px;
}


/* ================= PROSTHETICS / ORTHOTICS ================= */

.hns-po-service-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin-bottom:45px;
}

.hns-po-service-card{
    padding:28px;
    border-radius:22px;
    position:relative;
    overflow:hidden;
}

.hns-po-prosthetic{
    color:#fff;
    background:
        radial-gradient(circle at 100% 0,rgba(255,196,0,.15),transparent 35%),
        linear-gradient(135deg,#081638,#0c1d50 55%,#19368f);
}

.hns-po-orthotic{
    border:1px solid #e2e7f1;
    background:#fff;
    box-shadow:0 15px 40px rgba(8,22,56,.07);
}

.hns-po-service-icon{
    width:53px;
    height:53px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:#ffc400;
    color:#081638;
    font-size:22px;
    margin-bottom:15px;
}

.hns-po-service-card > span{
    display:block;
    font-size:11px;
    font-weight:900;
    letter-spacing:1.5px;
    margin-bottom:6px;
}

.hns-po-prosthetic > span{
    color:#ffc400;
}

.hns-po-orthotic > span{
    color:#19368f;
}

.hns-po-service-card h3{
    font-size:29px;
    line-height:1.15;
    margin-bottom:12px;
}

.hns-po-prosthetic h3{
    color:#fff;
}

.hns-po-prosthetic h3 strong{
    color:#ffc400;
}

.hns-po-orthotic h3{
    color:#081638;
}

.hns-po-orthotic h3 strong{
    color:#19368f;
}

.hns-po-service-card p{
    font-size:15px;
    line-height:1.65;
}

.hns-po-prosthetic p{
    color:rgba(255,255,255,.78);
}

.hns-po-orthotic p{
    color:#667085;
}

.hns-po-small-note{
    padding:11px 13px;
    margin:15px 0;
    border:1px solid rgba(255,255,255,.13);
    background:rgba(255,255,255,.07);
    border-radius:10px;
    color:rgba(255,255,255,.82);
    font-size:13px;
    line-height:1.55;
}

.hns-po-small-note i{
    color:#ffc400;
    margin-right:6px;
}

.hns-po-prosthetic ul{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px 15px;
    list-style:none;
    padding:0;
    margin:0;
}

.hns-po-prosthetic li{
    font-size:13.5px;
    color:#fff;
}

.hns-po-prosthetic li:before{
    content:"✓";
    color:#ffc400;
    margin-right:7px;
    font-weight:900;
}

.hns-po-benefit-tags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin:14px 0;
}

.hns-po-benefit-tags span{
    padding:7px 10px;
    border-radius:20px;
    background:#edf1ff;
    color:#19368f;
    font-size:12px;
    font-weight:800;
}

.hns-po-mini-image{
    height:120px;
    border-radius:13px;
    overflow:hidden;
    margin-top:14px;
}

.hns-po-mini-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 38%;
}


/* ================= SOLUTION SLIDER ================= */

.hns-po-solutions{
    margin-bottom:45px;
}

.hns-po-section-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:20px;
}

.hns-po-section-heading h3{
    font-size:34px;
    line-height:1.15;
    margin:0;
    color:#081638;
}

.hns-po-controls{
    display:flex;
    gap:8px;
}

.hns-po-prev,
.hns-po-next{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border:none;
    border-radius:50%;
    background:#081638;
    color:#fff;
    cursor:pointer;
    transition:.3s;
}

.hns-po-prev:hover,
.hns-po-next:hover{
    background:#ffc400;
    color:#081638;
}

.hns-po-slider{
    overflow:hidden;
}

.hns-po-track{
    display:flex;
    gap:18px;
    transition:transform .55s ease;
    touch-action:pan-y;
}

.hns-po-solution-card{
    flex:0 0 calc((100% - 54px) / 4);
    min-height:265px;
    position:relative;
    padding:22px;
    border:1px solid #e4e8f1;
    border-radius:18px;
    background:#fff;
    box-shadow:0 11px 32px rgba(8,22,56,.06);
}

.hns-po-solution-icon{
    width:47px;
    height:47px;
    display:grid;
    place-items:center;
    background:#fff4c8;
    color:#19368f;
    border-radius:13px;
    font-size:19px;
    margin-bottom:15px;
}

.hns-po-number{
    position:absolute;
    top:17px;
    right:18px;
    font-size:32px;
    color:#edf0f7;
    font-weight:900;
}

.hns-po-solution-card small{
    color:#19368f;
    font-size:10px;
    letter-spacing:1.3px;
    font-weight:900;
}

.hns-po-solution-card h4{
    color:#081638;
    font-size:19px;
    margin:5px 0 8px;
}

.hns-po-solution-card p{
    color:#667085;
    font-size:14px;
    line-height:1.6;
    margin:0;
}

.hns-po-use{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    margin-top:12px;
}

.hns-po-use span{
    padding:5px 8px;
    background:#eef2ff;
    border-radius:20px;
    color:#19368f;
    font-size:11px;
    font-weight:700;
}

.hns-po-dots{
    display:flex;
    justify-content:center;
    gap:6px;
    margin-top:17px;
}

.hns-po-dot{
    width:8px;
    height:8px;
    border:0;
    border-radius:20px;
    background:#cbd2e2;
    cursor:pointer;
}

.hns-po-dot.active{
    width:28px;
    background:#19368f;
}


/* ================= ASSESSMENT ================= */

.hns-po-assessment{
    padding:29px;
    margin-bottom:25px;
    border-radius:23px;
    background:#f0f3fb;
}

.hns-po-assessment-head{
    max-width:760px;
    margin:0 auto 23px;
    text-align:center;
}

.hns-po-assessment-head h3{
    color:#081638;
    font-size:30px;
    margin-bottom:7px;
}

.hns-po-assessment-head p{
    margin:0;
    color:#667085;
    font-size:14px;
}

.hns-po-assessment-flow{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
}

.hns-po-flow-item{
    min-width:116px;
    min-height:95px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:12px;
    text-align:center;
    border-radius:13px;
    background:#fff;
    border:1px solid #e0e5ef;
}

.hns-po-flow-item i{
    color:#19368f;
    font-size:20px;
    margin-bottom:6px;
}

.hns-po-flow-item span{
    color:#081638;
    font-size:12px;
    line-height:1.35;
    font-weight:800;
}

.hns-po-flow-final{
    background:linear-gradient(135deg,#081638,#19368f);
}

.hns-po-flow-final i{
    color:#ffc400;
}

.hns-po-flow-final span{
    color:#fff;
}

.hns-po-arrow{
    color:#19368f;
    opacity:.4;
    font-size:12px;
}

.hns-po-consider{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:7px;
    margin-top:18px;
}

.hns-po-consider span{
    padding:7px 10px;
    border-radius:20px;
    background:#e3e8f7;
    color:#34405a;
    font-size:12px;
    font-weight:700;
}

.hns-po-consider i{
    color:#19368f;
    margin-right:5px;
}


/* ================= BOTTOM GRID ================= */

.hns-po-bottom-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:19px;
    margin-bottom:25px;
}

.hns-po-info-box{
    padding:24px;
    border-radius:19px;
    background:#fff;
    border:1px solid #e5e9f2;
    box-shadow:0 10px 30px rgba(8,22,56,.06);
}

.hns-po-info-top{
    display:flex;
    gap:13px;
    align-items:center;
    margin-bottom:11px;
}

.hns-po-info-icon{
    width:50px;
    min-width:50px;
    height:50px;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:#fff3c1;
    color:#19368f;
    font-size:20px;
}

.hns-po-info-top span,
.hns-po-child-content > span{
    color:#19368f;
    font-size:10px;
    font-weight:900;
    letter-spacing:1.4px;
}

.hns-po-info-top h4{
    color:#081638;
    font-size:20px;
    margin:3px 0 0;
}

.hns-po-info-box > p{
    color:#667085;
    font-size:14px;
    line-height:1.6;
}

.hns-po-check-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px 10px;
}

.hns-po-check-grid span{
    color:#4d596f;
    font-size:13px;
}

.hns-po-check-grid i{
    color:#19368f;
    margin-right:5px;
}

.hns-po-child-box{
    display:grid;
    grid-template-columns:.42fr .58fr;
    border-radius:19px;
    overflow:hidden;
    background:linear-gradient(135deg,#081638,#19368f);
}

.hns-po-child-image{
    min-height:100%;
}

.hns-po-child-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.hns-po-child-content{
    padding:24px;
}

.hns-po-child-content > span{
    color:#ffc400;
}

.hns-po-child-content h4{
    color:#fff;
    font-size:21px;
    line-height:1.2;
    margin:5px 0 10px;
}

.hns-po-child-content h4 strong{
    color:#ffc400;
}

.hns-po-child-content p{
    color:rgba(255,255,255,.76);
    font-size:13.5px;
    line-height:1.58;
    margin:0 0 9px;
}


/* ================= APPROACH ================= */

.hns-po-approach{
    padding:23px 26px;
    margin-bottom:25px;
    border-radius:19px;
    border:1px solid #e3e7ef;
    background:#fff;
}

.hns-po-approach-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:11px;
}

.hns-po-approach-row > div{
    flex:1;
    display:flex;
    gap:8px;
    align-items:center;
    padding:11px;
    border-radius:10px;
    background:#f2f4fa;
}

.hns-po-approach-row strong{
    color:#19368f;
    font-size:11px;
}

.hns-po-approach-row span{
    color:#081638;
    font-size:13px;
    font-weight:800;
}

.hns-po-approach-row > i{
    color:#19368f;
    opacity:.4;
}

.hns-po-approach-row .active{
    background:#ffc400;
}


/* ================= CTA ================= */

.hns-po-cta{
    display:flex;
    align-items:center;
    gap:20px;
    padding:27px 29px;
    border-radius:22px;
    background:linear-gradient(135deg,#081638,#0c1d50 55%,#19368f);
    color:#fff;
}

.hns-po-cta-icon{
    min-width:65px;
    width:65px;
    height:65px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:#ffc400;
    color:#081638;
    font-size:25px;
}

.hns-po-cta-text{
    flex:1;
}

.hns-po-cta-text > span{
    color:#ffc400;
    font-size:11px;
    font-weight:900;
    letter-spacing:1.5px;
}

.hns-po-cta-text h3{
    color:#fff;
    font-size:25px;
    margin:4px 0 5px;
}

.hns-po-cta-text h3 strong{
    color:#ffc400;
}

.hns-po-cta-text p{
    max-width:780px;
    color:rgba(255,255,255,.76);
    font-size:14px;
    line-height:1.55;
    margin:0;
}

.hns-po-cta-btn{
    white-space:nowrap;
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:13px 18px;
    border-radius:8px;
    text-decoration:none;
    background:#ffc400;
    color:#081638;
    font-size:14px;
    font-weight:900;
}


/* ================= RESPONSIVE ================= */

@media(max-width:1100px){

    .hns-po-solution-card{
        flex-basis:calc((100% - 36px) / 3);
    }

    .hns-po-assessment-flow{
        overflow-x:auto;
        justify-content:flex-start;
        padding-bottom:7px;
    }

    .hns-po-flow-item{
        min-width:125px;
    }
}

@media(max-width:900px){

    .hns-po-intro{
        grid-template-columns:1fr;
        gap:25px;
    }

    .hns-po-intro-image{
        height:350px;
    }

    .hns-po-service-grid,
    .hns-po-bottom-grid{
        grid-template-columns:1fr;
    }

    .hns-po-solution-card{
        flex-basis:calc((100% - 18px) / 2);
    }

    .hns-po-approach-row{
        overflow-x:auto;
        justify-content:flex-start;
        padding-bottom:6px;
    }

    .hns-po-approach-row > div{
        min-width:200px;
    }

    .hns-po-cta{
        flex-wrap:wrap;
    }

    .hns-po-cta-btn{
        margin-left:85px;
    }
}

@media(max-width:650px){

    .hns-po-section{
        padding:35px 0;
    }

    .hns-po-container{
        width:92%;
    }

    .hns-po-intro-content h2{
        font-size:34px;
    }

    .hns-po-intro-content p{
        font-size:16px;
    }

    .hns-po-intro-image{
        height:300px;
    }

    .hns-po-service-card{
        padding:22px 18px;
    }

    .hns-po-service-card h3{
        font-size:25px;
    }

    .hns-po-prosthetic ul{
        grid-template-columns:1fr;
    }

    .hns-po-section-heading h3{
        font-size:27px;
    }

    .hns-po-solution-card{
        flex-basis:100%;
        min-height:250px;
    }

    .hns-po-assessment{
        padding:22px 15px;
    }

    .hns-po-assessment-head h3{
        font-size:26px;
    }

    .hns-po-child-box{
        grid-template-columns:1fr;
    }

    .hns-po-child-image{
        height:220px;
    }

    .hns-po-check-grid{
        grid-template-columns:1fr;
    }

    .hns-po-cta{
        padding:22px 18px;
    }

    .hns-po-cta-text h3{
        font-size:22px;
    }

    .hns-po-cta-btn{
        width:100%;
        margin-left:0;
        justify-content:center;
    }
}

/* ========================================
   HEAR N SAY - ADULT SPEECH THERAPY
======================================== */

.hns-ast-section{
    width:100%;
    padding:55px 0;
    overflow:hidden;
    background:
        radial-gradient(circle at 90% 5%,rgba(255,196,0,.1),transparent 22%),
        linear-gradient(180deg,#f7f9ff 0%,#fff 100%);
}

.hns-ast-container{
    width:min(1280px,92%);
    margin:auto;
}

.hns-ast-label{
    display:inline-flex;
    gap:8px;
    align-items:center;
    margin-bottom:9px;
    color:#19368f;
    font-size:12px;
    font-weight:900;
    letter-spacing:1.7px;
}

.hns-ast-label:before{
    content:"";
    width:29px;
    height:3px;
    border-radius:10px;
    background:#ffc400;
}

.hns-ast-section h2,
.hns-ast-section h3,
.hns-ast-section h4{
    margin-top:0;
}

.hns-ast-section h2 span,
.hns-ast-section h3 span{
    color:#19368f;
}


/* INTRO */

.hns-ast-intro{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:45px;
    align-items:center;
    margin-bottom:45px;
}

.hns-ast-content h2{
    margin-bottom:17px;
    color:#081638;
    font-size:clamp(36px,4.2vw,53px);
    line-height:1.07;
    font-weight:850;
}

.hns-ast-content p{
    margin:0 0 12px;
    color:#59657a;
    font-size:17px;
    line-height:1.68;
}

.hns-ast-points{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:18px 0;
}

.hns-ast-points span{
    padding:8px 12px;
    border-radius:30px;
    background:#edf1ff;
    color:#081638;
    font-size:13px;
    font-weight:800;
}

.hns-ast-points i{
    color:#19368f;
    margin-right:5px;
}

.hns-ast-btn{
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:13px 20px;
    border-radius:8px;
    background:linear-gradient(135deg,#081638,#19368f);
    color:#fff;
    text-decoration:none;
    font-size:14px;
    font-weight:900;
    transition:.3s;
}

.hns-ast-btn:hover{
    color:#ffc400;
    transform:translateY(-2px);
}

.hns-ast-image{
    height:395px;
    border-radius:24px;
    overflow:hidden;
    position:relative;
    box-shadow:0 24px 60px rgba(8,22,56,.15);
}

.hns-ast-image:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        transparent 50%,
        rgba(8,22,56,.6)
    );
}

.hns-ast-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:.5s;
}

.hns-ast-intro:hover .hns-ast-image img{
    transform:scale(1.04);
}

.hns-ast-image-card{
    position:absolute;
    z-index:3;
    left:18px;
    right:18px;
    bottom:18px;
    display:flex;
    gap:12px;
    align-items:center;
    padding:13px 15px;
    border-radius:14px;
    background:rgba(255,255,255,.95);
}

.hns-ast-image-icon{
    width:46px;
    min-width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:#ffc400;
    color:#081638;
    font-size:19px;
}

.hns-ast-image-card strong{
    display:block;
    color:#081638;
    font-size:15px;
}

.hns-ast-image-card span{
    color:#667085;
    font-size:12px;
}


/* HEADING */

.hns-ast-heading-row{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:25px;
    margin-bottom:20px;
}

.hns-ast-heading-row > div:first-child{
    max-width:780px;
}

.hns-ast-heading-row h3{
    margin-bottom:7px;
    color:#081638;
    font-size:34px;
}

.hns-ast-heading-row p{
    margin:0;
    color:#667085;
    font-size:15px;
    line-height:1.6;
}

.hns-ast-controls{
    display:flex;
    gap:8px;
}

.hns-ast-prev,
.hns-ast-next{
    width:44px;
    height:44px;
    border:0;
    border-radius:50%;
    background:#081638;
    color:#fff;
    cursor:pointer;
    transition:.3s;
}

.hns-ast-prev:hover,
.hns-ast-next:hover{
    background:#ffc400;
    color:#081638;
}


/* SLIDER */

.hns-ast-slider{
    width:100%;
    overflow:hidden;
}

.hns-ast-track{
    display:flex;
    gap:18px;
    transition:transform .55s ease;
    touch-action:pan-y;
}

.hns-ast-card{
    flex:0 0 calc((100% - 36px) / 3);
    min-height:300px;
    padding:23px;
    position:relative;
    background:#fff;
    border:1px solid #e4e8f2;
    border-radius:19px;
    box-shadow:0 12px 35px rgba(8,22,56,.07);
}

.hns-ast-icon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    margin-bottom:15px;
    border-radius:13px;
    background:#fff4c8;
    color:#19368f;
    font-size:20px;
}

.hns-ast-no{
    position:absolute;
    right:19px;
    top:17px;
    color:#edf0f7;
    font-size:34px;
    font-weight:900;
}

.hns-ast-card small{
    color:#19368f;
    font-size:10px;
    font-weight:900;
    letter-spacing:1.3px;
}

.hns-ast-card h4{
    margin:4px 0 8px;
    color:#081638;
    font-size:21px;
}

.hns-ast-card p{
    margin:0 0 9px;
    color:#667085;
    font-size:14.5px;
    line-height:1.6;
}

.hns-ast-card ul{
    padding:0;
    margin:8px 0 0;
    list-style:none;
}

.hns-ast-card li{
    padding:3px 0;
    color:#536078;
    font-size:13.5px;
}

.hns-ast-card li:before{
    content:"✓";
    margin-right:7px;
    color:#19368f;
    font-weight:900;
}

.hns-ast-highlight{
    padding:9px 11px;
    margin-top:12px !important;
    border-radius:9px;
    background:#eef2ff;
    color:#19368f !important;
    font-weight:700;
}

.hns-ast-tags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:13px;
}

.hns-ast-tags span{
    padding:6px 9px;
    border-radius:20px;
    background:#eef2ff;
    color:#19368f;
    font-size:11px;
    font-weight:800;
}

.hns-ast-dots{
    display:flex;
    justify-content:center;
    gap:6px;
    margin:17px 0 45px;
}

.hns-ast-dot{
    width:8px;
    height:8px;
    border:0;
    border-radius:20px;
    background:#cad2e2;
    cursor:pointer;
}

.hns-ast-dot.active{
    width:28px;
    background:#19368f;
}


/* STROKE */

.hns-ast-stroke{
    padding:29px;
    margin-bottom:25px;
    border-radius:23px;
    background:#f0f3fb;
}

.hns-ast-stroke-content{
    max-width:800px;
    margin:0 auto 23px;
    text-align:center;
}

.hns-ast-stroke-content h3{
    margin-bottom:7px;
    color:#081638;
    font-size:30px;
}

.hns-ast-stroke-content p{
    margin:0;
    color:#667085;
    font-size:14.5px;
    line-height:1.6;
}

.hns-ast-path{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
}

.hns-ast-path > div{
    min-width:125px;
    min-height:95px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:6px;
    padding:11px;
    border-radius:13px;
    background:#fff;
    border:1px solid #e0e5ef;
}

.hns-ast-path > div i{
    color:#19368f;
    font-size:20px;
}

.hns-ast-path > div span{
    color:#081638;
    font-size:12px;
    font-weight:800;
}

.hns-ast-path > i{
    color:#19368f;
    opacity:.4;
    font-size:11px;
}

.hns-ast-path .hns-ast-path-final{
    background:linear-gradient(135deg,#081638,#19368f);
}

.hns-ast-path .hns-ast-path-final i{
    color:#ffc400;
}

.hns-ast-path .hns-ast-path-final span{
    color:#fff;
}

.hns-ast-real-life{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:7px;
    margin-top:18px;
}

.hns-ast-real-life span{
    padding:7px 11px;
    border-radius:20px;
    background:#e3e8f7;
    color:#38445c;
    font-size:12px;
    font-weight:700;
}

.hns-ast-real-life i{
    margin-right:5px;
    color:#19368f;
}


/* TWO INFO BLOCKS */

.hns-ast-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:19px;
    margin-bottom:25px;
}

.hns-ast-info{
    display:flex;
    gap:15px;
    padding:23px;
    border-radius:18px;
    background:#fff;
    border:1px solid #e4e8f1;
    box-shadow:0 10px 30px rgba(8,22,56,.06);
}

.hns-ast-info-icon{
    width:52px;
    min-width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:#fff3c1;
    color:#19368f;
    font-size:20px;
}

.hns-ast-info span{
    color:#19368f;
    font-size:10px;
    font-weight:900;
    letter-spacing:1.4px;
}

.hns-ast-info h4{
    margin:4px 0 7px;
    color:#081638;
    font-size:20px;
}

.hns-ast-info p{
    margin:0;
    color:#667085;
    font-size:14px;
    line-height:1.6;
}

.hns-ast-note{
    margin-top:11px;
    padding:9px 11px;
    border-radius:9px;
    background:#f4f6fb;
    color:#526079;
    font-size:12.5px;
    line-height:1.5;
}

.hns-ast-note i{
    margin-right:5px;
    color:#19368f;
}

.hns-ast-cognitive{
    background:linear-gradient(135deg,#fff9e6,#fff);
}


/* REAL LIFE GOALS */

.hns-ast-real-therapy{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:25px;
    align-items:center;
    padding:25px;
    margin-bottom:25px;
    border-radius:20px;
    border:1px solid #e4e8f1;
    background:#fff;
}

.hns-ast-real-therapy h3{
    margin-bottom:0;
    color:#081638;
    font-size:28px;
}

.hns-ast-personas{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:9px;
}

.hns-ast-personas > div{
    padding:15px;
    border-radius:13px;
    background:#f0f3fb;
}

.hns-ast-personas i{
    display:block;
    margin-bottom:7px;
    color:#19368f;
    font-size:20px;
}

.hns-ast-personas strong{
    display:block;
    margin-bottom:4px;
    color:#081638;
    font-size:14px;
}

.hns-ast-personas span{
    color:#667085;
    font-size:11.5px;
    line-height:1.45;
}


/* CTA */

.hns-ast-cta{
    display:flex;
    align-items:center;
    gap:20px;
    padding:27px 29px;
    border-radius:22px;
    background:linear-gradient(135deg,#081638,#0c1d50 55%,#19368f);
}

.hns-ast-cta-icon{
    width:64px;
    min-width:64px;
    height:64px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:#ffc400;
    color:#081638;
    font-size:24px;
}

.hns-ast-cta-content{
    flex:1;
}

.hns-ast-cta-content > span{
    color:#ffc400;
    font-size:11px;
    font-weight:900;
    letter-spacing:1.5px;
}

.hns-ast-cta-content h3{
    margin:4px 0 5px;
    color:#fff;
    font-size:25px;
}

.hns-ast-cta-content h3 strong{
    color:#ffc400;
}

.hns-ast-cta-content p{
    max-width:790px;
    margin:0;
    color:rgba(255,255,255,.76);
    font-size:14px;
    line-height:1.55;
}

.hns-ast-cta-btn{
    display:inline-flex;
    align-items:center;
    gap:8px;
    white-space:nowrap;
    padding:13px 18px;
    border-radius:8px;
    background:#ffc400;
    color:#081638;
    text-decoration:none;
    font-size:14px;
    font-weight:900;
}


/* RESPONSIVE */

@media(max-width:1050px){

    .hns-ast-card{
        flex-basis:calc((100% - 18px) / 2);
    }

    .hns-ast-path{
        overflow-x:auto;
        justify-content:flex-start;
        padding-bottom:7px;
    }

    .hns-ast-path > div{
        min-width:125px;
    }
}

@media(max-width:850px){

    .hns-ast-intro{
        grid-template-columns:1fr;
        gap:25px;
    }

    .hns-ast-image{
        height:345px;
    }

    .hns-ast-grid,
    .hns-ast-real-therapy{
        grid-template-columns:1fr;
    }

    .hns-ast-cta{
        flex-wrap:wrap;
    }

    .hns-ast-cta-btn{
        margin-left:84px;
    }
}

@media(max-width:650px){

    .hns-ast-section{
        padding:35px 0;
    }

    .hns-ast-container{
        width:92%;
    }

    .hns-ast-content h2{
        font-size:34px;
    }

    .hns-ast-content p{
        font-size:16px;
    }

    .hns-ast-image{
        height:290px;
    }

    .hns-ast-heading-row{
        align-items:flex-end;
    }

    .hns-ast-heading-row h3{
        font-size:27px;
    }

    .hns-ast-card{
        flex-basis:100%;
        min-height:285px;
    }

    .hns-ast-stroke{
        padding:22px 15px;
    }

    .hns-ast-stroke-content h3{
        font-size:26px;
    }

    .hns-ast-personas{
        grid-template-columns:1fr;
    }

    .hns-ast-real-therapy{
        padding:20px;
    }

    .hns-ast-real-therapy h3{
        font-size:25px;
    }

    .hns-ast-cta{
        padding:22px 18px;
    }

    .hns-ast-cta-content h3{
        font-size:22px;
    }

    .hns-ast-cta-btn{
        width:100%;
        margin-left:0;
        justify-content:center;
    }
}

/* =====================================================
   HEAR N SAY - PREMIUM GALLERY
===================================================== */

.hns-gallery-section {
    width: 100%;
    padding: 65px 0;
    background:
        radial-gradient(circle at 10% 10%, rgba(25, 54, 143, 0.08), transparent 25%),
        #f7f9fd;
    overflow: hidden;
}

.hns-gallery-container {
    width: 92%;
    max-width: 1450px;
    margin: auto;
}


/* =========================
   HEADING
========================= */

.hns-gallery-heading {
    max-width: 850px;
    margin: 0 auto 38px;
    text-align: center;
}

.hns-gallery-heading span {
    display: inline-block;
    margin-bottom: 10px;
    color: #19368f;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2px;
}

.hns-gallery-heading h1 {
    margin: 0 0 13px;
    color: #081638;
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.15;
    font-weight: 800;
}

.hns-gallery-heading p {
    max-width: 760px;
    margin: auto;
    color: #5c6475;
    font-size: 17px;
    line-height: 1.75;
}


/* =========================
   GALLERY GRID
========================= */

.hns-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}


/* =========================
   GALLERY CARD
========================= */

.hns-gallery-item {
    position: relative;
    height: 255px;
    border-radius: 18px;
    overflow: hidden;
    cursor: pointer;
    background: #ffffff;
    box-shadow: 0 8px 28px rgba(8, 22, 56, 0.09);
}

.hns-gallery-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.55s ease;
}


/* Overlay */

.hns-gallery-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;

    background: linear-gradient(
        180deg,
        rgba(8, 22, 56, 0.02),
        rgba(8, 22, 56, 0.7)
    );

    opacity: 0;
    transition: 0.35s ease;
}


/* View Icon */

.hns-gallery-view {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #ffc400;
    color: #081638;

    font-size: 27px;
    font-weight: 600;

    transform: scale(0.7);
    transition: 0.35s ease;
}


/* Hover */

.hns-gallery-item:hover img {
    transform: scale(1.08);
}

.hns-gallery-item:hover .hns-gallery-overlay {
    opacity: 1;
}

.hns-gallery-item:hover .hns-gallery-view {
    transform: scale(1);
}


/* =========================
   LIGHTBOX
========================= */

.hns-lightbox {
    position: fixed;
    inset: 0;

    z-index: 999999;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 30px;

    background: rgba(3, 9, 25, 0.94);

    opacity: 0;
    visibility: hidden;

    transition: 0.3s ease;
}

.hns-lightbox.active {
    opacity: 1;
    visibility: visible;
}


.hns-lightbox-content {
    position: relative;
    max-width: 1100px;
    max-height: 88vh;

    display: flex;
    align-items: center;
    justify-content: center;
}

.hns-lightbox-content img {
    display: block;

    max-width: 100%;
    max-height: 82vh;

    object-fit: contain;

    border-radius: 14px;

    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.4);
}


/* Image Counter */

.hns-lightbox-count {
    position: absolute;

    left: 50%;
    bottom: -38px;

    transform: translateX(-50%);

    color: #ffffff;

    font-size: 15px;
    font-weight: 600;

    letter-spacing: 1px;
}


/* Close */

.hns-lightbox-close {
    position: absolute;

    top: 20px;
    right: 28px;

    width: 48px;
    height: 48px;

    border: 0;
    border-radius: 50%;

    background: #ffc400;
    color: #081638;

    font-size: 32px;
    line-height: 1;

    cursor: pointer;

    z-index: 10;
}


/* Previous / Next */

.hns-lightbox-prev,
.hns-lightbox-next {
    position: absolute;
    top: 50%;

    transform: translateY(-50%);

    width: 52px;
    height: 52px;

    border: 0;
    border-radius: 50%;

    background: rgba(255, 255, 255, 0.13);
    color: #ffffff;

    font-size: 25px;

    cursor: pointer;

    transition: 0.3s ease;

    z-index: 10;
}

.hns-lightbox-prev {
    left: 25px;
}

.hns-lightbox-next {
    right: 25px;
}

.hns-lightbox-prev:hover,
.hns-lightbox-next:hover {
    background: #ffc400;
    color: #081638;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .hns-gallery-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .hns-gallery-item {
        height: 240px;
    }
}


/* =====================================================
   SMALL TABLET
===================================================== */

@media (max-width: 800px) {

    .hns-gallery-section {
        padding: 50px 0;
    }

    .hns-gallery-container {
        width: 94%;
    }

    .hns-gallery-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }

    .hns-gallery-item {
        height: 220px;
        border-radius: 14px;
    }

    .hns-gallery-heading {
        margin-bottom: 28px;
    }

    .hns-gallery-heading p {
        font-size: 16px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 520px) {

    .hns-gallery-section {
        padding: 40px 0;
    }

    .hns-gallery-heading h1 {
        font-size: 30px;
    }

    .hns-gallery-heading p {
        font-size: 16px;
        line-height: 1.65;
    }

    .hns-gallery-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .hns-gallery-item {
        height: 260px;
    }

    .hns-lightbox {
        padding: 15px;
    }

    .hns-lightbox-prev,
    .hns-lightbox-next {
        width: 42px;
        height: 42px;
        font-size: 20px;
    }

    .hns-lightbox-prev {
        left: 8px;
    }

    .hns-lightbox-next {
        right: 8px;
    }

    .hns-lightbox-close {
        width: 42px;
        height: 42px;
        top: 15px;
        right: 15px;
        font-size: 28px;
    }
}

/* ==========================================
   HEAR N SAY - CENTER ALL BANNER CONTENT
========================================== */

/* Common banner sections */
.hns-banner,
.inner-banner,
.page-banner,
.service-banner,
.hero-banner,
.banner-section {
    position: relative;
}

/* Center banner containers */
.hns-banner .container,
.inner-banner .container,
.page-banner .container,
.service-banner .container,
.hero-banner .container,
.banner-section .container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;
}

/* Center actual banner content */
.hns-banner-content,
.inner-banner-content,
.page-banner-content,
.service-banner-content,
.hero-banner-content,
.banner-content {
    width: 100% !important;
    max-width: 900px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    text-align: center !important;
}

/* Center all banner text elements */
.hns-banner h1,
.hns-banner h2,
.hns-banner p,
.inner-banner h1,
.inner-banner h2,
.inner-banner p,
.page-banner h1,
.page-banner h2,
.page-banner p,
.service-banner h1,
.service-banner h2,
.service-banner p,
.hero-banner h1,
.hero-banner h2,
.hero-banner p,
.banner-section h1,
.banner-section h2,
.banner-section p {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Breadcrumb also center */
.hns-banner .breadcrumb,
.inner-banner .breadcrumb,
.page-banner .breadcrumb,
.service-banner .breadcrumb,
.hero-banner .breadcrumb,
.banner-section .breadcrumb {
    justify-content: center !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Mobile */
@media (max-width: 767px) {

    .hns-banner .container,
    .inner-banner .container,
    .page-banner .container,
    .service-banner .container,
    .hero-banner .container,
    .banner-section .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .hns-banner-content,
    .inner-banner-content,
    .page-banner-content,
    .service-banner-content,
    .hero-banner-content,
    .banner-content {
        max-width: 100% !important;
        text-align: center !important;
    }
}

/* =========================================
   HNS GALLERY - REMOVE WHITE IMAGE SPACE
========================================= */

.hns-gallery-item{
    position: relative;
    width: 100%;
    height: 280px;
    overflow: hidden;
    border-radius: 18px;
    background: #081638;
}

.hns-gallery-image-btn{
    display: block;
    width: 100%;
    height: 100%;
    padding: 0 !important;
    margin: 0;
    border: 0;
    background: transparent;
    overflow: hidden;
    cursor: pointer;
}

.hns-gallery-image-btn img{
    display: block !important;
    width: 100% !important;
    height: 100% !important;

    /* IMPORTANT */
    object-fit: cover !important;
    object-position: center !important;

    margin: 0 !important;
    padding: 0 !important;
    border: 0;

    transition: transform .4s ease;
}

.hns-gallery-item:hover .hns-gallery-image-btn img{
    transform: scale(1.05);
}


/* TABLET */
@media (max-width: 991px){

    .hns-gallery-item{
        height: 250px;
    }

}


/* MOBILE */
@media (max-width: 767px){

    .hns-gallery-item{
        height: 240px;
    }

}


/* SMALL MOBILE */
@media (max-width: 480px){

    .hns-gallery-item{
        height: 230px;
    }

}




/* ============================================================
   HEAR N SAY - SERVICES 4 COLUMN MEGA MENU
   DESKTOP ONLY
============================================================ */


/* Parent needs static position so mega menu can become wide */
.hns-service-dropdown{
    position:static !important;
}


/* ============================================================
   MAIN MEGA MENU
============================================================ */

.hns-services-mega-menu{

    width:min(1160px, calc(100vw - 40px)) !important;

    position:absolute !important;

    left:50% !important;
    right:auto !important;

    transform:translateX(-50%) !important;

    top:100% !important;

    padding:18px !important;

    margin-top:0 !important;

    background:#ffffff !important;

    border:1px solid rgba(13,38,101,.10) !important;

    border-radius:18px !important;

    box-shadow:
        0 25px 65px rgba(5,21,63,.18) !important;

    z-index:99999 !important;

    overflow:hidden;
}


/* Premium top line */

.hns-services-mega-menu::before{

    content:"";

    position:absolute;

    top:0;
    left:20px;
    right:20px;

    height:3px;

    background:linear-gradient(
        90deg,
        #ffc400,
        #16398f
    );

    border-radius:0 0 8px 8px;
}



/* ============================================================
   GRID
============================================================ */

.hns-mega-services-grid{

    display:grid;

    grid-template-columns:
        repeat(4, minmax(0,1fr));

    gap:13px;

    width:100%;
}



/* ============================================================
   COLUMN
============================================================ */

.hns-mega-services-column{

    min-width:0;

    padding:9px;

    border-radius:13px;

    background:
        linear-gradient(
            180deg,
            #f7f9ff 0%,
            #ffffff 100%
        );

    border:1px solid #edf0f7;
}



/* ============================================================
   COLUMN HEADING
============================================================ */

.hns-mega-column-title{

    display:flex;

    align-items:center;

    gap:9px;

    min-height:38px;

    padding:0 5px 9px;

    margin-bottom:5px;

    color:#0c285e;

    font-size:14px;

    line-height:1.2;

    font-weight:800;

    border-bottom:1px solid #e8edf7;
}


.hns-mega-column-title span{

    width:30px;
    height:30px;

    min-width:30px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:8px;

    background:#ffc400;

    color:#0c285e;

    font-size:13px;
}



/* ============================================================
   SERVICE LINKS
============================================================ */

.hns-services-mega-menu .dropdown-item{

    position:relative;

    display:flex !important;

    align-items:center !important;

    gap:9px;

    width:100%;

    white-space:normal !important;

    padding:9px 8px !important;

    margin:2px 0;

    border-radius:10px;

    color:#17264a !important;

    background:transparent !important;

    transition:
        background .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}



/* Hover */

.hns-services-mega-menu .dropdown-item:hover{

    background:#12347f !important;

    transform:translateY(-1px);

    box-shadow:
        0 8px 18px rgba(18,52,127,.14);
}



/* ============================================================
   ICON
============================================================ */

.hns-services-mega-menu .hns-dropdown-icon{

    width:38px !important;
    height:38px !important;

    min-width:38px;

    display:flex !important;

    align-items:center;
    justify-content:center;

    border-radius:10px;

    background:#eaf0ff;

    color:#173a91;

    font-size:15px;

    transition:.25s ease;
}


.hns-services-mega-menu
.dropdown-item:hover
.hns-dropdown-icon{

    background:#ffc400;

    color:#09215c;
}



/* ============================================================
   TEXT
============================================================ */

.hns-services-mega-menu .hns-dropdown-text{

    display:flex;

    flex-direction:column;

    justify-content:center;

    min-width:0;

    flex:1;
}


.hns-services-mega-menu .hns-dropdown-text strong{

    display:block;

    color:#17264a;

    font-size:12.5px;

    line-height:1.25;

    font-weight:750;

    margin:0 0 2px;

    transition:.25s ease;
}


.hns-services-mega-menu .hns-dropdown-text small{

    display:block;

    color:#7b8499;

    font-size:9.5px;

    line-height:1.3;

    white-space:normal;

    transition:.25s ease;
}



/* Hover text */

.hns-services-mega-menu
.dropdown-item:hover
.hns-dropdown-text strong{

    color:#ffffff;
}


.hns-services-mega-menu
.dropdown-item:hover
.hns-dropdown-text small{

    color:rgba(255,255,255,.72);
}



/* ============================================================
   ARROW
============================================================ */

.hns-services-mega-menu .hns-dropdown-arrow{

    flex:0 0 auto;

    margin-left:auto;

    font-size:11px;

    color:#a3aec4;

    transition:.25s ease;
}


.hns-services-mega-menu
.dropdown-item:hover
.hns-dropdown-arrow{

    color:#ffc400;

    transform:translateX(2px);
}



/* ============================================================
   ACTIVE SERVICE
============================================================ */

.hns-services-mega-menu .dropdown-item.active,
.hns-services-mega-menu .dropdown-item.active:hover{

    background:#12347f !important;

    color:#ffffff !important;
}


.hns-services-mega-menu
.dropdown-item.active
.hns-dropdown-icon{

    background:#ffc400;

    color:#09215c;
}


.hns-services-mega-menu
.dropdown-item.active
.hns-dropdown-text strong{

    color:#ffffff;
}


.hns-services-mega-menu
.dropdown-item.active
.hns-dropdown-text small{

    color:rgba(255,255,255,.75);
}



/* ============================================================
   LAPTOP RESPONSIVE
============================================================ */

@media (min-width:992px) and (max-width:1199px){

    .hns-services-mega-menu{

        width:calc(100vw - 24px) !important;

        padding:12px !important;
    }


    .hns-mega-services-grid{

        gap:8px;
    }


    .hns-mega-services-column{

        padding:6px;
    }


    .hns-services-mega-menu .dropdown-item{

        gap:6px;

        padding:7px 5px !important;
    }


    .hns-services-mega-menu .hns-dropdown-icon{

        width:32px !important;
        height:32px !important;

        min-width:32px;

        font-size:13px;
    }


    .hns-services-mega-menu
    .hns-dropdown-text strong{

        font-size:11px;
    }


    .hns-services-mega-menu
    .hns-dropdown-text small{

        font-size:8.5px;
    }

}



/* ============================================================
   MOBILE
   Change mega menu back to single column
============================================================ */

@media (max-width:991px){

    .hns-service-dropdown{

        position:relative !important;
    }


    .hns-services-mega-menu{

        position:static !important;

        transform:none !important;

        width:100% !important;

        max-width:100% !important;

        padding:8px !important;

        border-radius:10px !important;

        box-shadow:none !important;

        overflow:visible;
    }


    .hns-services-mega-menu::before{

        display:none;
    }


    .hns-mega-services-grid{

        display:block;
    }


    .hns-mega-services-column{

        padding:0;

        margin-bottom:8px;

        border:0;

        background:transparent;
    }


    .hns-mega-column-title{

        margin:8px 4px 4px;

        padding:7px 5px;

        min-height:auto;

        font-size:13px;
    }


    .hns-services-mega-menu .dropdown-item{

        padding:9px 7px !important;

        margin-bottom:2px;
    }


    .hns-services-mega-menu
    .hns-dropdown-text strong{

        font-size:13px;
    }


    .hns-services-mega-menu
    .hns-dropdown-text small{

        font-size:10px;
    }

}



/* ==========================================
   HEAR N SAY - TEAM SLIDER IMAGE FIX
========================================== */

.hns-team-slider img,
.hns-team-card img,
.team-slider img,
.team-card img,
.swiper-slide img {
    width: 100%;
    object-fit: cover;
    object-position: top center;

    display: block;

    image-rendering: auto;

    filter: none !important;

    transform: none !important;

    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}


/* Stop hover zoom from making image soft */

.hns-team-card:hover img,
.team-card:hover img,
.swiper-slide:hover img {
    transform: none !important;
}


/* Desktop */
@media (min-width: 1200px) {

    .hns-team-slider img,
    .hns-team-card img,
    .team-slider img,
    .team-card img {
        height: 340px;
    }

}


/* Tablet */
@media (max-width: 991px) {

    .hns-team-slider img,
    .hns-team-card img,
    .team-slider img,
    .team-card img,
    .swiper-slide img {
        height: 300px;
    }

}


/* Mobile */
@media (max-width: 575px) {

    .hns-team-slider img,
    .hns-team-card img,
    .team-slider img,
    .team-card img,
    .swiper-slide img {
        height: 280px;
        object-position: top center;
    }

}




/* =====================================================
   HEAR N SAY TEAM CARD - REMOVE GREY GAP
===================================================== */

/* Image wrapper */
.hns-team-image,
.hns-team-card-image,
.team-image,
.team-card-image {
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    background: transparent !important;
    line-height: 0 !important;
}


/* Actual image */
.hns-team-image img,
.hns-team-card-image img,
.team-image img,
.team-card-image img,
.hns-team-card img {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: bottom !important;
}


/* Content / name area */
.hns-team-content,
.hns-team-card-content,
.team-content,
.team-card-content {
    margin-top: 0 !important;
    padding-top: 18px !important;
    background: #ffffff !important;
}


/* Remove unwanted strip created by pseudo elements */
.hns-team-image::after,
.hns-team-image::before,
.hns-team-card-image::after,
.hns-team-card-image::before,
.team-image::after,
.team-image::before {
    display: none !important;
}


/* Card */
.hns-team-card,
.team-card {
    overflow: hidden !important;
    background: #ffffff !important;
}




/* ==========================================
   HEAR N SAY ABOUT BANNER LOGO FIX
========================================== */

.hns-about-banner{
    position: relative;
    overflow: hidden;
}


/* watermark / background logo */
.hns-about-banner-logo,
.hns-about-banner-watermark,
.hns-about-banner::after{
    position: absolute !important;

    top: 50% !important;
    right: 60px !important;

    transform: translateY(-50%) !important;

    width: 260px !important;
    height: 260px !important;

    max-width: 28vw;

    opacity: 0.12;

    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;

    z-index: 1;
}


/* keep banner content above watermark */
.hns-about-banner .container,
.hns-about-banner-content{
    position: relative;
    z-index: 2;
}


/* tablet */
@media (max-width: 991px){

    .hns-about-banner-logo,
    .hns-about-banner-watermark,
    .hns-about-banner::after{
        width: 220px !important;
        height: 220px !important;
        right: 25px !important;
    }

}


/* mobile */
@media (max-width: 575px){

    .hns-about-banner-logo,
    .hns-about-banner-watermark,
    .hns-about-banner::after{
        width: 170px !important;
        height: 170px !important;

        right: -20px !important;
        top: 50% !important;

        opacity: 0.08;
    }

}



/* Hide blue decorative shape on About section */
.hns-shape-one { display: none !important; }




/* ============================================================
   CONDITIONS SLIDER - NO SWIPER / NO BLANK SPACE
============================================================ */

.hns-conditions-slider-wrap{
    position:relative;
    width:100%;
    overflow:hidden;
}


/* TRACK */

.hns-conditions-track{
    display:flex;

    gap:18px;

    width:100%;

    overflow-x:auto;
    overflow-y:hidden;

    scroll-behavior:smooth;

    scroll-snap-type:x mandatory;

    padding:6px 2px 14px;

    scrollbar-width:none;

    -ms-overflow-style:none;
}


.hns-conditions-track::-webkit-scrollbar{
    display:none;
}


/* ============================================================
   CARD
============================================================ */

.hns-conditions-track .hns-condition-card{

    position:relative;

    flex:
        0 0
        calc((100% - 54px) / 4);

    scroll-snap-align:start;

    min-width:0;

    min-height:260px;

    padding:24px 20px 65px;

    background:#ffffff;

    border:1px solid #dfe7f4;

    border-radius:17px;

    box-shadow:
        0 10px 30px rgba(9,35,91,.07);

    overflow:hidden;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}


.hns-conditions-track .hns-condition-card:hover{

    transform:translateY(-4px);

    border-color:#cad8ef;

    box-shadow:
        0 16px 35px rgba(9,35,91,.12);
}


/* NUMBER */

.hns-condition-number{

    display:block;

    margin-bottom:14px;

    color:#d8dfeb;

    font-size:28px;

    line-height:1;

    font-weight:800;
}


/* TITLE */

.hns-condition-card h3{

    margin:0 0 10px;

    color:#12275d;

    font-size:17px;

    line-height:1.35;

    font-weight:800;
}


/* DESCRIPTION */

.hns-condition-card p{

    margin:0;

    color:#64718a;

    font-size:13.5px;

    line-height:1.65;
}


/* ICON */

.hns-condition-icon{

    position:absolute;

    right:16px;
    bottom:16px;

    width:50px;
    height:50px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:13px;

    background:#102f82;

    color:#ffc400;

    font-size:18px;

    box-shadow:
        0 8px 20px rgba(16,47,130,.18);
}


/* ============================================================
   CONTROLS
============================================================ */

.hns-slider-controls{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:14px;

    margin-top:18px;
}


.hns-conditions-arrow{

    width:42px;
    height:42px;

    flex:0 0 42px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:0;

    border-radius:50%;

    background:#102f82;

    color:#ffffff;

    cursor:pointer;

    transition:.25s ease;
}


.hns-conditions-arrow:hover{

    background:#ffc400;

    color:#071d51;

    transform:translateY(-2px);
}


/* Progress */

.hns-conditions-progress{

    position:relative;

    width:100px;
    height:4px;

    overflow:hidden;

    border-radius:20px;

    background:#dce3ef;
}


.hns-conditions-progress span{

    position:absolute;

    top:0;
    left:0;

    width:25%;
    height:100%;

    border-radius:20px;

    background:#ffc400;

    transition:
        width .3s ease,
        transform .3s ease;
}


/* ============================================================
   TABLET
============================================================ */

@media (max-width:991px){

    .hns-conditions-track .hns-condition-card{

        flex:
            0 0
            calc((100% - 18px) / 2);
    }

}


/* ============================================================
   MOBILE
============================================================ */

@media (max-width:575px){

    .hns-conditions-track{

        gap:12px;
    }


    .hns-conditions-track .hns-condition-card{

        flex:0 0 86%;

        min-height:235px;

        padding:20px 17px 62px;
    }


    .hns-condition-card h3{

        font-size:16px;
    }


    .hns-condition-card p{

        font-size:13px;
    }

}




/* =========================================================
   HEAR 'N' SAY TEAM
   EXTRA SMALL IMAGE VERSION
   Designed for low-resolution team photos
========================================================= */

.hns-team-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    align-items: stretch !important;
}


/* =========================
   CARD
========================= */

.hns-team-card {
    display: grid !important;
    grid-template-columns: 145px minmax(0, 1fr) !important;

    width: 100% !important;
    min-width: 0 !important;

    background: #fff !important;
    border: 1px solid #e5eaf3 !important;
    border-radius: 18px !important;

    padding: 14px !important;

    overflow: hidden !important;

    box-shadow: 0 10px 30px rgba(8, 22, 56, 0.07) !important;

    transition: 0.3s ease !important;
}

.hns-team-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 15px 38px rgba(8, 22, 56, 0.11) !important;
}


/* =========================================================
   PHOTO COLUMN
========================================================= */

.hns-team-photo {
    position: relative !important;

    width: 120px !important;
    height: 150px !important;
    min-height: 0 !important;

    margin: 0 auto !important;

    border-radius: 14px !important;

    overflow: hidden !important;

    background: #eef2f8 !important;

    align-self: start !important;
}


/* =========================================================
   ACTUAL IMAGE
   IMPORTANT: ONLY 120 x 150
========================================================= */

.hns-team-photo img {
    display: block !important;

    width: 120px !important;
    height: 150px !important;

    max-width: 120px !important;

    object-fit: cover !important;
    object-position: center top !important;

    margin: 0 !important;

    transform: none !important;
    scale: none !important;

    filter: none !important;

    border-radius: 14px !important;
}


/* Don't zoom image on hover */
.hns-team-card:hover .hns-team-photo img,
.hns-team-photo:hover img {
    transform: none !important;
    scale: none !important;
}


/* =========================================================
   NUMBER
========================================================= */

.hns-team-number {
    position: absolute !important;

    top: 7px !important;
    left: 7px !important;

    width: 27px !important;
    height: 27px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: #ffc400 !important;
    color: #081638 !important;

    border-radius: 7px !important;

    font-size: 10px !important;
    font-weight: 800 !important;

    z-index: 5 !important;
}


/* =========================================================
   IMAGE ICON
========================================================= */

.hns-team-photo-icon {
    position: absolute !important;

    left: 7px !important;
    bottom: 7px !important;

    width: 30px !important;
    height: 30px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: #0c285e !important;
    color: #ffc400 !important;

    border-radius: 8px !important;

    font-size: 12px !important;

    z-index: 5 !important;
}


/* =========================================================
   CONTENT
========================================================= */

.hns-team-card-content {
    min-width: 0 !important;

    padding: 2px 5px 2px 0 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;

    background: transparent !important;
}


/* Role */
.hns-team-role {
    display: inline-flex !important;

    margin: 0 0 7px !important;
    padding: 5px 9px !important;

    background: #eef3ff !important;
    color: #19368f !important;

    border-radius: 30px !important;

    font-size: 10px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
}


/* NAME */

.hns-team-card-content h3 {
    margin: 0 0 4px !important;

    color: #081638 !important;

    font-size: 19px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
}


/* Qualification */

.hns-team-card-content h4 {
    margin: 0 0 8px !important;

    color: #19368f !important;

    font-size: 12px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}


/* Description */

.hns-team-card-content p {
    margin: 0 0 6px !important;

    color: #59647a !important;

    font-size: 11.5px !important;
    line-height: 1.5 !important;
}


/* =========================================================
   TAGS
========================================================= */

.hns-team-expertise {
    display: flex !important;
    flex-wrap: wrap !important;

    gap: 5px !important;

    margin-top: 5px !important;
    padding: 0 !important;
}

.hns-team-expertise span {
    display: inline-flex !important;

    padding: 4px 7px !important;

    background: #f4f7fb !important;
    border: 1px solid #e2e8f1 !important;

    border-radius: 5px !important;

    color: #34415b !important;

    font-size: 9.5px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
}


/* =========================================================
   FIX SWIPER WRAPPERS IN YOUR CURRENT HTML
========================================================= */

.hns-team-grid > .swiper-slide {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

    .hns-team-grid {
        grid-template-columns: 1fr !important;
    }

    .hns-team-card {
        grid-template-columns: 145px minmax(0, 1fr) !important;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .hns-team-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .hns-team-card {
        grid-template-columns: 100px minmax(0, 1fr) !important;

        padding: 10px !important;

        border-radius: 13px !important;
    }


    /* Even smaller on phone */

    .hns-team-photo {
        width: 85px !important;
        height: 110px !important;

        border-radius: 10px !important;
    }

    .hns-team-photo img {
        width: 85px !important;
        height: 110px !important;

        max-width: 85px !important;

        border-radius: 10px !important;
    }


    .hns-team-card-content {
        padding: 0 !important;
    }


    .hns-team-role {
        font-size: 9px !important;

        padding: 4px 7px !important;

        margin-bottom: 5px !important;
    }


    .hns-team-card-content h3 {
        font-size: 16px !important;
    }


    .hns-team-card-content h4 {
        font-size: 11px !important;
        margin-bottom: 5px !important;
    }


    .hns-team-card-content p {
        font-size: 10.5px !important;
        line-height: 1.45 !important;
        margin-bottom: 5px !important;
    }


    .hns-team-expertise span {
        font-size: 8.5px !important;
        padding: 3px 5px !important;
    }


    .hns-team-number {
        width: 23px !important;
        height: 23px !important;

        font-size: 8px !important;

        top: 5px !important;
        left: 5px !important;
    }


    .hns-team-photo-icon {
        width: 25px !important;
        height: 25px !important;

        font-size: 10px !important;

        left: 5px !important;
        bottom: 5px !important;
    }
}


/* =========================================================
   VERY SMALL PHONE
========================================================= */

@media (max-width: 380px) {

    .hns-team-card {
        grid-template-columns: 88px minmax(0, 1fr) !important;
    }

    .hns-team-photo {
        width: 75px !important;
        height: 100px !important;
    }

    .hns-team-photo img {
        width: 75px !important;
        height: 100px !important;
        max-width: 75px !important;
    }

    .hns-team-card-content h3 {
        font-size: 15px !important;
    }
}




/* ==========================================================
   HEAR 'N' SAY TEAM - COMPACT PREMIUM CARD DESIGN
   SMALL IMAGE + NO LARGE BLANK SPACE
========================================================== */


/* ================================
   GRID
================================ */

.hns-team-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

    gap: 18px !important;

    /* IMPORTANT - prevents cards stretching */
    align-items: start !important;
}


/* Fix swiper wrappers present on some members */
.hns-team-grid > .swiper-slide {
    width: 100% !important;
    height: auto !important;

    margin: 0 !important;

    align-self: start !important;
}


/* ================================
   CARD
================================ */

.hns-team-card {
    display: grid !important;

    grid-template-columns: 110px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;

    column-gap: 15px !important;
    row-gap: 10px !important;

    width: 100% !important;

    /* IMPORTANT */
    height: auto !important;
    min-height: 0 !important;
    align-self: start !important;

    padding: 14px !important;

    background: #ffffff !important;

    border: 1px solid #e4e9f2 !important;
    border-radius: 16px !important;

    overflow: hidden !important;

    box-shadow:
        0 8px 25px rgba(8, 22, 56, 0.07) !important;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease !important;
}


.hns-team-card:hover {
    transform: translateY(-4px) !important;

    box-shadow:
        0 15px 35px rgba(8, 22, 56, 0.12) !important;
}


/* ================================
   SMALL PHOTO
================================ */

.hns-team-photo {
    grid-column: 1 !important;
    grid-row: 1 !important;

    position: relative !important;

    width: 110px !important;
    height: 135px !important;

    min-height: 0 !important;

    margin: 0 !important;

    border-radius: 12px !important;

    overflow: hidden !important;

    background: #eef2f8 !important;
}


/* Actual image */

.hns-team-photo img {
    display: block !important;

    width: 110px !important;
    height: 135px !important;

    min-width: 0 !important;
    max-width: 110px !important;

    object-fit: cover !important;
    object-position: center top !important;

    border-radius: 12px !important;

    transform: none !important;
    scale: none !important;
    filter: none !important;
}


/* Never zoom */

.hns-team-card:hover .hns-team-photo img,
.hns-team-photo:hover img {
    transform: none !important;
    scale: none !important;
}


/* ================================
   MEMBER NUMBER
================================ */

.hns-team-number {
    position: absolute !important;

    top: 6px !important;
    left: 6px !important;

    width: 25px !important;
    height: 25px !important;

    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    background: #ffc400 !important;
    color: #081638 !important;

    border-radius: 6px !important;

    font-size: 9px !important;
    font-weight: 800 !important;

    z-index: 5 !important;
}


/* ================================
   PHOTO ICON
================================ */

.hns-team-photo-icon {
    position: absolute !important;

    left: 6px !important;
    bottom: 6px !important;

    width: 28px !important;
    height: 28px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: #0c285e !important;
    color: #ffc400 !important;

    border-radius: 7px !important;

    font-size: 11px !important;

    z-index: 5 !important;
}


/* ==========================================================
   CONTENT

   Make content use BOTH columns.
========================================================== */

.hns-team-card-content {
    display: contents !important;
}


/*
   Role, Name and qualification
   stay beside image.
*/

.hns-team-role {
    grid-column: 2 !important;
    grid-row: 1 !important;

    align-self: start !important;

    display: inline-flex !important;

    width: fit-content !important;
    height: fit-content !important;

    margin: 0 0 7px !important;

    padding: 5px 8px !important;

    background: #eef3ff !important;
    color: #19368f !important;

    border-radius: 20px !important;

    font-size: 9.5px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
}


/* ================================
   CONTENT BESIDE IMAGE
================================ */

/*
 Because your existing HTML places all content inside the
 same content div, display:contents allows us to position
 the children independently.
*/


.hns-team-card-content h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;

    align-self: start !important;

    margin:
        34px 0 0 0 !important;

    color: #081638 !important;

    font-size: 18px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
}


.hns-team-card-content h4 {
    grid-column: 2 !important;
    grid-row: 1 !important;

    align-self: start !important;

    margin:
        61px 0 0 0 !important;

    color: #19368f !important;

    font-size: 11px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}


/* ==========================================================
   DESCRIPTION
   Full width below photo
========================================================== */

.hns-team-card-content p {
    grid-column: 1 / -1 !important;

    margin: 0 !important;

    color: #5c667b !important;

    font-size: 11.5px !important;
    line-height: 1.55 !important;
}


/* Small gap between two paragraphs */

.hns-team-card-content p + p {
    margin-top: -3px !important;
}


/* ==========================================================
   EXPERTISE
========================================================== */

.hns-team-expertise {
    grid-column: 1 / -1 !important;

    display: flex !important;
    flex-wrap: wrap !important;

    gap: 5px !important;

    width: 100% !important;

    margin: 2px 0 0 !important;
    padding: 8px 0 0 !important;

    border-top: 1px solid #edf0f5 !important;
}


.hns-team-expertise span {
    display: inline-flex !important;

    padding: 4px 7px !important;

    background: #f4f7fb !important;

    border: 1px solid #e3e8f1 !important;
    border-radius: 5px !important;

    color: #34415b !important;

    font-size: 9px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 1100px) {

    .hns-team-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 650px) {

    .hns-team-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }


    .hns-team-card {
        grid-template-columns:
            90px minmax(0, 1fr) !important;

        column-gap: 12px !important;

        padding: 11px !important;

        border-radius: 13px !important;
    }


    /* Smaller mobile photo */

    .hns-team-photo {
        width: 90px !important;
        height: 110px !important;

        border-radius: 10px !important;
    }


    .hns-team-photo img {
        width: 90px !important;
        height: 110px !important;

        max-width: 90px !important;

        border-radius: 10px !important;
    }


    /* Name */

    .hns-team-card-content h3 {
        font-size: 16px !important;

        margin-top: 31px !important;
    }


    /* Qualification */

    .hns-team-card-content h4 {
        font-size: 10.5px !important;

        margin-top: 55px !important;
    }


    .hns-team-card-content p {
        font-size: 11px !important;
        line-height: 1.5 !important;
    }


    .hns-team-role {
        font-size: 8.5px !important;

        padding: 4px 7px !important;
    }


    .hns-team-expertise span {
        font-size: 8.5px !important;
    }
}


/* ==========================================================
   VERY SMALL MOBILE
========================================================== */

@media (max-width: 380px) {

    .hns-team-card {
        grid-template-columns:
            80px minmax(0, 1fr) !important;
    }


    .hns-team-photo,
    .hns-team-photo img {
        width: 80px !important;
        max-width: 80px !important;

        height: 100px !important;
    }


    .hns-team-card-content h3 {
        font-size: 15px !important;
    }
}




/* =========================================================
   HEAR 'N' SAY TEAM - INCREASE TEXT SIZE ONLY
   Does not change image/card layout
========================================================= */

/* Role */
.hns-team-card .hns-team-role {
    font-size: 12px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}


/* Team Member Name */
.hns-team-card-content h3 {
    font-size: 21px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
}


/* Qualification / Designation */
.hns-team-card-content h4 {
    font-size: 14px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
}


/* Main Description */
.hns-team-card-content p {
    font-size: 14px !important;
    line-height: 1.65 !important;

    color: #566177 !important;
}


/* Expertise Tags */
.hns-team-expertise span {
    font-size: 11px !important;
    line-height: 1.3 !important;

    padding: 5px 8px !important;
}


/* =========================================================
   SECTION HEADING
========================================================= */

.hns-team-intro .hns-team-small-title {
    font-size: 14px !important;
}

.hns-team-intro h2 {
    font-size: 42px !important;
    line-height: 1.15 !important;
}

.hns-team-intro p {
    font-size: 17px !important;
    line-height: 1.7 !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .hns-team-card-content h3 {
        font-size: 20px !important;
    }

    .hns-team-card-content h4 {
        font-size: 13.5px !important;
    }

    .hns-team-card-content p {
        font-size: 13.5px !important;
        line-height: 1.6 !important;
    }

    .hns-team-expertise span {
        font-size: 10.5px !important;
    }

    .hns-team-intro h2 {
        font-size: 36px !important;
    }

    .hns-team-intro p {
        font-size: 16px !important;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .hns-team-card .hns-team-role {
        font-size: 10px !important;
    }

    .hns-team-card-content h3 {
        font-size: 18px !important;
        line-height: 1.25 !important;
    }

    .hns-team-card-content h4 {
        font-size: 12.5px !important;
        line-height: 1.4 !important;
    }

    .hns-team-card-content p {
        font-size: 13px !important;
        line-height: 1.6 !important;
    }

    .hns-team-expertise span {
        font-size: 10px !important;
    }

    .hns-team-intro h2 {
        font-size: 30px !important;
    }

    .hns-team-intro p {
        font-size: 15px !important;
        line-height: 1.65 !important;
    }
}




/* =========================================================
   HEAR 'N' SAY - SPEECH / SERVICE BANNER
   COMPACT HEIGHT FIX
========================================================= */

.speech-banner {
    position: relative;
    width: 100%;

    /* Reduced banner height */
    min-height: 380px !important;

    display: flex;
    align-items: center;

    overflow: hidden;

    /* Background image fitting */
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    padding: 55px 0 35px !important;
}


/* ================================
   OVERLAY
================================ */

.speech-banner-overlay {
    position: absolute;
    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(8, 22, 56, 0.90) 0%,
        rgba(8, 22, 56, 0.75) 45%,
        rgba(8, 22, 56, 0.25) 75%,
        rgba(8, 22, 56, 0.10) 100%
    );

    z-index: 1;
}


/* ================================
   CONTAINER
================================ */

.speech-banner .container {
    position: relative;
    z-index: 2;

    width: 100%;
}


/* ================================
   CONTENT
================================ */

.speech-banner-content {
    position: relative;

    max-width: 720px;

    padding: 0 !important;
    margin: 0 !important;

    z-index: 2;
}


/* Small Tag */

.speech-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 12px !important;

    padding: 7px 13px;

    border-radius: 30px;

    background: rgba(255, 255, 255, 0.12);

    color: #ffc400;

    font-size: 13px;
    font-weight: 700;
}


/* ================================
   TITLE
================================ */

.speech-banner-content h1 {
    margin: 0 0 10px !important;

    color: #ffffff;

    font-size: 46px !important;
    line-height: 1.1 !important;
    font-weight: 800;
}


/* ================================
   DESCRIPTION
================================ */

.speech-banner-content > p {
    max-width: 650px;

    margin: 0 0 17px !important;

    color: rgba(255,255,255,.88);

    font-size: 15px !important;
    line-height: 1.6 !important;
}


/* ================================
   BUTTON
================================ */

.speech-buttons {
    margin: 0 0 18px !important;
}

.speech-buttons .btn-primary-custom {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 10px 20px !important;

    background: #ffc400;
    color: #081638;

    border-radius: 7px;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;
}


/* ================================
   BREADCRUMB
================================ */

.speech-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 8px;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none;
}

.speech-breadcrumb li,
.speech-breadcrumb li a {
    color: rgba(255,255,255,.82);

    font-size: 12px;

    text-decoration: none;
}

.speech-breadcrumb li:last-child {
    color: #ffc400;
    font-weight: 700;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .speech-banner {
        min-height: 340px !important;

        padding: 45px 0 30px !important;

        background-position: center center !important;
    }

    .speech-banner-content {
        max-width: 650px;
    }

    .speech-banner-content h1 {
        font-size: 38px !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575px) {

    .speech-banner {
        min-height: 320px !important;

        padding: 38px 0 25px !important;

        /*
         Change this if the person/subject
         in your background image is on right
        */
        background-position: center center !important;
    }

    .speech-banner-content {
        max-width: 100%;
    }

    .speech-tag {
        margin-bottom: 9px !important;

        padding: 6px 10px;

        font-size: 11px;
    }

    .speech-banner-content h1 {
        font-size: 31px !important;
        line-height: 1.12 !important;

        margin-bottom: 8px !important;
    }

    .speech-banner-content > p {
        font-size: 13px !important;
        line-height: 1.5 !important;

        margin-bottom: 13px !important;
    }

    .speech-buttons {
        margin-bottom: 14px !important;
    }

    .speech-buttons .btn-primary-custom {
        padding: 9px 16px !important;

        font-size: 12px;
    }

    .speech-breadcrumb {
        gap: 6px;
    }

    .speech-breadcrumb li,
    .speech-breadcrumb li a {
        font-size: 10.5px;
    }

}




/* =========================================================
   HEAR 'N' SAY - ABOUT / TEAM BANNER
   COMPACT HEIGHT OVERRIDE
========================================================= */

.hns-team-banner {
    position: relative !important;

    width: 100% !important;

    /* MAIN HEIGHT CONTROL */
    min-height: 330px !important;
    height: auto !important;

    display: flex !important;
    align-items: center !important;

    padding: 42px 0 32px !important;

    overflow: hidden !important;

    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}


/* =========================================================
   OVERLAY
========================================================= */

.hns-team-banner-overlay {
    position: absolute !important;
    inset: 0 !important;

    background: linear-gradient(
        90deg,
        rgba(8, 22, 56, 0.92) 0%,
        rgba(12, 29, 80, 0.82) 42%,
        rgba(25, 54, 143, 0.40) 72%,
        rgba(8, 22, 56, 0.18) 100%
    ) !important;

    z-index: 1 !important;
}


/* =========================================================
   CONTAINER
========================================================= */

.hns-team-banner .container {
    position: relative !important;
    z-index: 3 !important;
}


/* =========================================================
   CONTENT
========================================================= */

.hns-team-banner-content {
    position: relative !important;

    max-width: 720px !important;

    margin: 0 !important;
    padding: 0 !important;

    z-index: 3 !important;
}


/* =========================================================
   SMALL LABEL
========================================================= */

.hns-team-banner-label {
    display: inline-flex !important;
    align-items: center !important;

    gap: 7px !important;

    margin: 0 0 10px !important;

    padding: 6px 12px !important;

    font-size: 13px !important;
    line-height: 1.3 !important;

    border-radius: 30px !important;
}


/* =========================================================
   HEADING
========================================================= */

.hns-team-banner-content h1 {
    margin: 0 0 10px !important;

    font-size: 43px !important;
    line-height: 1.08 !important;
    font-weight: 800 !important;
}

.hns-team-banner-content h1 span {
    display: inline !important;
}


/* =========================================================
   PARAGRAPH
========================================================= */

.hns-team-banner-content > p {
    max-width: 680px !important;

    margin: 0 0 16px !important;

    font-size: 15px !important;
    line-height: 1.55 !important;
}


/* =========================================================
   BREADCRUMB
========================================================= */

.hns-team-breadcrumb {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;

    gap: 9px !important;

    margin: 0 !important;
    padding: 0 !important;
}

.hns-team-breadcrumb a,
.hns-team-breadcrumb span,
.hns-team-breadcrumb strong {
    font-size: 12px !important;
    line-height: 1.3 !important;
}


/* =========================================================
   DECORATIONS
   Keep them inside shorter banner
========================================================= */

.hns-team-banner-decoration {
    pointer-events: none !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .hns-team-banner {
        min-height: 300px !important;

        padding: 38px 0 28px !important;

        background-position: center center !important;
    }

    .hns-team-banner-content {
        max-width: 650px !important;
    }

    .hns-team-banner-content h1 {
        font-size: 37px !important;
    }

    .hns-team-banner-content > p {
        font-size: 14px !important;
        line-height: 1.5 !important;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575px) {

    .hns-team-banner {
        min-height: 270px !important;

        padding: 32px 0 24px !important;

        background-size: cover !important;
        background-position: center center !important;
    }

    .hns-team-banner-content {
        max-width: 100% !important;
    }


    /* LABEL */

    .hns-team-banner-label {
        margin-bottom: 8px !important;

        padding: 5px 9px !important;

        font-size: 11px !important;
    }


    /* TITLE */

    .hns-team-banner-content h1 {
        margin-bottom: 8px !important;

        font-size: 29px !important;
        line-height: 1.1 !important;
    }


    /* PARAGRAPH */

    .hns-team-banner-content > p {
        margin-bottom: 13px !important;

        font-size: 13px !important;
        line-height: 1.5 !important;
    }


    /* BREADCRUMB */

    .hns-team-breadcrumb {
        gap: 6px !important;
    }

    .hns-team-breadcrumb a,
    .hns-team-breadcrumb span,
    .hns-team-breadcrumb strong {
        font-size: 10.5px !important;
    }
}



 /* =========================================================
   OUR TEAM - REMOVE LEFT / RIGHT BLANK SPACE
========================================================= */

.premium-doctors-section .premium-doctor-image {
    width: 100% !important;
    height: 420px !important;
    overflow: hidden !important;
    position: relative !important;
    background: #fff !important;
}

.premium-doctors-section .premium-doctor-image img {
    width: 100% !important;
    height: 100% !important;

    /* Fill complete card - no blank sides */
    object-fit: cover !important;

    /* Keep face/body in correct position */
    object-position: center 25% !important;

    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    max-width: none !important;

    transform: none !important;
}


/* TABLET */

@media (max-width: 991px) {

    .premium-doctors-section .premium-doctor-image {
        height: 400px !important;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .premium-doctors-section .premium-doctor-image {
        height: 380px !important;
    }

    .premium-doctors-section .premium-doctor-image img {
        object-position: center 25% !important;
    }

}


/* SMALL MOBILE */

@media (max-width: 480px) {

    .premium-doctors-section .premium-doctor-image {
        height: 350px !important;
    }

}


/* =========================================================
   PRODUCT SLIDER - MOBILE FULL IMAGE FIX
========================================================= */

@media (max-width: 767px) {

    .premium-products-section .productsSwiper {
        width: 100% !important;
        overflow: hidden !important;
    }

    .premium-products-section .productsSwiper .swiper-slide {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    .premium-products-section .premium-product-card {
        width: 100% !important;
        max-width: 100% !important;
    }

    .premium-products-section .premium-product-card .product-image {
        width: 100% !important;
        height: 240px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        overflow: hidden !important;
        background: #fff !important;
    }

    .premium-products-section .premium-product-card .product-image > img {
        width: 100% !important;
        height: 100% !important;

        object-fit: contain !important;
        object-position: center center !important;

        display: block !important;

        margin: 0 !important;
        padding: 0 !important;

        transform: none !important;
    }

}



/* =========================================================
   FOOTER - DESIGNED & DEVELOPED BY
========================================================= */

.footer-developer-credit {
    width: 100%;
    padding: 13px 20px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    flex-wrap: wrap;

    background: #07142f;
    border-top: 1px solid rgba(255, 255, 255, 0.08);

    font-size: 14px;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.72);
}


/* VGS LINK */

.footer-developer-credit a {
    display: inline-flex;
    align-items: center;
    gap: 5px;

    color: #ffc400;
    font-weight: 700;

    text-decoration: none;

    transition:
        color 0.25s ease,
        transform 0.25s ease;
}


/* SVG */

.footer-developer-credit a svg {
    width: 14px;
    height: 14px;

    transition: transform 0.25s ease;
}


/* HOVER */

.footer-developer-credit a:hover {
    color: #ffffff;
}

.footer-developer-credit a:hover svg {
    transform: translate(2px, -2px);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .footer-developer-credit {
        padding: 12px 15px;

        font-size: 13px;

        text-align: center;

        gap: 5px;
    }

    .footer-developer-credit a {
        font-size: 13px;
    }

}



/* ==========================================
   DIVYA YEDDU - HEAD TOP SPACE FIX
========================================== */

.divya-image-box .premium-doctor-image {
    box-sizing: border-box !important;
    background: #fff !important;
    overflow: hidden !important;
}

.divya-image-box .premium-doctor-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
}







/* =========================================================
   HEAR 'N' SAY CLINIC
   PAEDIATRIC FEEDING & SWALLOW THERAPY
   PREMIUM NAVY + GOLD DESIGN
========================================================= */

:root {
    --hns-navy: #112981;
    --hns-deep: #0B1F63;
    --hns-blue: #1D3FA3;
    --hns-gold: #FFCA00;
    --hns-gold-dark: #DDAE00;

    --hns-soft-blue: #EEF3FF;
    --hns-soft-gold: #FFF8D9;
    --hns-cream: #FFFDF5;

    --hns-text: #46516B;
    --hns-heading: #101C45;
    --hns-border: #E2E7F2;

    --hns-shadow: 0 12px 35px rgba(17, 41, 129, 0.08);
}


/* =========================================================
   PAGE BASE
========================================================= */

#paediatric-feeding-therapy {
    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #FBFCFF 100%
        );

    padding: 65px 0 75px;
}

#paediatric-feeding-therapy .hns-ast-container {
    max-width: 1240px;
}


/* =========================================================
   INTRO SECTION
========================================================= */

#paediatric-feeding-therapy .hns-ast-intro {
    display: grid;

    grid-template-columns: 1.05fr .95fr;

    gap: 55px;

    align-items: center;

    margin-bottom: 70px;
}


/* =========================================================
   LABEL
========================================================= */

#paediatric-feeding-therapy .hns-ast-label {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: var(--hns-navy);

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 1.7px;

    text-transform: uppercase;

    margin-bottom: 13px;
}

#paediatric-feeding-therapy .hns-ast-label::before {
    content: "";

    width: 28px;

    height: 3px;

    border-radius: 10px;

    background: var(--hns-gold);
}


/* =========================================================
   INTRO HEADING
========================================================= */

#paediatric-feeding-therapy .hns-ast-content h2 {
    font-size: clamp(38px, 4vw, 57px);

    line-height: 1.08;

    letter-spacing: -1.5px;

    color: var(--hns-heading);

    font-weight: 800;

    margin: 0 0 20px;
}

#paediatric-feeding-therapy .hns-ast-content h2 span {
    display: block;

    color: var(--hns-navy);
}


/* =========================================================
   INTRO TEXT
========================================================= */

#paediatric-feeding-therapy .hns-ast-content p {
    color: var(--hns-text);

    font-size: 17px;

    line-height: 1.72;

    margin: 0 0 13px;
}

#paediatric-feeding-therapy .hns-ast-content strong {
    color: var(--hns-navy);

    font-weight: 750;
}


/* =========================================================
   INTRO POINTS
========================================================= */

#paediatric-feeding-therapy .hns-ast-points {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 9px;

    margin: 22px 0;
}

#paediatric-feeding-therapy .hns-ast-points span {
    display: flex;

    align-items: center;

    gap: 10px;

    padding: 11px 13px;

    background: #ffffff;

    border: 1px solid var(--hns-border);

    border-radius: 10px;

    color: var(--hns-heading);

    font-size: 14px;

    font-weight: 700;

    transition: .25s ease;
}

#paediatric-feeding-therapy .hns-ast-points span:hover {
    border-color: var(--hns-gold);

    box-shadow: var(--hns-shadow);

    transform: translateY(-2px);
}

#paediatric-feeding-therapy .hns-ast-points i {
    width: 32px;

    height: 32px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    border-radius: 8px;

    background: var(--hns-soft-gold);

    color: var(--hns-navy);

    font-size: 14px;
}


/* =========================================================
   BUTTON
========================================================= */

#paediatric-feeding-therapy .hns-ast-btn {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 13px 21px;

    background: var(--hns-navy);

    color: #ffffff;

    border-radius: 6px;

    text-decoration: none;

    font-size: 14px;

    font-weight: 750;

    box-shadow: 0 8px 20px rgba(17, 41, 129, .15);

    transition: .25s ease;
}

#paediatric-feeding-therapy .hns-ast-btn:hover {
    background: var(--hns-gold);

    color: var(--hns-deep);

    transform: translateY(-2px);
}


/* =========================================================
   HERO IMAGE
========================================================= */

#paediatric-feeding-therapy .hns-ast-image {
    position: relative;

    padding: 12px;
}

#paediatric-feeding-therapy .hns-ast-image::before {
    content: "";

    position: absolute;

    top: 0;

    right: 0;

    width: 90px;

    height: 90px;

    border-radius: 50%;

    background: var(--hns-soft-gold);

    z-index: 0;
}

#paediatric-feeding-therapy .hns-ast-image::after {
    content: "";

    position: absolute;

    bottom: 5px;

    left: 0;

    width: 70px;

    height: 70px;

    border-radius: 50%;

    background: var(--hns-soft-blue);

    z-index: 0;
}

#paediatric-feeding-therapy .hns-ast-image img {
    position: relative;

    z-index: 1;

    width: 100%;

    height: 430px;

    object-fit: cover;

    display: block;

    border-radius: 20px;

    border: 5px solid #ffffff;

    box-shadow:
        0 18px 45px rgba(11, 31, 99, .13);
}


/* =========================================================
   FLOATING IMAGE CARD
========================================================= */

#paediatric-feeding-therapy .hns-ast-image-card {
    position: absolute;

    z-index: 3;

    left: 28px;

    bottom: 25px;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 12px 16px;

    background: rgba(255,255,255,.97);

    border-left: 4px solid var(--hns-gold);

    border-radius: 9px;

    box-shadow: 0 12px 30px rgba(11,31,99,.15);
}

#paediatric-feeding-therapy .hns-ast-image-icon {
    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--hns-soft-blue);

    color: var(--hns-navy);

    border-radius: 8px;

    font-size: 17px;
}

#paediatric-feeding-therapy .hns-ast-image-card strong {
    display: block;

    color: var(--hns-heading);

    font-size: 14px;

    margin-bottom: 2px;
}

#paediatric-feeding-therapy .hns-ast-image-card span {
    display: block;

    color: #69748B;

    font-size: 11px;
}


/* =========================================================
   SECTION HEADINGS
========================================================= */

#paediatric-feeding-therapy .hns-ast-heading-row {
    display: flex;

    justify-content: space-between;

    align-items: flex-end;

    gap: 30px;

    margin-bottom: 25px;
}

#paediatric-feeding-therapy .hns-ast-heading-row h3 {
    max-width: 780px;

    font-size: clamp(31px, 3vw, 43px);

    line-height: 1.12;

    letter-spacing: -.8px;

    color: var(--hns-heading);

    margin: 0 0 10px;

    font-weight: 800;
}

#paediatric-feeding-therapy .hns-ast-heading-row h3 span {
    color: var(--hns-navy);
}

#paediatric-feeding-therapy .hns-ast-heading-row p {
    max-width: 780px;

    color: var(--hns-text);

    font-size: 16px;

    line-height: 1.7;

    margin: 0;
}


/* =========================================================
   SLIDER BUTTONS
========================================================= */

#paediatric-feeding-therapy .hns-ast-controls {
    display: flex;

    gap: 8px;
}

#paediatric-feeding-therapy .hns-ast-controls button {
    width: 43px;

    height: 43px;

    border: 1px solid var(--hns-border);

    border-radius: 6px;

    background: #ffffff;

    color: var(--hns-navy);

    cursor: pointer;

    transition: .25s ease;
}

#paediatric-feeding-therapy .hns-ast-controls button:hover {
    background: var(--hns-navy);

    color: #ffffff;

    border-color: var(--hns-navy);
}


/* =========================================================
   CARDS
========================================================= */

#paediatric-feeding-therapy .hns-ast-card {
    background: #ffffff;

    border: 1px solid var(--hns-border);

    border-top: 3px solid var(--hns-gold);

    border-radius: 14px;

    padding: 24px 22px;

    min-height: 315px;

    box-shadow: 0 7px 25px rgba(11,31,99,.045);

    transition: .3s ease;
}

#paediatric-feeding-therapy .hns-ast-card:hover {
    transform: translateY(-5px);

    border-color: #CFD8EA;

    box-shadow:
        0 17px 40px rgba(17,41,129,.11);
}


/* =========================================================
   CARD ICON
========================================================= */

#paediatric-feeding-therapy .hns-ast-icon {
    width: 47px;

    height: 47px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 10px;

    background: var(--hns-soft-blue);

    color: var(--hns-navy);

    font-size: 18px;

    margin-bottom: 17px;
}

#paediatric-feeding-therapy .hns-ast-no {
    float: right;

    color: #AAB3C5;

    font-size: 12px;

    font-weight: 800;
}

#paediatric-feeding-therapy .hns-ast-card small {
    display: block;

    color: var(--hns-navy);

    font-size: 10px;

    letter-spacing: 1.5px;

    font-weight: 800;

    margin-bottom: 7px;
}

#paediatric-feeding-therapy .hns-ast-card h4 {
    color: var(--hns-heading);

    font-size: 23px;

    line-height: 1.2;

    margin: 0 0 10px;

    font-weight: 800;
}

#paediatric-feeding-therapy .hns-ast-card p {
    color: var(--hns-text);

    font-size: 14px;

    line-height: 1.65;

    margin: 0 0 12px;
}


/* =========================================================
   CARD LIST
========================================================= */

#paediatric-feeding-therapy .hns-ast-card ul {
    list-style: none;

    padding: 0;

    margin: 0;
}

#paediatric-feeding-therapy .hns-ast-card li {
    position: relative;

    padding-left: 18px;

    margin-bottom: 6px;

    color: #566178;

    font-size: 13px;
}

#paediatric-feeding-therapy .hns-ast-card li::before {
    content: "✓";

    position: absolute;

    left: 0;

    color: var(--hns-gold-dark);

    font-weight: 900;
}


/* =========================================================
   TAGS
========================================================= */

#paediatric-feeding-therapy .hns-ast-tags {
    display: flex;

    flex-wrap: wrap;

    gap: 6px;
}

#paediatric-feeding-therapy .hns-ast-tags span {
    padding: 6px 9px;

    background: var(--hns-soft-blue);

    border-radius: 20px;

    color: var(--hns-navy);

    font-size: 10px;

    font-weight: 700;
}


/* =========================================================
   HIGHLIGHT
========================================================= */

#paediatric-feeding-therapy .hns-ast-highlight {
    padding: 10px 12px;

    background: var(--hns-soft-gold);

    border-left: 3px solid var(--hns-gold);

    border-radius: 0 7px 7px 0;

    color: var(--hns-heading) !important;

    font-size: 13px !important;

    line-height: 1.55 !important;

    font-weight: 650;
}


/* =========================================================
   LARGE FEATURE SECTION
   REDUCED HEIGHT
========================================================= */

#paediatric-feeding-therapy .hns-ast-stroke {
    position: relative;

    overflow: hidden;

    margin: 70px 0;

    padding: 42px 45px;

    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            #F2F6FF,
            #FFFFFF
        );

    border: 1px solid var(--hns-border);
}

#paediatric-feeding-therapy .hns-ast-stroke::after {
    content: "";

    position: absolute;

    width: 160px;

    height: 160px;

    right: -70px;

    top: -70px;

    border-radius: 50%;

    background: var(--hns-soft-gold);
}

#paediatric-feeding-therapy .hns-ast-stroke-content {
    position: relative;

    z-index: 2;

    max-width: 820px;
}

#paediatric-feeding-therapy .hns-ast-stroke h3 {
    font-size: clamp(31px, 3vw, 43px);

    line-height: 1.12;

    color: var(--hns-heading);

    margin: 0 0 12px;

    font-weight: 800;
}

#paediatric-feeding-therapy .hns-ast-stroke h3 span {
    color: var(--hns-navy);
}

#paediatric-feeding-therapy .hns-ast-stroke p {
    color: var(--hns-text);

    font-size: 15px;

    line-height: 1.7;

    margin: 0 0 10px;
}


/* =========================================================
   PATH
========================================================= */

#paediatric-feeding-therapy .hns-ast-path {
    position: relative;

    z-index: 2;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-wrap: wrap;

    gap: 12px;

    margin: 28px 0 20px;
}

#paediatric-feeding-therapy .hns-ast-path > div {
    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 6px;

    min-width: 78px;
}

#paediatric-feeding-therapy .hns-ast-path > div i {
    width: 43px;

    height: 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #ffffff;

    border: 1px solid var(--hns-border);

    border-radius: 50%;

    color: var(--hns-navy);

    font-size: 15px;

    box-shadow: 0 5px 15px rgba(17,41,129,.06);
}

#paediatric-feeding-therapy .hns-ast-path > div span {
    color: var(--hns-heading);

    font-size: 11px;

    font-weight: 750;
}

#paediatric-feeding-therapy .hns-ast-path > i {
    color: var(--hns-gold-dark);

    font-size: 11px;
}

#paediatric-feeding-therapy .hns-ast-path-final i {
    background: var(--hns-navy) !important;

    border-color: var(--hns-navy) !important;

    color: #ffffff !important;
}


/* =========================================================
   REAL LIFE TAGS
========================================================= */

#paediatric-feeding-therapy .hns-ast-real-life {
    position: relative;

    z-index: 2;

    display: flex;

    flex-wrap: wrap;

    justify-content: center;

    gap: 7px;
}

#paediatric-feeding-therapy .hns-ast-real-life span {
    display: inline-flex;

    align-items: center;

    gap: 7px;

    padding: 8px 12px;

    background: #ffffff;

    border: 1px solid var(--hns-border);

    border-radius: 20px;

    color: var(--hns-heading);

    font-size: 11px;

    font-weight: 700;
}

#paediatric-feeding-therapy .hns-ast-real-life span i {
    color: var(--hns-navy);
}


/* =========================================================
   INFORMATION GRID
========================================================= */

#paediatric-feeding-therapy .hns-ast-grid {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 18px;

    margin: 60px 0;
}

#paediatric-feeding-therapy .hns-ast-info {
    display: grid;

    grid-template-columns: 55px 1fr;

    gap: 18px;

    padding: 27px;

    background: #ffffff;

    border: 1px solid var(--hns-border);

    border-radius: 14px;

    box-shadow: 0 7px 25px rgba(11,31,99,.045);

    transition: .25s ease;
}

#paediatric-feeding-therapy .hns-ast-info:hover {
    border-color: #C8D2E7;

    box-shadow: var(--hns-shadow);
}

#paediatric-feeding-therapy .hns-ast-info-icon {
    width: 50px;

    height: 50px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 10px;

    background: var(--hns-soft-gold);

    color: var(--hns-navy);

    font-size: 18px;
}

#paediatric-feeding-therapy .hns-ast-info span {
    display: block;

    color: var(--hns-navy);

    font-size: 10px;

    letter-spacing: 1.4px;

    font-weight: 800;

    margin-bottom: 6px;
}

#paediatric-feeding-therapy .hns-ast-info h4 {
    color: var(--hns-heading);

    font-size: 23px;

    line-height: 1.25;

    margin: 0 0 8px;

    font-weight: 800;
}

#paediatric-feeding-therapy .hns-ast-info p {
    color: var(--hns-text);

    font-size: 14px;

    line-height: 1.65;

    margin: 0;
}

#paediatric-feeding-therapy .hns-ast-note {
    margin-top: 13px;

    padding: 9px 11px;

    background: var(--hns-soft-blue);

    border-radius: 7px;

    color: var(--hns-heading);

    font-size: 12px;

    line-height: 1.5;
}

#paediatric-feeding-therapy .hns-ast-note i {
    color: var(--hns-navy);

    margin-right: 5px;
}


/* =========================================================
   DARK PREMIUM SECTION
========================================================= */

#paediatric-feeding-therapy .hns-ast-real-therapy {
    margin: 70px 0;

    padding: 42px 45px;

    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            var(--hns-deep),
            var(--hns-navy)
        );

    color: #ffffff;

    box-shadow: 0 18px 45px rgba(11,31,99,.13);
}

#paediatric-feeding-therapy .hns-ast-real-therapy .hns-ast-label {
    color: var(--hns-gold);
}

#paediatric-feeding-therapy .hns-ast-real-therapy .hns-ast-label::before {
    background: var(--hns-gold);
}

#paediatric-feeding-therapy .hns-ast-real-therapy h3 {
    max-width: 800px;

    font-size: clamp(31px, 3vw, 43px);

    line-height: 1.12;

    color: #ffffff;

    margin: 0 0 12px;

    font-weight: 800;
}

#paediatric-feeding-therapy .hns-ast-real-therapy h3 span {
    color: var(--hns-gold);
}

#paediatric-feeding-therapy .hns-ast-real-therapy > div:first-child > p {
    max-width: 820px;

    color: #DDE5FF;

    font-size: 15px;

    line-height: 1.7;

    margin: 0;
}


/* =========================================================
   PERSONA CARDS
========================================================= */

#paediatric-feeding-therapy .hns-ast-personas {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 12px;

    margin-top: 28px;
}

#paediatric-feeding-therapy .hns-ast-personas > div {
    padding: 20px;

    background: rgba(255,255,255,.055);

    border: 1px solid rgba(255,255,255,.11);

    border-radius: 12px;

    transition: .25s ease;
}

#paediatric-feeding-therapy .hns-ast-personas > div:hover {
    background: rgba(255,255,255,.09);

    transform: translateY(-3px);
}

#paediatric-feeding-therapy .hns-ast-personas i {
    display: block;

    color: var(--hns-gold);

    font-size: 20px;

    margin-bottom: 13px;
}

#paediatric-feeding-therapy .hns-ast-personas strong {
    display: block;

    color: #ffffff;

    font-size: 16px;

    margin-bottom: 5px;
}

#paediatric-feeding-therapy .hns-ast-personas span {
    display: block;

    color: #CCD6F0;

    font-size: 12px;

    line-height: 1.55;
}


/* =========================================================
   CTA
========================================================= */

#paediatric-feeding-therapy .hns-ast-cta {
    display: grid;

    grid-template-columns: 62px 1fr auto;

    align-items: center;

    gap: 22px;

    padding: 32px;

    margin-top: 70px;

    background:
        linear-gradient(
            135deg,
            #F4F7FF,
            #FFFFFF
        );

    border: 1px solid #DDE4F3;

    border-left: 4px solid var(--hns-gold);

    border-radius: 15px;

    box-shadow: 0 12px 35px rgba(11,31,99,.07);
}

#paediatric-feeding-therapy .hns-ast-cta-icon {
    width: 58px;

    height: 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--hns-navy);

    color: var(--hns-gold);

    border-radius: 12px;

    font-size: 21px;
}

#paediatric-feeding-therapy .hns-ast-cta-content > span {
    display: block;

    color: var(--hns-navy);

    font-size: 10px;

    letter-spacing: 1.7px;

    font-weight: 800;

    margin-bottom: 5px;
}

#paediatric-feeding-therapy .hns-ast-cta-content h3 {
    color: var(--hns-heading);

    font-size: clamp(25px, 2.5vw, 34px);

    line-height: 1.2;

    margin: 0 0 8px;

    font-weight: 800;
}

#paediatric-feeding-therapy .hns-ast-cta-content h3 strong {
    color: var(--hns-navy);
}

#paediatric-feeding-therapy .hns-ast-cta-content p {
    max-width: 780px;

    color: var(--hns-text);

    font-size: 13px;

    line-height: 1.65;

    margin: 0 0 6px;
}

#paediatric-feeding-therapy .hns-ast-cta-btn {
    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    padding: 13px 19px;

    white-space: nowrap;

    border-radius: 6px;

    background: var(--hns-navy);

    color: #ffffff;

    text-decoration: none;

    font-size: 13px;

    font-weight: 750;

    transition: .25s ease;
}

#paediatric-feeding-therapy .hns-ast-cta-btn:hover {
    background: var(--hns-gold);

    color: var(--hns-deep);

    transform: translateY(-2px);
}


/* =========================================================
   DOTS
========================================================= */

#paediatric-feeding-therapy .hns-ast-dots {
    margin-top: 18px;

    text-align: center;
}

#paediatric-feeding-therapy .hns-ast-dots span {
    width: 7px;

    height: 7px;

    display: inline-block;

    margin: 0 3px;

    border-radius: 50%;

    background: #CBD3E2;
}

#paediatric-feeding-therapy .hns-ast-dots span.active {
    width: 20px;

    border-radius: 10px;

    background: var(--hns-gold);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    #paediatric-feeding-therapy {
        padding: 55px 0 65px;
    }

    #paediatric-feeding-therapy .hns-ast-intro {
        grid-template-columns: 1fr;

        gap: 40px;

        margin-bottom: 60px;
    }

    #paediatric-feeding-therapy .hns-ast-image img {
        height: 390px;
    }

    #paediatric-feeding-therapy .hns-ast-grid {
        grid-template-columns: 1fr;
    }

    #paediatric-feeding-therapy .hns-ast-personas {
        grid-template-columns: repeat(3, 1fr);
    }

    #paediatric-feeding-therapy .hns-ast-cta {
        grid-template-columns: 58px 1fr;
    }

    #paediatric-feeding-therapy .hns-ast-cta-btn {
        grid-column: 2;

        justify-self: start;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 575px) {

    #paediatric-feeding-therapy {
        padding: 45px 0 55px;
    }

    #paediatric-feeding-therapy .hns-ast-intro {
        gap: 30px;

        margin-bottom: 50px;
    }

    #paediatric-feeding-therapy .hns-ast-content h2 {
        font-size: 35px;

        letter-spacing: -1px;
    }

    #paediatric-feeding-therapy .hns-ast-content p {
        font-size: 16px;

        line-height: 1.68;
    }

    #paediatric-feeding-therapy .hns-ast-points {
        grid-template-columns: 1fr;

        gap: 7px;
    }

    #paediatric-feeding-therapy .hns-ast-image {
        padding: 7px;
    }

    #paediatric-feeding-therapy .hns-ast-image img {
        height: 330px;

        border-radius: 15px;

        border-width: 3px;
    }

    #paediatric-feeding-therapy .hns-ast-image-card {
        left: 17px;

        bottom: 18px;

        padding: 9px 12px;
    }

    #paediatric-feeding-therapy .hns-ast-image-icon {
        width: 36px;

        height: 36px;

        font-size: 14px;
    }

    #paediatric-feeding-therapy .hns-ast-image-card strong {
        font-size: 12px;
    }

    #paediatric-feeding-therapy .hns-ast-image-card span {
        font-size: 9px;
    }

    #paediatric-feeding-therapy .hns-ast-heading-row {
        flex-direction: column;

        align-items: flex-start;

        gap: 15px;
    }

    #paediatric-feeding-therapy .hns-ast-heading-row h3 {
        font-size: 31px;
    }

    #paediatric-feeding-therapy .hns-ast-heading-row p {
        font-size: 15px;
    }

    #paediatric-feeding-therapy .hns-ast-card {
        min-height: 295px;

        padding: 22px 19px;
    }

    #paediatric-feeding-therapy .hns-ast-card h4 {
        font-size: 22px;
    }

    #paediatric-feeding-therapy .hns-ast-card p {
        font-size: 14px;
    }

    #paediatric-feeding-therapy .hns-ast-stroke {
        margin: 55px 0;

        padding: 30px 21px;

        border-radius: 14px;
    }

    #paediatric-feeding-therapy .hns-ast-stroke h3 {
        font-size: 31px;
    }

    #paediatric-feeding-therapy .hns-ast-stroke p {
        font-size: 14px;
    }

    #paediatric-feeding-therapy .hns-ast-path {
        gap: 7px;
    }

    #paediatric-feeding-therapy .hns-ast-path > div {
        min-width: 63px;
    }

    #paediatric-feeding-therapy .hns-ast-path > div i {
        width: 38px;

        height: 38px;

        font-size: 13px;
    }

    #paediatric-feeding-therapy .hns-ast-path > div span {
        font-size: 9px;
    }

    #paediatric-feeding-therapy .hns-ast-path > i {
        font-size: 8px;
    }

    #paediatric-feeding-therapy .hns-ast-grid {
        margin: 50px 0;
    }

    #paediatric-feeding-therapy .hns-ast-info {
        grid-template-columns: 1fr;

        gap: 14px;

        padding: 22px 19px;
    }

    #paediatric-feeding-therapy .hns-ast-info h4 {
        font-size: 22px;
    }

    #paediatric-feeding-therapy .hns-ast-real-therapy {
        margin: 55px 0;

        padding: 30px 21px;

        border-radius: 14px;
    }

    #paediatric-feeding-therapy .hns-ast-real-therapy h3 {
        font-size: 31px;
    }

    #paediatric-feeding-therapy .hns-ast-personas {
        grid-template-columns: 1fr;

        gap: 8px;

        margin-top: 22px;
    }

    #paediatric-feeding-therapy .hns-ast-personas > div {
        padding: 17px;
    }

    #paediatric-feeding-therapy .hns-ast-cta {
        grid-template-columns: 1fr;

        gap: 14px;

        padding: 25px 19px;

        margin-top: 55px;

        text-align: center;
    }

    #paediatric-feeding-therapy .hns-ast-cta-icon {
        margin: auto;
    }

    #paediatric-feeding-therapy .hns-ast-cta-btn {
        grid-column: auto;

        width: 100%;
    }

}










/* =====================================================
   HEAR 'N' SAY WHATSAPP - FIXED POSITION
===================================================== */

.hns-whatsapp-wrap {
    position: fixed !important;

    right: 22px !important;
    left: auto !important;

    bottom: 25px !important;

    width: auto !important;
    height: auto !important;

    z-index: 999999 !important;

    margin: 0 !important;
    padding: 0 !important;

    display: block !important;

    font-family: Arial, sans-serif;
}


/* MAIN WHATSAPP BUTTON */

.hns-whatsapp-main {
    width: 58px !important;
    height: 58px !important;

    min-width: 58px !important;
    min-height: 58px !important;

    padding: 0 !important;
    margin: 0 !important;

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    border: none !important;

    border-radius: 50% !important;

    background: #25D366 !important;

    color: #ffffff !important;

    font-size: 27px !important;

    line-height: 1 !important;

    cursor: pointer;

    box-shadow:
        0 8px 25px rgba(0, 0, 0, .22) !important;

    transition: all .25s ease;
}

.hns-whatsapp-main:hover {
    transform: scale(1.08);
}


/* =====================================================
   POPUP
===================================================== */

.hns-whatsapp-options {
    position: absolute !important;

    right: 0 !important;
    left: auto !important;

    bottom: 70px !important;

    width: 270px !important;

    padding: 17px !important;

    background: #ffffff !important;

    border-radius: 15px !important;

    border: 1px solid #e5e8ef !important;

    box-shadow:
        0 15px 45px rgba(0, 0, 0, .18) !important;

    opacity: 0;

    visibility: hidden;

    transform: translateY(10px);

    transition: all .25s ease;
}

.hns-whatsapp-options.active {
    opacity: 1 !important;

    visibility: visible !important;

    transform: translateY(0);
}


/* =====================================================
   POPUP HEADER
===================================================== */

.hns-whatsapp-title {
    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    margin-bottom: 12px !important;
}

.hns-whatsapp-title strong {
    color: #112981 !important;

    font-size: 16px !important;
}

.hns-whatsapp-close {
    border: none !important;

    background: transparent !important;

    color: #777 !important;

    font-size: 20px !important;

    cursor: pointer;
}


/* =====================================================
   WHATSAPP OPTION
===================================================== */

.hns-whatsapp-option {
    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    padding: 12px !important;

    margin-top: 8px !important;

    background: #f7f9fc !important;

    border-radius: 10px !important;

    text-decoration: none !important;

    transition: .25s ease;
}

.hns-whatsapp-option:hover {
    background: #eef3ff !important;

    transform: translateX(-3px);
}


.hns-whatsapp-icon {
    width: 42px !important;
    height: 42px !important;

    min-width: 42px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    border-radius: 50% !important;

    background: #25D366 !important;

    color: #ffffff !important;

    font-size: 20px !important;
}


.hns-whatsapp-info strong {
    display: block !important;

    color: #112981 !important;

    font-size: 14px !important;

    margin-bottom: 3px !important;
}

.hns-whatsapp-info span {
    display: block !important;

    color: #70798b !important;

    font-size: 11px !important;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 575px) {

    .hns-whatsapp-wrap {
        right: 15px !important;
        left: auto !important;

        bottom: 20px !important;
    }

    .hns-whatsapp-main {
        width: 54px !important;
        height: 54px !important;

        min-width: 54px !important;
        min-height: 54px !important;

        font-size: 25px !important;
    }

    .hns-whatsapp-options {
        right: 0 !important;
        left: auto !important;

        bottom: 65px !important;

        width: 250px !important;
    }
}






/* =====================================================
   CALL WRAPPER
===================================================== */

.hns-call-wrap {
    position: fixed !important;

    right: 22px !important;
    bottom: 95px !important;

    left: auto !important;

    width: auto !important;
    height: auto !important;

    z-index: 999998 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-family: Arial, sans-serif;
}


/* =====================================================
   MAIN CALL BUTTON
===================================================== */

.hns-call-main {
    width: 58px !important;
    height: 58px !important;

    min-width: 58px !important;
    min-height: 58px !important;

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    padding: 0 !important;
    margin: 0 !important;

    border: none !important;

    border-radius: 50% !important;

    background: #112981 !important;

    color: #FFCA00 !important;

    font-size: 24px !important;

    line-height: 1 !important;

    cursor: pointer;

    box-shadow:
        0 8px 25px rgba(0, 0, 0, .22) !important;

    transition: all .25s ease;
}

.hns-call-main:hover {
    background: #FFCA00 !important;

    color: #112981 !important;

    transform: scale(1.08);
}


/* =====================================================
   CALL POPUP
===================================================== */

.hns-call-options {
    position: absolute !important;

    right: 0 !important;
    left: auto !important;

    bottom: 70px !important;

    width: 270px !important;

    padding: 17px !important;

    background: #ffffff !important;

    border-radius: 15px !important;

    border: 1px solid #e5e8ef !important;

    box-shadow:
        0 15px 45px rgba(0, 0, 0, .18) !important;

    opacity: 0;

    visibility: hidden;

    transform: translateY(10px);

    transition: all .25s ease;
}


/* OPEN */

.hns-call-options.active {
    opacity: 1 !important;

    visibility: visible !important;

    transform: translateY(0);
}


/* =====================================================
   POPUP HEADER
===================================================== */

.hns-call-title {
    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    margin-bottom: 12px !important;
}

.hns-call-title strong {
    color: #112981 !important;

    font-size: 16px !important;
}

.hns-call-close {
    border: none !important;

    background: transparent !important;

    color: #777 !important;

    font-size: 20px !important;

    cursor: pointer;

    padding: 0 !important;
}


/* =====================================================
   PHONE OPTION
===================================================== */

.hns-call-option {
    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    padding: 13px !important;

    margin-top: 8px !important;

    background: #f7f9fc !important;

    border-radius: 10px !important;

    text-decoration: none !important;

    transition: .25s ease;
}

.hns-call-option:hover {
    background: #eef3ff !important;

    transform: translateX(-3px);
}


/* PHONE ICON */

.hns-call-icon {
    width: 42px !important;
    height: 42px !important;

    min-width: 42px !important;

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    border-radius: 50% !important;

    background: #112981 !important;

    color: #FFCA00 !important;

    font-size: 18px !important;
}


/* TEXT */

.hns-call-info strong {
    display: block !important;

    color: #112981 !important;

    font-size: 14px !important;

    margin-bottom: 3px !important;
}

.hns-call-info span {
    display: block !important;

    color: #70798b !important;

    font-size: 12px !important;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 575px) {

    .hns-call-wrap {
        right: 15px !important;

        bottom: 85px !important;
    }

    .hns-call-main {
        width: 54px !important;
        height: 54px !important;

        min-width: 54px !important;
        min-height: 54px !important;

        font-size: 22px !important;
    }

    .hns-call-options {
        width: 250px !important;

        bottom: 65px !important;
    }

}