body {
    font-family: "DM Sans", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    scroll-behavior: smooth;
}

/* Global fonts */
/* BUTLER -------------------------------------------------- */
@font-face {
    font-family: "Butler";
    src: url("../fonts/Butler/Butler_Ultra_Light.otf") format("opentype");
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: "Butler";
    src: url("../fonts/Butler/Butler_Light.otf") format("opentype");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "Butler";
    src: url("../fonts/Butler/Butler_Regular.otf") format("opentype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "Butler";
    src: url("../fonts/Butler/Butler_Medium.otf") format("opentype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "Butler";
    src: url("../fonts/Butler/Butler_Bold.otf") format("opentype");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "Butler";
    src: url("../fonts/Butler/Butler_ExtraBold.otf") format("opentype");
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: "Butler";
    src: url("../fonts/Butler/Butler_Black.otf") format("opentype");
    font-weight: 900;
    font-style: normal;
}

/* RUBIK --------------------------------------------------- */
@font-face {
    font-family: "Rubik";
    src: url("../fonts/Rubik/Rubik-Light.woff2") format("woff2"),
        url("../fonts/Rubik/Rubik-Light.woff") format("woff");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "Rubik";
    src: url("../fonts/Rubik/Rubik-Regular.woff2") format("woff2"),
        url("../fonts/Rubik/Rubik-Regular.woff") format("woff");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "Rubik";
    src: url("../fonts/Rubik/Rubik-Medium.woff2") format("woff2"),
        url("../fonts/Rubik/Rubik-Medium.woff") format("woff");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "Rubik";
    src: url("../fonts/Rubik/Rubik-Bold.woff2") format("woff2"),
        url("../fonts/Rubik/Rubik-Bold.woff") format("woff");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "Rubik";
    src: url("../fonts/Rubik/Rubik-ExtraBold.woff2") format("woff2"),
        url("../fonts/Rubik/Rubik-ExtraBold.woff") format("woff");
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: "Rubik";
    src: url("../fonts/Rubik/Rubik-Black.woff2") format("woff2"),
        url("../fonts/Rubik/Rubik-Black.woff") format("woff");
    font-weight: 900;
    font-style: normal;
}

/* DM SANS ------------------------------------------------- */
@font-face {
    font-family: "DM Sans";
    src: url("../fonts/dm-sans/DMSans-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "DM Sans";
    src: url("../fonts/dm-sans/DMSans-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "DM Sans";
    src: url("../fonts/dm-sans/DMSans-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
}

/* Global colors taken from screenshot-style */
:root {
    --primary-orange: #f0944D;
    --primary-blue: #1b3052;
    --accent-blue: #147CC8;
    --light-bg: #f5f8ff;
}

.orange-bg {
    background-color: var(--primary-orange);
}

a {
    text-decoration: none;
}

.modal {
    font-family: 'Rubik', sans-serif !important;
}

.modal-backdrop.show {
    opacity: 0.8 !important;
}


.modal h2 {
    font-size: 30px !important;
    font-weight: 700;
    line-height: 1.2em;
    color: #1b4c9c !important;
    font-family: 'Rubik', sans-serif;
}

.modal p {
    font-size: 16px;
    font-weight: 300;
    color: #272626 !important;
}

.modal .btn.btn-blue-pill {
    font-family: "Rubik", Sans-serif;
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1.6em;
    letter-spacing: 1px;
    border-radius: 30px 30px 30px 30px;
    background-color: #1b4c9c !important;
    color: #ffffff;
}

.modal .btn.btn-blue-pill:hover {
    background-color: #1b3052 !important;
    color: #ffffff;
}

.modal-body {
    padding: 0 !important;
}

.modal-body .form-control {
    border-radius: 30px;
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
    border: 1px solid #e2e2e2 !important
}

.modal .form-control::placeholder {
    color: #7C7C7C !important;
    font-weight: 300 !important;
}

.modal-content {
    border-radius: 0 !important;
}

.modal .content-col {
    padding: 5%;
    font-weight: 300;
    background-color: #fff;
}

.modal-body .orange-bg {
    display: grid;
    place-items: center;
}

.modal-body .btn.btn-close {
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
}

/* Navbar */
#mainNav {
    align-items: center;
}

#mainNav .navbar-nav {
    margin: 0 auto;
}

.navbar-geevida {
    background: transparent;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
    padding: 1.6rem 0rem 1.6rem 0rem;
}

.navbar-brand img {
    width: 304px !important;
}

.navbar-geevida .navbar-nav .nav-link {
    font-size: 14.5px !important;
    color: var(--primary-blue) !important;
    font-weight: 400;
}

.navbar-geevida .navbar-nav .nav-link:hover,
.navbar-geevida .navbar-nav .nav-link.active {
    color: var(--primary-orange) !important;
}

/* Services dropdown panel */
.services-menu,
.user-dropdown {
    --bs-dropdown-padding-x: 0;
    --bs-dropdown-padding-y: 0;
    --bs-dropdown-bg: #052244;
    --bs-dropdown-border-color: transparent;
    padding: 0.75rem 0;
    min-width: 260px;
    background: var(--primary-blue);
    border-radius: 1rem;
    margin-top: 0.75rem;
}

.nav-action-btn {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    width: 32%;
    gap: 1rem;
    right: 2rem;
    position: relative;
}

.btn-outline-lightblue {
    border-color: var(--primary-blue);
    background: var(--light-bg);
    color: var(--primary-blue);
    font-size: 14.5px;
    padding: 0.625rem 1.25rem;
    border-radius: 999px;
    font-weight: 600;
}

.btn-outline-lightblue:hover {
    background: var(--primary-blue);
    color: #fff;
}

.extra-padding {
    padding: 16px 50px !important;
    font-size: 23px !important;
}

.btn-orange-pill {
    background: var(--primary-orange);
    font-size: 14.5px;
    color: #fff;
    border-radius: 999px;
    padding: 0.625rem 1.25rem;
    border: none;
    font-weight: 600;
}

.btn-orange-pill:hover {
    background: var(--primary-blue);
    color: #fff;
}

.btn-blue-pill {
    background: var(--primary-blue);
    color: #fff;
    border-radius: 999px;
    padding: 0.6rem 1.8rem;
    border: none;
    font-weight: 600;
    font-size: 14.5px;
}

.btn-blue-pill.extra-padding:hover {
    background-color: var(--primary-blue);
}

/* Hero */
.hero-section {
    position: relative;
    min-height: 100vh;
    color: #fff;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #000;
}

.hero-video-wrapper {
    position: absolute;
    inset: 0;
    overflow: hidden;
    z-index: 0;
}

.hero-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.71), rgba(250, 250, 250, 0.71));
    z-index: 1;
}

.hero-content {
    position: relative;
    z-index: 2;
    padding-top: 7rem;
    padding-bottom: 3rem;
}

.hero-title {
    font-size: clamp(2.75rem, 4.948vw, 6.75rem) !important;
    font-family: 'Butler', serif;
    font-weight: 500;
    line-height: 1.1;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    letter-spacing: -1.6px;
    word-spacing: 0;
    color: #1B4C9C;
}

.hero-subtitle {
    font-size: clamp(2.75rem, 5.21vw, 6.75rem);
    font-family: 'butler', serif;
    margin-top: 0.5rem;
    margin-bottom: 1rem;
    color: #272626 !important;
    font-weight: 600;
    font-style: italic;
    letter-spacing: -2px;
    word-spacing: 0px;
}

.hero-tagline {
    margin-bottom: 1.7rem;
    font-size: clamp(1.188rem, 2.28vw, 3.188rem);
    font-family: 'butler', serif;
    font-weight: 500;
    text-transform: uppercase;
    font-style: normal;
    text-decoration: none;
    line-height: 1.1em;
    letter-spacing: 0px;
    word-spacing: 0px;
    color: var(--accent-blue);
}

.hero-buttons .btn {
    margin-right: 0.75rem;
    margin-bottom: 0.75rem;
}

/* Section headings */
.section-title-small {
    color: var(--primary-orange);
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 0.75rem;
    margin-bottom: 0.15rem;
}

.section-title-main {
    font-size: 2rem;
    font-weight: 600;
    color: var(--primary-blue);
}

/* What We Offer cards */
.section-light {
    background: #EFF5FF;
}

.heading-holder {
    width: auto !important;
    max-width: max-content;
    margin: 0 auto;
    margin-bottom: 80px;
    border-left: 10px solid var(--primary-orange);
    text-align: start !important;
    padding-left: 1.5rem;
    line-height: 1;
}

.heading-holder .section-title-small {
    font-size: clamp(24px, 2.42vw, 48px);
    font-weight: 700 !important;
    font-family: 'Butler', sans-serif;
    text-transform: capitalize;
    letter-spacing: 0px !important;
}

.heading-holder .section-title-small::first-letter {
    text-transform: uppercase;
}

.heading-holder .section-title-main {
    font-size: clamp(32px, 5.287vw, 90px);
    font-weight: 600;
    color: var(--primary-orange);
    letter-spacing: 0 !important;
}

.offer-video-wrapper {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.offer-card-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.card-carousel-inner {
    position: relative;
    overflow: hidden;
}

.card-track {
    display: flex;
    transition: transform 0.7s ease;
    will-change: transform;
}

.card-slide {
    flex: 0 0 33.3333%;
    padding: 0 0.75rem;
    box-sizing: border-box;
}

.offer-carousel-container {
    max-width: 1520px;
}

.offer-card {
    position: relative;
    border-radius: 28px;
    overflow: hidden;
    min-height: 700px;
    color: #fff;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
}

.offer-details {
    border: 2px solid #FAFDFE !important;
    display: flex;
    flex-direction: column;
    min-height: 600px !important;
    justify-content: space-around;
    align-items: flex-start;
    border-radius: 30px 30px 30px 30px;
    padding-top: 0px;
    padding-bottom: 0px;
    padding-left: 20px;
    padding-right: 20px;

}

.offer-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 28px;
    border: 2px solid rgba(255, 255, 255, 0.7);
    margin: 1.6rem;
    pointer-events: none;
}

.offer-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(5, 10, 40, 0.15), rgba(5, 10, 40, 0.85));
}

.offer-card-body {
    position: relative;
    z-index: 1;
    height: 100%;
    padding: 2.4rem 2.2rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
}

.offer-icon i {
    font-size: 2.5rem;
}

.offer-icon {
    padding-left: 1rem;
    justify-content: flex-start;
    display: flex;
    margin-bottom: 2rem;
}

.offer-title {
    margin-bottom: 1.5rem;
    max-width: 310px;
    margin: 0 auto !important;
    font-size: 36px;
    font-weight: 500;
    text-transform: capitalize;
    line-height: 45px;
}

.offer-text {
    font-size: 18px;
    line-height: 27px;
}

.timeline-wrapper {
    position: relative;
    background-color: #EFF5FF;
    background-image: url('../images/timeline-bg.webp');
    background-size: cover;
    background-position: center;
}

.timeline-wrapper::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #EFF5FF 0%, #EFF5FFDB 100%);
}

.timeline-wrapper .row {
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 3rem 1rem 100px 1rem !important;
}

.timeline-line {
    position: absolute;
    left: 50%;
    top: 11%;
    width: 4px;
    height: 100%;
    background: #C8E8FF;
    transform: translate(-50%, -4%);
    height: 548px !important;
}

.timeline-line-fill {
    position: absolute;
    left: 50%;
    top: 8%;
    width: 4px;
    height: 0;
    background: var(--primary-orange);
    transform: translate(-50%, -4%);
    transition: height 0.4s ease;
}

.timeline-marker i {
    color: #fff !important;
    transition: color 0.3s ease;
}

.timeline-marker i::before {
    color: #fff !important;
    font-size: 1rem !important;
}

.timeline-marker.active {
    background-color: var(--primary-orange) !important;
}

.timeline-marker {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 5px solid #fff;
    background: #C8E8FF;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
}

.marker-1 {
    top: 7%;
}

.marker-2 {
    top: 36%;
}

.marker-3 {
    top: 65%;
}

.step-label {
    position: absolute;
    left: 55%;
    transform: translateX(-50%);
    font-size: 0.75rem;
    letter-spacing: 0.12em;
    font-family: 'Butler', sans-serif;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase !important;
    color: #1B3052;
    padding: .8em 0;
    opacity: .7;
}


.step-label-1 {
    top: 5.8%;
    left: 56%;
}

.step-label-2 {
    top: 35%;
    left: 44%;
}

.step-label-3 {
    top: 64%;
    left: 56%;
}

.timeline-card .timeline-icon img {
    width: 90px;
}

.timeline-card .timeline-icon {
    display: flex;
    justify-content: end;
}

.timeline-card {
    background: #EFF5FF !important;
    border-radius: 14px;
    border: 2px solid var(--primary-orange);
    padding: 30px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-width: 440px !important;
    min-height: 248px;
}

.timeline-col-left .timeline-card {
    margin-left: auto;
}

.timeline-col-right .timeline-card {
    margin-right: auto !important;
}

.timeline-col-left .timeline-card::after {
    content: "►";
    color: var(--primary-orange);
    font-size: 20px;
    position: absolute;
    top: 25px;
    right: -18px;
}

/* middle card: left-pointing arrow on the left side */
.timeline-col-right .timeline-card::before {
    content: "►";
    color: var(--primary-orange);
    font-size: 20px;
    position: absolute;
    top: 25px;
    left: -18px;
    transform: rotate(180deg);
    /* point arrow to the left */
}

.timeline-card h3 {
    width: 100% !important;
    font-weight: 800;
    margin-bottom: 1.2rem;
    color: #1B3052 !important;
    font-family: 'Butler', sans-serif !important;
    font-size: 30px;
    letter-spacing: 2px !important;
}

.timeline-card p {
    font-size: 0.95rem;
    margin: 0;
}

/* Packages accordion */
.packages-section {
    padding-top: 4rem;
    padding-bottom: 100px;
}

.package-header {
    background: #1B4C9C;
    color: #fff;
    border-radius: 999px;
    padding: 1.25rem 1.25rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 2rem;
    margin-bottom: 0.5rem;
    font-size: 1.563rem;
    font-family: 'DM Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
}

.package-header.collapsed {
    background: #1B4C9C;
}

.package-body {
    border-radius: 30px;
    border: 3px solid var(--primary-orange);
    padding: 30px 50px;
    margin-bottom: 1.75rem;
    background: #fff;
}

.infobox-icon {
    justify-self: start;
    margin-bottom: 1rem;
}

.infobox-icon svg {
    height: 80px;
    width: 80px;
    fill: #189FD8;
}

.package-body:hover .infobox-icon svg {
    fill: #1B4C9C;
}

.package-price,
.package-price span {
    font-size: 2.5rem !important;
    font-weight: 600 !important;
    color: #1b4c9c !important;
}

.package-list {
    margin-top: 2rem;
    margin-bottom: 2.5rem;
    padding-left: 1.5rem;
}

.package-list li {
    margin-bottom: 0.25rem;
    font-size: 20px;
    color: #1b4c9c;
}

.package-body .btn {
    font-size: 18px;
    font-weight: 600;
    padding: 15px 20px 15px 20px;
    border-radius: 50px;
}

.package-body .btn:hover {
    background-color: #1b4c9c;
}

/* Newsletter + appointment band */
.cta-band {
    background: transparent;
    color: #fff;
    padding-top: 0rem;
    padding-bottom: 100px;
}

.cta-band .cta-block {
    background: var(--accent-blue);
    color: var(--primary-blue);
    padding: 50px;
    height: 100%;
}

.cta-block button,
.cta-block-secondary a {
    padding: 15px 30px !important;
    font-size: 20px !important;
}

.cta-band .cta-block .heading-holder {
    border-left: 10px solid var(--light-bg);
}

.cta-block .section-title-small,
.cta-block .section-title-main {
    color: var(--light-bg) !important;
}

.cta-band .section-title-small {
    font-size: clamp(19px, 1.825vw, 40px) !important;
}

.cta-band .section-title-main {
    font-size: clamp(28px, 3.911vw, 80px) !important;
}

.cta-band .section-title-small,
.cta-band .section-title-main {
    text-transform: capitalize !important;
}

.cta-band .section-title-small::first-letter,
.cta-band .section-title-main::first-letter {
    text-transform: uppercase !important;
}

.cta-block button:hover {
    background-color: #fff !important;
    color: var(--primary-orange);
}

.cta-block-secondary a {
    background-color: #147cc8 !important;
}


.cta-block-secondary a:hover {
    background-color: var(--primary-orange) !important;
    color: #fff !important;
}

.cta-band .cta-block-secondary {
    background: #fff;
    border: 2px solid var(--primary-orange);
    color: var(--primary-blue);
    padding: 50px;
    height: 100%;
}

.cta-band .container {
    max-width: 1400px;
}

.col-md-6:has(.cta-block),
.col-md-6:has(.cta-block-secondary) {
    padding: 0;
}

.cta-block h5 {
    font-weight: 600;
    margin-bottom: 0.4rem;
}

.cta-block small {
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 0.7rem;
    color: #f58634;
}

/* Footer */
.footer {
    background: var(--primary-orange);
    padding: 80px 0 40px 0;
    font-size: 16px !important;
    font-weight: 300 !important;
}

.footer .footer-logo {
    width: 300px;
}

.footer .container {
    max-width: 1280px !important;
}

.col-width-custom {
    width: 5% !important;
}

.w-20 {
    width: 20% !important;
}

.w-30 {
    width: 30% !important;
}

.w-15 {
    width: 15% !important;
}

.footer h5 {
    text-transform: uppercase;
    font-family: 'DM Sans', sans-serif;
    letter-spacing: 0.12em;
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
    color: #fff !important;
}

.contact-info p {
    transition: all 0.3s ease-in-out;
}

.contact-info p:hover {
    color: #1b4c9c !important;
}

.footer p {
    font-weight: 500;
    font-size: 1.25rem;
}

.footer-para {
    font-size: 18px !important;
    font-weight: 300 !important;
    max-width: 220px !important;
}

.footer {
    color: #fff !important;
    text-decoration: none !important;
}

.footer ul {
    padding: 0;
}

.footer ul li {
    list-style-type: none !important;
    margin-bottom: 0.65rem !important;
}

.footer ul li a {
    list-style-type: none !important;
    color: #fff !important;
    font-size: 18px;
    transition: all 0.3s ease-in-out;
}

.footer ul li a:hover {
    color: #1b3052 !important;
}

.footer img {
    width: 140px;
}

.social-icons a {
    width: 48px;
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background-color: #fff !important;
    color: #147CC8 !important;
}

.social-icons a:hover {
    color: var(--primary-orange) !important;
}

.social-icons {
    display: flex !important;
    flex-direction: row !important;
    gap: 0.5rem !important;
}

/* Items inside dropdown */
.services-menu .dropdown-item,
.user-dropdown .dropdown-item {
    color: #f7f9ff;
    font-size: 0.9rem;
    padding: 0.75rem 1.4rem;
    white-space: normal;
}

.services-menu li:first-child .dropdown-item,
.user-dropdown li:first-child .dropdown-item {
    border-top-left-radius: 1rem !important;
    border-top-right-radius: 1rem !important;
}

.services-menu li:last-child .dropdown-item,
.user-dropdown li:last-child .dropdown-item {
    border-bottom-left-radius: 1rem !important;
    border-bottom-right-radius: 1rem !important;
}

.services-menu .dropdown-item:hover,
.services-menu .dropdown-item:focus,
.user-dropdown .dropdown-item:hover,
.user-dropdown .dropdown-item:focus {
    background: var(--primary-orange);
    color: #fff;
}

.btn-outline-lightblue i {
    color: var(--primary-orange);
}

/* Remove default caret spacing a bit */
.navbar-geevida .dropdown-toggle::after {
    margin-left: 0.2rem;
}

/* blogs page css */
.blogs .hero-section {
    min-height: 400px !important;
    background-color: #E3F5FA !important;
}

.blogs .hero-section .hero-overlay {
    background-color: #FAFDFE !important;
    opacity: 0.75 !important;
}

.blogs .hero-section h1 {
    font-weight: 200 !important;
    font-size: clamp(48px, 5.209vw, 96px) !important;
}

/* Sections */
.recent-post-section {
    padding: 80px 0;
    background: #EFF5FF !important;
}

.recent-post-section .container {
    max-width: 1280px !important;
    margin: 0 auto !important;
}

.recent-post-section .container .row {
    padding: 40px 40px 40px 40px !important;
}

.recent-post-section .section-heading {
    margin-bottom: 24px;
    font-family: "Butler", Sans-serif;
    font-size: 37px;
    font-weight: 500;
    color: #0A3D62 !important;
}


.recent-post-section .carousel-control-prev,
.recent-post-section .carousel-control-next {
    opacity: 1 !important;
}

.recent-post-section .carousel-control-prev .carousel-control-prev-icon {
    background-color: var(--primary-orange);
    border-radius: 50% !important;
    left: -50% !important;
    position: relative;
    background-image: none;
    font-size: 1.4rem;
    font-weight: 900;
}

.recent-post-section .carousel-control-next .carousel-control-next-icon {
    background-color: var(--primary-orange);
    border-radius: 50% !important;
    right: -50% !important;
    position: relative;
    background-image: none;
    font-size: 1.4rem;
    font-weight: 900;
}

.recent-post-section .carousel-control-prev.cardCarousel2 .carousel-control-prev-icon {
    background-color: var(--primary-orange);
    border-radius: 50% !important;
    left: -50% !important;
    top: 50% !important;
    position: relative;
    background-image: none;
    font-size: 1.4rem;
    font-weight: 900;
    height: 45px;
    width: 45px;
    display: grid;
    place-items: center;
}

.recent-post-section .carousel-control-next.cardCarousel2 .carousel-control-next-icon {
    background-color: var(--primary-orange);
    border-radius: 50% !important;
    left: -55% !important;
    top: 50% !important;
    position: relative;
    background-image: none;
    font-size: 1.4rem;
    font-weight: 900;
    height: 45px;
    width: 45px;
    display: grid;
    place-items: center;
}



/* Blog cards */
.post-card {
    background-color: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(15, 40, 90, 0.12);
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.post-thumb {
    position: relative;
    overflow: hidden;
}

.post-thumb img {
    width: 100%;
    height: 210px;
    object-fit: cover;
    display: block;
    transition: transform .5s ease;
}

.post-card:hover .post-thumb img {
    transform: scale(1.04);
}

.post-body {
    padding: 16px 18px 18px;
    font-size: 0.9rem;
}

.post-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.75rem;
    color: #929292 !important;
    margin-bottom: 6px;
}

.meta-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #f0a341;
}

.post-title {
    font-family: 'Butler', san-serif !important;
    color: #303133;
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
    margin-bottom: 1rem;
    transition: all 0.3s;
}

.post-title:hover {
    color: #0A3D62 !important;
}

.post-excerpt {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 1rem;
    color: #625A53 !important;
}

.post-link {
    font-size: 0.8rem;
    font-weight: 600;
    color: #000BEC;
    text-decoration: none;
}

.post-link:hover {
    text-decoration: underline;
}


/* Responsive tweaks */
@media (max-width: 991.98px) {
    .post-thumb img {
        height: 190px;
    }

    .blog-hero {
        padding: 70px 0 40px;
    }

    .contact-us .faq-section .row {
        padding-top: 4rem !important;
    }

    .contact-us .faq-section .accordion-item {
        margin: 1rem 0rem !important;
    }
}

@media (max-width: 767.98px) {
    .blog-hero h1 {
        font-size: 2.2rem;
    }

    .section {
        padding: 40px 0;
    }

    .recent-post-section .carousel-control-prev,
    .recent-post-section .carousel-control-next {
        bottom: 12px;
    }
    
    .recent-post-section .carousel-control-prev {
        top:100%;
        left: 50%;
        transform: translateX(-120%);
    }
    
    .recent-post-section .carousel-control-next {
        top:100%;
        left: 50%;
        transform: translateX(20%);
    }
        
    #cardCarousel2 .carousel-control-prev,
    #cardCarousel2 .carousel-control-next {
        bottom: 12px;
    }
    
    #cardCarousel2 .carousel-control-prev {
        top:100%;
        left: 50%;
        transform: translateX(-120%);
    }
    
    #cardCarousel2 .carousel-control-next {
        top:100%;
        left: 50%;
        transform: translateX(20%);
    }
}

#cardCarousel2 .post-thumb img {
    width: 90% !important;
    margin: 0 auto;
    border-radius: 0.25rem;
    z-index: 1 !important;
}


#cardCarousel2 .carousel-card-body {
    position: relative;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 70%;
    content: "";
    background: #f8f8fe;
    z-index: 0;
    border-radius: 5px;
    -webkit-transition: all 300ms;
    transition: all 300ms;
}

#cardCarousel2 .carousel-card:hover .carousel-card-body {
    box-shadow: 0px 0px 10px 0px rgba(54.12207700499977, 143.98955677860772, 255, 0.5) !important;
}

.button-controls {
    margin-top: 16px;
    display: flex;
    gap: 10px;
    justify-content: flex-start;
}


.button-controls .carousel-control-prev,
.button-controls .carousel-control-next {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
}

.button-controls .carousel-control-prev-icon,
.button-controls .carousel-control-next-icon {
    position: static;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #fcae5b;
    background-image: none;
    color: #fff;
}

.button-controls i {
    font-size: 1.4rem;
}

/* End blogs page css */


/* blogs inner page */
.blogs-inner .hero-section {
    background-color: #E3F5FA !important;
    margin-bottom: 120px;
}

.blogs-inner .hero-section h1 {
    font-weight: 300 !important;
    max-width: 1280px !important;
    font-size: clamp(48px, 4.5vw, 80px) !important;
    color: var(--primary-blue);
}

.blog-inner-headerimg {
    height: 450px;
    border-radius: 20px;
    object-fit: cover;
}

.blog-inner-date {
    color: var(--primary-blue) !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
}

.blogs-inner .hero-content {
    padding: 245px 0px 100px 0px;
}

.post-wrapper {
    max-width: 1180px !important;
    margin: 0 auto;
    border-radius: 16px;
    padding: 0px 36px 36px;
    position: relative;
}

.post-feature {
    text-align: center;
    margin-bottom: 28px;
}

.post-feature img {
    width: 240px;
    height: 240px;
    border-radius: 12px;
    object-fit: cover;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.25);
}

.blogs-inner .post-body {
    width: 800px;
    margin: 0 auto;
    font-size: 0.95rem;
    padding: 1rem 0rem !important;
    line-height: 1.8;
}

.post-body h2 {
    font-family: 'Butler', sans-serif;
    font-size: clamp(2.5rem, 4.014vw, 80px);
    font-weight: 200;
    margin: 54px 0 13.5px;
}

.post-body p {
    font-size: clamp(15px, 1.172vw, 24px);
    font-weight: normal;
    color: #625A53;
    margin-bottom: 1.688rem;
}

.post-body ul {
    margin-bottom: 14px;
    padding-left: 1.1rem;
}

.post-body li {
    font-size: 18px;
    font-weight: normal;
    color: #625A53;
    margin-bottom: 4px;
}

/* Social vertical icons */
.post-social {
    width: auto !important;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.social-dot {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background-color: var(--primary-orange);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    cursor: pointer;
    transition: all 0.3s;
}

.social-dot a i::before{
 color: var(--primary-blue) !important;
}

.social-dot:hover {
    background: var(--primary-blue);
    color: #fff !important;
}

.social-dot:hover a i::before{
 color: #fff !important;
}

/* Author box */
.author-box {
    margin-top: 40px;
    padding: 30px;
    border: 1px solid #EAE6DF;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
    justify-content: space-between;
}

.author-box .vr {
    border: 1px solid #E3E6DF;
    opacity: 0.9;
}

.author-details {
    display: flex;
    gap: 12px;
    align-items: center;
    width: 47.7%;
}

.recent-blogs-inner p {
    font-size: 15px !important;
    font-weight: 600;
}

.recent-blogs-inner a {
    font-size: 15px !important;
    font-weight: 500;
    color: #AD9771;
    text-transform: uppercase !important;
    padding-left: 1rem;
}

.recent-blogs-inner a:hover {
    color: var(--primary-blue);
}

.author-avatar {
    width: 140px;
    height: 140px;
    border-radius: 10px;
    overflow: hidden;
}

.author-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.author-name {
    font-weight: normal;
    color: #625A53 !important;
    font-size: 1rem;
}

.author-role {
    font-size: 1rem;
    font-weight: 500;
    color: #272626;
}

.author-box .content-info:first-child {
    max-width: 150px !important;
    margin-right: auto;
    margin-left: 2rem;
}

.author-box .content-info:nth-child(2) {
    max-width: 150px !important;
    margin-left: auto;
    margin-right: 2rem;
}

/* Related posts */
.related-section {
    padding: 80px 0 80px;
    background-color: transparent;
}

.related-section h3 {
    font-size: 46px;
    font-family: 'Butler', serif;
    font-weight: 200;
    color: #272626
}

.related-card {
    background-color: transparent !important;
    border-radius: 15px;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.related-card img {
    width: 100%;
    height: 515px;
    object-fit: cover;
    border-radius: 15px;
}

.related-body {
    padding: 14px 0px 16px;
    font-size: 0.85rem;
}

.related-title {
    font-size: 0.95rem;
    color: #AD9771 !important;
    font-weight: 500;
    margin-bottom: 4px;
    display: flex;
    justify-content: flex-start;
    gap: 0.5rem !important;
    transition: all 0.3s ease-in-out;
}

.related-title span:hover {
    color: var(--primary-blue) !important;
}

.related-meta {
    font-size: 0.75rem;
    color: #9aa2b4;
    margin-bottom: 6px;
}

.related-body h5 {
    color: #272626;
    font-size: 20px;
    padding: 0.5rem 0rem;
    line-height: 1.5;
    transition: all 0.3s ease-in;
}

.related-body h5:hover {
    color: #AD9771;
}

.related-link {
    font-size: 15px;
    font-weight: 500;
    color: #272626;
    text-decoration: none;
    transition: all 0.3s ease-in;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
}

.related-link:hover {
    color: #AD9771;
}

.related-link i {
    color: #AD9771;
    font-size: 1.6rem;
}


/* Responsive tweaks */
@media (max-width: 991.98px) {
    .post-wrapper {
        padding: 30px 22px 30px;
    }

    .post-social {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        margin-left: 0;
        padding: 0;
    }

    .blogs-inner .hero-content {
        padding: 100px 16px 100px 16px;
    }

    .blogs-inner .hero-section {
        margin-bottom: 0px;
    }
}

@media (max-width: 767.98px) {
    .post-hero {
        padding-top: 72px;
    }

    .post-wrapper {
        margin-top: 10px;
    }

    .post-feature img {
        width: 200px;
        height: 200px;
    }

    .author-details {
        width: 100%;
        border: 1px solid #E3E6DF;
        border-radius: 1rem;
        justify-content: center;
        align-items: center;
        text-align: center;
    }

    .author-box .vr {
        display: none;
    }
}

/* End blogs inner page */

/* contact-us page css */
.contact-us .hero-section {
    min-height: 400px !important;
    background-color: #FAFDFE !important;
}

.contact-us .hero-section h1 {
    font-weight: 200 !important;
    font-size: clamp(48px, 5.209vw, 96px) !important;
}

.contact-info-section {
    max-width: 1280px !important;
    margin: 0 auto;
    background-color: #FAFDFE !important;
    padding: 0.2rem 0 0 0;
    margin-bottom: 0 !important;
}

.contact-info-card {
    background-color: #ffffff;
    border-radius: 20px;
    box-shadow: 0px 0px 3px 1px #F0944D;
    padding: 40px;
    height: 100%;
    text-align: left;
    font-size: 16px;
    color: #0A3D62;
}

.contact-info-card .county {
    font-size: 18px;
    font-family: 'DM Sans', sans-serif;
}

.contact-info-card .icon-container {
    text-align: center !important;
    color: var(--primary-orange);
    font-size: 30px;
}

.contact-info-card .spacer {
    min-height: 50px;
}

.contact-info-card h6 {
    font-size: 20px !important;
    font-weight: 800;
    text-align: center;
    letter-spacing: 0.05em;
    margin-bottom: 1rem;
    color: #0A3D62;
}

/* Orange form card */

.orange-form-section {
    max-width: 1280px;
    margin: 0 auto;
    padding: 100px 0px;
}

.contact-card {
    background-color: var(--primary-orange);
    border-radius: 20px;
    color: #fff;
    max-width: 900px;
    margin: 40px auto 50px;
    min-height: 680px;
    padding: 10px 0px 20px 0px !important;
    display: grid;
    place-items: center;
}

.orange-form {
    max-width: 80%;
    width: 100%;
    margin: 0 auto;
}

.contact-card img {
    width: 60% !important;
}

.contact-card h2 {
    color: #fff;
    margin-bottom: 8px;
}

.contact-card .subtitle {
    font-size: 1.05rem;
    margin-bottom: 24px;
}

.contact-card .form-control {
    border-radius: 999px;
    border: none;
    font-size: 0.9rem;
    padding-inline: 18px;
    height: 54px;
    border: 1px solid var(--primary-blue);
}

.contact-card textarea.form-control {
    border-radius: 999px;
    height: 70px;
    resize: none;
    padding-top: 10px;
}

.contact-card .form-control:focus {
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.8);
}

.contact-card .btn-send {
    border-radius: 999px;
    padding: 8px 28px;
    font-weight: 600;
    border: none;
    background-color: #1B3052;
    color: #fff;
}

.contact-card .btn-send:hover {
    background-color: #102848;
}

.contact-us .faq-section {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0px 0px 100px;
}

.contact-us .faq-section .row .col-lg-12 {
    max-width: 80%;
    margin: 0 auto;
}


/* Responsive tweaks */
@media (max-width: 991.98px) {
    .contact-card {
        margin-inline: 0;
    }
}

/* End contact-us page css */

/* blog tags page */
.blog-tags .hero-section {
    min-height: 552px !important;
    background-color: #E3F5FA !important;
    background-image: linear-gradient(120deg, #fBf9E9 0%, #E3F5FA 100%);
}

.blog-tags .hero-section h1 {
    font-weight: 100 !important;
    font-size: clamp(48px, 5.209vw, 96px) !important;
    color: #272626;
}

.blog-tags .hero-section .blog-inner-crumbs .back-to-home {
    color: #AD9771;
    padding-right: 1rem;
}

.blog-tags .hero-section .blog-inner-crumbs {
    color: #EAE6DF;
}

.blog-tags .hero-section .blog-inner-crumbs .destination {
    color: #625A53;
    padding-left: 1rem;
}

.blog-tags-based-section {
    max-width: 1280px;
    margin: 0 auto;
    padding: 80px 16px 60px;
}

.blog-tags-based-section .post-row {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
    margin-bottom: 40px;
    align-items: flex-start;
}

.blog-tags-based-section .post-image {
    flex: 0 0 300px;
    max-width: 300px;
    border-radius: 18px;
    overflow: hidden;
}

.blog-tags-based-section .post-image img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    display: block;
}

.blog-tags-based-section .post-content {
    flex: 1 1 0;
    min-width: 300px;
    padding-top: 10px;
}

.blog-tags-based-section .post-category {
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    transition: all 0.3s ease;
    margin-bottom: 1.25rem;
    color: #AD9771;
}

.blog-tags-based-section .post-category:hover {
    color: #F0944D;
}

.blog-tags-based-section .post-title {
    font-size: 2rem;
    font-family: 'butler', serif;
    font-weight: normal;
    margin-bottom: 1.5rem;
    transition: all 0.3s ease;
    color: #272626;
}

.blog-tags-based-section .post-title:hover {
    color: #AD9771 !important;
}

.blog-tags-based-section .post-excerpt {
    font-size: 18px;
    font-weight: normal !important;
    margin-bottom: 1.5rem;
    color: #625A53;
    max-width: 640px;
}

.blog-tags-based-section .post-meta {
    font-size: 15px;
    color: #625A53 !important;
}

.blog-tags-based-section .post-meta span.author {
    font-weight: 600;
    font-size: 1rem !important;
    color: #272626;
}

/* spacing between rows on small screens */
@media (max-width: 767.98px) {
    .blog-tags-based-section {
        padding-top: 72px;
    }

    .blog-tags-based-section .post-row {
        flex-direction: column;
        gap: 18px;
        margin-bottom: 32px;
    }

    .blog-tags-based-section .post-image {
        margin: 0 auto;
    }

    .blog-tags-based-section .post-image img {
        height: 220px;
        border-radius: 1.5rem;
    }
}

/* End blog tags page */

/* login Page */
.login .hero-section,
.checkout .hero-section {
    min-height: 450px !important;
    background-color: #FAFDFE !important;
}

.cart .hero-section {
    min-height: 400px !important;
    background-color: #FAFDFE !important;
}

.login .hero-section h1,
.checkout .hero-section h1,
.cart .hero-section h1 {
    font-weight: 100 !important;
    font-size: clamp(48px, 5.209vw, 96px) !important;
    color: #1B4C9C;
}


/* Cards row */

.login-row {
    background-color: #FAFDFE !important;
    padding-bottom: 100px;
    max-width: 1280px;
    margin: 0 auto;
}

.login-row .row {
    display: flex;
    flex-direction: row;
    gap: 0px 100px;
    row-gap: 0px;
    column-gap: 100px;
    justify-content: center;
}

.login-row .col-md-6 {
    padding: 0 !important;
}

.card-base {
    background-color: #ffffff;
    border-radius: 18px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    padding: 50px;
    border: 2px solid var(--primary-orange);
    height: 100%;
    min-height: 700px;
    max-width: 590px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.btn-get-started {
    border-radius: 999px;
    padding: 12px 24px;
    background-color: var(--accent-blue);
    color: #fff;
    border: none;
    font-size: 15px;
    font-weight: 300;
    text-transform: uppercase;
}

.new-patient-card p {
    font-size: 1rem;
    color: #625A53 !important;
}

.btn-get-started:hover {
    background-color: var(--primary-orange);
}

/* Login card */
.login-outer {
    background-color: var(--primary-orange);
    border-radius: 20px;
    padding: 20px 30px;
    height: 100%;
    display: flex;
    align-items: center;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    min-height: 700px;
    max-width: 590px;
}

.login-inner {
    background-color: #ffffff;
    border-radius: 12px;
    padding: 28px 30px 26px;
    width: 100%;
    font-size: 0.9rem;
}

.login-inner h3 {
    font-size: 2rem;
    margin-bottom: 1rem;
    text-align: center;
    color: #1f1f1f;
}

.login-inner p.small-text {
    font-size: 14px;
    color: #333333;
    text-align: center;
    margin-bottom: 30px;
}

.login-inner .form-label {
    font-size: 14px;
    color: #272626;
    margin-bottom: 0.5rem;
}

.login-inner .form-control {
    border-radius: 0;
    border-color: #cdd7e6;
    font-size: 0.85rem;
    height: 36px;
}

.login-inner .form-control:focus {
    box-shadow: 0 0 0 2px rgba(0, 102, 194, 0.2);
}

.login-inner .form-check-label {
    font-size: 14px;
    color: #272626;
}

.login-inner .link-small {
    font-size: 14px;
    color: #475BB2;
    text-decoration: none;
}

.login-inner .link-small:hover {
    text-decoration: underline;
}

.btn-login {
    border-radius: 4px;
    padding: 10px 24px;
    font-size: 15px;
    line-height: 25px;
    font-weight: 500;
    letter-spacing: 0.5px;
    background: #38488e;
    border-color: #38488e;
    color: #fff;
    border: none;
}

.btn-login:hover {
    background-color: var(--primary-blue);
    color: #fff;
}

.login-inner .not-member {
    font-size: 18px;
    color: #475BB2;
    text-align: center;
    margin-top: 1rem;
}

.login-inner .link-small2 {
    font-size: 18px;
    color: #475BB2;
    text-decoration: none;
}

.login-inner .link-small2:hover {
    text-decoration: underline;
}

/* Responsive */
@media (max-width: 991.98px) {
    .page-hero {
        padding-top: 80px;
    }

    .card-base,
    .login-outer {
        margin-bottom: 24px;
    }
}

/* End login Page */

/*  signup page */


/* Signup card */
.signup-wrapper {
    padding: 200px 0 100px;
}

.signup-wrapper .container {
    padding: 80px 0px 0px 0px;
    max-width: 1280px;
    margin: 0 auto;
}

.signup-card {
    background-color: var(--primary-orange);
    border-radius: 30px;
    padding: 50px;
    max-width: 640px;
    margin: 0 auto;
    color: #fff;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
}

.red {
    color: #FF4F55;
}

.signup-card .heading-holder .section-title-small {
    font-size: clamp(24px, 2.35vw, 48px) !important;
}

.signup-card .heading-holder .section-title-main {
    font-size: clamp(24px, 3.91vw, 72px) !important;
}


.signup-inner {
    box-shadow: 0px 4px 16px 0px rgba(17, 17, 26, 0.05), 0px 8px 32px 0px rgba(17, 17, 26, 0.05);
    border-radius: 12px;
    padding: 60px;
    background-color: #ffffff;
}

.signup-heading {
    margin-bottom: 22px;
}

.signup-heading .label {
    font-size: 1rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.signup-heading h2 {
    font-size: 2.1rem;
    margin: 6px 0 0;
    color: #fff;
}

.signup-card .form-label {
    margin-top: 0;
    margin-bottom: 12px;
    color: #222;
    font-size: 15px;
    font-weight: 500;
    line-height: 19px;
}

.signup-card .form-control {
    border-radius: 4px;
    border: none;
    height: 38px;
    max-height: 38px;
    font-size: 14px;
    line-height: 20px;
    padding: 0 14px;
}
.signup-card .select2-container, .signup-card .select2-container .select2-selection, .signup-card .select2-container .select2-selection .select2-selection__rendered {
    border-radius: 4px;
    min-height: 38px;
    font-size: 14px;
    line-height: 38px;
}

.signup-card .form-control:focus {
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.7);
}

.signup-card .form-check-label {
    font-size: 15px;
    color: #222;
}

/* Responsive tweaks */
@media (max-width: 991.98px) {
    .signup-wrapper {
        padding-top: 80px;
    }
}

@media (max-width: 767.98px) {
    .signup-card {
        padding-inline: 20px;
    }
}

/*  End signup page */

/* forgot password page */
/* Reset card */
.reset-wrapper {
    padding: 130px 20px;
    max-width: 1280px;
    margin: 0 auto;
}

.reset-wrapper .container {
    padding: 40px 16px;
    display: grid;
    justify-content: start;
}

.reset-card {
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0px 4px 16px 0px rgba(17, 17, 26, 0.05), 0px 8px 32px 0px rgba(17, 17, 26, 0.05);
    padding: 60px;
    max-width: 520px;
    margin: 0 auto;
}

.reset-card h2 {
    font-size: 2rem;
    margin-bottom: 1rem;
    color: #333;
}

.reset-card p.lead-text {
    font-size: 14px;
    color: #333;
    margin-bottom: 1.5rem;
}

.reset-card .form-label {
    font-size: 14px;
    color: #272626;
    margin-bottom: 1rem;
}

.reset-card .form-control {
    border-radius: 0;
    height: 38px;
    font-size: 14px;
    border-color: #cfd6e4;
}

.reset-card .form-control:focus {
    box-shadow: 0 0 0 2px rgba(0, 102, 194, 0.2);
}

.btn-reset {
    border-radius: 4px;
    width: 100%;
    padding: 10px 24px;
    font-size: 15px;
    line-height: 25px;
    font-weight: 600;
    background: #38488e;
    border-color: #38488e;
    color: #fff;
    border: none;
}

.btn-reset:hover {
    background-color: var(--primary-blue);
    color: #fff;
}

/* Responsiveness */
@media (max-width: 991.98px) {
    .reset-wrapper {
        padding-top: 80px;
    }
}

@media (max-width: 767.98px) {


    .reset-card {
        padding-inline: 22px;
    }

}

/* End forgot password page */

/* make an appointment section */
.appointment .hero-section {
    min-height: 400px !important;
    background-color: #FAFDFE !important;
}

.appointment .hero-section h1 {
    font-weight: 100 !important;
    font-size: clamp(48px, 5.209vw, 96px) !important;
    color: #1B4C9C;
}

/* Pricing cards */
.pricing-section {
    max-width: 1280px;
    margin: 0 auto;
    padding-bottom: 60px;
}

.plan-card {
    background-color: #f9fafa;
    border-radius: 20px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
    overflow: hidden;
    text-align: center;
    padding: 26px 26px 24px;
    height: 100%;
}


.plan-footer {
    padding: 10px 0px;
}

.plan-card .btn.btn-orange-pill {
    font-size: 15px !important;
    font-weight: 200;
}

.plan-header {
    background-color: var(--primary-orange);
    color: #fff;
    padding: 10px 30px;
    margin: -26px -26px 18px;
}

.plan-name {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 0.12em;
}

.plan-subtitle {
    font-size: 13px;
}

.plan-price-container {
    padding: 40px 0px;
}

.plan-price {
    font-size: 65px;
    font-weight: 700;
    color: #1B4c9C;
    line-height: 1;
    margin-bottom: 0;
}

.plan-price span.currency {
    font-size: 1.219rem;
    vertical-align: top;
    top: 10px;
    position: relative;
    margin-right: 2px;

}

.plan-period {
    font-size: 1rem;
    color: #1B4c9C;
    margin-bottom: 14px;
    font-weight: 500;
}

.plan-features {
    list-style: none;
    padding-left: 0;
    font-size: 14px;
    line-height: 1.5;
    color: #625A53;
    margin-bottom: 16px;
}

.plan-features li+li {
    margin-top: 3px;
}


.plan-card.selected {
    box-shadow: 0 22px 55px rgba(15, 40, 90, 0.3);
    transform: translateY(-4px);
}

/* Selected summary bar */
.selected-bar {
    text-align: center;
    font-size: 18px;
    margin: 24px 0 24px;
    color: #1B4C9C;
    transition: all 0.3s ease-in-out;
}

.selected-bar:hover {
    color: var(--primary-orange);
}

.selected-bar:hover span.dot {
    color: var(--primary-orange);
}


.selected-bar span.dot {
    display: inline-block;
    color: #1B4C9C;
    padding: 0;
    margin: 0;
    margin-right: 6px;
    font-size: 18px;
}

.next-step-btn {
    display: inline-block;
    border-radius: 999px;
    padding: 12px 24px;
    font-size: 0.85rem;
    font-weight: 600;
    background-color: #1B4C9C;
    ;
    color: #fff;
    border: none;
}

.next-step-btn:hover {
    background-color: #12346a;
}

.buy-later-text {
    font-size: 15px;
    text-align: center;
    margin-top: 1rem;
    color: #1B4C9C;
    ;
}

.buy-later-text:hover {
    text-decoration: underline;
}

/* Responsive */
@media (max-width: 991.98px) {
    .appointment .hero-section {
        padding-top: 80px;
    }
}

@media (max-width: 767.98px) {
    .plan-card {
        margin-bottom: 16px;
    }
}

/* End make an appointment section */

/* choose service page */
.choose-service .hero-section {
    min-height: 400px;
    background-color: #FAFDFE !important;
}

.choose-service .hero-section h1 {
    font-weight: 100 !important;
    font-size: clamp(48px, 5.209vw, 96px) !important;
    color: #1B4C9C;
}

/* Orange form card */
.choose-services-section {
    padding-bottom: 100px;
}

.choose-services-card {
    background-color: var(--primary-orange);
    border-radius: 20px;
    padding: 50px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.22);
    max-width: 896px;
    margin: 0 auto;
    color: #fff;
}

.choose-service-card form {
    max-width: 780px;
    margin: 0 auto;
}

.choose-services-card .form-label {
    font-size: 0.8rem;
    color: #fff;
    margin-bottom: 4px;
}

.choose-services-card .form-select,
.choose-services-card .form-control {
    border: none;
    padding: 13px 19px !important;
    font-size: 1rem !important;
    min-height: 54px;
    color: #625A53;
}



.choose-services-card textarea.form-control {
    min-height: 130px;
    resize: vertical;
    font-size: 1rem !important;
    color: #625A53;
}

.choose-services-card .form-select:focus,
.choose-services-card .form-control:focus {
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.7);
}

.dropzone {
    background-color: #fafafa;
    border: 1px dashed #625a53;
    padding: 30px;
    text-align: center;
    font-size: 1rem;
    color: #625a53;
    margin-top: 16px;
    margin-bottom: 6px;
}

.dropzone i {
    font-size: 30px;
    color: #625a53 !important;
}

.dropzone strong {
    color: var(--accent-blue);
    text-decoration: underline;
    cursor: pointer;
}

.supporting-text {
    font-size: 1rem;
    color: #1B3052;
    margin: 1.5rem 0px;
}

.btn-submit {
    border-radius: 999px;
    padding: 15px 30px;
    font-size: 15px;
    font-weight: 600;
    border: none;
    transition: all 0.3s ease-in;
    background-color: #1B4C9C;
    color: #fff;
}

.btn-submit:hover {
    background-color: #FFF;
    color: #1B4C9C;
}

.btn-back {
    border-radius: 999px;
    padding: 15px 30px;
    font-size: 15px;
    font-weight: 600;
    border: none;
    background-color: #1B4C9C;
    color: #fff;
}

.btn-back:hover {
    background-color: #12346a;
}


/* Responsive */
@media (max-width: 991.98px) {
    .page-hero {
        padding-top: 80px;
    }
}

@media (max-width: 767.98px) {

    .choose-services-card {
        padding-inline: 18px;
    }

}

/* End choose service page */

/* checkout page */
/* Cart notice */
.cart-bar {
    border-top: 2px solid var(--primary-blue);
    background-color: #ffffff;
    padding: 16px;
    font-size: 19px;
    color: #625A58;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem !important;
    max-width: 1280px;
    margin: 0 auto;
}

.cart-bar i {
    color: var(--primary-blue);
    font-size: 19px;
}

.returning-toggle {
    color: var(--primary-orange);
    font-weight: 500;
    transition: all 0.3s ease-in-out;
}

.returning-body .remember-me {
    font-size: 1rem;
    color: #69727D;
    margin-bottom: 0 !important;
}

.returning-body .small {
    font-weight: 500;
    color: var(--primary-orange) !important;
    margin-bottom: 0 !important;
}

.returning-toggle.expanded {
    color: var(--accent-blue);
    font-weight: 500;
}

.cart-bar .btn-view-cart {
    background-color: var(--primary-orange);
    color: var(--primary-blue);
    font-family: 'DM Sans', sans-serif;
    border-radius: 4px;
    border: none;
    padding: 16px 24px;
    font-size: 19px;
    font-weight: 800 !important;
    transition: all 0.3s ease-in-out;
}

.cart-bar .btn-view-cart:hover {
    background-color: var(--primary-blue);
    color: #fff !important;
}

/* Checkout */
.checkout-section {
    max-width: 1280px !important;
    margin: 0 auto;
    padding-bottom: 80px;
    background: #FAFDFE !important;
}

.checkout-label {
    font-size: 14px;
    letter-spacing: 0.08em;
    color: #69727D;
    margin-bottom: 4px;
}

.checkout-box h6 {
    font-size: 25px;
    font-family: 'Butler', serif;
    margin-bottom: 30px !important;
    color: #1B3052;
    text-transform: uppercase;
}

.checkout .form-label {
    font-size: 1rem;
    color: #69727D;
}

.checkout .form-control,
.checkout .form-select {
    border-radius: 16px;
    color: var(--forms-fields-normal-color, #69727d);
    font-size: 14px;
    font-weight: 400;
    border: none;
    padding: 16px;
    background: #F9FAFA !important;
    height: 55px;
}

.checkout .form-control:focus,
.checkout .form-select:focus {
    box-shadow: 0 0 0 2px rgba(23, 60, 107, 0.2);
}

.field-note {
    font-size: 0.75rem;
    margin: 24px 0 !important;
    color: #69727D;
}

.field-note a {
    color: var(--primary-orange);
    font-weight: 500;
}

.checkout-box {
    background-color: #ffffff;
    border-radius: 4px;
    border: 1px solid #d5d8dc;
    padding: 16px 30px;
    margin-bottom: 18px;
}

.order-title {
    font-size: 25px;
    font-family: 'Butler', san-serif;
    letter-spacing: -1px;
    text-transform: uppercase;
    color: #1B3052;
    font-weight: 700;
    margin-bottom: 30px;
}

.order-summary h5 {
    font-size: 1.1rem;
    margin-bottom: 6px;
}

.order-row {
    font-size: 18px;
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px;
    color: #69727D !important;
}

.order-row .dark-text {
    font-size: clamp(24px, 2vw, 40px);
    font-family: 'Butler', sans-serif;
    color: #272626;
    margin-bottom: 0;
}

.order-row .orange-text {
    font-size: clamp(24px, 2vw, 40px);
    font-family: 'Butler', sans-serif;
    color: var(--primary-orange);
}

.order-row .header {
    color: #69727D !important;
    font-weight: 600;
    font-size: 18px;
}

.order-row.order-total {
    font-weight: 700;
    margin-top: 8px;
}

.coupon-input {
    font-size: 1rem;
    color: #69727D !important;
}

.coupon-input a {
    color: var(--primary-orange);
    /* orange */
    font-weight: 600;
    font-size: 1rem;
}

.coupon-input a.expanded {
    color: var(--accent-blue);
    /* blue when open */
}

.coupon-input .form-control {
    border-radius: 0;
    border-radius: 4px;
    padding: 16px;
    font-size: 1rem;
}

.notice-box {
    border-radius: 4px;
    font-size: 14px;
    color: #625A53;
    margin-bottom: 54px;
}

.btn-subscribe {
    width: 100%;
    border-radius: 999px;
    padding: 15px;
    font-size: 15px;
    font-weight: 600;
    border: none;
    background-color: var(--primary-orange);
    color: #fAFDFE;
    transition: all 0.3s ease-in-out;
}

.btn-subscribe:hover {
    background-color: var(--primary-blue);
    color: #fAFDFE;
}

.order-notes-area {
    border-radius: 4px;
    color: #69727d !important;
    font-size: 14px !important;
    border-color: #d5d8dc;
}



@media (max-width: 991.98px) {

    .checkout .hero-section,
    .cart .hero-section {
        padding-top: 80px;
    }
}

@media (max-width: 767.98px) {

    .cart-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }

    .checkout-section {
        padding-inline: 12px;
    }
}

/* End checkout page */

/* cart page */
/* Cart table */
.cart-section {
    padding-bottom: 100px;
}

.cart-section .container {
    max-width: 1280px;
    margin: 0 auto !important;
}

.cart-table-wrapper {
    background-color: #ffffff;
    border-radius: 4px;
    border: 1px solid #D5D8DC;
    padding: 16px 13px;
}

.cart-table th {
    font-size: 1rem;
    letter-spacing: 0.08em;
    color: #272626;
    border: none;
}

.cart-table td {
    vertical-align: middle;
    font-size: 1rem;
    border-bottom: none !important;
}

.cart-product-name {
    font-size: 1rem;
    font-weight: 500;
}


.product-thumb {
    width: 60px;
    height: 60px;
    border-radius: 4px;
    background-color: #f3f5fb;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Coupon row */
.coupon-row {
    background-color: #ffffff;
    border-radius: 4px;
    border: 1px solid #d5d8dc;
    padding: 10px 14px;
    margin-top: 14px;
}

.coupon-row .form-control {
    border-radius: 20px;
    border: none;
    background-color: #f9FAFA !important;
    padding: 10px 30px;
    font-size: 1rem;
    height: 48px;
    color: rgba(105, 115, 125) !important;
}



/* Cart totals */
.cart-totals {
    background-color: #ffffff;
    border-radius: 4px;
    border: 1px solid #d5d8dc;
    padding: 16px 30px;
    font-size: 0.9rem;
}

.cart-totals h6 {
    font-size: 1rem;
    letter-spacing: 0.08em;
    color: #1B3052;
    margin-bottom: 18px;
}

.totals-row {
    display: flex;
    justify-content: space-between;
    padding: 8px 1px;
    font-size: 18px;
    font-weight: 700;
    color: #69727d !important;
}

.totals-row:last-child {
    border-bottom: none;
    font-weight: 600;
}

.coupon-row .btn.btn-subscribe {
    padding: 10px 30px !important;
}

.cart-totals .btn.btn-subscribe {
    margin-top: 2rem !important;
    padding: 10px 30px !important;
}



@media (max-width: 991.98px) {
    .page-hero {
        padding-top: 80px;
    }
}

@media (max-width: 767.98px) {
    .cart-section {
        padding-inline: 12px;
    }

    .totals-row {
        font-size: 0.86rem;
    }

}

.nav-action-btn .text-primary,
.nav-action-btn .text-secondary {
    text-transform: uppercase;
    font-size: 0.9rem !important;
    white-space: nowrap;
}

/* End cart page */

/* contribution page */
/* Contribution card */
.contribute-section {
    max-width: 1280px;
    margin: 0 auto;
    padding: 240px 0px 100px 0px;
}

.contribute-card {
    background-color: #fff;
    border-radius: 16px;
    border: 1px solid var(--primary-orange);
    max-width: 900px;
    margin: 0 auto;
    padding: 50px 50px;
    text-align: center;
    font-size: 18px !important;
}

.contribute-title {
    font-size: 25px;
    font-weight: 700;
    color: #1B4C9C;
    margin-bottom: 1.25rem;
}

.contribute-text {
    font-size: 18px;
    color: #333;
    max-width: 715px;
    margin: 0 auto;
}

.amount-buttons .btn-amount {
    border-radius: 4px;
    border: 1px solid var(--primary-orange);
    background-color: #FFFFFF;
    color: var(--primary-orange);
    font-weight: 600;
    font-size: 1rem;
    padding: 8px 16px;
    min-width: 130px;
}

.amount-buttons .btn-amount.active {
    background-color: var(--primary-orange);
    color: #fff;
    border-color: var(--primary-orange);
}

.contribute-card .form-label {
    width: 100% !important;
    text-align: left;
    font-size: 1rem;
}

.contribute-card .form-control {
    border-radius: 4px;
    padding: 16px 24px !important;
    border-color: var(--primary-orange);
    background-color: #fff !important;
    font-size: 1rem;
    height: 40px;
}

.payment-row {
    font-size: 0.82rem;
    text-align: left;
    margin-top: 12px;
}

.payment-row img {
    height: 24px;
}

.powered-by {
    font-size: 0.72rem;
    text-align: right;
    margin-top: 4px;
    color: #9ca3b2;
}

/* base wrapper */
.custom-check {
    position: relative;
    padding-left: 2rem;
    /* space for custom box */
    cursor: pointer;
}

/* hide default box but keep it accessible */
.custom-check .form-check-input {
    position: absolute;
    opacity: 0;
    left: 0;
    top: 0.2rem;
    width: 1rem;
    height: 1rem;
    margin: 0;
    z-index: 1;
}

/* custom box */
.custom-check .form-check-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.2rem;
    width: 1rem;
    height: 1rem;
    border-radius: 0.25rem;
    border: 1px solid var(--primary-orange);
    /* border color */
    background-color: #fff;
    transition: all 0.2s ease;
}

/* checkmark */
.custom-check .form-check-label::after {
    content: "";
    position: absolute;
    left: 0.25rem;
    top: 0.45rem;
    width: 0.45rem;
    height: 0.25rem;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg) scale(0);
    transform-origin: center;
    transition: transform 0.2s ease;
}

/* checked state */
.custom-check .form-check-input:checked+.form-check-label::before {
    background-color: var(--primary-orange);
    /* fill color */
    border-color: var(--primary-orange);
}

/* show checkmark when checked */
.custom-check .form-check-input:checked+.form-check-label::after {
    transform: rotate(-45deg) scale(1);
}

/* focus ring */
.custom-check .form-check-input:focus+.form-check-label::before {
    box-shadow: 0 0 0 0.2rem rgba(248, 154, 60, 0.35);
}

/* disabled */
.custom-check .form-check-input:disabled+.form-check-label {
    opacity: 0.6;
    cursor: default;
}

/* End contribution page */

/* patient profile page */
.patient-profile .hero-section,
.doctor-profile .hero-section,
.my-profile .hero-section {
    min-height: 450px;
    background-color: #FAFDFE !important;
}

.patient-profile .hero-section h1,
.doctor-profile .hero-section h1,
.my-profile .hero-section h1 {
    font-weight: 200 !important;
    font-size: clamp(48px, 5.209vw, 96px) !important;
}

/* Account layout */
.account-wrapper {
    background-color: #FAFDFE !important;
    max-width: 1280px;
    margin: 0 auto;
    padding-bottom: 100px;
}

.account-card {
    background-color: #FAFDFE;
    border-radius: 6px;
    padding: 2rem;
}

/* Sidebar */

.account-menu {
    list-style: none;
    padding-left: 0;
    margin-bottom: 2rem;
    font-size: 1rem;
}

.account-menu li {
    padding: 0.45rem 0.75rem;
    cursor: pointer;
    color: #555;
}

.account-menu li.active {
    background-color: var(--primary-orange);
    color: #fff;
    border-radius: 999px;
    font-weight: 500;
}

.membership-box {
    border: 2px solid #004c99;
    border-radius: 2px;
    color: #fff !important;
    margin-bottom: 0.6rem;
    font-size: 1rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between !important;
    min-height: 160px;
}

.btn-membership {
    border-radius: 2px;
    color: #fff !important;
    font-size: 1rem;
    text-align: center;
    background-color: #1B4C9C;
    transition: all 0.3s ease-in-out;
}

.btn-membership:hover {
    color: #fff !important;
    background-color: var(--primary-orange);
}

.btn-cancel-membership {
    width: 100%;
    border-radius: 999px;
    border: 2px solid #1B4C9C;
    background-color: #1B4C9C;
    color: #fff;
    font-size: 1rem;
    padding: 0.5rem 0.75rem;
    max-width: 80%;
    margin-bottom: 1rem;
    transition: all 0.3s ease-in-out;
}

.btn-cancel-membership:hover, .btn-cancel-membership:focus, .btn-cancel-membership:active, .btn-cancel-membership.active {
    background-color: var(--primary-orange);
    color: #ffffff;
}

/* Profile form */
.profile-title {
    font-size: 25px;
    font-weight: 800;
    margin-bottom: 1.25rem;
    color: var(--primary-orange);
}

.form-label {
    font-size: 1rem;
    color: #333;
    font-weight: 500;
    margin-bottom: 0.25rem;
}

.form-control,
.form-select {
    font-size: 1rem;
    border-radius: 2px;
    color: #495057;
    border: 1px solid #CED4DA !important;
}

.form-control i:before,
.form-select i:before {
    font-size: 1rem;
    border-radius: 2px;
    color: #495057;
    border: 1px solid #CED4DA !important;
}

.btn-update {
    background-color: var(--primary-orange);
    color: #fff;
    border: none;
    border-radius: 20px;
    padding: 0.4rem 1.8rem;
    font-size: 1rem;
    margin-top: 1rem;
    transition: all 0.3s ease-in;
}

.btn-update:hover {
    background-color: #1B4C9C;
    color: #fff;
}


@media (max-width: 991.98px) {
    .account-card {
        padding: 1.5rem;
    }

    .account-sidebar {
        border-right: none;
        border-bottom: 1px solid #f0f0f0;
        margin-bottom: 1.5rem;
        padding-bottom: 1.5rem;
    }
}

/* Upload Files section */
.upload-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #f58634;
    margin-bottom: 1.5rem;
}

.new-folder-card {
    border: 1px solid #e4e4e4;
    border-radius: 4px;
    padding: 2rem;
    max-width: 180px;
    text-align: center;
    background: #fff;
    cursor: pointer;
    transition: all .2s ease;
}

.new-folder-card:hover {
    box-shadow: 0 0 8px rgba(0, 0, 0, .08);
    transform: translateY(-1px);
}

.new-folder-plus {
    font-size: 2.2rem;
    color: var(--primary-orange);
    line-height: 1;
    margin-bottom: .4rem;
}

.folder-badge {
    display: inline-flex;
    align-items: center;
    padding: 1rem;
    border-radius: 4px;
    border: 1px solid #e0e0e0;
    margin: .35rem;
    font-size: 1rem;
    cursor: pointer;
    background: #fff;
    transition: background .15s ease;
}

.folder-badge:hover {
    background: #f0f7ff;
}

.folder-icon {
    margin-right: .35rem;
    color: var(--primary-orange);
}

/* File table */
.file-table-wrapper {
    margin-top: 2rem;
    display: none;
    /* shown when folder clicked */
    border: none !important;
}

.table thead th {
    background: #FAFAFA;
    font-size: .85rem;
}

.table td {
    font-size: .85rem;
    vertical-align: middle;
    border: 1px solid #f0f7ff !important;
}

#newFolderForm .modal-body {
    padding: 1rem 1rem !important;
}

#newFolderForm .modal-header {
    color: #1B4C9C;
}

#newFolderForm .btn.btn-primary {
    background-color: var(--primary-orange);
    transition: 0.3s all ease-in;
    border-radius: 999px !important;
    border: none !important;
}

#newFolderForm .btn.btn-primary:hover {
    background-color: #1B4C9C;
    border-radius: 999px !important;
}

#newFolderForm .btn.btn-secondary {
    background-color: var(--primary-blue);
    transition: 0.3s all ease-in;
    border-radius: 999px !important;
    border: none !important;
}

@media (max-width:991.98px) {
    .account-sidebar {
        border-right: none;
        border-bottom: 1px solid #f0f0f0;
        margin-bottom: 1.5rem;
        padding-bottom: 1.5rem;
    }

    .account-card {
        padding: 1.5rem;
    }

    .heading-holder.about-us {
        margin:0 auto 2rem !important;
    }

    .what-inner .container .row {
    padding: 16px 0px 0px 0px !important;
}
    .cw-heading {
        line-height: 1.2;
    }

    .about-padding .row {
        align-items: flex-start !important;  
    }
}

.gv-search-box {
    max-width: 220px;
    position: relative;
}

.gv-search-box input {
    font-size: 0.85rem;
    padding-right: 2rem;
}

.gv-search-box .icon {
    position: absolute;
    right: 0.6rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.85rem;
    color: #999;
}

.text-primary {
    color: var(--primary-orange) !important;
    text-decoration: none !important;
}

.text-secondary {
    color: #004c99 !important;
    text-decoration: none !important;
}

/* Filters row */
.gv-filter-label {
    font-size: 1rem;
    color: #333333;
    margin-bottom: 0.5rem;
}

.gv-filter-select,
.gv-filter-input {
    font-size: 0.85rem;
}

.gv-input-icon-wrap {
    position: relative;
}

.gv-input-icon-wrap input {
    padding-right: 2rem;
}

.gv-input-icon-wrap .icon {
    position: absolute;
    right: 0.6rem;
    top: 50%;
    transform: translateY(-50%);
    color: #999;
    font-size: 0.85rem;
}

/* Schedule list */
.gv-schedule-row {
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    background-color: #fff;
    font-size: 1rem;
    margin-top: 1rem;
}

.gv-schedule-actions a {
    color: var(--primary-orange);
    margin-left: 0.35rem;
    font-size: 0.9rem;
}

/* Pagination */
.gv-pager {
    margin-top: 1.5rem;
    font-size: 1rem;
}

.gv-pager .page-circle, .pagination .page-item a.page-link {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid #1B4C9C;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 2px;
    color: #333333 !important;
    cursor: pointer;
}

.gv-pager .active, .pagination .page-item a.page-link.active {
    background-color: var(--primary-orange);
    border-color: var(--primary-orange);
    color: #fff !important;
}

/* End patient profile page */

/* doctor profile page */
/* Profile section */
.profile-wrapper .container {
    max-width: 1280px;
    margin: 0 auto;
    padding-bottom: 100px;
}

.profile-title {
    text-align: center;
    font-size: 1.7rem;
    margin-bottom: 2rem;
    color: #4b5563;
}


.profile-avatar-box {
    background-color: var(--primary-orange);
    border-radius: 0.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
    min-height: 220px !important;
}

.profile-avatar-circle {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background-color: #ffffff;
}

/* Tabs */
.profile-tabs .nav-link {
    border-radius: 0;
    font-size: 0.85rem;
    padding: 0.45rem 0.9rem;
    color: #000;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    border: 1px solid var(--primary-orange);
    border-bottom: 2px solid var(--accent-blue);
    transition: all 0.3s ease-in-out;
}

.profile-tabs .nav-link:hover {
    background-color: #1B4C9C;
    color: #fff !important;
}

.profile-tabs .nav-link.active {
    background-color: #1B4C9C;
    color: #ffffff;
    border-bottom: 2px solid var(--accent-blue);
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.profile-tabs .nav-link:hover.active {
    background-color: var(--primary-orange);
}

.profile-section-title {
    font-size: 25px;
    font-weight: 600;
    margin-bottom: 1rem;
    color: var(--primary-orange);
}

#userDropdown {
    max-width:150px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}


@media (max-width: 767.98px) {
    .profile-card {
        padding: 1.5rem 1rem 2rem;
    }

    .profile-avatar-box {
        margin-bottom: 1.5rem;
    }
}

/* End doctor profile page */

/* my profile page */
/* Profile header */
.profile-wrapper {
    padding-bottom: 100px;
    max-width: 1280px;
    margin: 0 auto !important;
}

/* Filter strip */
.filter-label {
    font-size: 1rem;
    font-family: 'DM Sans', sans-serif;
    color: #333333 !important;
    margin-bottom: 0.5rem;
}

.filter-control .form-control,
.filter-control .form-select {
    font-size: 1rem;
    border-radius: 999px;
    padding-inline: 0.9rem;
    border: 1px solid #CED4DA;
    height: 2.2rem;
}

.search-icon {
    position: absolute;
    right: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1rem;
    color: var(--primary-orange);
}

/* List card */
.appointment-card {
    background-color: #ffffff;
    border-radius: 0.35rem;
    border: 1px solid #CED4DA;
    padding: 0.9rem 1.1rem;
    margin-bottom: 1rem;
}

.appointment-date {
    font-size: 18px;
    font-weight: 500;
    text-transform: uppercase;
    color: #2A2A2A;
}

.appointment-time {
    font-size: 15.8px;
    color: #2A2A2A;
    font-weight: 600;
}

.appointment-label {
    font-size: 18px;
    color: #495057;
}

.appointment-value {
    font-size: 18px;
    color: #495057;
}

.appointment-value a {
    color: #034F28;
    text-decoration: none;
    font-weight: 400;
}

.appointment-value.time-stamp {
    font-size: 15.8px;
    font-weight: 500;
    color: #495057;
}

.appointment-status {
    font-size: 15.8px;
    font-weight: 600;
    color: #034F28;
}

.btn-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    font-size: 1rem;
    color: #111827;
}

/* End my profile page */

/* media queries */
@media (min-width:320px) and (max-width:480px) {
    .nav-action-btn {
        flex-direction: column !important;
        width: 100%;
        right: 0 !important;
    }

    .nav-action-btn a {
        width: 100%;
        margin: 0.25rem;
    }

    .offer-carousel-container {
        max-width: 100% !important;
        padding: 0;
    }

    .card-slide {
        flex: 0 0 100%;
    }

    .heading-holder {
        margin-bottom: 1rem;
    }

    .step-label {
        display: none;
    }

    .timeline-card {
        margin-left: 0rem;
        margin: 0 auto !important;
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .our-services .hero-section,
    .blogs .hero-section {
        min-height: 240px !important;
        background-color: #E3F5FA !important;
    }

    .contact-us .hero-section {
        min-height: 240px !important;
    }

    .app-center {
        flex-direction: column;
    }

    .app-center .w-15,
    .app-center .w-20,
    .app-center .w-30,
    .app-center .w-50 {
        width: 100% !important;
    }

    .app-info {
        order: 1 !important;
    }

    .service-info {
        margin: 2rem !important;
        border-radius: 30px !important;
    }

    .service-info p {
        text-align: center !important;
        max-width: 100% !important;
    }

    .mobile-img-holder {
        justify-content: center !important;
        order: 2;
    }

    .w-15:has(.qr-code-img) {
        display: flex;
        justify-content: center;
        order: 3;
        margin-top: 2rem;
    }

    .qr-code-img {
        margin: 0px 0px 0px 0px !important;
    }

    .hero-main {
        padding-top: 4rem !important;
    }

    .hero-main .container-fluid {
        padding: 1.5rem 0 !important;
    }

    .sidebar-column {
        order: 2;
    }

    .content-column {
        order: 1;
    }

    .geevida-infographic-container {
        width: 300px;
        height: 300px;
    }

    .mission-card img {
        width: 80% !important;
    }

    .mission-card {
        width: 100% !important;
        padding: 1rem !important;
    }

    .what-inner {
        padding: 1rem;
    }

    .blog-tags-based-section {
        padding-top: 24px;
    }

    .blog-tags-based-section .post-image img {
        max-width: 100%;
        object-fit: cover;
        height: 100%;
    }

    .blog-tags-based-section .post-image {
        margin: unset !important;
        max-width: 100%;
    }

    .post-wrapper {
        margin-top: 10px;
        padding: 0;
    }

    .blog-tags-based-section .post-content {
        flex: 1 1 0;
        min-width: 100%;
        padding-top: 10px;
    }

    .blog-tags-based-section .post-meta {
        display: flex;
        flex-direction: column;
    }

    .login-row .row {
        margin: 0 !important;
    }

    .login-outer {
        padding: 10px;
    }

    .login .hero-section {
        min-height: 240px !important;
    }

    .signup-inner {
        padding: 10px;
    }

    .reset-wrapper .container {
        padding: 40px 0px;
    }

    .choose-service .hero-section,
    .my-profile .hero-section,
    .doctor-profile .hero-section,
    .patient-profile .hero-section {
        min-height: 240px !important;
    }

    .order-row:has(.orange-text) {
        flex-direction: column !important;
        margin-top: 1.5rem !important;
    }

    .patient-profile .hero-section {
        min-height: 240px;
    }

}

@media (min-width:481px) and (max-width:767.9px) {
    .nav-action-btn {
        width: 100%;
        right: 0;
    }

    .navbar-collapse.collapse.show {
        background-color: #f4f7fb !important;
        padding: 1rem;
        border-radius: 1rem;
        margin: 1rem;
    }

    .nav-action-btn a {
        width: 100%;
        margin: 0.25rem;
    }

    .offer-carousel-container {
        max-width: 100% !important;
    }

    .heading-holder {
        margin-bottom: 3rem;
    }

    .step-label {
        display: none;
    }

    .timeline-card {
        margin-left: 0rem;
        margin: 0 auto !important;
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .hero-main {
        padding-top: 6rem !important;
    }

    .hero-main .container-fluid {
        padding: 1.5rem 0 !important;
    }

    .sidebar-column {
        order: 2;
    }

    .content-column {
        order: 1;
    }

    .what-card {
        margin: 0 auto !important;
    }

    .geevida-satellite-item {
        position: absolute;
        left: 50%;
        top: 50%;
        width: 80px;
        height: 80px;
        margin-left: -20px;
        margin-top: -100px;
    }
}

@media (max-width: 575.98px) {
    .card-slide {
        flex: 0 0 100%;
        padding: 0 !important;
        margin-right: 1rem;
    }

    .hero-main {
        padding-bottom: 3rem;
    }
}

@media (max-width:600px) {

    section, .cta-band, .packages-section, .service-cta-2 .container-fluid, .what-section .container, #why .container, .service-description .container-fluid:has(.corporate-partners) {
        padding: 1rem 0rem !important;
    }

    .recent-post-section {
        padding-bottom: 2rem !important;
    }

    .contact-card {
    margin: 0px auto 10px;
}

    .cw-heading {
        line-height: 1.2;
        text-align: center;
    }

    .about-text p, .leader-text p {
    text-align: centerss;
    }

    .accordion-item {
    border: 0;
    margin: 15px 0px 15px 0px !important;
    background-color: transparent;
}

    .login-row,
    .signup-wrapper {
        padding: 1rem 1rem !important;
    }

    section.service-card {
        padding: 1rem !important;
    }

    .service-cta-1 .btn-blue-pill i {
        display: none;
    }

    section.cards-section {
        padding: 0 !important;
    }

    .navbar-geevida {
        padding: 0rem 1rem 0rem 1rem;
    }

    .navbar-brand img {
        width: 216px !important;
    }

    .timeline-wrapper .row {
        padding: 1rem 1rem 1rem 1rem !important;
    }

    .navbar-collapse.collapse.show {
        background-color: #f4f7fb !important;
        padding: 1rem;
        border-radius: 1rem;
    }

    .modal-body .btn.btn-close {
        position: absolute;
        top: 0.5rem;
        right: 0.25rem;
    }

    .geevida-widget-container {
        padding: 5px !important;
    }

    .geevida-infographic-container {
        width: 360px !important;
        height: 360px !important;
    }

    .geevida-outer-frame {
        width: 112px !important;
        height: 112px !important;
        border: 3px solid #FF8C42;
    }

    .geevida-central-circle {
        width: 88px !important;
        height: 88px !important;
        border: 4px solid white !important;
    }

    .geevida-central-text {
        font-size: 10px !important;
    }

    .geevida-satellite-circle {
        width: 48px !important;
        height: 48px !important;
        border: 2px solid #F0944D !important;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) !important;
    }

    .geevida-satellite-icon {
        color: var(--primary-blue) !important;
        font-size: 1.25rem !important;
    }

    .blogs .hero-section {
        min-height: 240px !important;
        background-color: #E3F5FA !important;
    }

    .author-details {
        width: 100%;
        flex-direction: column;
        border: 1px solid #E3E6DF;
        border-radius: 1rem;
        justify-content: center;
        align-items: center;
        text-align: center;
    }

    .author-details .content-info {
        margin: 0 auto !important;
    }

    .author-box .vr {
        display: none;
    }
}


@media (max-width: 767.98px) {
    .timeline-line {
        display: none;
    }

    .timeline-line-fill {
        display: none;
    }

    .timeline-card {
        margin: 2rem 0rem;
        padding: 1.6rem 1.8rem;
    }

    .timeline-marker {
        display: none;
    }

    .step-label-1 {
        top: 2rem;
    }

    .step-label-2 {
        top: 30%;
    }

    .step-label-3 {
        top: 56%;
    }

    .timeline-col-right .timeline-card::before,
    .timeline-col-left .timeline-card::before {
        display: none !important;
    }

    .contact-info,
    .col-auto.w-20 {
        width: 100% !important;
        place-items: center;
        display: grid;
    }

    .about-padding .row .col-lg-5,
    .about-padding .row .col-lg-7 {
        width: 100% !important;
        padding: 0rem 1rem !important;
    }

    .col-lg-5:has(.leader-photo) {
        order: 1 !important;
    }

    .col-lg-7:has(.leader-text) {
        order: 2 !important;
    }

    .footer-para {
        max-width: 80% !important;
        text-align: center;
    }

    .footer .service,
    .footer .quick-links {
        width: 46% !important;
    }

    .footer .quick-links {
        text-align: right;
    }

    .about-corporate-wellness .container {
        max-width: 700px !important;
    }

    .recent-post-section .container .row {
        padding: 20px 15px 40px 15px !important;
    }

    .button-controls {
        margin-left: 3rem;
    }

}

@media (max-width: 991.98px) {

    .nav-action-btn {
        right: 0;
    }

    .nav-action-btn a {
        width: 100% !important;
        margin: 0.25rem;
        white-space: nowrap;
    }

    .navbar-collapse.collapse.show {
        background-color: #f4f7fb !important;
        padding: 1rem;
        border-radius: 1rem;
        margin: 1rem;
    }

    .card-slide {
        flex: 0 0 50%;
    }

    .timeline-line {
        left: 32px;
        transform: none;
    }

    .timeline-line-fill {
        left: 32px;
        transform: none;
    }

    .timeline-marker {
        left: 16px;
        transform: none;
    }

    .step-label {
        left: 32px;
        transform: none;
    }

    .timeline-wrapper {
        padding-top: 1rem;
    }

    .timeline-card {
        margin-left: 3.5rem;
        padding: 1.6rem 1.8rem;
    }

    .navbar-geevida {
        padding: 0rem 1rem 0rem 1rem;
    }

    .modal-body .btn.btn-close {
        position: absolute;
        top: 0.5rem;
        right: 0.5rem;
    }

    .timeline-col-right .timeline-card::before,
    .timeline-col-left .timeline-card::before {
        content: "►";
        color: var(--primary-orange);
        font-size: 20px;
        position: absolute;
        top: 25px;
        left: -18px;
        transform: rotate(180deg);
    }

    .timeline-col-left .timeline-card::after {
        display: none !important;
    }

    .timeline-col-right .timeline-card {
        margin-right: inherit !important;
    }

    .step-label-1 {
        top: 5.7%;
        left: 9%;
    }

    .step-label-2 {
        top: 32%;
        left: 9%;
    }

    .step-label-3 {
        top: 64%;
        left: 9%;
    }

    .offer-card-body {
        padding: 1rem 1rem;
    }

    .social-icons {
        flex-wrap: wrap;
    }

    .app-center {
        flex-direction: column;
    }

    .app-center .w-15,
    .app-center .w-20,
    .app-center .w-30,
    .app-center .w-50 {
        width: 100% !important;
    }

    .app-info {
        order: 1 !important;
    }

    .service-info {
        margin: 2rem !important;
        border-radius: 30px !important;
    }

    .service-info p {
        text-align: center !important;
        max-width: 100% !important;
    }

    .mobile-img-holder {
        justify-content: center !important;
        order: 2;
    }

    .w-15:has(.qr-code-img) {
        display: flex;
        justify-content: center;
        order: 3;
        margin-top: 2rem;
    }

    .qr-code-img {
        margin: 0px 0px 0px 0px !important;
    }

    .store-btns {
        justify-content: space-between !important;
    }

    .hero-main {
        padding-top: 5rem;
    }

    .copy-block {
        margin-inline: auto;
    }

    .orange-card {
        margin-bottom: 1.5rem;
    }

    .hero-main {
        padding-top: 6rem !important;
    }

    .hero-main .container-fluid {
        padding: 1.5rem 0 !important;
    }

    .sidebar-column {
        order: 2;
    }

    .content-column {
        order: 1;
    }


    .faq-section .container {
        max-width: 800px !important;
    }

    .what-card {
        margin: 0 auto !important;
        margin-bottom: 2rem !important;
    }

    .what-card {
        max-width: 90% !important;
    }

    .corporate-partners {
        max-width: 80% !important;
        align-items: center !important;
        margin: 0 auto !important;
    }

    #events .row {
        padding: 0px 2rem;
    }

    .contact-info-section .container .row {
        flex-direction: column;
    }

    .contact-info-section .container .row .col-md-4 {
        width: 100% !important;
    }

    .billing-details {
        order: 2 !important;
    }

    .order-summary {
        order: 1 !important;
    }

    .contribute-section {
        padding: 160px 0px 100px 0px;
    }

    .appointment-card .row {
        flex-direction: column;
        justify-content: flex-start;
    }

    .appointment-card .row .col-12 {
        width: 100%;
    }

}

@media (min-width: 992px) {
    .services-menu {
        left: 100% !important;
        transform: translateX(-50%);
        padding: 0;
    }

    .timeline-col-left {
        padding-right: 3rem;
    }

    .timeline-col-right {
        padding-left: 3rem;
    }

    .social-icons {
        flex-wrap: wrap;
    }
}

@media (min-width: 992px) and (max-width: 1250px) {
    #userDropdown .btn-text {
        display: none;
    }
}

@media (min-width: 992px) and (max-width:1397px) {
    .navbar-brand img {
        width: clamp(200px, 21vw, 304px) !important;
    }

    .navbar-geevida .navbar-nav .nav-link {
        font-size: 13px !important;
        font-weight: 400;
    }

    .nav-action-btn {
        gap: 0.5rem;
    }

    .nav-action-btn a {
        font-size: 13px !important;
    }

    .what-inner .container {
        max-width: 1280px !important;
        padding: 0rem 1rem !important;
    }

    .geevida-satellite-item:nth-child(1) {
        transform: translate(0, -230px) !important;
    }

    @keyframes floaty1 {
        0% {
            transform: translateY(-230px) !important;
        }

        100% {
            transform: translateY(-238px) !important;
        }
    }

    .geevida-satellite-item:nth-child(2) {
        transform: rotate(72deg) translate(0, -230px) rotate(-72deg) !important;
    }

    @keyframes floaty2 {
        0% {
            transform: rotate(72deg) translate(0, -230px) rotate(-72deg) !important;
        }

        100% {
            transform: rotate(72deg) translate(0, -238px) rotate(-72deg) !important;
        }
    }

    .geevida-satellite-item:nth-child(3) {
        transform: rotate(144deg) translate(0, -230px) rotate(-144deg) !important;
    }

    @keyframes floaty3 {
        0% {
            transform: rotate(144deg) translate(0, -230px) rotate(-144deg) !important;
        }

        100% {
            transform: rotate(144deg) translate(0, -238px) rotate(-144deg) !important;
        }
    }

    .geevida-satellite-item:nth-child(4) {
        transform: rotate(216deg) translate(0, -230px) rotate(-216deg) !important;
    }

    @keyframes floaty4 {
        0% {
            transform: rotate(216deg) translate(0, -230px) rotate(-216deg) !important;
        }

        100% {
            transform: rotate(216deg) translate(0, -238px) rotate(-216deg) !important;
        }
    }

    .geevida-satellite-item:nth-child(5) {
        transform: rotate(288deg) translate(0, -230px) rotate(-288deg) !important;
    }

    @keyframes floaty5 {
        0% {
            transform: rotate(288deg) translate(0, -230px) rotate(-288deg) !important;
        }

        100% {
            transform: rotate(288deg) translate(0, -238px) rotate(-288deg) !important;
        }
    }

    #why .container .row {
        margin: 0 2rem !important;
    }
}

/* about us page css */
.about-us .hero-section {
    min-height: 400px;
    background: url('../images/about-us-hero-bg.webp') no-repeat center center !important;
    background-size: cover !important;
}

.about-us .hero-section h1 {
    font-weight: 200 !important;
    font-size: clamp(48px, 5.209vw, 96px) !important;
}

.about-us .hero-section .hero-overlay {
    background-color: #FAFDFE !important;
    opacity: 0.75 !important;
}

.about-padding {
    padding: 80px 0;
    max-width: min(100%, 1280px) !important;
    margin: 0 auto;
}

.about-padding .row {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    column-gap: 60px;
    row-gap: 24px;
}

.leader-card.row {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 60px;
    row-gap: 24px;
}

.about-padding .row .col-lg-5,
.about-padding .row .col-lg-7 {
    width: 40%;
    padding: 0;
}

.section-title {
    font-family: "Georgia", "Times New Roman", serif;
    color: #1f3a8a;
    font-size: 2.1rem;
    margin-bottom: .2rem;
}

.section-kicker {
    font-size: .9rem;
    text-transform: uppercase;
    letter-spacing: .16em;
    color: var(--accent);
    font-weight: 600;
}

.about-main-img {
    min-height: 600px;
    border-radius: 10px;
    background: url('../images/abt-us-sec-1.webp') no-repeat center center !important;
    background-size: cover !important;
}

.leader-photo {
    min-height: 440px;
    border-radius: 10px;
    background: url('../images/abt-us-sec-2-drkamy.webp') no-repeat center center !important;
    background-size: cover !important;
    background-position-y: -1.25rem !important;
}

.about-text p,
.leader-text p {
    font-size: 18px;
    font-weight: 300;
    color: #272626;
    line-height: 1.7;
}

.about-text p strong,
.leader-text p strong {
    font-weight: 700;
}

.leader-card {
    margin-top: 2.5rem;
}

/* Mission block */
.mission-section {
    background-color: var(--accent-blue);
    color: #fff;
    padding: 80px 0;
}

.mission-section .container {
    max-width: min(100%, 1280px);
    margin: 0 auto;
}

.heading-holder.mission-heading {
    border-left: 10px solid #fff !important;
}

.heading-holder.mission-heading .section-title-small,
.heading-holder.mission-heading .section-title-main {
    color: #fff !important;
}

.mission-card {
    width: 80%;
    border-radius: 10px;
    padding: 50px;
    background-color: #fff;
    display: grid;
    place-items: center;
    margin: 0 auto;
}

.mission-card p {
    text-align: center;
    font-size: 18px;
    font-weight: 300;
    color: #272626;
    line-height: 1.7;
}

.mission-card img {
    width: 30%;
}

/* What We Do section */
.what-section {
    position: relative;
    color: #fff;
    overflow: hidden;
}

.what-section .container {
    max-width: min(100%, 1280px);
    padding: 80px 0px;
}

.what-bg {
    position: absolute;
    inset: 0;
    background: url('../images/abt-us-what-we-do.webp') center/cover no-repeat;
    z-index: 0;
}

.what-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(15, 23, 42, .6), rgba(15, 23, 42, .7));
    z-index: 1;
}

.what-inner {
    position: relative;
    z-index: 2;
}

.what-inner .container .row {
    padding: 100px 0px 0px 0px;
}

.what-card {
    background-color: rgba(255, 255, 255, .95);
    color: #111827;
    border-radius: 18px;
    padding: 1.7rem 1.5rem;
    font-size: .9rem;
    max-width: 472px;
    box-shadow: 0 14px 35px rgba(15, 23, 42, .3);
}

.what-card-content i {
    font-size: 20px;
    padding: 0.5rem;
    color: var(--primary-orange);
}

.what-content {
    margin-left: 2rem;
}


.what-content strong {
    font-size: 20px !important;
    font-family: 'Butler', serif;
    text-transform: uppercase;
    color: var(--primary-orange) !important;
}

.what-content p {
    font-size: 1rem;
    color: #625A53;
}

.what-card h6 {
    text-align: center;
    font-size: 20px;
    font-weight: 600 !important;
    color: var(--primary-orange);
    margin-bottom: 1.5rem !important;
}

.what-diagram {
    max-width: 380px;
    margin-left: auto;
}

.geevida-widget-container {
    margin: 0;
    padding: 10px;
    background: transparent;
    min-height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Poppins', sans-serif;
}

.geevida-infographic-container {
    position: relative;
    height: 600px;
}

.geevida-rotating-elements {
    position: absolute;
    width: 100%;
    height: 100%;
    transition: transform 0.8s cubic-bezier(0.4, 0.0, 0.2, 1);
}

.geevida-connection-line {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 2px;
    height: 300px;
    background: linear-gradient(to bottom, transparent, rgba(240, 148, 77, 0.5), transparent);
    transform-origin: center top;
    pointer-events: none;
    z-index: 1;
}

.geevida-connection-line:nth-child(6) {
    transform: translate(-50%, 0) rotate(0deg);
}

.geevida-connection-line:nth-child(7) {
    transform: translate(-50%, 0) rotate(72deg);
}

.geevida-connection-line:nth-child(8) {
    transform: translate(-50%, 0) rotate(144deg);
}

.geevida-connection-line:nth-child(9) {
    transform: translate(-50%, 0) rotate(216deg);
}

.geevida-connection-line:nth-child(10) {
    transform: translate(-50%, 0) rotate(288deg);
}

.geevida-outer-frame {
    position: absolute;
    width: 280px;
    height: 280px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: transparent;
    border: 8px solid #FF8C42;
    border-radius: 50%;
    z-index: 8;
    box-shadow: 0 0 20px rgba(255, 140, 66, 0.3);
}

.geevida-satellite-item {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 80px;
    height: 80px;
    margin-left: -40px;
    margin-top: -40px;
    transition: transform 0.8s cubic-bezier(0.4, 0.0, 0.2, 1);
}

.geevida-central-text {
    font-size: 24px;
    font-weight: bold;
    color: var(--primary-blue);
    text-align: center;
}

.geevida-central-circle {
    position: absolute;
    width: 220px;
    height: 220px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: linear-gradient(135deg, #ffffff 0%, #F0944D 50%, #FF8C42 100%);
    border: 10px solid white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15), inset 0 0 20px rgba(255, 255, 255, 0.5);
    z-index: 10;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    animation: centralPulse 5s ease-in-out infinite;
}

@keyframes centralPulse {
    0% {
        transform: translate(-50%, -50%) scale(1);
    }

    50% {
        transform: translate(-50%, -50%) scale(1.08);
        /* slightly bigger */
    }

    100% {
        transform: translate(-50%, -50%) scale(1);
    }
}

.float-y1 {
    animation: floaty1 3s ease-in-out infinite alternate;
}

.float-y2 {
    animation: floaty2 3s ease-in-out infinite alternate;
}

.float-y3 {
    animation: floaty3 3s ease-in-out infinite alternate;
}

.float-y4 {
    animation: floaty4 3s ease-in-out infinite alternate;
}

.float-y5 {
    animation: floaty5 3s ease-in-out infinite alternate;
}

.geevida-satellite-item:nth-child(1) {
    transform: translate(0, -300px);
}

@keyframes floaty1 {
    0% {
        transform: translateY(-300);
    }

    100% {
        transform: translateY(-286px);
        /* adjust distance as needed */
    }
}


.geevida-satellite-item:nth-child(2) {
    transform: rotate(72deg) translate(0, -300px) rotate(-72deg);
}

@keyframes floaty2 {
    0% {
        transform: rotate(72deg) translate(0, -300px) rotate(-72deg);
    }

    100% {
        transform: rotate(72deg) translate(0, -286px) rotate(-72deg);
        /* adjust distance as needed */
    }
}

.geevida-satellite-item:nth-child(3) {
    transform: rotate(144deg) translate(0, -300px) rotate(-144deg);
}

@keyframes floaty3 {
    0% {
        transform: rotate(144deg) translate(0, -300px) rotate(-144deg);
    }

    100% {
        transform: rotate(144deg) translate(0, -286px) rotate(-144deg);
        /* adjust distance as needed */
    }
}

.geevida-satellite-item:nth-child(4) {
    transform: rotate(216deg) translate(0, -300px) rotate(-216deg);
}


@keyframes floaty4 {
    0% {
        transform: rotate(216deg) translate(0, -300px) rotate(-216deg);
    }

    100% {
        transform: rotate(216deg) translate(0, -286px) rotate(-216deg);
        /* adjust distance as needed */
    }
}

.geevida-satellite-item:nth-child(5) {
    transform: rotate(288deg) translate(0, -300px) rotate(-288deg);
}

@keyframes floaty5 {
    0% {
        transform: rotate(288deg) translate(0, -300px) rotate(-288deg);
    }

    100% {
        transform: rotate(288deg) translate(0, -286px) rotate(-288deg);
    }
}

.geevida-satellite-circle {
    position: relative;
    width: 80px;
    height: 80px;
    background: white;
    border: 4px solid #F0944D;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
    z-index: 5;
    transition: all 0.3s ease;
}

.geevida-satellite-icon {
    font-size: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-blue);
}

.geevida-satellite-label {
    position: absolute;
    bottom: -45px;
    left: 50%;
    transform: translateX(-50%);
    font-weight: 700;
    font-size: 22px;
    color: #FFFFFF;
    text-align: center;
    white-space: nowrap;
    text-shadow: none;
}


/* End about us page css */


/* Corporate wellness page css */
.corporate-wellness .hero-section {
    min-height: 400px;
    background: url('../images/corporate-wellness-hero.webp') no-repeat center center !important;
    background-size: cover !important;
}

.corporate-wellness .hero-section h1 {
    font-weight: 200 !important;
    font-size: clamp(36px, 5.209vw, 96px) !important;
}

.corporate-wellness .hero-section .hero-overlay {
    background-color: #FAFDFE !important;
    opacity: 0.85 !important;
}

.about-corporate-wellness {
    padding: 80px 0;
    max-width: min(100%, 1280px) !important;
    margin: 0 auto;
}

.corporate-wellness .row {
    display: flex;
    justify-content: center;
    align-items: center !important;
    column-gap: 60px;
    row-gap: 24px;
}

.about-corporate-wellness .row .col-lg-5 {
    width: 40%;
    padding: 0;
}

.about-corporate-wellness .row .col-lg-7 {
    width: 45%;
    padding: 0;
}

.about-corporate-wellness-2 {
    display: flex;
    justify-content: center;
    align-items: center !important;
    column-gap: 60px;
    row-gap: 24px;
}

.about-corporate-wellness-2 .row .col-lg-5 {
    width: 40%;
    padding: 0;
}

.about-corporate-wellness-2 .row .col-lg-7 {
    width: 45%;
    padding: 0;
}

.wellness-sub-img {
    min-height: 600px;
    border-radius: 10px;
    background: url('../images/wellness-2.webp') no-repeat center center !important;
    background-size: cover !important;
}

.wellness-main-img {
    min-height: 600px;
    border-radius: 10px;
    background: url('../images/wellness-1.webp') no-repeat center center !important;
    background-size: cover !important;
}

.cw-heading {
    font-size: clamp(42px, 3.907vw, 72px);
    font-weight: 500;
    color: #1B4C9C;
    font-family: 'Butler', serif;
    line-height: 1;
    letter-spacing: 0;
    word-spacing: 0;
}

.corporate-partners {
    max-width: 40%;
    margin: auto !important;
    align-items: center;
}

.service-description .container-fluid:has(.corporate-partners) {
    padding: 80px 0;
}

.corporate-partners img:nth-child(1) {
    height: 56px;
}

.corporate-partners img:nth-child(2) {
    height: 158px;
}

#events .row {
    display: flex;
    justify-content: center;
    align-items: start !important;
    column-gap: 0;
}

.section-blue {
    background-color: #006fc5;
    color: #ffffff;
}

#events .container-fluid {
    padding: 80px 0px;
    max-width: min(100%, 1280px) !important;
}

.section-label {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--accent-orange);
    font-weight: 600;
    margin-bottom: .35rem;
}

.stat-card {
    background-color: #ffffff;
    border-radius: 16px;
    padding: 50px;
    text-align: center;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
    min-height: 120px;
}

.stat-card .stat-value,
.stat-card .stat-value-no {
    font-size: 40px;
    font-weight: 700;
    color: var(--primary-orange);
}

.stat-card .stat-label {
    font-size: 30px;
    color: #625A53;
}

.bento-wrapper {
    width: 100%;
}

/* Common image card styling */
.bento-card {
    background-color: #0074c8;
    border-radius: 26px;
    overflow: hidden;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35);
}

.bento-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* keep aspect ratio, fill box */
    display: block;
}

.ratio-custom {
    width: 100%;
}

/* Heights to mimic screenshot on large screens */
.bento-main {
    /* big portrait (top-left)      */
    height: 402px;
}

.bento-wide {
    /* wide landscape items         */
    height: 222px;
}

.bento-main img,
.bento-wide img {
    transition: all 0.3s ease;
    transition-duration: 550ms;
}

.bento-main img:hover,
.bento-wide img:hover {
    scale: 1.1;
}


/* Make cards responsive on smaller screens */
@media (max-width: 991.98px) {

    /* tablets */
    .bento-main {
        height: 420px;
    }

    .bento-wide {
        height: 220px;
    }

    #why .container .row {
        margin: 0 2rem !important;
    }

    .reason-card-icon img {
        width: 120px;
    }

    .steps-curve {
        display: none;
    }

    .steps-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: center;
    }

    .step-card {
        margin-bottom: 4rem !important;
    }

    .step-card:last-child {
        margin-bottom: 0rem !important;
    }

    #how-it-works .container.steps-wrapper {
        padding: 20px 0px;
    }
}

@media (max-width: 767.98px) {
    /* mobiles */
    .bento-main,
    .bento-wide {
        height: 260px;
    }

    #how-it-works .container.steps-wrapper {
        padding: 20px 20px;
    }
}

#how-it-works .container {
    padding: 80px 0px;
    max-width: 1400px !important;
    margin: 0 auto !important;
}

#how-it-works .container .row {
    column-gap: 0 !important;
}

.how-step-label {
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--accent-orange);
    margin-bottom: 0.25rem;
}

.section-label {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--accent-orange);
    font-weight: 600;
    margin-bottom: .35rem;
}

.steps-section {
    position: relative;
    overflow: hidden;
}

/* use your PNG line instead of SVG */
/* line behind */
.steps-curve {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.steps-curve .step-line {
    width: 120%;
    height: 100%;
    transform: translate(-10%, -10%);
    z-index: -150 !important;
}

/* cards above */
.steps-wrapper {
    position: relative;
    z-index: 2;
    /* above the line */
}

.step-card {
    background-color: #fff !important;
    border-radius: 20px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    padding: 24px 26px;
    max-width: 360px;
}

.step-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.step-header i {
    font-size: 3rem !important;
    color: var(--primary-orange);
}

.step-icon {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    background: #ffefe2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--accent);
    font-size: 18px;
    font-weight: 700;
}

.step-title {
    margin: 0;
    letter-spacing: 0.08em;
    color: var(--primary-blue);
    font-size: 30px;
    font-weight: 700;
    text-transform: uppercase;
}

.step-body {
    font-size: 18px;
    color: #625A53 !important;
    font-weight: normal !important;
}

.step-big-number {
    position: absolute;
    right: 18px;
    top: 10px;
    font-size: 150px;
    font-weight: 800;
    color: rgba(0, 109, 163, 0.05);
    line-height: 1;
    pointer-events: none;
    user-select: none;
}

.step-card-wrapper {
    position: relative;
}

.step-btn {
    border-radius: 999px;
    padding: 10px 22px;
    font-weight: 600;
    font-size: 20px !important;
    border: none;
    background-color: var(--primary-orange);
    color: #FAFDFE;
}

.step-btn:hover {
    background-color: var(--accent-blue);
    color: #FAFDFE;
}

/* Layout positions */
@media (min-width: 992px) {
    .steps-row {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        align-items: center;
        column-gap: 40px;
        margin: 0rem 1rem;
        min-height: 540px;
    }

    .step-1 {
        justify-self: flex-start;
        transform: translateY(220px);
    }

    .step-2 {
        justify-self: center;
    }

    .step-3 {
        justify-self: flex-end;
        transform: translateY(-220px);
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .steps-row {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        align-items: center;
        column-gap: 24px;
    }

    .step-1 {
        transform: translateY(40px);
    }

    .step-2 {
        transform: translateY(0);
    }

    .step-3 {
        transform: translateY(-30px);
    }

    .author-details {
        width: 47%;
    }

    .login-row .col-md-6 {
        padding: 0 !important;
        width: 80% !important;
    }

    .login-row .col-md-6:has(.card-base) {
        order: 2;
    }

    .login-row .col-md-6:has(.login-outer) {
        order: 1 !important;
    }

}

/* Mobile: stack cards, hide line image */
@media (max-width: 767.98px) {
    .steps-section {
        padding: 10px 0 0px;
    }

    #how-it-works .container {
        padding: 20px 0px;
        margin: 0 auto !important;
    }

    .step-line {
        display: none;
    }

    .step-card {
        max-width: none;
    }

    .steps-row {
        display: flex;
        flex-direction: column;
        gap: 18px;
    }

    .step-1,
    .step-2,
    .step-3 {
        transform: none;
    }

    .login-row .col-md-6:has(.card-base) {
        order: 2;
    }

    .login-row .col-md-6:has(.login-outer) {
        order: 1 !important;
    }
}

.reason-card {
    background-color: #ffffff;
    border-radius: 18px;
    padding: 20px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    height: 100%;
    display: flex;
    align-items: center;
    min-height: 320px;
}

.reason-card-icon img {
    width: 80px;
}

.reason-card-icon {
    margin-right: 1rem;
}

.reason-card h5 {
    font-family: 'Butler', serif;
    margin-bottom: 0.5rem;
    font-size: 30px;
    font-weight: 500;
    color: #0A3D62 !important;
    text-transform: none;
}

.reason-card p {
    font-size: 18px;
    color: #625A53 !important;
    font-weight: normal !important;
    margin-bottom: 18px !important;
}

.tag-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255, 255, 255, 0.96);
    border-radius: 999px;
    padding: 6px 12px;
    font-size: 0.78rem;
    color: #173c6b;
}

.app-mock {
    max-width: 260px;
    margin-inline: auto;
}

/* Simple hover */
.btn-primary-rounded:hover {
    background-color: #f47f07;
    border-color: #f47f07;
}

/* Small screens tweaks */
@media (max-width: 767.98px) {
    .step-line {
        display: none;
    }
}

#why {
    background: var(--primary-orange);
}

#why .container {
    padding: 80px 0;
    max-width: min(100%, 1280px) !important;
    margin: 0 auto;
}

#why .container .row {
    column-gap: 0 !important;
}

.corporate-wellness .service-cta-2 .row {
    column-gap: 0 !important;
    row-gap: 0 !important;
    align-items: end !important;
}

.corporate-wellness .footer .row {
    display: flex;
    justify-content: center;
    align-items: normal !important;
    column-gap: 0px;
    row-gap: 0px;
}

/* end corporate wellness css */


/* our services page css */
.our-services .hero-section {
    min-height: 450px;
    background-color: #E3F5FA !important;
}

.our-services .hero-section h1 {
    font-weight: 200 !important;
    font-size: clamp(48px, 5.209vw, 96px) !important;
}

.our-services .hero-section .hero-overlay {
    background-color: #FAFDFE !important;
    opacity: 0.75 !important;
}

.service-description {
    background-color: var(--primary-orange) !important;
    padding: 20px 0px !important;
}

.service-description .container-fluid {
    max-width: 1280px !important;
    margin: 0 auto;
}

.service-description .hero-content {
    position: relative;
    z-index: 2;
    padding-top: 9rem !important;
    padding-bottom: 3rem;
}

.service-description h2 {
    font-size: clamp(24px, 2.087vw, 48px) !important;
    color: #FAFDFE !important;
    font-family: 'Butler', sans-serif;
    font-weight: 700;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 1.1em;
    letter-spacing: 0px;
    word-spacing: 0px;
}

.service-description p {
    font-size: clamp(16px, 1.172vw, 24px) !important;
    color: #FAFDFE !important;
    font-weight: 300;
    line-height: 1.5em;
    letter-spacing: 0px;
    word-spacing: 0px;
}

.service-card .container-fluid {
    max-width: 1440px !important;
}

.service-card .row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    justify-items: center;
    align-items: stretch;
}


@media (max-width: 1024px) {
    .service-card .row {
        grid-template-columns: repeat(2, 1fr);
    }

    .orange-form-section {
        padding: 20px 0px;
    }

    .reset-wrapper .container {
        justify-content: center !important;
    }
}

@media (max-width: 600px) {
    .service-card .row {
        grid-template-columns: 1fr;
    }

    .geevida-satellite-label {
        font-size: 1rem;
    }

    .geevida-satellite-item {
        margin-left: -24px;
        margin-top: -24px;
    }

    .geevida-satellite-item:nth-child(1) {
        transform: translate(0, -130px);
    }

    @keyframes floaty1 {
        0% {
            transform: translateY(-130px);
        }

        100% {
            transform: translateY(-138px);
        }
    }

    .geevida-satellite-item:nth-child(2) {
        transform: rotate(72deg) translate(0, -130px) rotate(-72deg);
    }

    @keyframes floaty2 {
        0% {
            transform: rotate(72deg) translate(0, -130px) rotate(-72deg);
        }

        100% {
            transform: rotate(72deg) translate(0, -138px) rotate(-72deg);
        }
    }

    .geevida-satellite-item:nth-child(3) {
        transform: rotate(144deg) translate(0, -130px) rotate(-144deg);
    }

    @keyframes floaty3 {
        0% {
            transform: rotate(144deg) translate(0, -130px) rotate(-144deg);
        }

        100% {
            transform: rotate(144deg) translate(0, -138px) rotate(-144deg);
        }
    }

    .geevida-satellite-item:nth-child(4) {
        transform: rotate(216deg) translate(0, -130px) rotate(-216deg);
    }

    @keyframes floaty4 {
        0% {
            transform: rotate(216deg) translate(0, -130px) rotate(-216deg);
        }

        100% {
            transform: rotate(216deg) translate(0, -138px) rotate(-216deg);
        }
    }

    .geevida-satellite-item:nth-child(5) {
        transform: rotate(288deg) translate(0, -130px) rotate(-288deg);
    }

    @keyframes floaty5 {
        0% {
            transform: rotate(288deg) translate(0, -130px) rotate(-288deg);
        }

        100% {
            transform: rotate(288deg) translate(0, -138px) rotate(-288deg);
        }
    }

    .corporate-partners {
        max-width: 100% !important;
        margin: 0 auto !important;
        display: flex;
        flex-direction: column;
        margin: 4rem 2rem !important;
    }

    #events .row {
        flex-direction: column;
        padding: 0 1rem;
    }

    #events .row .col-6 {
        width: 100% !important;
    }

    .heading-holder.mission-heading {
        max-width: 60%;
    }

    .about-corporate-wellness .row,
    .about-corporate-wellness-2.row {
        padding: 0rem 1rem !important;
    }

    .about-corporate-wellness .row .col-lg-5,
    .about-corporate-wellness-2.row .col-lg-7 {
        width: 100% !important;
        padding: 0;
        order: 2 !important;
    }

    .about-corporate-wellness .row .col-lg-7,
    .about-corporate-wellness-2.row .col-lg-5 {
        width: 100% !important;
        padding: 0;
        order: 1 !important;
    }

    .card-slide {
        flex: 0 0 100%;
    }
}

.service-card .col {
    position: relative;
    display: flex;
    min-height: 500px;
    transition: background 0.3s;
    border-radius: 20px;
    padding-top: 50px;
    padding-bottom: 50px;
    padding-left: 30px;
    padding-right: 30px;
}

.service-card .col .overlay {
    position: absolute;
    inset: 0;
    background: #1B3052;
    border-radius: 20px;
    opacity: 0.7;
    z-index: 1;
}

.service-card .col:hover .overlay {
    opacity: 0.7;
    background: #272626;
}

.service-card .service-card-item {
    /* background-image: url('../images/service-card-item-1.webp'); */
    background-position: center center;
    background-size: cover;
}

.service-card-content {
    width: 100%;
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.service-card-content h2 {
    font-size: 20px;
    font-weight: 500;
    text-transform: uppercase;
    color: #FAFDFE;
    border-bottom: 2px solid var(--primary-orange);
}

.service-card-content p {
    font-size: 18px;
    font-weight: 300;
    color: #FAFDFE;
    text-align: left;
    line-height: 1.25em;
    letter-spacing: 0px;
}

.service-card-content .btn {
    max-width: 180px;
    display: flex;
    justify-content: space-between;
    transition: ease-in-out 0.3s !important;
}

.service-card-content .btn:hover {
    background: #1B4C9C !important;
}

.service-description.service-cta-1 h2 {
    color: var(--primary-blue) !important;
    text-align: center;
    font-family: 'DM Sans', sans-serif !important;
    font-weight: 600 !important;
}

.service-cta-1 .btn-blue-pill {
    font-size: 18px;
    padding: 12px 24px !important;
    background: #1b4C9C !important;
}

.service-cta-1 .btn-blue-pill:hover {
    background-color: #fff !important;
    font-size: 18px;
    padding: 12px 24px !important;
    color: var(--primary-blue) !important;
    font-weight: 600 !important;
}

.service-cta-1 .btn-blue-pill i {
    margin-left: 1rem !important;
}

.service-cta-2 {
    background-color: #FAFDFE !important;
}

.service-cta-2 .container-fluid {
    max-width: 1280px !important;
    padding: 80px 0px;
    margin: 0 auto;
}

.app-center {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.mobile-img-holder {
    display: flex;
    justify-content: end;
    padding: 0;
}

.mobile-img {
    max-width: 65%;
    height: 500px;
}

.service-info {
    background-color: transparent;
    background-image: linear-gradient(180deg, #F0944D 0%, #FAFDFE 100%);
    border-radius: 0px 20px 0px 0px;
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 30px;
    padding-right: 30px;
}

.service-info p {
    max-width: 75%;
    text-align: left;
    font-size: 16px;
    font-weight: 500;
    color: var(--primary-blue);
}

.service-info img {
    width: 163px !important;
}

.qr-code-img {
    min-width: 228px !important;
    margin: 0px 0px 22px -160px;
}

.store-btns {
    margin-top: 4rem;
}

.heading-holder.about-us {
    border-color: #1B4C9C;
}

.heading-holder.about-us .section-title-small,
.heading-holder.about-us .section-title-main {
    color: #1B4C9C;
}

/* End our services page css */

/* service inner page css */
.hero-main {
    padding-top: 200px;
}

.hero-main .container-fluid {
    padding: 80px 0px;
    margin: 0 auto !important;
}

.hero-main .container-fluid .row {
    display: flex !important;
    justify-content: space-between !important;
    height: 100%;
    margin: 0 auto;
    max-width: min(100%, 1280px) !important;
    width: 100%;
}

.orange-card {
    background-color: var(--primary-orange);
    color: #fff;
    border-radius: 18px;
    padding: 1.6rem 1.4rem;
    box-shadow: 0 16px 40px rgba(0, 0, 0, .08);
}

.orange-card h5 {
    margin-bottom: 1rem;
    font-size: 21px;
    text-align: center;
    font-weight: 700;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 1.45em;
    letter-spacing: 0px;
    word-spacing: 0px;
}

.orange-card ul {
    list-style: none;
    padding: 0;
    margin: 0 0 1rem 0;
}

.orange-card li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .45rem .1rem;
    border-radius: 999px;
    font-size: 1rem;
    transition: ease-in-out 0.3s;
}

.orange-card li:hover {
    color: #147CC8 !important;
}

.orange-card li .badge-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.card-appointment {
    margin-top: 1.5rem;
    background-color: #fff;
    border-radius: 18px;
    padding: 40px;
    border: 1px solid #EAE6DF;
    text-align: center;
}

.card-appointment h6 {
    font-size: 21px;
    font-weight: 700;
    color: #1b4C9C;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 1.45em;
    letter-spacing: 0px;
    word-spacing: 0px;
}

.content-column .section-title {
    font-family: "Butler", sans-serif;
    color: #1B4C9C;
    font-size: clamp(40px, 5.149vw, 96px);
    font-weight: 300;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 1.1em;
    letter-spacing: 0px;
    word-spacing: 0px;
}


.longevity-image {
    border-radius: 20px;
    overflow: hidden;
}

.longevity-image img {
    height: 520px !important;
    object-fit: cover;
}

.copy-block {
    line-height: 1.7;
    font-size: 18px;
    font-weight: 300;
    color: #625A53;
}

.copy-block p {
    margin: 0 0 1.5rem;
}

/* FAQ section */
.faq-section {
    padding: 3rem 0rem 0rem 0rem;
}

.faq-heading {
    font-family: 'Butler', sans-serif;
    color: #1B4C9C;
    margin-bottom: 1.5rem;
    font-style: normal;
    font-weight: 400;
    text-transform: none;
    font-size: 46px;
    line-height: 1.15em;
    letter-spacing: 0px;
    word-spacing: 0px;
}

.faq-label {
    margin-bottom: 1.25rem;
    color: #1b4C9C;
    font-size: 21px;
    font-weight: 700;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 1.45em;
    letter-spacing: 0px;
    word-spacing: 0px;
}

.accordion-button {
    border-radius: 30px !important;
    background-color: #FAFDFE;
    border: 1px solid var(--primary-orange);
    padding: .8rem 1.1rem;
   font-size: clamp(1rem, 1.175vw, 19px);
    font-weight: 600;
    color: #1b4C9C;
}

.accordion-button:hover {
    background-color: #FAFDFE;
    border: 1px solid var(--primary-orange);
    color: var(--primary-orange);
}

.accordion-button.collapsed:hover::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23F0944D'%3e%3cpath d='M7 2h2v5h5v2H9v5H7V9H2V7h5z'/%3e%3c/svg%3e") !important;
}

.accordion-button:focus {
    box-shadow: none;
}

.accordion-button:not(.collapsed) {
    background-color: #FAFDFE;
    color: var(--primary-orange);
    border: 1px solid var(--primary-orange);
}

.accordion-item {
    border: 0;
    margin: 15px 15px 15px 15px;
    background-color: transparent;
}

.accordion-body {
    border: 1px solid #eee;
    padding: 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 18px;
    line-height: 1.7;
    color: #333333;
}

.accordion-body ul strong {
    font-weight: 500;
}

.accordion-body ul {
    list-style: disc !important;
}

.accordion-body ul li:not(li > ul > li) {
    margin-bottom: 1rem !important;
}

/* App promo */
.app-section {
    padding: 3.5rem 0 4rem;
}

.app-card {
    background: linear-gradient(135deg, var(--primary-soft), #ffe3c4);
    border-radius: 22px;
    padding: 2.5rem 2rem;
    position: relative;
    overflow: hidden;
}

.app-figure {
    max-width: 260px;
}

.app-badge img {
    height: 42px;
}

.accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%231D4F8F'%3e%3cpath d='M7 2h2v5h5v2H9v5H7V9H2V7h5z'/%3e%3c/svg%3e");
}

.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23F0944D'%3e%3cpath d='M2 7h12v2H2z'/%3e%3c/svg%3e");
}

.geevida-service-feature h2 {
    font-size: 28px;
    font-family: 'Butler', san-serif;
    font-weight: 700;
    margin-bottom: 15px;
    color: #F0944D;
}

.geevida-service-feature h3 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 10px;
    color: var(--primary-blue);
}

.geevida-service-feature ul li {
    list-style: none;
    border-left: 3px solid var(--primary-orange);
    padding-left: 0.75rem;
    margin-bottom: 0.25rem !important;
    line-height: 1.5 !important;
}

.geevida-service-feature ul {
    padding-left: 0;
}

/* End service inner page css */



@media (min-width: 992px) {
    .pricing-section .pay-visit {
        margin-top: 3.5rem; /* matches nav-tabs height */
        height: calc(100% - 3.5rem);
    }
}

.nav-tabs .nav-link{
    color: var(--bs-heading-color);
}

.nav-tabs .nav-link.active {
    color: var(--primary-orange);
}

.plan-card {
    border: 1px solid #e0e0e0;
    transition: all .2s ease;
}

.plan-card.active {
    border-color: var(--primary-orange);
    box-shadow: 0 0 0 2px rgba(253,126,20,.25);
}

.plan-card.active .select-plan {
    background: var(--primary-blue);;
    color: #fff;
}

.service-card {
    cursor: pointer;
    border-radius: 16px;
    transition: all 0.25s ease;
    position: relative;
}

.service-card:hover {
    border-color: var(--primary-orange);
}

.service-card.active {
    border-color: var(--primary-orange);
    background: #fff7f0;
}

.service-card .check-icon {
    display: none;
}

.service-card.active .check-icon {
    display: inline-block;
}

.collapsed.complete-icon, .collapsed.complete-form {
    display: inline !important; 
}

label.error{
    background: transparent;
    color: #dc3545;
}

.disp-none {
    display: none;
}

/* ===== Folder Card ===== */
.folder-card {
    width: 180px;
}

/* Main card */
.folder-ui {
    background: #fff;
    border-radius: 16px;
    height: 180px;
    position: relative;
    overflow: hidden;
    transition: background-color .25s ease, transform .2s ease;
}

/* Hover background */
.folder-ui:hover {
    background-color: #333;
    transform: translateY(-2px);
}

/* Folder icon */
.folder-icon {
    font-size: 48px;
    color: var(--primary-orange);
    transition: opacity .2s ease, transform .2s ease;
}

/* Folder name */
.folder-ui h6 {
    color: #222;
    transition: color .2s ease;
}

/* On hover text */
.folder-ui:hover h6 {
    color: #fff;
}

/* Slight fade icon when hovering */
.folder-ui:hover .folder-icon {
    opacity: .4;
    transform: scale(1.05);
}

/* ===== Action Buttons ===== */
.folder-actions {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;

    opacity: 0;
    transform: translateY(-6px);
    pointer-events: none;
    transition: all .2s ease;
    z-index: 2;
}

.folder-ui:hover .folder-actions {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

/* Buttons */
.icon-btn {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: none;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.icon-btn i {
    font-size: 14px;
}

.icon-btn.editclick i {
    color: #2a9d8f;
}

.icon-btn.deleteclick i {
    color: #e63946;
}

/* ===== New Folder Card ===== */
.new-folder-card {
    width: 180px;
    height: 180px;
    border-radius: 16px;
    border: 2px dashed #d0d7de;
    cursor: pointer;
    transition: all .2s ease;
}

.new-folder-card:hover {
    background: #f8f9fa;
    border-color: var(--primary-orange);
}

.new-folder-plus {
    font-size: 36px;
    font-weight: 600;
    color: var(--primary-orange);
}

.upload-dropzone {
    border: 2px dashed #ced4da;
    border-radius: 12px;
    padding: 30px;
    text-align: center;
    cursor: pointer;
    transition: all .2s ease;
    background: #f8f9fa;
}

.upload-dropzone:hover {
    border-color: var(--primary-orange);
    background: #eef4ff;
}

.upload-dropzone i {
    color: var(--primary-orange);
}

/* End folder card css */
/* FILE CARD */
#new-files .folder-style {
    border-radius: 14px;
    border: 1px solid #e5e7eb;
    background: #fff;
    transition: all .25s ease;
    position: relative;
    height: 100%;
}

#new-files .folder-style:hover {
    box-shadow: 0 10px 24px rgba(0,0,0,.08);
    transform: translateY(-3px);
}

/* CARD BODY */
#new-files .folder-style .card-body {
    padding: 12px;
}

/* FILE ICON AREA */
#new-files .folder-style .icon {
    height: 90px;
    border-radius: 12px;
    background: #f3f4f6;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px;
}

#new-files .folder-style .icon i {
    font-size: 32px;
    color: #6b7280;
}

/* FILE NAME */
#new-files .folder-style h6 {
    font-size: 13px;
    font-weight: 500;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ACTION BUTTON (DELETE) */
#new-files .folder-style .settings {
    position: absolute;
    top: 10px;
    right: 10px;
    opacity: 0;
    transform: scale(.9);
    transition: all .2s ease;
}

#new-files .folder-style:hover .settings {
    opacity: 1;
    transform: scale(1);
}

#new-files .folder-style .settings .mybutton {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #ef4444;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

#new-files .folder-style .settings i {
    font-size: 14px;
    color: #fff !important;
}

/* GRID SPACING */
#new-files .col-2 {
    margin-bottom: 1rem;
}

.addmem-flink-nw {				
	position: fixed;
	right: -12.5px;
	top: 50%;
	margin: 0;
	padding: 7px 20px;
	color: #fff;				
	z-index: 999;
	
}
.grecaptcha-badge {
    width: 70px !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
    left: 4px !important;
}
.grecaptcha-badge:hover {
    width: 256px !important;
}

.paymentajaxpreloader {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 999999;
	background-color: rgba(255, 255, 255, 0.8);
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url('../../images/preloader.svg');
}
.paymentajaxpreloader:after {
	position: absolute;
	left: 50%;
	top: 35%;
	content: 'Redirecting For Payment...';
	font-weight: bold;
	font-size: 20px;
	transform: translateX(-50%);
	z-index: 9999999;
}
.ajaxpreloader {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 999999;
	background-color: rgba(255, 255, 255, 0.9);
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url('../../images/preloader.svg');
}

#subscribe_modal .wpcf7-spinner {
    margin-top: 5px;
}

/* Style for modal forms */
#subscribe_modal .wpcf7 .wpcf7-response-output {
    display: none;
    margin: 0 0.5em;
    padding: 10px 15px;
    border-radius: 5px;
    border-width: 1px;
    font-size: 14px;
}

/* Show only when form has response */
#subscribe_modal .wpcf7 form.sent .wpcf7-response-output,
#subscribe_modal .wpcf7 form.invalid .wpcf7-response-output,
#subscribe_modal .wpcf7 form.failed .wpcf7-response-output,
#subscribe_modal .wpcf7 form.spam .wpcf7-response-output {
    display: block !important;
}

/* Color states */
#subscribe_modal .wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450;
    background-color: #f7fff7;
    color: #2e7d32;
}

#subscribe_modal .wpcf7 form.invalid .wpcf7-response-output,
#subscribe_modal .wpcf7 form.failed .wpcf7-response-output,
#subscribe_modal .wpcf7 form.spam .wpcf7-response-output {
    border-color: #d63638;
    background-color: #fff7f7;
    color: #d63638;
}

/* Desktop hover dropdown */
@media (min-width: 992px) {
    .navbar #menu-primary .dropdown:hover > .dropdown-menu {
        display: block;
        margin-top: 0;
        opacity: 1;
        visibility: visible;
    }
}

@media (min-width: 992px) {
    .navbar #menu-primary .dropdown-menu {
        display: block;
        opacity: 0;
        visibility: hidden;
        transition: all 0.2s ease;
    }

    .navbar #menu-primary .dropdown:hover > .dropdown-menu {
        opacity: 1;
        visibility: visible;
    }
}

.orange-form .text-end p{
    display:flex;
    justify-content: end;
    align-items: center;
}

.orange-form .wpcf7-spinner{
    order:1;
}

.orange-form .wpcf7-submit{
    order:2;
}
