:root {
            --header-bg: #004f52;
            --white: #ffffff;
            --button-bg: #b8f0f1;
            --button-text: #061d1e;
            --gold: #d8b56a;
        }

        * {
            box-sizing: border-box;
        }

        html,
body {
    font-family: "Poppins", sans-serif;
    background: #f5faf9;
    
    
    
}
section { margin: 60px 0  !important;}
.m-0 { margin: 0px !important;}
.mb-0 { margin-bottom: 0px;}
.mp-0 { margin-top: 0px;}

  .step-description::-webkit-scrollbar {
    width: 5px;
    -webkit-border-radius: 10px 10px 10px 10px;
    border-radius: 10px 10px 10px 10px;
}
/* Track */

.step-description::-webkit-scrollbar-track {
    background: #ebeaea !important;
    -webkit-border-radius: 10px 10px 10px 10px;
    border-radius: 10px 10px 10px 10px;
}
/* Handle */

.step-description::-webkit-scrollbar-thumb {
    background: #888;
    -webkit-border-radius: 10px 10px 10px 10px;
    border-radius: 10px 10px 10px 10px;
}


body {padding: 92px 0 0 0;}
      
        /* Header */
        .site-header {
            background: var(--header-bg);
            width: 100%;
            position: fixed;
            top: 0;
            z-index: 999;
        }

        /* Exact 1200px content width */
        .header-container {
            width: 1200px;
            max-width: calc(100% - 40px);
            margin: 0 auto;
        }

        .navbar {
            min-height: 92px;
            padding: 0;
        }

        /* Logo */
        .site-logo {
            position: relative;
            display: inline-block;
            color: var(--white);
            text-decoration: none;
            font-family: Georgia, "Times New Roman", serif;
            font-size: 48px;
            line-height: 1;
            letter-spacing: 1px;
            padding-bottom: 10px;
        }

        .site-logo::after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 44px;
            height: 2px;
            background: var(--gold);
        }

        /* Navigation */
        .main-nav {
            display: flex;
            align-items: center;
            gap: 30px;
        }

        .main-nav .nav-link {
            color: var(--white);
            font-size: 15px;
            font-weight: 600;
            padding: 0 !important;
            text-decoration: none;
            white-space: nowrap;
        }

        .main-nav .nav-link:hover {
            color: var(--button-bg);
        }

        /* Services dropdown arrow */
        .services-link {
            display: flex !important;
            align-items: center;
            gap: 7px;
        }

        .services-link::after {
            content: "";
            width: 7px;
            height: 7px;
            border-right: 1.5px solid #fff;
            border-bottom: 1.5px solid #fff;
            transform: rotate(45deg);
            margin-top: -4px;
        }

        /* CTA */
        .consultation-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 18px;

            min-width: 245px;
            height: 43px;
            padding: 0 20px;

            border-radius: 30px;
            background: var(--button-bg);
            color: var(--button-text);

            font-size: 14px;
            font-weight: 700;
            text-decoration: none;

            transition: all 0.25s ease;
        }

        .consultation-btn span {
            font-size: 22px;
            font-weight: 400;
            line-height: 1;
        }

        .consultation-btn:hover {
            background: #ffffff;
            color: var(--button-text);
        }

        /* Mobile toggle */
        .navbar-toggler {
            border: 0;
            padding: 5px;
            margin-right: 20px;
            box-shadow: none !important;
        }

        .navbar-toggler-icon {
            width: 28px;
            height: 22px;
            background-image: none;
            position: relative;
            border-top: 2px solid #fff;
            border-bottom: 2px solid #fff;
        }

        .navbar-toggler-icon::after {
            content: "";
            position: absolute;
            top: 8px;
            left: 0;
            width: 100%;
            border-top: 2px solid #fff;
        }
/* =========================================
   COMMON DROPDOWN - SERVICES + INDUSTRIES
========================================= */

.dropdown-menu-wrapper {
    position: relative;
}

/* Dropdown parent link */
.dropdown-link {
    display: flex;
    align-items: center;
    gap: 7px;
}

/* Arrow */
.dropdown-arrow {
    font-size: 9px;
    font-weight: 700;
    margin-top: 2px;
    transition: transform 0.3s ease;
}

/* =========================================
   DESKTOP DROPDOWN
========================================= */

@media (min-width: 992px) {

    .common-dropdown {
        position: absolute;
        top: 100%;
        left: 0;

        width: 420px;
        /* max-height: 500px; */

        overflow-y: auto;

        background: #ffffff;

        padding: 12px;

        border-radius: 12px;

        box-shadow: 0 12px 35px rgba(0, 0, 0, 0.12);

        opacity: 0;
        visibility: hidden;
        pointer-events: none;

        transform: translateY(10px);

        transition:
            opacity 0.3s ease,
            visibility 0.3s ease,
            transform 0.3s ease;

        z-index: 9999;
    }

    /* Invisible bridge */
    .dropdown-menu-wrapper::after {
        content: "";

        position: absolute;

        left: 0;
        right: 0;

        top: 100%;

        height: 15px;

        background: transparent;
    }

    /* Open on hover */
    .dropdown-menu-wrapper:hover .common-dropdown {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;

        transform: translateY(0);
    }

    /* Arrow up on hover */
    .dropdown-menu-wrapper:hover .dropdown-arrow {
        transform: rotate(180deg);
    }

    /* Dropdown links */
    .common-dropdown a {
        display: block;

        padding: 11px 14px;

        color: #004f4d;

        text-decoration: none;

        font-size: 14px;
        font-weight: 500;

        line-height: 1.4;

        border-radius: 7px;
        border-bottom: solid 1px #e6e6e6;

        transition:
            color 0.25s ease,
            background 0.25s ease,
            padding-left 0.25s ease;
    }

    .common-dropdown a:hover {
        color: #d47e00;

        background: #f7f7f7;

        /* padding-left: 19px; */
    }
}


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

@media (max-width: 991px) {

    .dropdown-menu-wrapper {
        position: relative;
        width: 100%;
    }

    /* Parent link */
    .dropdown-menu-wrapper .dropdown-link {
        width: 100%;

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

        cursor: pointer;
    }

    /* -----------------------------------------
       CLOSED STATE
    ----------------------------------------- */

    .dropdown-menu-wrapper .common-dropdown {

        position: static;

        width: 100%;

        max-height: 0;

        overflow: hidden;

        padding: 0;
        margin: 0;

        border: 0;

        border-radius: 0;

        box-shadow: none;

        opacity: 0;

        visibility: hidden;

        pointer-events: none;

        transform: none;

        transition:
            max-height 0.4s ease,
            opacity 0.3s ease,
            padding 0.3s ease;
    }


    /* -----------------------------------------
       ACTIVE / OPEN STATE
    ----------------------------------------- */

    .dropdown-menu-wrapper.active .common-dropdown {

        position: static;

        width: 100%;

        max-height: 1000px;

        padding: 6px 0 8px;

        opacity: 1;

        visibility: visible;

        pointer-events: auto;

        transform: none;
    }


    /* -----------------------------------------
       MOBILE DROPDOWN LINKS
    ----------------------------------------- */

    .dropdown-menu-wrapper .common-dropdown a {

        display: block;

        width: 100%;

        padding: 10px 20px;

        /* margin: 0 20px; */

        color: #fff;

        text-decoration: none;

        font-size: 14px;
        border-bottom: solid 1px #ffffff30;

        font-weight: 500;

        line-height: 1.4;

        border-radius: 0px;

        transition:
            color 0.25s ease,
            background 0.25s ease,
            padding-left 0.25s ease;
    }

    .dropdown-menu-wrapper .common-dropdown a:hover {

        color: #ec5b17;

        background: #f7f7f7;

        padding-left: 20px;
    }


    /* -----------------------------------------
       MOBILE ARROW
    ----------------------------------------- */

    .dropdown-arrow {

        font-size: 10px;

        transition: transform 0.3s ease;
    }

    /* CLOSED = DOWN */
    .dropdown-menu-wrapper:not(.active) .dropdown-arrow {

        transform: rotate(0deg);
    }

    /* ACTIVE = UP */
    .dropdown-menu-wrapper.active .dropdown-arrow {

        transform: rotate(180deg);
    }


    /* -----------------------------------------
       IMPORTANT:
       DISABLE DESKTOP HOVER ON MOBILE
    ----------------------------------------- */

    .dropdown-menu-wrapper:hover .common-dropdown {

        position: static;

        max-height: 0;

        padding: 0;

        opacity: 0;

        visibility: hidden;

        pointer-events: none;

        transform: none;
    }


    /* ACTIVE MUST OVERRIDE HOVER */
    .dropdown-menu-wrapper.active:hover .common-dropdown {

        position: static;

        max-height: 1000px;

        padding: 6px 0 8px;

        opacity: 1;

        visibility: visible;

        pointer-events: auto;

        transform: none;
    }


    /* Keep arrow UP when active even while hovering */
    .dropdown-menu-wrapper.active:hover .dropdown-arrow {

        transform: rotate(180deg);
    }

    /* Keep arrow DOWN when closed */
    .dropdown-menu-wrapper:not(.active):hover .dropdown-arrow {

        transform: rotate(0deg);
    }

}
        


        /* Tablet */
        @media (max-width: 1199px) {

            .header-container {
                max-width: calc(100% - 40px);
            }

            .main-nav {
                gap: 20px;
            }

            .consultation-btn {
                min-width: 215px;
            }
        }

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

            .navbar {
                min-height: 78px;
            }

            .site-logo {
                font-size: 38px;
            }

            .navbar-collapse {
                padding: 20px 0 25px;
            }

            .main-nav {
                flex-direction: column;
                align-items: flex-start;
                gap: 0px;
                width: 100%;
                
            }

            .main-nav .nav-link {
                font-size: 16px;
            }

            .consultation-btn {
                width: 100%;
                min-width: 0;
                margin-top: 5px;
            }
        }

        /* Small mobile */
        @media (max-width: 575px) {

            .header-container {
                max-width: calc(100%);
            }

            .navbar {
                min-height: 72px;
            }

            .site-logo {
                font-size: 32px;
                padding: 8px 20px;
            }

            .site-logo::after {
                width: 35px;
            }
        }



        /* =========================================================
   REAL ESTATE HERO
========================================================= */

.real-estate-hero {
    position: relative;
    min-height: 815px;
    overflow: hidden;
    background-color: #012d33;
    /* background: url("../images/hero-bg-book-keeping.jpg") no-repeat center center; */
    background-size: cover;
    color: #ffffff;
}


/* =========================================================
   CUSTOM CONTAINER
========================================================= */

.container-custom {
    width: 1200px;
    max-width: calc(100% - 40px);
    margin-left: auto;
    margin-right: auto;
}


/* =========================================================
   HERO BACKGROUND
========================================================= */

/* .real-estate-hero-bg {
    position: absolute;
    top: 0;
    right: 0;

    width: 58%;
    height: 100%;

    background-image:
        linear-gradient(
            90deg,
            #003f42 0%,
            rgba(0, 63, 66, 0.88) 15%,
            rgba(0, 63, 66, 0.15) 48%,
            rgba(0, 63, 66, 0) 70%
        ),
        url("../images/real-estate-hero.webp");

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

    z-index: 0;
} */


/* =========================================================
   HERO CONTENT
========================================================= */

.real-estate-hero-content {
    position: relative;
    min-height: 650px;

    display: flex;
    align-items: flex-start;

    z-index: 2;
}


/* =========================================================
   LEFT COPY
========================================================= */

.real-estate-copy {
    position: relative;
    width: 60%;
    padding-top: 46px;
    z-index: 5;
}


.hero-small-title {
    color: #fed16d;

    font-size: 20px;
    line-height: 1.4;
    font-weight: bold;

    max-width: 610px;
}


.hero-line {
    width: 78px;
    height: 4px;

    margin-top: 13px;
    margin-bottom: 12px;

    border-radius: 5px;

    background: #ffca55;
}


.real-estate-copy .hero-big-title {
    margin: 0;
    text-transform: uppercase;

    font-size: 55px;
    line-height: 1.16;

    font-weight: bold;
    letter-spacing: -1.5px;

    color: #ffffff;
}


.real-estate-copy .hero-big-title span {
    color: #ffca55;
}

.hero-small-title {
    font-size: 21px;
    line-height: 1.4;
    font-weight: 700;
}

.real-estate-copy .hero-big-title {
    font-size: 54px;
    line-height: 1.16;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.hero-feature {
    font-size: 18px;
    font-weight: 600;
}

.hero-cta {
    font-size: 17px;
    font-weight: 600;
}

.hero-trust {
    font-size: 15px;
    font-weight: 500;
}

.benefit-content h3 {
    font-size: 19px;
    line-height: 1.08;
    font-weight: 700;
}

.benefit-content p {
    font-size: 15px;
    font-weight: 500;
}




/* =========================================================
   FEATURES
========================================================= */

.hero-features {
    margin-top: 25px;
}


.hero-feature {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 12px;

    font-size: 18px;
    line-height: 1.4;
    font-weight: 700;
}


.check-icon {
  
}


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

.hero-cta, .theme-cta {
    
    max-width: 100%;
    height: 61px;

    margin-top: 35px;

    padding: 0 27px;

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

    border-radius: 40px;

    background: #b7eceb;
    color: #001f21;

    text-decoration: none;

    font-size: 16px;
    font-weight: bold;

    transition: all 0.25s ease;
}


.hero-cta strong,  .theme-cta strong {
    font-size: 30px;
    line-height: 1;
    font-weight: 400;
}


.hero-cta:hover, .theme-cta:hover {
    background: #ffffff;
    color: #003f42;
    transform: translateY(-2px);
}
.hero-cta.whiteBtn { background: #fff !important; color: #000000 !important; border: solid 1px #c79f31;}


/* =========================================================
   TRUST TEXT
========================================================= */

.hero-trust {
    display: block;
    align-items: center;
    gap: 10px;
    padding: 0 15px;

    margin-top: 28px;

    font-size: 16px;
    font-weight: 500;
}


.hero-trust i {
    font-style: normal;
    color: #ffffff;
}


/* =========================================================
   RIGHT VISUAL
========================================================= */

.real-estate-visual {
    position: absolute;

    top: 0;
    right: -145px;

    width: 760px;
    height: 650px;

    z-index: 2;
}


.hero-main-image {
    width: 100%;
    height: 100%;

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

    display: block;
}


/* =========================================================
   COMPLIANCE BADGE
========================================================= */

.compliance-badge {
    position: absolute;

    left: 40px;
    top: 230px;

    width: 225px;
    height: 225px;

    object-fit: contain;

    z-index: 5;
}


/* =========================================================
   BENEFITS BAR
========================================================= */

.hero-benefits {
    position: relative;

    width: 100%;
    min-height: 122px;

    margin-top: -1px;

    padding: 15px 18px;

    display: grid;
    grid-template-columns: repeat(4, 1fr);
    align-items: center;

    border: 2px solid #014544;
    border-radius: 11px;

    background: linear-gradient(
        180deg,
        #ffd875 0%,
        #ffc450 100%
    );

    color: #003f42;

    z-index: 10;
}


.benefit-item {
    min-height: 88px;

    display: grid;
    grid-template-columns: 82px 1fr;
    gap: 15px;
    align-items: center;

    padding: 0 17px;

    border-right: 1px solid rgba(0, 63, 66, 0.12);
}


.benefit-item:last-child {
    border-right: 0;
}





.benefit-icon img {

    object-fit: contain;
}


.benefit-content h3 {
    margin: 0;

    font-size: 19px;
    line-height: 1.08;

    font-weight: 800;
}


.benefit-content p {
    margin: 5px 0 0;

    font-size: 15px;
    line-height: 1.2;

    font-weight: 500;
}


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

@media (max-width: 1199px) {

    .container-custom {
        max-width: calc(100% - 40px);
    }


    .real-estate-copy {
        width: 55%;
    }


    .real-estate-copy .hero-big-title {
        font-size: 47px;
    }


    .real-estate-visual {
        right: -210px;
    }


    .compliance-badge {
        left: 20px;
    }


    .benefit-item {
        padding: 0 10px;
    }


    .benefit-icon {
        width: 65px;
        height: 65px;
        flex-basis: 65px;
        margin-right: 10px;
    }


    .benefit-icon img {
        width: 43px;
        height: 43px;
    }


    .benefit-content h3 {
        font-size: 16px;
    }


    .benefit-content p {
        font-size: 13px;
    }

}


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

@media (max-width: 991px) {

    .real-estate-hero {
        min-height: auto;
        background: #012d33 !important;
        padding-bottom: 35px;
    }


  

    .real-estate-hero-content {
        min-height: auto;

        display: flex;
        flex-direction: column;
    }


    .real-estate-copy {
        width: 100%;
        padding-top: 50px;
    }


    .hero-small-title {
        font-size: 19px;
    }


    .real-estate-copy .hero-big-title {
        font-size: 48px;
    }


    .real-estate-visual {
        position: relative;

        top: auto;
        right: auto;

        width: 100%;
        height: 430px;

        margin-top: 25px;
    }


    .compliance-badge {
        left: 8%;
        top: 45%;

        width: 175px;
        height: 175px;
    }


    .hero-benefits {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;

        margin-top: 10px;
    }


    .benefit-item {
        border-right: 0;
    }

}


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

@media (max-width: 767px) {

    .container-custom {
        max-width: calc(100% - 30px);
    }


    .real-estate-hero-bg {
        height: 420px;
    }


    .real-estate-copy {
        padding-top: 35px;
    }


    .hero-small-title {
        font-size: 17px;
        line-height: 1.35;
    }


    .hero-line {
        width: 60px;
        height: 3px;

        margin-top: 12px;
        margin-bottom: 10px;
    }


    .real-estate-copy .hero-big-title {
        font-size: 39px;
        line-height: 1.12;

        letter-spacing: -0.7px;
    }


    .hero-features {
        margin-top: 22px;
    }


    .hero-feature {
        font-size: 16px;
        margin-bottom: 10px;
    }


    .check-icon {
        width: 18px;
        height: 18px;
        flex-basis: 18px;

        font-size: 11px;
    }


    .hero-cta {
        width: 100%;
        height: 57px;

        margin-top: 28px;

        padding: 0 20px;

        font-size: 15px;
    }


    .hero-cta strong {
        font-size: 26px;
    }


    .hero-trust {
        flex-wrap: wrap;
        gap: 7px;
        text-align: center;

        margin-top: 20px;

        font-size: 13px;
    }


    .real-estate-visual {
        height: 300px;

        margin-top: 20px;
    }


    .compliance-badge {
        left: 4%;
        top: 43%;

        width: 125px;
        height: 125px;
    }


    .hero-benefits {
        grid-template-columns: 1fr;

        padding: 10px;
    }


    .benefit-item {
        min-height: 78px;

        padding: 8px 10px;

        border-bottom: 1px solid rgba(0, 63, 66, 0.12);
    }


    .benefit-item:last-child {
        border-bottom: 0;
    }


    .benefit-icon {
        width: 62px;
        height: 62px;
        flex-basis: 62px;
    }


    .benefit-icon img {
        width: 60px;
        height: 60px;
    }

    .benefit-item { display:grid; grid-template-columns: 62px 1fr; gap: 10px; align-items: center; padding: 8px 10px; border-bottom: 1px solid rgba(0, 63, 66, 0.12); }


    .benefit-content h3 {
        font-size: 17px;
    }


    .benefit-content p {
        font-size: 13px;
    }

}


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

@media (max-width: 480px) {

    .real-estate-copy .hero-big-title {
        font-size: 30px;
    }


    .hero-small-title {
        font-size: 16px;
    }


    .hero-feature {
        font-size: 15px;
    }


    .real-estate-visual {
        height: 250px;
    }


    .compliance-badge {
        width: 105px;
        height: 105px;
    }


    .benefit-icon {
        width: 57px;
        height: 57px;
        flex-basis: 57px;
    }


    .benefit-content h3 {
        font-size: 16px;
    }

}



/* =========================================================
   BEFORE / AFTER SECTION
========================================================= */

.before-after-section {
    position: relative;

    padding: 38px 0 40px;

    

    color: #17243a;
}


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

.before-after-heading {
    text-align: center;

    margin-bottom: 28px;
}


.section-eyebrow {
    margin-bottom: 8px;

    color: #d28700;

    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;
}


.before-after-heading h2 {
    margin: 0;

    color: #086442;

    font-size: 36px;
    line-height: 1.15;
    font-weight: 700;
}


.before-after-heading h3 {
    margin: 4px 0 0;

    color: #000000;

    font-size: 28px;
    line-height: 1.2;
    font-weight: 700;
}


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

.comparison-grid {
    display: grid;

    grid-template-columns:
        402px
        288px
        402px;

    column-gap: 16px;

    align-items: center;
}


/* =========================================================
   COLUMN HEADINGS
========================================================= */

.comparison-headings {
    margin-bottom: 22px;
}


.comparison-heading {
    height: 64px;

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

    border-radius: 11px;

    font-size: 22px;
    line-height: 1;
    font-weight: 700;
}


.before-heading {
    background: #e1e6ee;
    color: #000000;
}


.situation-heading {
    background: #fff4e2;
    color: #d17c00;
}


.after-heading {
    background: #d1efeb;
    color: #073f40;
}


/* =========================================================
   COMPARISON ROW
========================================================= */

.comparison-row {
    min-height: 150px;

    margin-bottom: 10px;
}


/* =========================================================
   CARDS
========================================================= */

.comparison-card {
    min-height: 156px;

    display: flex;
    align-items: center;

    padding: 12px;

    border-radius: 11px;

    border: 1px solid #d9e1e2;
}


.before-card {
    background: #f0f3f7;
}


.after-card {
    background: #e8f5f4;
}


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

.comparison-image {
    width: 118px;
    height: 125px;

    flex: 0 0 118px;

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

    overflow: hidden;
}


.comparison-image img {
    width: 100%;
    height: 100%;

    object-fit: contain;

    display: block;
}


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

.comparison-content {
    padding-left: 10px;
}


.comparison-content h4 {
    margin: 0 0 3px;

    color: #101010;

    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
}


.comparison-content p {
    margin: 0;

    color: #30425d;

    font-size: 15px;
    line-height: 1.55;
    font-weight: 400;
}


/* =========================================================
   SITUATION
========================================================= */

.situation-text {
    padding: 0 15px;

    text-align: center;

    color: #d47e00;

    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
}


/* =========================================================
   BOTTOM CTA
========================================================= */

.comparison-bottom {
    text-align: center;

    padding-top: 28px;
}


.comparison-bottom h3 {
    margin: 0;

    color: #293c5a;

    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
}


.comparison-bottom h4 {
    margin: 4px 0 16px;

    color: #d47e00;

    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
}


/* =========================================================
   CTA BUTTON
========================================================= */

.comparison-cta {
    width: 546px;
    max-width: 100%;
    height: 56px;

    margin: 0 auto;

    padding: 0 28px;

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

    border-radius: 35px;

    background: #005b58;
    color: #ffffff;

    text-decoration: none;

    font-size: 18px;
    font-weight: 600;

    transition: all 0.25s ease;
}


.comparison-cta strong {
    font-size: 32px;
    line-height: 1;
    font-weight: 400;
}


.comparison-cta:hover {
    background: #004845;

    color: #ffffff;

    transform: translateY(-2px);
}


/* =========================================================
   TRUST
========================================================= */

.comparison-trust {
    display: flex;

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

    gap: 10px;

    margin-top: 8px;

    color: #111111;

    font-size: 14px;
    font-weight: 500;
}


.comparison-trust i {
    font-style: normal;
}


/* =========================================================
   1200px CONTAINER
========================================================= */

.container-custom {
    width: 1200px;
    max-width: calc(100% - 40px);

    margin-left: auto;
    margin-right: auto;
}


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

@media (max-width: 1199px) {

    .comparison-grid {
        grid-template-columns:
            minmax(0, 1fr)
            210px
            minmax(0, 1fr);
    }


    .comparison-content h4 {
        font-size: 17px;
    }


    .comparison-content p {
        font-size: 14px;
    }


    .comparison-image {
        width: 100px;
        flex-basis: 100px;
    }

}


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

@media (max-width: 767px) {

    .before-after-section {
        padding: 35px 0;
    }


    .container-custom {
        max-width: calc(100% - 30px);
    }


    /* Heading */

    .section-eyebrow {
        font-size: 13px;
    }


    .before-after-heading h2 {
        font-size: 29px;
    }


    .before-after-heading h3 {
        font-size: 21px;
    }


    /* Column headings */

    .comparison-headings {
        display: none;
    }


    /* Change each row to mobile layout */

    .comparison-row {
        display: flex;
        flex-direction: column;

        gap: 0px;

        margin-bottom: 25px;
    }


    .comparison-card {
        width: 100%;

        min-height: 140px;
    }


    .comparison-image {
        width: 105px;
        height: 115px;

        flex-basis: 105px;
    }


    .comparison-content {
        padding-left: 8px;
    }


    .comparison-content h4 {
        font-size: 17px;
    }


    .comparison-content p {
        font-size: 14px;
        line-height: 1.45;
    }


    /* Situation appears between cards */

    .situation-text {
        order: 2;

        width: 100%;

        padding: 8px 10px;

        border-radius: 0px;

        background: #fff5e5;

        font-size: 15px;
    }


    .before-card {
        order: 1;
    }


    .after-card {
        order: 3;
    }


    /* Bottom CTA */

    .comparison-bottom {
        padding-top: 5px;
    }


    .comparison-bottom h3 {
        font-size: 20px;
    }


    .comparison-bottom h4 {
        font-size: 19px;
    }


    .comparison-cta {
        height: 54px;

        padding: 0 20px;

        font-size: 15px;
    }


    .comparison-cta strong {
        font-size: 28px;
    }


    .comparison-trust {
        flex-wrap: wrap;

        gap: 6px;

        font-size: 12px;
    }

}


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

@media (max-width: 480px) {

    .before-after-heading h2 {
        font-size: 26px;
    }


    .before-after-heading h3 {
        font-size: 19px;
    }


    .comparison-card {
        padding: 9px;
    }


    .comparison-image {
        width: 90px;
        height: 105px;

        flex-basis: 90px;
    }


    .comparison-content h4 {
        font-size: 16px;
    }


    .comparison-content p {
        font-size: 13px;
    }


    .situation-text {
        font-size: 14px;
    }

}


.mobile-flow-arrow {
    display: none;
}

@media (max-width: 767px) {

     .mobile-flow-arrow {
        order: 2;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        width: 100%;
        height: 22px;
        position: relative;
    }

    .mobile-flow-arrow span {
        position: relative;
        display: block;
        width: 1px;
        height: 12px;
        background: #d47e00;
    }

    .mobile-flow-arrow span::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -1px;
        width: 8px;
        height: 8px;
        border-right: 1px solid #d47e00;
        border-bottom: 1px solid #d47e00;
        transform: translateX(-50%) rotate(45deg);
    }

    .comparison-card {
        position: relative;
        padding-top: 42px;
        border-radius: 15px 15px 0px 0px;
        
    }

    /* BEFORE RIVANTA */
    .before-card::before {
        content: "BEFORE RIVANTA";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        padding: 9px 12px;
        box-sizing: border-box;
        

        background: #e1e6ee;
        color: #29384f;

        border-radius: 11px 11px 0 0;

        font-size: 12px;
        line-height: 1;
        font-weight: 700;
        letter-spacing: .5px;
        text-align: center;
    }

    /* WITH RIVANTA */
    .after-card::before {
        content: "WITH RIVANTA";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        padding: 9px 12px;
        box-sizing: border-box;

        background: #d1efeb;
        color: #073f40;

        border-radius: 11px 11px 0 0;

        font-size: 12px;
        line-height: 1;
        font-weight: 700;
        letter-spacing: .5px;
        text-align: center;
    }

}



/* =========================================================
   ASSET CLASS SECTION
========================================================= */

.asset-class-layout {
    display: grid;
    grid-template-columns: 293px 1fr;
    gap: 30px;
    align-items: center;
}


/* LEFT COLUMN */

.asset-left-column {
    display: flex;
    flex-direction: column;
    gap: 30px;
}


/* ALL CARDS SAME SIZE */

.asset-card {
    width: 367px;
    height: 254px;
    min-height: 254px;

    box-sizing: border-box;

    padding: 30px 20px;

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

    text-align: center;

    background: #ffffff;

    border: 1px solid #d5e2e1;
    border-radius: 10px;

    overflow: hidden;

    transition:
        background-color 0.35s ease,
        border-color 0.35s ease;
}


/* BOTTOM CARDS */

.asset-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, 293px);
    gap: 23px;

    margin-top: 18px;
}


/* MAKE SURE BOTTOM CARDS DON'T OVERRIDE SIZE */

.asset-bottom-grid .asset-card {
    
    height: 254px;
    min-height: 254px;
}


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

.asset-card {
    position: relative;

    min-height: 254px;

    padding: 30px 25px;

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

    text-align: center;

    background: #ffffff;

    border: 1px solid #d5e2e1;
    border-radius: 11px;

    overflow: hidden;

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


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

.asset-card-icon {
    
    margin-bottom: 20px;

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

    border-radius: 50%;

    

    transition:
        transform 0.35s ease,
        margin-bottom 0.35s ease;
}


.asset-card-icon img {
  

    object-fit: contain;
}


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

.asset-card h3 {
    margin: 0;

    color: #003f40;

    font-size: 20px;
    line-height: 1.3;
    font-weight: 600;

    transition: color 0.3s ease;
}


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

.asset-card-description {

    margin-top: 0;
    overflow: hidden;

    opacity: 0;
    display:  none;

    color: #ffffff;

    font-size: 15px;
    line-height: 1.55;
    font-weight: 400;

    transition:
        max-height 0.4s ease,
        opacity 0.3s ease,
        margin-top 0.35s ease;

         position: absolute;
    left: 0;
    padding: 0 25px;
    top: 45%;
    
    right: 0;
    bottom: 0;

    margin-top: 12px;
    
}


/* =========================================================
   HOVER STATE
========================================================= */

.asset-card:hover, .asset-card.active  {
    background: #005653;
    border-color: #005653;
}


.asset-card:hover .asset-card-icon, .asset-card.active .asset-card-icon{
    display: none;
}


.asset-card:hover h3, .asset-card.active  h3 {
    color: #ffffff;
}


.asset-card:hover h3, .asset-card.active  h3 {position: absolute; top:20%}
.asset-card:hover .asset-card-description, .asset-card.active .asset-card-description {

    opacity: 1;
    display: block;
}



/* =========================================================
   CENTER CONTENT
========================================================= */

.asset-main-content {
    padding: 0 20px;

    text-align: center;
}


.asset-eyebrow {
    margin-bottom: 8px;

    color: #e0a62f;

    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;
}


.asset-main-content h2 {
    margin: 0;

    color: #004c4c;

    font-size: 31px;
    line-height: 1.28;
    font-weight: 700;
}


.asset-heading-line {
    width: 117px;
    height: 4px;

    margin: 14px auto 25px;

    border-radius: 10px;

    background: #e1af3e;
}


.asset-main-content p {
    max-width: 610px;

    margin: 0 auto;

    color: #173d3e;

    font-size: 16px;
    line-height: 1.55;
    font-weight: 400;
}


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

.asset-cta {
    width: 580px;
    max-width: 100%;
    height: 60px;

    margin: 40px auto 0;

    padding: 0 28px;

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

    border-radius: 35px;

    background: #005653;
    color: #ffffff;

    text-decoration: none;

    font-size: 18px;
    line-height: 1;
    font-weight: 600;

    transition: all 0.25s ease;
}


.asset-cta strong {
    font-size: 31px;
    line-height: 1;
    font-weight: 400;
}


.asset-cta:hover {
    background: #003f40;
    color: #ffffff;

    transform: translateY(-2px);
}


/* =========================================================
   BOTTOM CARDS
========================================================= */

.asset-bottom-grid {
    display: grid;

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

    gap: 23px;

    margin-top: 22px;
}


.asset-bottom-grid .asset-card {
    min-height: 254px;
}


.asset-class-section { padding: 50px 0 60px 0 ; }


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

@media (max-width: 1199px) {

    .asset-class-layout {
        grid-template-columns: 340px 1fr;
        gap: 30px;
    }


    .asset-main-content h2 {
        font-size: 27px;
    }


    .asset-cta {
        width: 100%;
    }

}


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

@media (max-width: 767px) {

    .asset-class-section {
        padding: 0px 0 30px;
    }


    .container-custom {
        max-width: calc(100% - 44px);
    }


    /* TOP CONTENT */

    .asset-class-layout {
        display: flex;
        flex-direction: column;

        gap: 30px;
    }


    /* CENTER FIRST ON MOBILE */

    .asset-main-content {
        order: 1;

        width: 100%;

        padding: 0;
    }


    /* LEFT CARDS */

    .asset-left-column {
        order: 2;

        width: 100%;

        gap: 15px;
    }


    /* BOTTOM CARDS */

    .asset-bottom-grid {
        grid-template-columns: 1fr;

        gap: 15px;

        margin-top: 15px;
    }


    /* CARD */

    .asset-card {
        min-height: 230px;
    }


    /* CENTER HEADING */

    .asset-eyebrow {
        font-size: 13px;
    }


    .asset-main-content h2 {
        font-size: 25px;
        line-height: 1.3;
    }


    .asset-main-content p {
        font-size: 14px;
    }


    /* CTA */

    .asset-cta {
        height: 55px;

        margin-top: 28px;

        padding: 0 20px;
        line-height: 22px;

        font-size: 15px;
    }


    .asset-cta strong {
        font-size: 27px;
    }

}


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

@media (max-width: 480px) {

    .asset-main-content h2 {
        font-size: 22px;
    }
    .asset-card {
    width: 100%;

    }
    /* .asset-card-description { opacity: 1; display: none; position: relative; top: auto; left: auto; right: auto; bottom: auto; padding: 0; margin-top: 12px; color: #000;} */
    .asset-card, .asset-bottom-grid .asset-card {
        min-height: auto;
        height: auto;
     display: grid; grid-template-columns: 52px 1fr; gap: 15px;
     padding: 10px;
    
    }
    .asset-card h3 { text-align: left;}


        


    .asset-card-icon {
        width: 52px;
        height: 52px;

        margin-bottom: 0px;
    }


    .asset-card-icon img {
        width: 52px;
        height: 52px;
    }


    .asset-card h3 {
        font-size: 16px;
    }


    .asset-card-description {
        font-size: 14px;
    }

    

}



/* END  ASSET CLASS SECTION */



/* =========================================================
   ELITE ASSET LEDGERS SECTION
========================================================= */

.elite-metrics-section {
    padding: 70px 0 10px 0 ;
    background: #f5faf9;
}


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

.elite-metrics-content {
    padding-right: 30px;
}


.elite-metrics-eyebrow {
    margin-bottom: 8px;

    color: #e29f22;

    font-size: 16px;
    line-height: 1.55;
    font-weight: 600;
}


.elite-metrics-content h2 {
    margin: 0 0 32px;

    color: #004f4d;

    font-size: 31px;
    line-height: 1.28;
    font-weight: 700;
}


/* =========================================================
   METRIC ITEM
========================================================= */

.metric-item {
    display: flex;
    align-items: flex-start;

    gap: 20px;

    margin-bottom: 28px;
}


.metric-item:last-child {
    margin-bottom: 0;
}


/* =========================================================
   METRIC ICON
========================================================= */

.metric-icon {
    flex: 0 0 91px;

    width: 91px;
    height: 91px;

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

    border-radius: 50%;

    background: #e4f3ef;
}


.metric-icon img {
    width: 55px;
    height: 55px;

    object-fit: contain;
}


/* =========================================================
   METRIC TEXT
========================================================= */

.metric-text {
    padding-top: 3px;
}


.metric-text h3 {
    margin: 0 0 7px;

    color: #004f4d;

    font-size: 21px;
    line-height: 1.3;
    font-weight: 700;
}


.metric-text p {
    max-width: 490px;

    margin: 0;

    color: #263e5b;

    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
}


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

.elite-metrics-image {
    width: 100%;

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

    padding-left: 15px;
}


.elite-metrics-image img {
    display: block;

    width: 100%;
    max-width: 570px;
    height: auto;

    object-fit: contain;
}


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

@media (max-width: 991px) {

    .elite-metrics-section {
        padding: 55px 0 60px;
    }


    .elite-metrics-content {
        padding-right: 0;
        margin-bottom: 40px;
    }


    .elite-metrics-content h2 {
        font-size: 28px;
    }


    .elite-metrics-image {
        padding-left: 0;
    }

}


@media (max-width: 767px) {

    .elite-metrics-section {
        padding: 0px 0 20px;
    }


    .desktop-break {
        display: none;
    }


    .elite-metrics-eyebrow {
        font-size: 14px;
        line-height: 1.45;
    }


    .elite-metrics-content h2 {
        font-size: 24px;
        line-height: 1.3;

        margin-bottom: 28px;
    }


    .metric-item {
        gap: 15px;

        margin-bottom: 24px;
    }


    .metric-icon {
        flex: 0 0 70px;

        width: 70px;
        height: 70px;
    }


    .metric-icon img {
        width: 44px;
        height: 44px;
    }


    .metric-text h3 {
        font-size: 18px;
    }


    .metric-text p {
        font-size: 14px;
        line-height: 1.5;
    }


    .elite-metrics-content {
        margin-bottom: 35px;
    }


    .elite-metrics-image img {
        width: 100%;
        max-width: 100%;
    }

}


@media (max-width: 480px) {

    .metric-item {
        align-items: flex-start;
    }


    .metric-icon {
        flex: 0 0 62px;

        width: 62px;
        height: 62px;
    }


    .metric-icon img {
        width: 39px;
        height: 39px;
    }


    .metric-text h3 {
        font-size: 16px;
    }


    .metric-text p {
        font-size: 13px;
    }

}
 

/* End   ELITE ASSET LEDGERS SECTION */



/* =========================================================
   STATS COUNTER SECTION
========================================================= */

.stats-counter-section {
    
    background: #f5faf9;
}


/* =========================================================
   CONTAINER
========================================================= */

.stats-counter-section .container-custom {
    width: 1200px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}


/* =========================================================
   MAIN BOX
========================================================= */

.stats-counter-box {
    position: relative;

    min-height: 158px;

    padding: 30px 45px;

    display: grid;
    grid-template-columns: repeat(4, 1fr);

    align-items: center;

    border-radius: 30px;

    overflow: hidden;

    background:
      
        url("../images/stats-bg.png") center center / cover no-repeat;
}


/* =========================================================
   STAT ITEM
========================================================= */

.stat-item {
    text-align: center;

    position: relative;
}


/* =========================================================
   TOP - ICON + NUMBER
========================================================= */

.stat-top {
    display: flex;

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

    gap: 12px;

    margin-bottom: 7px;
}


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

.stat-icon {
    width: 57px;
    height: 57px;

    flex: 0 0 57px;

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

    /* border: 2px solid #e5b544; */

    border-radius: 50%;
}


.stat-icon img {
  

    object-fit: contain;
}


/* =========================================================
   NUMBER
========================================================= */

.stat-number {
    color: #ffffff;

    font-size: 40px;
    line-height: 1;

    font-weight: 700;

    min-width: 55px;

    text-align: left;
}


.counter {
    display: inline-block;
}


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

.stat-title {
    color: #ffffff;

    font-size: 15px;
    line-height: 1.3;

    font-weight: 500;
}


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

@media (max-width: 991px) {

    .stats-counter-box {
        padding: 30px 20px;

        grid-template-columns: repeat(2, 1fr);

        gap: 30px 10px;

        border-radius: 25px;
    }

}


@media (max-width: 767px) {

    .stats-counter-section {
        padding: 0px 0 45px;
    }


    .stats-counter-section .container-custom {
        max-width: calc(100% - 30px);
    }


    .stats-counter-box {
        grid-template-columns: 1fr 1fr;

        padding: 28px 10px;

        border-radius: 22px;

        gap: 30px 5px;
    }


    .stat-top {
        gap: 7px;
    }


    .stat-icon {
        width: 48px;
        height: 48px;

        flex-basis: 48px;
    }


    .stat-icon img {
        width: 29px;
        height: 29px;
    }


    .stat-number {
        font-size: 30px;

        min-width: auto;
    }


    .stat-title {
        font-size: 12px;
    }

}


@media (max-width: 480px) {

    .stats-counter-box {
        padding: 25px 5px;

        gap: 25px 0;
    }


    .stat-icon {
        width: 43px;
        height: 43px;

        flex-basis: 43px;
    }


    .stat-icon img {
        width: 26px;
        height: 26px;
    }


    .stat-number {
        font-size: 27px;
    }


    .stat-title {
        font-size: 11px;
    }

}

/* End  STATS COUNTER SECTION */


  /* =========================================================
   SERVICES SUITE SECTION
========================================================= */

.services-suite-section {
    padding: 0px 0 20px;
    background: #f5faf9;
}


/* CONTAINER */

.services-suite-section .container-custom {
    width: 1200px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}


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

.services-suite-heading {
    text-align: center;
    margin-bottom: 32px;
}

.services-eyebrow {
    color: #d98900;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;
    margin-bottom: 14px;
}

.services-suite-heading h2 {
    margin: 0;

    color: #00504d;
    padding: 0 250px;

    font-size: 30px;
    line-height: 1.3;
    font-weight: 700;
}

.heading-line {
    width: 117px;
    height: 5px;

    margin: 17px auto 0;

    background: #e5b544;

    border-radius: 10px;
}


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

.services-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 18px 27px;
}

/* =====================================================
   SERVICE BOX
===================================================== */

.service-box {
    width: 100%;
    height: 216px;
    padding: 25px;

    position: relative;

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

    text-align: center;

    background: #ffffff;

    border-radius: 10px;

    box-shadow: 0 3px 12px rgba(0, 70, 65, 0.08);

    overflow: hidden;

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


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

.service-box .service-icon {
    width: 65px;
    height: 65px;

    object-fit: contain;

    margin-bottom: 18px;

    transition:
        opacity 0.25s ease;
}


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

.service-box h3 {
    margin: 0;

    color: #004f4d;

    font-size: 18px;
    line-height: 1.35;

    font-weight: 700;

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


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

.service-description {
    position: absolute;

    left: 25px;
    right: 25px;

    top: 50%;

    transform: translateY(20px);

    margin: 0;

    color: #ffffff;

    font-size: 14px;
    line-height: 1.5;

    font-weight: 400;

    opacity: 0;

    visibility: hidden;

    transition:
        opacity 0.25s ease,
        transform 0.25s ease,
        visibility 0.25s ease;
}


/* =====================================================
   HOVER
===================================================== */

.service-box:hover {
    background: #005652;

    transform: translateY(-3px);
}


/* Hide icon WITHOUT changing card height */

.service-box:hover .service-icon {
    opacity: 0;
}


/* Title stays in exactly the same position */

.service-box:hover h3 {
    color: #ffffff;

    transform: translateY(-86px);
}

.homepageServicelist .service-box:hover h3 {transform: translateY(-107px);}
.homepageServicelist .service-box:hover .service-description {transform: translateY(-31px);}

/* Show description */

.service-box:hover .service-description {
    opacity: 1;

    visibility: visible;

    transform: translateY(-6px);
}

/* =====================================================
   DEFAULT ACTIVE FIRST CARD
===================================================== */

.service-box.active {
    background: #005652;
}

.service-box.active .service-icon {
    opacity: 0;
}

.service-box.active h3 {
    color: #ffffff;
    transform: translateY(-86px);
}

.service-box.active .service-description {
    opacity: 1;
    visibility: visible;
    transform: translateY(-6px);
}


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

.hidden-service {
    display: none;
}

.services-grid.show-all .hidden-service {
    display: flex;
}


/* =========================================================
   BUTTON
========================================================= */

.services-button-wrap {
    display: flex;
    justify-content: center;

    margin-top: 48px;
}

.view-services-btn {
    border: 0;
    outline: none;

    padding: 12px 28px;

    min-width: 186px;

    border-radius: 30px;

    background: #e5bd68;

    color: #004f4d;

    font-family: 'Poppins', sans-serif;

    font-size: 15px;
    font-weight: 600;

    cursor: pointer;

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

.view-services-btn:hover {
    background: #dcae4d;

    transform: translateY(-2px);
}


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

@media (max-width: 991px) {

    .services-grid {
        grid-template-columns: repeat(2, 1fr);

        gap: 16px;
    }

}


@media (max-width: 767px) {

    .services-suite-section {
        padding: 0px 0 0 0px;
    }

    .services-suite-section .container-custom {
        max-width: calc(100% - 40px);
    }

    .services-suite-heading {
        margin-bottom: 28px;
    }
    .services-suite-heading h2 { padding: 0 20px; }

    .services-eyebrow {
        font-size: 13px;
    }

    .services-suite-heading h2 {
        font-size: 24px;
    }

    .heading-line {
        width: 90px;
        height: 4px;
    }

    .services-grid {
        grid-template-columns: 1fr 1fr;

        gap: 14px;
    }

    .service-box {
        min-height: 190px;

        padding: 22px 12px;
    }

    .service-box img {
        width: 55px;
        height: 55px;

        margin-bottom: 14px;
    }

    .service-box h3 {
        font-size: 15px;
    }

    .service-box p {
        font-size: 13px;
    }

    .services-button-wrap {
        margin-top: 35px;
    }

}


@media (max-width: 480px) {

    .services-grid {
        grid-template-columns: 1fr;
    }

    
  .service-box {
    width: 100%;
    display: grid;
    grid-template-columns: 65px 1fr;
    column-gap: 20px;
    padding: 10px 20px 15px 20px;
     grid-auto-rows: max-content;
     min-height: auto;
     height: auto;
}
.service-box h3 { min-height: auto; text-align: left; margin-top: 0px; margin-bottom: 0px; font-size: 16px; line-height: 1.3; font-weight: 700; }

/* Description should span the complete width */
.service-box .service-description {
    grid-column: 1 / -1;
    width: 100%;
    box-sizing: border-box;
     margin-top: 10px;
}
.service-box .service-icon { margin-bottom: 0px; }

.service-box .service-description {
    
    opacity: 1;
    display: block;
    position: relative;
    transform: translateY(0);
    left: auto;
    right: auto;
    visibility: visible;
    text-align: left;
    
    top: auto;
    color: #000;

}


}

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

.roadmap-section {
    width: 100%;
    background: #f4fbfa;
    overflow: hidden;
    font-family: "Poppins", sans-serif;
    padding-top: 45px;
}


/* =========================================
   CONTAINER
========================================= */

.roadmap-section .container {
    width: 1200px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}


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

.roadmap-heading {
    text-align: center;
    position: relative;
    z-index: 5;
    margin-bottom: 35px;
    padding: 0 270px;
}

.roadmap-subtitle {
    color: #e18a00;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}

.roadmap-heading h2 {
    color: #004f4d;
    font-size: 30px;
    line-height: 1.3;
    font-weight: 700;
    margin: 0;
}


/* =========================================
   ROAD AREA
========================================= */

.roadmap-road {
    width: 100%;
    max-width: 1600px;
    height: 506px;
    margin: 0 auto;
    position: relative;
}


/* Exact original road image */

.roadmap-bg {
    position: absolute;
    left: 50%;
    bottom: 0;

    width: 1600px;
    height: 638px;

    max-width: none;

    transform: translateX(-50%);

    object-fit: contain;
    object-position: center bottom;

    z-index: 1;
}


/* =========================================
   STEP COMMON
========================================= */

.roadmap-step {
    position: absolute;
    z-index: 10;

    width: 280px;

    transition:
        transform 0.45s ease,
        z-index 0s;
}


/* =========================================
   STEP CARDS
========================================= */

.step-card {
    background: #ffffff;

    border-radius: 10px;

    padding: 20px 22px;

    min-height: 100px;

    text-align: center;

    box-shadow:
        0 8px 25px rgba(0, 55, 55, 0.10);

    border: 1px solid rgba(0, 79, 77, 0.08);

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease,
        min-height 0.4s ease;
}


.step-card h3 {
    color: #004f4d;

    font-size: 20px;

    line-height: 1.35;

    font-weight: 600;

    margin: 0;
}


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

.step-description {
    max-height: 0;
    overflow: hidden;

    opacity: 0;

    margin-top: 0;

    color: #263d4e;

    font-size: 14px;

    line-height: 1.55;

    transition:
        max-height 0.5s ease,
        opacity 0.35s ease,
        margin-top 0.35s ease;
}

.step-description p { margin: 5px 0;}

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

.roadmap-step:hover {
    z-index: 30;
}

.roadmap-step:hover .step-card {

    transform: translateY(-8px);

    box-shadow:
        0 18px 40px rgba(0, 55, 55, 0.18);
}


.roadmap-step:hover .step-description {

    max-height: 150px;

    opacity: 1;

    margin-top: 0px;
}

.homepageroadmap .roadmap-step:hover .step-description {   max-height: 300px;}

.homepageroadmap .roadmap-step.step-02:hover { width: 510px;}


/* =========================================
   STEP LABEL
========================================= */

.step-label {
    width: 98px;
    height: 38px;

    border-radius: 30px;

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

    margin: -18px auto 0;

    color: #ffffff;

    background: #006b66;

    font-size: 13px;

    font-weight: 700;

    position: relative;

    z-index: 5;

    transition:
        transform 0.35s ease,
        background 0.35s ease;
}


/* =========================================
   LABEL HOVER
========================================= */

.roadmap-step:hover .step-label {

    transform: scale(1.08);

    background: #e68b00;
}

/* =========================================
   STEP POSITIONS - MATCH DESIGN
========================================= */

.roadmap-step {
    position: absolute;
    z-index: 10;
    width: 280px;
}


/* STEP 01 */

.step-01 {
    left: 20%;
    bottom: 193px;

    animation: stepFloat1 4s ease-in-out infinite;
}


/* STEP 02 */

.step-02 {
    left: 50%;
   bottom: 343px;

    transform: translateX(-50%);

    animation: stepFloat2 4.5s ease-in-out infinite;
}


/* STEP 03 */

.step-03 {
    left: 60.7%;
    bottom: 210px;

    animation: stepFloat3 4.2s ease-in-out infinite;
}



/* =========================================
   STEP 02 DIFFERENT COLOR
========================================= */

.step-02 .step-label {
    background: #00b89c;
}

.step-03 .step-label {
    background: #ff981f;
}


/* =========================================
   FLOATING ANIMATION
========================================= */

.step-01 {
    animation: stepFloat1 4s ease-in-out infinite;
}

.step-02 {
    animation: stepFloat2 4.5s ease-in-out infinite;
}

.step-03 {
    animation: stepFloat3 4.2s ease-in-out infinite;
}


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

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


@keyframes stepFloat2 {
    0%,
    100% {
        transform: translateX(-50%) translateY(0);
    }

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


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

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

/* =========================================
   STOP FLOATING WHEN HOVER
========================================= */

.step-01:hover,
.step-02:hover,
.step-03:hover {
    animation-play-state: paused;
}


/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1200px) {

    .roadmap-road {
        height: 580px;
    }

    .roadmap-bg {
        display: none !important;
        height: 580px;
        width: auto;
    }

    .step-01 {
        left: 8%;
        top: 135px;
    }

    .step-02 {
        top: 10px;
    }

    .step-03 {
        left: auto;
        right: 8%;
        top: 105px;
    }

    .roadmap-step {
        width: 260px;
    }
}


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

@media (max-width: 991px) {

    .roadmap-section {
        padding-top: 35px;
    }

    .roadmap-heading h2 {
        font-size: 25px;
    }

    .roadmap-subtitle {
        font-size: 14px;
    }

    .roadmap-road {
        height: 520px;
    }

    .roadmap-bg {
        height: 520px;
    }

    .roadmap-step {
        width: 220px;
    }

    .step-card {
        padding: 16px;
    }

    .step-card h3 {
        font-size: 14px;
    }

    .step-description {
        font-size: 13px;
    }

    .step-01 {
        left: 5%;
        top: 145px;
    }

    .step-02 {
        top: 15px;
    }

    .step-03 {
        right: 5%;
        top: 125px;
    }
}


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

@media (max-width: 767px) {

    .roadmap-section {
        padding-top: 30px;
    }
    .roadmap-bg-mobile { width: 100%; height: auto; object-fit: cover; object-position: center; position: relative; left:-20px }

    .roadmap-section .container {
        max-width: calc(100% - 30px);
    }

    .roadmap-heading {
        margin-bottom: 25px;
        padding: 0 20px;
    }

    .roadmap-subtitle {
        font-size: 13px;
    }

    .roadmap-heading h2 {
        font-size: 22px;
        line-height: 1.35;
    }

    .roadmap-heading h2 br {
        display: none;
    }


    /*
       On mobile we keep the road image
       and place the cards vertically.
    */

    .roadmap-road {
        height: auto;
        background-color: #e4faf6;

        padding: 0px 0px 50px 0px;
    }


    .roadmap-bg {
        opacity: 0.25;

        width: 900px;
        height: auto;

        top: 180px;
        bottom: auto;
    }


    .roadmap-step,
    .step-01,
    .step-02,
    .step-03 {

        position: absolute;

        left: auto;
        right: auto;
        top: auto;

        transform: none;

        width: 100%;

        max-width: 100%;
        display: none;

        margin: 0 auto 35px;

        animation: none;
    }

     .step-01, .step-02, .step-03{ left: 27%; top: 3%; display: block;  width: 70%;}
     .step-02 { top: 37%;}
     .step-03 { top: 70%;}
     .step-label {    position: absolute;
    top: -20px;
    left: 25%;
    right: auto;
    margin: auto;
    height: 29px;
}


    .step-card {
        min-height: auto;
    }


    .step-description {
        max-height: none;
        opacity: 1;
        margin-top: 10px;
        height: 100px;
        overflow: auto;
    overflow-x: hidden
    }


    .roadmap-step:hover .step-card {
        transform: translateY(-5px);
    }


    .step-02 .step-label {
        background: #00b89c;
    }

    .step-03 .step-label {
        background: #ff981f;
    }
}

/* end RIVANTA ROADMAP SECTION  */



/* =========================================================
   SERVICE DETAIL CTA
========================================================= */

.service-detail-cta-section {
    width: 100%;
    padding: 40px 0;
    background: #f4faf9;
    font-family: "Poppins", sans-serif;
}

.service-detail-cta-section .container {
    max-width: 1200px;
}


/* Main Box */

.service-detail-cta {
    display: grid;
    grid-template-columns: 1fr 360px;

    min-height: 330px;

    background: #ffffff;

    border: 1px solid #d5e3e2;
    border-radius: 18px;

    overflow: hidden;

    box-shadow: 0 8px 30px rgba(0, 74, 70, 0.06);
}


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

.service-detail-cta-image {
    height: 100%;
    /* min-height: 330px; */

    background: url("../images/bookkeeping-cta.jpg") no-repeat left center;
    background-size: cover;

    overflow: hidden;
    padding: 0  0 0 313px;
    position: relative;
}

.service-detail-cta-image img {
    width: 100%;
    height: 100%;

    display: block;

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


/* =========================================================
   CENTER CONTENT
========================================================= */

.service-detail-cta-content {
    padding: 42px 10px 30px 15px;

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

.service-detail-cta-content h2 {
    margin: 0;

    color: #082f31;

    font-size: 39px;
    line-height: 1.12;

    font-weight: 700;

    letter-spacing: -1.2px;
}

.service-detail-cta-content h2 span {
    display: block;
    color: #006c68;
}


/* Yellow Line */

.service-detail-cta-title-line {
    width: 65px;
    height: 5px;

    background: #e5ad3d;

    border-radius: 10px;

    margin: 13px 0 15px;
}


/* Description */

.service-detail-cta-description {
    max-width: 430px;

    margin: 0;

    color: #162f3b;

    font-size: 18px;
    line-height: 1.45;

    font-weight: 400;
}


/* =========================================================
   FEATURES
========================================================= */

.service-detail-cta-features {
    display: flex;

    margin-top: 26px;
}

.service-detail-cta-feature {
    display: flex;
    align-items: center;

    min-width: 135px;

    padding-right: 18px;
    margin-right: 18px;

    border-right: 1px solid #d9e3e2;
}

.service-detail-cta-feature:last-child {
    border-right: 0;
    margin-right: 0;
    padding-right: 0;
}


/* Feature Icon */

.service-detail-cta-feature-icon {
    width: 48px;
    height: 48px;

    flex: 0 0 48px;

    border-radius: 50%;

    background: #e6f5f2;

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

    margin-right: 10px;
}

.service-detail-cta-feature-icon i {
    color: #005d59;
    font-size: 23px;
}


/* Feature Text */

.service-detail-cta-feature-text {
    display: flex;
    flex-direction: column;

    color: #092f34;

    font-size: 12px;
    line-height: 1.25;
}

.service-detail-cta-feature-text strong {
    font-weight: 600;
}

.service-detail-cta-feature-text span {
    font-weight: 500;
}


/* =========================================================
   RIGHT FORM
========================================================= */

.service-detail-cta-form {
    padding: 38px 20px;

    border-left: 1px solid #d8e3e2;

    display: flex;
    align-items: center;
}

.service-detail-cta-form form {
    width: 100%;
}


/* Form Fields */

.service-detail-cta-form-field {
    width: 100%;
    height: 50px;

    border: 1px solid #d5e0e2;

    border-radius: 9px;

    display: flex;
    align-items: center;

    padding: 0 15px;

    margin-bottom: 14px;

    background: #ffffff;

    transition: all 0.25s ease;
}

.service-detail-cta-form-field:focus-within {
    border-color: #006c68;

    box-shadow: 0 0 0 3px rgba(0, 108, 104, 0.08);
}

.service-detail-cta-form-field i {
    width: 28px;

    color: #092f34;

    font-size: 21px;
}

.service-detail-cta-form-field input {
    width: 100%;

    border: 0;
    outline: 0;

    background: transparent;

    color: #162f3b;

    font-family: "Poppins", sans-serif;

    font-size: 14px;
}

.service-detail-cta-form-field input::placeholder {
    color: #637683;
}


/* =========================================================
   BUTTON
========================================================= */

.service-detail-cta-btn {
    width: 100%;
    height: 54px;

    border: 0;

    border-radius: 30px;

    background: #00615d;

    color: #ffffff;

    padding: 0 18px 0 25px;

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

    font-family: "Poppins", sans-serif;

    font-size: 15px;
    font-weight: 600;

    cursor: pointer;

    transition: all 0.3s ease;
}

.service-detail-cta-btn i {
    font-size: 22px;

    transition: transform 0.3s ease;
}

.service-detail-cta-btn:hover {
    background: #004d4a;

    transform: translateY(-2px);

    box-shadow: 0 8px 20px rgba(0, 97, 93, 0.18);
}

.service-detail-cta-btn:hover i {
    transform: translateX(5px);
}


/* =========================================================
   FORM NOTE
========================================================= */

.service-detail-cta-note {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;

    gap: 8px;

    margin-top: 17px;

    color: #344b55;

    font-size: 10px;
    line-height: 1.4;

    white-space: nowrap;
}

.service-detail-cta-note b {
    font-weight: 600;
}


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

@media (max-width: 1100px) {

    .service-detail-cta {
        grid-template-columns: 250px 1fr 350px;
    }

    .service-detail-cta-content {
        padding: 30px 25px;
    }

    .service-detail-cta-content h2 {
        font-size: 32px;
    }

    .service-detail-cta-description {
        font-size: 16px;
    }

    .service-detail-cta-form {
        padding: 30px 20px;
    }

}


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

@media (max-width: 991px) {

    .service-detail-cta {
        grid-template-columns: 1fr;
    }

    .service-detail-cta-image {
        height: 320px;
        min-height: 320px;
    }

    .service-detail-cta-content {
        padding: 35px 30px;
    }

    .service-detail-cta-content h2 {
        font-size: 34px;
    }

    .service-detail-cta-description {
        max-width: 100%;
    }

    .service-detail-cta-form {
        border-left: 0;

        border-top: 1px solid #d8e3e2;

        padding: 30px;
    }
    .service-detail-cta-image { padding: 50px 0 0 0px;}

}


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

@media (max-width: 575px) {

    .service-detail-cta-section {
        padding: 20px 8px;
    }

    .service-detail-cta {
        border-radius: 14px;
    }

    .service-detail-cta-image {
        height: auto;
        min-height: auto;
        background-size: 0% ;
        padding:  0;
        

        background-position: center top;
    }

    .service-detail-cta-content {
        padding: 20px 22px 28px 22px;
    }

    .service-detail-cta-content h2 {
        font-size: 25px;
        letter-spacing: 0px;
    }

    .service-detail-cta-description {
        font-size: 15px;
        line-height: 1.5;
    }

    .service-detail-cta-features {
        margin-top: 22px;
        width: 100%;
    }

    .service-detail-cta-feature {
        min-width: 0;

        flex: 1;

        padding-right: 8px;
        margin-right: 8px;
    }

    .service-detail-cta-feature-icon {
        width: 38px;
        height: 38px;

        flex: 0 0 38px;

        margin-right: 6px;
    }

    .service-detail-cta-feature-icon i {
        font-size: 18px;
    }

    .service-detail-cta-feature-text {
        font-size: 10px;
    }

    .service-detail-cta-form {
        padding: 25px 20px;
    }

    .service-detail-cta-btn {
        font-size: 13px;
        padding-left: 18px;
    }

    .service-detail-cta-note {
        white-space: normal;
        font-size: 9px;
        text-align: center;
    }

}


/* =========================================
   SERVICE DETAIL CTA - FLOATING LABEL
========================================= */

.service-detail-cta-form {
    width: 100%;
}

.service-detail-cta-field {
    position: relative;
    margin-bottom: 15px;
}

/* Input */
.service-detail-cta-field input {
    width: 100%;
    height: 50px;
    padding: 15px 18px 10px 44px;
    border: 1px solid #c9dfe0;
    border-radius: 9px;
    background: #fff;
    color: #12383c;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    outline: none;
    transition: 0.25s ease;
    box-sizing: border-box;
}

/* Focus */
.service-detail-cta-field input:focus {
    border-color: #005c5b;
    box-shadow: 0 0 0 2px rgba(0, 92, 91, 0.08);
}

/* Icon */
.service-detail-cta-icon {
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: #082f34;
    pointer-events: none;
    transition: 0.25s ease;
}

/* Label */
.service-detail-cta-field label {
    position: absolute;
    left: 44px;
    top: 50%;
    transform: translateY(-50%);
    padding: 0 5px;
    background: #fff;
    color: #526b76;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    line-height: 1;
    pointer-events: none;
    transition: 0.25s ease;
}

/* =========================================
   FLOAT LABEL ON FOCUS
========================================= */

.service-detail-cta-field input:focus + label,
.service-detail-cta-field input:not(:placeholder-shown) + label {
    top: 0;
    transform: translateY(-50%);
    font-size: 11px;
    color: #005c5b;
}

/* Icon changes on focus */
.service-detail-cta-field input:focus ~ .service-detail-cta-icon {
    color: #005c5b;
}


/* =========================================
   BUTTON
========================================= */

.service-detail-cta-button {
    width: 100%;
    height: 52px;
    border: 0;
    border-radius: 30px;
    background: #005c5b;
    color: #fff;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    padding: 0 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    transition: 0.3s ease;
}

.service-detail-cta-button span {
    font-size: 25px;
    line-height: 1;
    transition: 0.3s ease;
}

.service-detail-cta-button:hover {
    background: #004a49;
}

.service-detail-cta-button:hover span {
    transform: translateX(5px);
}


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

@media (max-width: 767px) {

    .service-detail-cta-field input {
        height: 52px;
        font-size: 13px;
    }

    .service-detail-cta-field label {
        font-size: 13px;
    }

    .service-detail-cta-field input:focus + label,
    .service-detail-cta-field input:not(:placeholder-shown) + label {
        font-size: 10px;
    }

    .service-detail-cta-button {
        height: 50px;
        font-size: 14px;
    }
}



/* =========================================
   RIVANTA PROTECTS SECTION
========================================= */



.rivanta-protects {
    width: 100%;
    position: relative;
    overflow: hidden;
    padding: 30px 20px 80px;
    background:url("../images/rivanta-protects-bg.jpg") no-repeat center top;
    background-size: cover;
   

    
}


/* Decorative curved lines */

.rivanta-protects::before {
    content: "";
    position: absolute;
    width: 520px;
    height: 520px;
    left: -180px;
    bottom: -300px;
    border: 2px solid rgba(226, 177, 76, 0.20);
    border-radius: 50%;
    box-shadow:
        0 0 0 20px transparent,
        0 0 0 40px rgba(226, 177, 76, 0.10),
        0 0 0 60px transparent,
        0 0 0 80px rgba(226, 177, 76, 0.08);
    pointer-events: none;
}


.rivanta-protects::after {
    content: "";
    position: absolute;
    width: 600px;
    height: 600px;
    right: -260px;
    bottom: -390px;
    border: 2px solid rgba(226, 177, 76, 0.16);
    border-radius: 50%;
    box-shadow:
        0 0 0 20px transparent,
        0 0 0 40px rgba(226, 177, 76, 0.08),
        0 0 0 60px transparent,
        0 0 0 80px rgba(226, 177, 76, 0.06);
    pointer-events: none;
}


/* Container */

.rivanta-protects-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}


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

.rivanta-protects-heading {
    text-align: center;
    margin-bottom: 45px;
}


.rivanta-protects-subtitle {
    font-size: 15px;
    line-height: 1.5;
    font-weight: 600;
    color: #e38a00;
    margin-bottom: 4px;
}


.rivanta-protects-heading h2 {
    margin: 0;
    padding: 0;
    color: #004e4b;
    font-size: 29px;
    line-height: 1.35;
    font-weight: 600;
}


.rivanta-protects-heading-line {
    width: 110px;
    height: 5px;
    background: #e3ad3e;
    border-radius: 50px;
    margin: 18px auto 0;
}


/* =========================================
   TABLE
========================================= */

.rivanta-protects-table-wrap {
    width: 100%;
    overflow-x: auto;
    border-radius: 10px;

    box-shadow:
        0 8px 25px rgba(0, 61, 59, 0.10);

    scrollbar-width: thin;
}


.rivanta-protects-table {
    width: 100%;
    min-width: 760px;
    border-collapse: separate;
    border-spacing: 0;

    background: rgba(255, 255, 255, 0.96);

    font-family: 'Poppins', sans-serif;
}


/* =========================================
   TABLE HEADER
========================================= */

.rivanta-protects-table thead th {
    height: 85px;
    padding: 15px 20px;

    background: #fffdf8;

    color: #253553;

    font-size: 16px;
    line-height: 1.35;
    font-weight: 600;

    text-align: center;

    border-right: 1px solid #e1e2e1;
    border-bottom: 1px solid #e1e2e1;
}


.rivanta-protects-table thead th:first-child {
    text-align: left;
    color: #064d4b;
}


/* Metric column */

.rivanta-protects-metric {
    width: 28%;
}


/* Generalist / Big 4 */

.rivanta-protects-table thead th:nth-child(2),
.rivanta-protects-table thead th:nth-child(3) {
    width: 23%;
}


/* Rivanta heading */

.rivanta-protects-rivanta-head {
    width: 26% !important;

    background: #00534f !important;

    color: #ffffff !important;

    border-right: none !important;

    display: table-cell;
}


/* Rivanta logo */

.rivanta-protects-r-logo {
    display: inline-block;
    vertical-align: middle;

    font-family: Georgia, serif;
    font-size: 42px;
    line-height: 1;

    font-weight: 700;
    color: #ffffff;

    margin-right: 8px;
}


/* Rivanta title */

.rivanta-protects-r-title {
    display: inline-block;
    vertical-align: middle;

    text-align: left;

    color: #ffffff;

    font-size: 16px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================
   TABLE BODY
========================================= */

.rivanta-protects-table tbody td {
    height: 65px;

    padding: 10px 20px;

    background: rgba(255, 255, 255, 0.90);

    color: #35425d;

    font-size: 15px;
    line-height: 1.5;
    font-weight: 400;

    text-align: center;

    border-right: 1px solid #dfe2e1;
    border-bottom: 1px solid #dfe2e1;

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


/* First column */

.rivanta-protects-table tbody td:first-child {
    text-align: left;
    color: #35425d;
}


/* Last column */

.rivanta-protects-rivanta-cell {
    background: #e5eeee !important;
    border-right: none !important;
}


/* Last row */

.rivanta-protects-table tbody tr:last-child td {
    border-bottom: none;
}


/* =========================================
   PARTIAL TEXT
========================================= */

.rivanta-protects-partial {
    color: #df8c00 !important;
    font-weight: 600 !important;
}


/* =========================================
   CHECK ICONS
========================================= */

.rivanta-protects-check {
    width: 26px;
    height: 26px;

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

    border-radius: 50%;

    color: #ffffff;

    font-size: 17px;
    line-height: 1;
    font-weight: 700;
}


.rivanta-protects-check-red {
    background: #ff1111;
}


.rivanta-protects-check-green {
    background: #05b817;
}


/* =========================================
   HOVER
========================================= */

.rivanta-protects-table tbody tr:hover td {
    background: #f8fbfa;
}


.rivanta-protects-table tbody tr:hover
.rivanta-protects-rivanta-cell {
    background: #dcebea !important;
}


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

@media (max-width: 767px) {

    .rivanta-protects {
        padding: 30px  20px;
    }


    .rivanta-protects-container {
        max-width: 100%;
    }


    .rivanta-protects-heading {
        margin-bottom: 30px;
    }


    .rivanta-protects-subtitle {
        font-size: 13px;
    }


    .rivanta-protects-heading h2 {
        font-size: 23px;
        line-height: 1.35;
    }


    .rivanta-protects-heading-line {
        width: 80px;
        height: 4px;
        margin-top: 14px;
    }


    .rivanta-protects-table-wrap {
        border-radius: 8px;
    }


    .rivanta-protects-table {
        min-width: 720px;
    }


    .rivanta-protects-table thead th {
        height: 75px;
        padding: 12px 14px;
        font-size: 14px;
    }


    .rivanta-protects-table tbody td {
        height: 60px;
        padding: 9px 14px;
        font-size: 13px;
    }


    .rivanta-protects-r-logo {
        font-size: 34px;
    }


    .rivanta-protects-r-title {
        font-size: 14px;
    }


    .rivanta-protects-check {
        width: 24px;
        height: 24px;
        font-size: 15px;
    }

}

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

.accountability-section {
    width: 100%;
    position: relative;
    overflow: hidden;
    background: #f8eae1;
    padding: 70px 30px 65px;
    font-family: 'Poppins', sans-serif;
    box-sizing: border-box;
}

.accountability-section *,
.accountability-section *::before,
.accountability-section *::after {
    box-sizing: border-box;
}


/* =========================================
   CONTAINER
========================================= */

.accountability-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: 52% 48%;
    align-items: center;
}


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

.accountability-content {
    position: relative;
    z-index: 2;
    padding-right: 25px;
}


.accountability-eyebrow {
    color: #d87900;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 600;
    margin-bottom: 8px;
}


.accountability-title {
    margin: 0;
    padding: 0;

    color: #00504d;

    font-size: 29px;
    line-height: 1.38;
    font-weight: 700;

    text-transform: uppercase;
}


.accountability-line {
    width: 80px;
    height: 4px;

    margin: 20px 0 16px;

    background: #dfa93d;
    border-radius: 20px;
}


.accountability-intro {
    margin: 0 0 24px;

    color: #174e4e;

    font-size: 15px;
    line-height: 1.6;
    font-weight: 400;
}


/* =========================================
   POINTS
========================================= */

.accountability-point {
    display: flex;
    align-items: flex-start;

    width: 100%;

    margin-bottom: 14px;
}


.accountability-number {
    flex: 0 0 28px;

    width: 28px;
    height: 28px;

    margin-top: 1px;
    margin-right: 20px;

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

    border-radius: 50%;

    background: #e7bd5c;
    color: #00504d;

    font-size: 14px;
    line-height: 1;
    font-weight: 600;
}


.accountability-point-content {
    max-width: 490px;
}


.accountability-point-content h3 {
    margin: 0 0 4px;

    color: #00504d;

    font-size: 17px;
    line-height: 1.4;
    font-weight: 700;
}


.accountability-point-content p {
    margin: 0;

    color: #174e4e;

    font-size: 15px;
    line-height: 1.55;
    font-weight: 400;
}


/* =========================================
   CTA BUTTON
========================================= */

.accountability-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    margin-top: 14px;

    min-width: 240px;
    height: 44px;

    padding: 0 20px;

    border-radius: 30px;

    background: #005b57;
    color: #ffffff;

    text-decoration: none;

    font-size: 14px;
    line-height: 1;
    font-weight: 700;

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


.accountability-btn i {
    font-size: 14px;

    transition: transform 0.3s ease;
}


.accountability-btn:hover {
    background: #003f3d;
    color: #ffffff;

    transform: translateY(-2px);

    box-shadow: 0 8px 20px rgba(0, 80, 77, 0.18);
}


.accountability-btn:hover i {
    transform: translateX(5px);
}


/* =========================================
   RIGHT VISUAL
========================================= */

.accountability-visual {
    width: 100%;
    height: 100%;

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

    position: relative;
}


.accountability-main-image {
    display: block;

    width: 100%;
    max-width: 650px;
    height: auto;

    object-fit: contain;
}


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

@media (max-width: 991px) {

    .accountability-section {
        padding: 55px 25px;
    }

    .accountability-container {
        grid-template-columns: 1fr 1fr;
    }

    .accountability-content {
        padding-right: 15px;
    }

    .accountability-title {
        font-size: 24px;
    }

    .accountability-eyebrow {
        font-size: 14px;
    }

    .accountability-intro,
    .accountability-point-content p {
        font-size: 14px;
    }

    .accountability-point-content h3 {
        font-size: 16px;
    }

    .accountability-main-image {
        max-width: 560px;
    }
}


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

@media (max-width: 767px) {

    .accountability-section {
        padding: 45px 20px 50px;
    }

    .accountability-container {
        display: flex;
        flex-direction: column;
    }

    .accountability-content {
        width: 100%;
        padding-right: 0;
    }

    .accountability-eyebrow {
        font-size: 14px;
        margin-bottom: 7px;
    }

    .accountability-title {
        font-size: 23px;
        line-height: 1.35;
    }

    .accountability-line {
        margin: 16px 0 14px;
    }

    .accountability-intro {
        font-size: 14px;
        margin-bottom: 22px;
    }

    .accountability-point {
        margin-bottom: 18px;
    }

    .accountability-number {
        flex: 0 0 27px;

        width: 27px;
        height: 27px;

        margin-right: 14px;

        font-size: 13px;
    }

    .accountability-point-content {
        max-width: none;
    }

    .accountability-point-content h3 {
        font-size: 16px;
        line-height: 1.4;
    }

    .accountability-point-content p {
        font-size: 14px;
        line-height: 1.55;
    }

    .accountability-btn {
        margin-top: 8px;
        height: 44px;
        min-width: 230px;
    }

    .accountability-visual {
        width: 100%;
        margin-top: 35px;
    }

    .accountability-main-image {
        width: 100%;
        max-width: 600px;
    }
}
 /* end  ACCOUNTABILITY SECTION */


 /* =========================================
   RIVANTA TESTIMONIALS SECTION
========================================= */

.rivanta-testimonials-section {
    width: 100%;
    
    background: #f4faf9;
    box-sizing: border-box;
    font-family: "Poppins", sans-serif;
}

.rivanta-testimonials-container {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}


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

.rivanta-testimonials-heading {
    text-align: center;
    margin-bottom: 42px;
}

.rivanta-testimonials-eyebrow {
    margin-bottom: 10px;
    color: #e58a00;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
}

.rivanta-testimonials-heading h2 {
    position: relative;
    margin: 0;
    padding-bottom: 22px;
    color: #004f4d;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.35;
}


/* Gold underline */

.rivanta-testimonials-heading h2::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 100px;
    height: 4px;
    background: #e5b34b;
    border-radius: 5px;
    transform: translateX(-50%);
}


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

.rivanta-testimonials-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 100%;
}


/* =========================================
   TESTIMONIAL ITEM
========================================= */

.rivanta-testimonial-item {
    position: relative;
    padding: 0 28px;
    box-sizing: border-box;
    min-height: 425px;
}


/* Vertical divider */

.rivanta-testimonial-item + .rivanta-testimonial-item {
    border-left: 2px solid #e5b34b;
}


/* =========================================
   QUOTE MARK
========================================= */

.rivanta-quote-mark {
    height: 50px;
    color: #005957;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 76px;
    font-weight: 700;
    line-height: 0.8;
    margin-bottom: 15px;
}


/* =========================================
   TESTIMONIAL TEXT
========================================= */

.rivanta-testimonial-text {
    color: #004f4d;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
}


/* =========================================
   AUTHOR
========================================= */

.rivanta-testimonial-author {
    margin-top: 30px;
    color: #004f4d;
    font-size: 15px;
    line-height: 1.55;
}

.rivanta-testimonial-author strong {
    display: block;
    margin-bottom: 3px;
    font-weight: 700;
}

.rivanta-testimonial-author span {
    display: block;
    font-weight: 500;
}


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

@media (max-width: 991px) {

    .rivanta-testimonials-section {
        padding: 50px 20px 60px;
    }

    .rivanta-testimonials-heading h2 {
        font-size: 27px;
    }

    .rivanta-testimonials-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .rivanta-testimonial-item {
        min-height: auto;
        padding: 0 20px 0px;
    }

    .rivanta-testimonial-item + .rivanta-testimonial-item {
        border-left: 0;
        border-top: 2px solid #e5b34b;
        padding-top: 35px;
    }

}


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

@media (max-width: 767px) {

    .rivanta-testimonials-section {
        padding: 40px 18px 0px;
    }

    .rivanta-testimonials-heading {
        margin-bottom: 35px;
    }

    .rivanta-testimonials-eyebrow {
        font-size: 14px;
    }

    .rivanta-testimonials-heading h2 {
        font-size: 24px;
        line-height: 1.35;
    }

    .rivanta-testimonials-heading h2 br {
        display: none;
    }

    .rivanta-testimonial-item {
        padding-left: 5px;
        padding-right: 5px;
    }

    .rivanta-testimonial-text {
        font-size: 15px;
        line-height: 1.55;
    }

    .rivanta-testimonial-author {
        font-size: 14px;
        margin-top: 25px;
    }

    .rivanta-quote-mark {
        font-size: 65px;
        margin-bottom: 10px;
    }

}   
/* enc RIVANTA TESTIMONIALS SECTION */



.blog-carousel-wrapper {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    overflow: visible;
}

.blog-carousel {
    width: 100%;
    overflow: hidden;
}

/* IMPORTANT - prevent partial cards */
.blog-carousel .owl-stage-outer {
    overflow: hidden;
}

.blog-carousel .owl-stage {
    display: flex;
}

.blog-carousel .owl-item {
    box-sizing: border-box;
}

.blog-card {
    width: 100%;
    background: #ffffff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 70, 70, 0.08);
    box-sizing: border-box;
}

.blog-card img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
}

.blog-card-content {
    padding: 18px 24px 22px;
}

.blog-meta {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 12px;
    font-size: 14px;
    color: #164f52;
}

.blog-meta span {
    display: flex;
    align-items: center;
    gap: 7px;
}

.blog-meta i {
    color: #f39a45;
}

.blog-card h3 {
    margin: 0 0 18px;
    color: #005a59;
    font-size: 23px;
    line-height: 1.3;
    font-weight: 700;
}

.blog-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #e9bd69;
    color: #004f50;
    text-decoration: none;
    padding: 12px 26px;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.blog-btn:hover {
    background: #005f5d;
    color: #ffffff;
}


/* OWL NAVIGATION */

.owl-nav {
    margin: 0;
}
.owl-nav button.disabled { opacity: 0.5;}

 .owl-prev,
 .owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;

    border-radius: 50% !important;
    background: #e0efeb !important;

    color: #012d33 !important;

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

    margin: 0 !important;

    font-size: 0 !important;
    z-index: 10;
    border: 0 !important;
}

 .owl-prev {
    left: -65px;
}

 .owl-next {
    right: -65px;
}

.owl-prev::before {
    content: "\f104";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 20px;
}

.owl-next::before {
    content: "\f105";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 20px;
}

 .owl-prev:hover,
 .owl-next:hover {
    background: #e9bd69 !important;
    color: #005d5c !important;
}


/* REMOVE DOTS */

.blog-carousel .owl-dots {
    display: none;
}


/* TABLET */

@media (max-width: 991px) {

    .blog-carousel-wrapper {
        max-width: 90%;
    }

    .blog-carousel .owl-prev {
        left: -55px;
    }

    .blog-carousel .owl-next {
        right: -55px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .blog-carousel-wrapper {
        max-width: 90%;
    }

    .blog-carousel .owl-prev {
        left: -22px;
    }
    .rivanta-blog-section { padding: 30px 0px; }

    .blog-carousel .owl-next {
        right: -22px;
    }

    .blog-card img {
        height: 200px;
    }

    .blog-card h3 {
        font-size: 20px;
    }

}


/* SMALL MOBILE */

@media (max-width: 480px) {

    .blog-carousel-wrapper {
        max-width: 85%;
    }

    .blog-carousel .owl-prev {
        left: -20px;
    }

    .blog-carousel .owl-next {
        right: -20px;
    }

} 


/* blog css end  */


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

.newsletter-section {
    width: 100%;
    /* padding: 35px 20px; */
    box-sizing: border-box;
}

.newsletter-inner {
    width: 100%;
    max-width: 1195px;
    min-height: 237px;
    margin: 0 auto;

    padding: 40px 80px;
    box-sizing: border-box;

    border-radius: 20px;
    background: url("../images/stats-bg.png") no-repeat center top;
    display: flex;
    flex-direction: column;
    background-size: cover;
    justify-content: center;
}


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

.newsletter-heading {
    text-align: center;
    margin-bottom: 25px;
}

.newsletter-subtitle {
    color: #e4b450;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 8px;
}

.newsletter-heading h2 {
    margin: 0;
    color: #ffffff;

    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
}


/* ==============================
   FORM
================================= */

.newsletter-form {
    width: 100%;

    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr)
        minmax(0, 1fr)
        175px;

    gap: 15px;

    align-items: center;
}


/* ==============================
   FLOATING INPUT
================================= */

.newsletter-field {
    position: relative;
    width: 100%;
}

.newsletter-field input {
    width: 100%;
    height: 60px;

    padding: 20px 22px 8px;

    box-sizing: border-box;

    border: 1px solid transparent;
    border-radius: 10px;

    background: #ffffff;

    color: #003f40;

    font-family: inherit;
    font-size: 16px;
    font-weight: 500;

    outline: none;

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


/* Label default position */

.newsletter-field label {
    position: absolute;

    left: 22px;
    top: 50%;

    transform: translateY(-50%);

    color: #003f40;

    font-size: 16px;
    font-weight: 500;

    pointer-events: none;

    background: #ffffff;

    padding: 3px 6px;
    border-radius: 5px;

    transition:
        top 0.2s ease,
        transform 0.2s ease,
        font-size 0.2s ease,
        color 0.2s ease;
}


/* ==============================
   FLOAT LABEL ON FOCUS
================================= */

.newsletter-field input:focus {
    border-color: #e5b85f;
    box-shadow: 0 0 0 2px rgba(229, 184, 95, 0.15);
}


/* Move label when focused */

.newsletter-field input:focus + label,

/* Keep label floated when input has value */

.newsletter-field input:not(:placeholder-shown) + label {
    top: 0;

    transform: translateY(-50%);

    font-size: 12px;

    color: #005b59;

    font-weight: 600;
}


/* ==============================
   SUBSCRIBE BUTTON
================================= */

.newsletter-submit {
    width: 100%;
    height: 60px;

    border: none;
    border-radius: 10px;

    background: #e7be6a;
    color: #003f40;

    font-family: inherit;
    font-size: 15px;
    font-weight: 700;

    cursor: pointer;

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

.newsletter-submit:hover {
    background: #f0cb7c;
    transform: translateY(-2px);
}


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

@media (max-width: 991px) {

    .newsletter-inner {
        padding: 35px 40px;
    }

    .newsletter-form {
        grid-template-columns: 1fr 1fr;
    }

    .newsletter-submit {
        grid-column: span 2;
    }

}


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

@media (max-width: 767px) {

    .newsletter-section {
        padding: 0 15px;
    }

    .newsletter-inner {
        padding: 35px 20px;
        border-radius: 16px;
    }

    .newsletter-heading {
        margin-bottom: 22px;
    }

    .newsletter-subtitle {
        font-size: 14px;
    }

    .newsletter-heading h2 {
        font-size: 24px;
    }

    .newsletter-form {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .newsletter-submit {
        grid-column: auto;
    }

}


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

@media (max-width: 480px) {

    .newsletter-inner {
        padding: 30px 15px;
    }

    .newsletter-heading h2 {
        font-size: 22px;
    }

}



/* end newsletter  */

/* ========================================
   RIVANTA FAQ SECTION
======================================== */

.rivanta-faq-section {
    width: 100%;
    
    background: #f5faf9;
    box-sizing: border-box;
}

.rivanta-faq-container {
    width: 100%;
    max-width: 935px;
    margin: 0 auto;
}


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

.rivanta-faq-heading {
    text-align: center;
    margin-bottom: 26px;
}

.rivanta-faq-subtitle {
    color: #e99416;
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 12px;
}

.rivanta-faq-heading h2 {
    margin: 0;
    color: #004f50;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
}


/* ========================================
   FAQ ITEM
======================================== */

.rivanta-faq-item {
    border: none !important;
    border-radius: 16px !important;
    overflow: hidden;

    background: #ffffff;

    margin-bottom: 14px;

    box-shadow: 0 3px 12px rgba(0, 70, 70, 0.10);
}


/* ========================================
   FAQ BUTTON
======================================== */

.rivanta-faq-item .accordion-button {
    position: relative;

    width: 100%;
    min-height: 51px;

    padding: 14px 55px 14px 22px;

    border: none !important;
    outline: none !important;

    background: #ffffff !important;

    color: #004f50 !important;

    font-family: inherit;
    font-size: 16px;
    font-weight: 500;

    box-shadow: none !important;

    display: flex;
    align-items: center;

    transition: background 0.25s ease;
}


/* Remove Bootstrap default arrow */

.rivanta-faq-item .accordion-button::after {
    display: none;
}


/* ========================================
   PLUS ICON
======================================== */

.rivanta-faq-icon {
    position: absolute;

    right: 28px;
    top: 50%;

    transform: translateY(-50%);

    color: #004f50;

    font-size: 21px;
    font-weight: 700;

    line-height: 1;

    transition: transform 0.3s ease;
}


/* ========================================
   OPEN FAQ
======================================== */

.rivanta-faq-item .accordion-button:not(.collapsed) {
    background: #ffffff !important;
    color: #004f50 !important;
}


/* Change + to × when open */

.rivanta-faq-item .accordion-button:not(.collapsed) .rivanta-faq-icon {
    transform: translateY(-50%) rotate(45deg);
}


/* ========================================
   ANSWER
======================================== */

.rivanta-faq-item .accordion-collapse {
    border: none !important;
}

.rivanta-faq-item .accordion-body {
    padding: 0 55px 20px 22px;

    color: #355b5d;

    font-size: 15px;
    line-height: 1.6;

    background: #ffffff;
}


/* ========================================
   HOVER
======================================== */

.rivanta-faq-item .accordion-button:hover {
    background: #fbfdfd !important;
}


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

@media (max-width: 767px) {

    .rivanta-faq-section {
        padding: 40px 15px 0px;
    }

    .rivanta-faq-heading h2 {
        font-size: 25px;
    }

    .rivanta-faq-subtitle {
        font-size: 14px;
    }

    .rivanta-faq-item {
        margin-bottom: 12px;
        border-radius: 13px !important;
    }

    .rivanta-faq-item .accordion-button {
        min-height: 55px;
        padding: 14px 48px 14px 18px;
        font-size: 15px;
    }

    .rivanta-faq-icon {
        right: 20px;
    }

    .rivanta-faq-item .accordion-body {
        padding: 0 45px 18px 18px;
        font-size: 14px;
    }

}

/* end   RIVANTA FAQ SECTION  */




/* =========================================
   BOOKKEEPING HEALTH CHECK SECTION
========================================= */

.health-check-section {
    width: 100%;
    padding: 70px 20px;
    background: #f4fbfa;
    box-sizing: border-box;
    overflow: hidden;
}

.health-check-container {
    max-width: 1160px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 70px;
}


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

.health-check-content {
    width: 54%;
    max-width: 590px;
}

.health-check-eyebrow {
    margin-bottom: 14px;
    color: #e88300;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: 0.2px;
}

.health-check-title {
    margin: 0;
    color: #004f4e;
    font-size: 30px;
    line-height: 1.32;
    font-weight: 700;
    letter-spacing: -0.3px;
}


/* Gold underline */

.health-check-title::after {
    content: "";
    display: block;
    width: 80px;
    height: 4px;
    margin-top: 42px;
    background: #e6b44d;
    border-radius: 10px;
}


/* =========================================
   BENEFITS
========================================= */

.health-check-benefits {
    margin-top: 28px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 35px;
    row-gap: 10px;
}

.health-check-benefit {
    display: flex;
    /* align-items: center; */
    gap: 12px;
    color: #004f4e;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 600;
}
.health-check-benefit span:nth-child(2) {
    padding-top: 4px;
  
}

.health-check-star {
    flex: 0 0 auto;
    color: #ffbf00;
    font-size: 26px;
    line-height: 1;
}


/* =========================================
   NOTE
========================================= */

.health-check-note {
    margin-top: 32px;
    color: #111;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 600;
}


/* =========================================
   CTA BUTTON
========================================= */

.health-check-button {
    margin-top: 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    padding: 12px 20px;
    min-height: 44px;

    background: #005c59;
    color: #fff;
    text-decoration: none;

    border-radius: 30px;

    font-size: 16px;
    line-height: 1.2;
    font-weight: 600;

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

.health-check-button:hover {
    background: #004745;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 79, 78, 0.18);
}

.health-check-arrow {
    font-size: 25px;
    line-height: 1;
    transition: transform 0.3s ease;
}

.health-check-button:hover .health-check-arrow {
    transform: translateX(5px);
}


/* =========================================
   BOTTOM ORANGE TEXT
========================================= */

.health-check-bottom-text {
    margin-top: 17px;
    color: #df8100;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}


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

.health-check-image-wrap {
    width: 46%;
    max-width: 525px;
    flex-shrink: 0;

    border-radius: 14px;
    overflow: hidden;

    border: 5px solid #dcebea;

    box-sizing: border-box;

    box-shadow: 0 8px 25px rgba(0, 79, 78, 0.08);
}

.health-check-image {
    display: block;
    width: 100%;
    height: 510px;
    object-fit: cover;
    object-position: center;

    transition: transform 0.5s ease;
}

.health-check-image-wrap:hover .health-check-image {
    transform: scale(1.025);
}


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

@media (max-width: 991px) {

    .health-check-section {
        padding: 60px 25px;
    }

    .health-check-container {
        gap: 40px;
    }

    .health-check-content {
        width: 52%;
    }

    .health-check-image-wrap {
        width: 48%;
    }

    .health-check-title {
        font-size: 27px;
    }

    .health-check-benefits {
        column-gap: 20px;
        row-gap: 20px;
    }

    .health-check-benefit {
        font-size: 15px;
    }

    .health-check-bottom-text {
        font-size: 18px;
    }

    .health-check-image {
        height: 450px;
    }
}


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

@media (max-width: 767px) {

    .health-check-section {
        padding: 50px 20px;
    }

    .health-check-container {
        flex-direction: column;
        gap: 35px;
    }

    .health-check-content {
        width: 100%;
        max-width: none;
    }

    .health-check-eyebrow {
        font-size: 15px;
    }

    .health-check-title {
        font-size: 26px;
        line-height: 1.3;
    }

    .health-check-title::after {
        margin-top: 28px;
    }

    .health-check-benefits {
        grid-template-columns: 1fr;
        gap: 18px;
        margin-top: 25px;
    }

    .health-check-benefit {
        font-size: 15px;
    }

    .health-check-note {
        margin-top: 28px;
        font-size: 15px;
    }

    .health-check-button {
        width: 100%;
        box-sizing: border-box;
        font-size: 15px;
    }

    .health-check-bottom-text {
        font-size: 18px;
    }

    .health-check-image-wrap {
        width: 100%;
        max-width: 100%;
    }

    .health-check-image {
        height: auto;
        min-height: 350px;
        object-fit: cover;
    }
}


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

@media (max-width: 480px) {

    .health-check-section {
        padding: 40px 15px;
    }

    .health-check-title {
        font-size: 23px;
    }

    .health-check-star {
        font-size: 23px;
    }

    .health-check-benefit {
        font-size: 14px;
    }

    .health-check-bottom-text {
        font-size: 17px;
    }

    .health-check-image {
        min-height: 300px;
    }
}

/* end  BOOKKEEPING HEALTH CHECK SECTION */



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

.rivanta-footer {
    width: 100%;
    background: #f5fbfa;
    color: #004f4e;
    box-sizing: border-box;
    padding: 45px 20px 30px;
    font-family: "Poppins", sans-serif;
}

.rivanta-footer *,
.rivanta-footer *::before,
.rivanta-footer *::after {
    box-sizing: border-box;
}


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

.rivanta-footer-main {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1.15fr;
    gap: 45px;
}


/* =========================================
   BRAND
========================================= */

.rivanta-footer-brand {
    padding-left: 5px;
}

.rivanta-footer-logo {
    display: inline-block;

    color: #005654;
    text-decoration: none;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 47px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 1px;
}

.rivanta-footer-logo-line {
    width: 38px;
    height: 2px;
    margin: 12px 0 10px 87px;

    background: #e5b64e;
    border-radius: 10px;
}

.rivanta-footer-description {
    margin: 0;

    color: #164f50;
    font-size: 16px;
    line-height: 1.55;
    font-weight: 400;
}


/* =========================================
   SOCIAL ICONS
========================================= */

.rivanta-footer-social {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: 10px;
}

.rivanta-footer-social a {
    width: 38px;
    height: 38px;

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

    border: 1px solid #a9c5c4;
    border-radius: 50%;

    color: #005654;
    background: transparent;

    text-decoration: none;

    font-size: 17px;

    transition: all 0.3s ease;
}

.rivanta-footer-social a:hover {
    background: #005654;
    border-color: #005654;
    color: #fff;
    transform: translateY(-3px);
}


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

.rivanta-footer-column h3 {
    margin: 8px 0 15px;

    color: #004f4e;

    font-size: 17px;
    line-height: 1.3;
    font-weight: 700;
}

.rivanta-footer-column ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rivanta-footer-column ul li {
    margin-bottom: 11px;
}

.rivanta-footer-column ul li a {
    color: #164f50;
    text-decoration: none;

    font-size: 16px;
    line-height: 1.4;
    font-weight: 400;

    transition: color 0.3s ease;
}

.rivanta-footer-column ul li a:hover {
    color: #e28a00;
}


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

.rivanta-footer-bottom {
    width: 100%;
    max-width: 1200px;

    margin: 40px auto 0;
    padding: 20px 5px 0;

    border-top: 1px solid #e5c878;

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

    gap: 25px;
}


/* =========================================
   LEGAL LINKS
========================================= */

.rivanta-footer-legal {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;

    color: #164f50;

    font-size: 14px;
    line-height: 1.5;
}

.rivanta-footer-legal a {
    color: #164f50;
    text-decoration: none;

    transition: color 0.3s ease;
}

.rivanta-footer-legal a:hover {
    color: #e28a00;
}

.rivanta-footer-legal span {
    white-space: nowrap;
}


/* =========================================
   CREDIT
========================================= */

.rivanta-footer-credit {
    color: #164f50;

    font-size: 14px;
    line-height: 1.5;

    text-align: right;
    white-space: nowrap;
}


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

@media (max-width: 991px) {

    .rivanta-footer-main {
        grid-template-columns: 1.7fr 1fr 1fr 1fr;
        gap: 35px;
    }

    .rivanta-footer-brand {
        grid-column: span 4;
    }

    .rivanta-footer-logo {
        font-size: 42px;
    }

    .rivanta-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
    }

    .rivanta-footer-credit {
        text-align: left;
    }
}


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

@media (max-width: 767px) {

    .rivanta-footer {
        padding: 40px 20px 25px;
    }

    .rivanta-footer-main {
        grid-template-columns: 1fr 1fr;
        gap: 30px 25px;
    }

    .rivanta-footer-brand {
        grid-column: span 2;
    }

    .rivanta-footer-logo {
        font-size: 40px;
    }

    .rivanta-footer-description {
        font-size: 15px;
    }

    .rivanta-footer-column h3 {
        font-size: 16px;
    }

    .rivanta-footer-column ul li a {
        font-size: 15px;
    }

    .rivanta-footer-bottom {
        margin-top: 30px;
        padding-top: 18px;
        gap: 15px;
    }

    .rivanta-footer-legal {
        font-size: 13px;
        gap: 7px;
    }

    .rivanta-footer-credit {
        font-size: 13px;
        white-space: normal;
    }
}


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

@media (max-width: 480px) {

    .rivanta-footer-main {
        grid-template-columns: 1fr 1fr;
        gap: 28px 15px;
    }

    .rivanta-footer-brand {
        grid-column: span 2;
    }

    .rivanta-footer-logo {
        font-size: 36px;
    }

    .rivanta-footer-logo-line {
        margin-left: 68px;
    }

    .rivanta-footer-column h3 {
        font-size: 15px;
    }

    .rivanta-footer-column ul li {
        margin-bottom: 9px;
    }

    .rivanta-footer-column ul li a {
        font-size: 14px;
    }

    .rivanta-footer-social a {
        width: 36px;
        height: 36px;
    }
}

/* end Footer  */




/* =========================================
   CONSULTATION MODAL
========================================= */

.rivanta-consultation-modal .modal-dialog {
    max-width: 500px;
}

.rivanta-consultation-modal .modal-content {
    position: relative;

    border: 0;
    border-radius: 18px;

    background: #ffffff;

    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.20);

    overflow: hidden;
}


/* Close button */

.consultation-close {
    position: absolute;

    top: 18px;
    right: 18px;

    z-index: 10;

    width: 32px;
    height: 32px;

    border-radius: 50%;

    background-color: #f5f5f5;

    opacity: 1;

    padding: 0;

    transition: all 0.25s ease;
}

.consultation-close:hover {
    background-color: #ec5b17;

    opacity: 1;
}


/* Modal body */

.rivanta-consultation-modal .modal-body {
    padding: 42px 40px 40px;
}


/* =========================================
   HEADER
========================================= */

.consultation-header {
    text-align: center;

    margin-bottom: 30px;
}

.consultation-icon {
    width: 58px;
    height: 58px;

    margin: 0 auto 16px;

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

    border-radius: 50%;

    background: #004f4d;
    color: #ffffff;

    font-size: 23px;
}

.consultation-header h2 {
    margin: 0 0 8px;

    color: #004f4d;

    font-size: 25px;
    font-weight: 600;

    line-height: 1.3;
}

.consultation-header p {
    max-width: 390px;

    margin: 0 auto;

    color: #777777;

    font-size: 14px;
    font-weight: 400;

    line-height: 1.6;
}


/* =========================================
   FORM FIELD
========================================= */

.consultation-field {
    position: relative;

    margin-bottom: 22px;
}


/* Icon */

.consultation-field .field-icon {
    position: absolute;

    left: 15px;
    top: 50%;

    transform: translateY(-50%);

    z-index: 2;

    color: #004f4d;

    font-size: 16px;

    pointer-events: none;

    transition: all 0.25s ease;
}


/* Input */

.consultation-field input {
    width: 100%;

    height: 58px;

    padding: 17px 15px 5px 45px;

    border: 1px solid #d9d9d9;

    border-radius: 9px;

    outline: none;

    background: #ffffff;

    color: #222222;

    font-family: "Poppins", sans-serif;

    font-size: 14px;

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


/* Floating label */

.consultation-field label {
    position: absolute;

    left: 45px;
    top: 50%;

    transform: translateY(-50%);

    padding: 0 4px;

    color: #777777;

    background: #ffffff;

    font-size: 14px;
    font-weight: 400;

    pointer-events: none;

    transition:
        top 0.25s ease,
        transform 0.25s ease,
        font-size 0.25s ease,
        color 0.25s ease;
}


/* Focus */

.consultation-field input:focus {
    border-color: #004f4d;

    box-shadow: 0 0 0 3px rgba(0, 79, 77, 0.08);
}

.consultation-field input:focus + label {
    top: 0;

    transform: translateY(-50%);

    font-size: 12px;

    color: #004f4d;
}


/* Filled */

.consultation-field input:not(:placeholder-shown) + label {
    top: 0;

    transform: translateY(-50%);

    font-size: 12px;

    color: #004f4d;
}


/* Icon focus */

.consultation-field:focus-within .field-icon {
    color: #034947;
}


/* =========================================
   SUBMIT BUTTON
========================================= */

.consultation-submit {
    width: 100%;

    min-height: 56px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    margin-top: 8px;

    border: 0;
    border-radius: 9px;

    background: #034947;
    color: #ffffff;

    font-family: "Poppins", sans-serif;

    font-size: 14px;
    font-weight: 600;

    cursor: pointer;

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

.consultation-submit:hover {
    background: #034947;

    transform: translateY(-2px);
}

.consultation-submit i {
    font-size: 13px;
}


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

@media (max-width: 575px) {

    .rivanta-consultation-modal .modal-dialog {
        margin: 15px;
    }

    .rivanta-consultation-modal .modal-body {
        padding: 38px 22px 25px;
    }

    .consultation-header {
        margin-bottom: 25px;
    }

    .consultation-header h2 {
        font-size: 21px;
    }

    .consultation-header p {
        font-size: 13px;
    }

    .consultation-icon {
        width: 52px;
        height: 52px;

        font-size: 20px;
    }

}

/* end CONSULTATION MODAL  */




/* commen css  */
@media (max-width: 767px) {
body {
    padding: 72px 0 0 0;
}
/* .site-header { position: relative; top:0} */
.main-nav .nav-link { border-bottom: solid 1px #ffffff50; width: 100%;  padding: 10px 15px  !important;}

}




/* =========================================
   MOBILE MENU - ONLY MENU SCROLLS
========================================= */

@media (max-width: 991px) {

    /* Main menu itself scrolls */
    #mainNavigation {
        max-height: calc(100vh - 80px);
        overflow-y: auto !important;
        overflow-x: hidden !important;

        -webkit-overflow-scrolling: touch;
    }

    /* Prevent page/body horizontal scrolling */
    body {
        overflow-x: hidden;
    }

    /* When mobile menu is open */
    body.menu-open {
        overflow: hidden !important;
        height: 100vh;
        touch-action: none;
    }

    /* Allow touch scrolling inside menu */
    body.menu-open #mainNavigation {
        touch-action: pan-y;
    }

}
.grid-2 { display: flex; gap: 10px;}



/* =========================
   FEATURED NEWS SECTION
========================= */

.featured-news-section {
    
    
    overflow: hidden;
    
}

.featured-media-carousel { position: relative;}
.featured-title {
    margin: 0 0 26px;
    text-align: center;
    color: #004b4b;
    font-size: 32px;
    line-height: 1.2;
    font-weight: 700;
}

.featured-news-section {
    
    
    overflow: hidden;
}

.featured-media-title {
    text-align: center;
    margin: 0 0 25px;
    color: #004b4b;
    font-size: 32px;
    font-weight: 700;
}

.featured-media-carousel {
    width: 100%;
}

.featured-media-carousel .owl-stage-outer {
    overflow: hidden;
}

.featured-media-carousel .owl-item {
    float: left;
}

.featured-media-box {
    height: 98px;
    margin: 0;

    background: #fff;
    border-radius: 8px;

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

    padding: 20px 25px;
}

.featured-media-box img {
    display: block;

    max-width: 100%;
    max-height: 55px;

    width: auto !important;
    height: auto !important;

    object-fit: contain;
}



/* Latest News */

.latest-news-wrapper {
    height: 62px;
    margin-top: 18px;
    gap: 20px;

    background: #fff;
    border-radius: 10px;

    display: flex;
    overflow: hidden;
}

.latest-news-label {
    flex: 0 0 150px;

    background: #003d40;
    color: #fff;

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

    font-size: 15px;
    font-weight: 700;
}

.latest-news-marquee {
    flex: 1;
    overflow: hidden;
    

    display: flex;
    align-items: center;
}

.latest-news-track {
    display: flex;
    align-items: center;
    width: max-content;

    animation: latestNewsScroll 25s linear infinite;
}

.latest-news-item {
    padding: 0 25px;
    white-space: nowrap;

    color: #17383b;
    font-size: 16px;
}

.latest-news-item a {
    color: #17383b;
    text-decoration: underline;
    margin-left: 10px;
}

.latest-news-separator {
    width: 1px;
    height: 30px;
    background: #17383b;
    flex-shrink: 0;
}

@keyframes latestNewsScroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

.latest-news-marquee {
    flex: 1;
    overflow: hidden;
    display: flex;
    align-items: center;
}

.latest-news-track {
    display: flex;
    align-items: center;
    width: max-content;

    animation: latestNewsScroll 25s linear infinite;
    animation-play-state: running;
}

.latest-news-wrapper:hover .latest-news-track {
    animation-play-state: paused !important;
}

@keyframes latestNewsScroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}



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

.sector-section {
    width: 100%;
    
    
    overflow: hidden;
}


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

.sector-heading {
    text-align: center;
    margin-bottom: 26px;
    position: relative;
    z-index: 5;
}

.sector-subtitle {
    display: block;
    margin-bottom: 12px;

    color: #e8aa32;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 600;
}

.sector-heading h2 {
    margin: 0;

    color: #004b4b;

    font-size: 32px;
    line-height: 1.22;
    font-weight: 700;
}

.sector-heading-line {
    width: 116px;
    height: 5px;

    margin: 18px auto 14px;

    background: #eab23c;
    border-radius: 10px;
}

.sector-heading p {
    margin: 0;

    color: #17383b;

    font-size: 16px;
    line-height: 1.6;
}


/* =========================================================
   CARDS WRAPPER
========================================================= */

.sector-cards {
    display: flex;

    width: 100%;
    height: 442px;

    overflow: hidden;
}


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

.sector-card {
    position: relative;

    flex: 0 0 20%;
    width: 20%;
    min-width: 0;

    height: 100%;

    overflow: hidden;

    cursor: pointer;

    background-position: left center;
    background-repeat: no-repeat;
    background-size: cover;

    border-right: 2px solid #ffffff;

    box-sizing: border-box;

    /*
     * IMPORTANT:
     * Only animate the card width.
     * Content animations are handled separately.
     */
    transition:
        flex-basis 0.65s cubic-bezier(.22, 1, .36, 1),
        width 0.65s cubic-bezier(.22, 1, .36, 1);
}

.sector-card:last-child {
    border-right: 0;
}


/* =========================================================
   CARD WIDTH ON HOVER
========================================================= */

/*
 * When any card is hovered:
 * all cards become smaller.
 */

.sector-cards:hover .sector-card {
    flex: 0 0 12.5%;
    width: 12.5%;
}


/*
 * The hovered card becomes large.
 */

.sector-cards .sector-card:hover {
    flex: 0 0 50%;
    width: 50%;
}


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

.sector-card-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            to bottom,
            rgba(0, 67, 68, 0.05) 0%,
            rgba(0, 67, 68, 0.25) 40%,
            rgba(0, 55, 57, 0.95) 100%
        );

    transition:
        background 0.65s ease;
}


/*
 * Stronger teal overlay when card is expanded.
 */

.sector-card:hover .sector-card-overlay {
    background:
        linear-gradient(
            90deg,
            rgba(0, 68, 69, 0.90) 0%,
            rgba(0, 68, 69, 0.76) 55%,
            rgba(0, 68, 69, 0.55) 100%
        );
}


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

.sector-card-content {
    position: relative;

    z-index: 2;

    width: 100%;
    height: 100%;

    padding: 30px;

    box-sizing: border-box;
}


/* =========================================================
   NORMAL / DEFAULT CONTENT
========================================================= */

.sector-default-content {
    position: absolute;

    left: 30px;
    right: 25px;
    bottom: 30px;

    opacity: 1;
    visibility: visible;

    transform: translateY(0);

    z-index: 3;

    transition:
        opacity 0.4s ease,
        transform 0.5s cubic-bezier(.22, 1, .36, 1);
}


/*
 * Normal content disappears smoothly
 * as the card expands.
 */

.sector-card:hover .sector-default-content {
    opacity: 0;

    transform: translateY(18px);

    visibility: hidden;
}


/* Normal title */

.sector-default-content h3 {
    margin: 0 0 13px;

    color: #ffffff;

    font-size: 20px;
    line-height: 1.35;
    font-weight: 700;
}


/* Yellow line */

.sector-line {
    display: block;

    width: 66px;
    height: 6px;

    background: #f0b63b;

    border-radius: 10px;
}

/* =========================================
   HOVER CONTENT - FIXED WIDTH
========================================= */

.sector-hover-content {
    position: absolute;

    left: 45px;
    bottom: 45px;

    /*
     * Fixed content width.
     * It does not change while the card expands.
     */
    width: 560px;
    max-width: 560px;

    opacity: 0;
    visibility: hidden;

    transform: translateY(25px);

    pointer-events: none;

    transition:
        opacity 0.45s ease,
        transform 0.55s cubic-bezier(.22, 1, .36, 1);
}


/* Hover */

.sector-card:hover .sector-hover-content {
    opacity: 1;
    visibility: visible;

    transform: translateY(0);

    pointer-events: auto;
}


/* =========================================
   HOVER TITLE
========================================= */

.sector-hover-content h3 {
    margin: 0 0 15px;

    width: 100%;

    color: #ffffff;

    font-size: 28px;
    line-height: 1.15;
    font-weight: 700;

    /*
     * Prevent wrapping changes during expansion.
     */
    white-space: nowrap;
}


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

.sector-hover-content p {
    width: 100%;
    max-width: 560px;

    margin: 0 0 25px;

    color: #ffffff;

    font-size: 18px;
    line-height: 1.55;
}


/* =========================================
   BUTTON
========================================= */

.sector-button {
    display: inline-flex;

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

    width: 340px;
    height: 55px;

    padding: 14px 24px;

    box-sizing: border-box;

    background: #a9f0f2;

    color: #003f42;

    border-radius: 35px;

    text-decoration: none;

    font-size: 16px;
    font-weight: 600;

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

.sector-button:hover {
    background: #ffffff;

    color: #003f42;

    transform: translateX(5px);
}


/* Arrow */

.sector-arrow {
    flex-shrink: 0;

    font-size: 27px;
    line-height: 1;
}


/* =========================================================
   BOTTOM CTA
========================================================= */

.theme-green-button {
    display: flex;


    
}
.sector-section .theme-green-button, .financial-control-section .theme-green-button , .risk-solution-section .theme-green-button{ display: flex; justify-content: center; align-items: center; margin-top: 45px;}

.theme-green-button a {
    display: inline-flex;

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

    gap: 24px;

    

    padding: 16px 28px;

    background: #005354;

    color: #ffffff;

    border-radius: 40px;

    text-decoration: none;

    font-size: 18px;
    line-height: 1.3;
    font-weight: 600;

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

.sector-main-button:hover {
    background: #003f40;

    color: #ffffff;

    transform: translateY(-2px);
}

.sector-main-button span:last-child {
    font-size: 30px;
    line-height: 1;
}
.sector-hover-content .theme-cta { margin: 0px;}

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

@media (max-width: 1199px) {

    .sector-cards {
        height: 420px;
    }

    .sector-card-content {
        padding: 25px;
    }

    .sector-default-content {
        left: 25px;
        right: 20px;
        bottom: 25px;
    }

    .sector-hover-content {
        left: 35px;
        right: 30px;
        bottom: 35px;
    }

    .sector-hover-content h3 {
        font-size: 32px;
    }

    .sector-hover-content p {
        font-size: 17px;
    }
}


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

@media (max-width: 991px) {

    .sector-heading h2 {
        font-size: 28px;
    }

    .sector-cards {
        height: 400px;
    }

    .sector-hover-content {
        left: 25px;
        right: 25px;
        bottom: 30px;
    }

    .sector-hover-content h3 {
        font-size: 27px;
    }

    .sector-hover-content p {
        font-size: 16px;
    }

    .sector-button {
        width: 300px;
    }
}


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

@media (max-width: 767px) {

    .sector-section {
        padding: 35px 0 45px;
    }

    .sector-heading h2 {
        font-size: 24px;
    }

    .sector-heading p {
        font-size: 14px;
    }

    .sector-cards {
        height: auto;

        display: flex;

        flex-direction: column;

        gap: 10px;

        overflow: visible;
    }

    /*
     * Disable desktop expansion on mobile.
     */

    .sector-card,
    .sector-cards:hover .sector-card,
    .sector-cards .sector-card:hover {
        flex: none;

        width: 100%;

        height: 280px;

        border: 0;

        transition: none;
    }

    /*
     * Normal content remains visible.
     */

    .sector-default-content,
    .sector-card:hover .sector-default-content {
        opacity: 1;

        visibility: visible;

        transform: none;
    }

    /*
     * Hover content is hidden on mobile
     * until the card is touched/hovered.
     */

    .sector-hover-content {
        left: 25px;
        right: 25px;
        bottom: 25px;

        transform: translateY(15px);

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

    .sector-card:hover .sector-hover-content {
        opacity: 1;

        visibility: visible;

        transform: translateY(0);
    }

    .sector-hover-content h3 {
        font-size: 26px;
    }

    .sector-hover-content p {
        font-size: 15px;
    }

    .sector-button {
        width: 100%;
    }

    .sector-bottom-button {
        margin-top: 30px;
    }

    .sector-main-button {
        width: 100%;
        min-width: 0;

        font-size: 16px;
    }
}




.financial-review-section {
    width: 100%;
    
    
    overflow: hidden;
}

.financial-review-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
}

.financial-review-content {
    flex: 1 1 58%;
    max-width: 690px;
}

.financial-review-subtitle {
    display: block;
    margin-bottom: 20px;
    color: #e8a323;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 600;
}

.financial-review-content h2 {
    margin: 0 0 18px;
    color: #004b4b;
    font-size: 31px;
    line-height: 1.28;
    font-weight: 700;
}

.financial-review-description {
    max-width: 680px;
    margin: 0 0 30px;
    color: #263d5a;
    font-size: 17px;
    line-height: 1.5;
}

.financial-review-note {
    margin: 27px 0 0 8px;
    color: #263d5a;
    font-size: 16px;
    line-height: 1.5;
}

.financial-review-image {
    flex: 0 0 460px;
    width: 460px;
}

.financial-review-image img {
    display: block;
    width: 100%;
    height: 388px;
    object-fit: cover;
    border-radius: 16px;
}


/* Tablet */
@media (max-width: 1199px) {

    .financial-review-row {
        gap: 40px;
    }

    .financial-review-content h2 {
        font-size: 28px;
    }

    .financial-review-image {
        flex: 0 0 420px;
        width: 420px;
    }

    .financial-review-image img {
        height: 360px;
    }
}


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

    .financial-review-section {
        padding: 35px 0 40px;
    }

    .financial-review-row {
        flex-direction: column;
        gap: 30px;
    }

    .financial-review-content {
        max-width: none;
        width: 100%;
    }

    .financial-review-subtitle {
        margin-bottom: 14px;
        font-size: 15px;
    }

    .financial-review-content h2 {
        font-size: 25px;
        line-height: 1.3;
    }

    .financial-review-description {
        font-size: 16px;
        line-height: 1.55;
        margin-bottom: 25px;
    }

    .financial-review-note {
        margin: 22px 0 0;
        font-size: 14px;
    }

    .financial-review-image {
        width: 100%;
        flex: none;
    }

    .financial-review-image img {
        width: 100%;
        height: 300px;
        border-radius: 14px;
    }
}




.partners-section {
    width: 100%;
    
    padding: 5px 0 20px;
    overflow: hidden;
}

.partners-heading {
    text-align: center;
    margin-bottom: 30px;
}

.partners-heading h2 {
    margin: 0;
    color: #004b4b;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
}

.software-partners-carousel {
    width: 100%;
}

.software-partners-carousel .partner-item {
    padding: 0 7px;
    box-sizing: border-box;
}

.software-partners-carousel .partner-box {
    width: 100%;
    height: 108px;
    background: #ffffff;
    border-radius: 10px;

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

    padding: 15px 25px;
    box-sizing: border-box;
}

.software-partners-carousel .partner-box img {
    display: block;
    width: auto !important;
    max-width: 100%;
    height: auto;
    max-height: 75px;
    object-fit: contain;
}


/* Tablet */

@media (max-width: 1199px) {

    .partners-heading h2 {
        font-size: 28px;
    }

}


/* Mobile */

@media (max-width: 767px) {

    .partners-section {
        padding: 5px 0 25px;
    }

    .partners-heading {
        margin-bottom: 20px;
    }

    .partners-heading h2 {
        font-size: 24px;
    }

    .software-partners-carousel .partner-box {
        height: 105px;
    }

}


.financial-control-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
}

.financial-control-card {
    position: relative;
    min-height: 194px;
    display: flex;
    align-items: flex-start;
    gap: 24px;
    padding: 18px 28px;
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 5px 16px rgba(0, 70, 70, 0.08);
    overflow: hidden;
    box-sizing: border-box;
}

.financial-control-card.card-green {
    border-left: 8px solid #145b52;
}

.financial-control-card.card-gold {
    border-left: 8px solid #d99a16;
}

.financial-control-icon {
    flex: 0 0 64px;
    width: 64px;
    height: 68px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    overflow: hidden;
}

.financial-control-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.financial-control-content {
    position: relative;
    z-index: 2;
    flex: 1;
    padding-right: 5px;
}

.financial-control-content h3 {
    margin: 0 0 3px;
    color: #075652;
    font-size: 21px;
    line-height: 1.2;
    font-weight: 700;
}

.card-gold .financial-control-content h3 {
    color: #d18f12;
}

.financial-control-content strong {
    display: block;
    margin: 0 0 10px;
    color: #111111;
    font-size: 16px;
    line-height: 1.45;
    font-weight: 600;
}

.financial-control-content p {
    margin: 0;
    color: #222222;
    font-size: 16px;
    line-height: 1.5;
}

.financial-control-number {
    position: absolute;
    left: 30px;
    bottom: 27px;
    color: #d9dddd;
    font-size: 50px;
    line-height: 1;
    font-weight: 400;
    z-index: 1;
}

.financial-control-note {
    margin: 20px 0 0;
    text-align: center;
    color: #004b4b;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 600;
}


/* Tablet */

@media (max-width: 991px) {

    .financial-control-grid {
        gap: 20px;
    }

    .financial-control-card {
        gap: 16px;
        padding: 18px 20px;
    }

    .financial-control-content h3 {
        font-size: 19px;
    }

    .financial-control-content strong,
    .financial-control-content p {
        font-size: 15px;
    }

}


/* Mobile */

@media (max-width: 767px) {

    .financial-control-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .financial-control-card {
        min-height: 190px;
        padding: 18px;
    }

    .financial-control-icon {
        flex: 0 0 58px;
        width: 58px;
        height: 62px;
    }

    .financial-control-content h3 {
        font-size: 18px;
    }

    .financial-control-content strong,
    .financial-control-content p {
        font-size: 14px;
    }

    .financial-control-number {
        left: 20px;
        bottom: 20px;
        font-size: 42px;
    }
}

.case-studies-section .owl-carousel .owl-stage-outer { padding-bottom: 20px;}

.case-studies-carousel {
    position: relative;
    width: 100%;
}

.case-studies-carousel .case-study-item {
    padding: 0 8px;
    box-sizing: border-box;
}

.case-study-card {
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 5px 18px rgba(0, 70, 70, 0.08);
    height: 100%;
}

.case-study-image {
    position: relative;
    width: 100%;
    height: 178px;
    overflow: hidden;
}

.case-study-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.case-study-category {
    position: absolute;
    top: 14px;
    left: 14px;
    display: inline-block;
    padding: 5px 12px;
    background: #075653;
    color: #ffffff;
    border-radius: 5px;
    font-size: 11px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: 0.5px;
}

.case-study-content {
    padding: 16px 20px 20px;
}

.case-study-content h3 {
    margin: 0 0 9px;
    color: #004b4b;
    font-size: 19px;
    line-height: 1.2;
    font-weight: 700;
}

.case-study-content p {
    margin: 0 0 13px;
    color: #5d6872;
    font-size: 14px;
    line-height: 1.45;
}

.case-study-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #00635f;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
    text-decoration: none;
}

.case-study-link span {
    font-size: 18px;
    line-height: 1;
    transition: transform 0.25s ease;
}

.case-study-link:hover span {
    transform: translateX(4px);
}



/* Tablet */

@media (max-width: 1199px) {

    .case-studies-carousel .owl-nav button.owl-prev {
        left: -15px;
    }

    .case-studies-carousel .owl-nav button.owl-next {
        right: -15px;
    }

}


/* Mobile */

@media (max-width: 767px) {

    .case-studies-carousel .case-study-item {
        padding: 0 5px;
    }

    .case-study-image {
        height: 190px;
    }

    .case-study-content h3 {
        font-size: 18px;
    }

    .case-studies-carousel .owl-nav button.owl-prev {
        left: 5px;
    }

    .case-studies-carousel .owl-nav button.owl-next {
        right: 5px;
    }

}


.financial-rules-section {
    position: relative;
    overflow: hidden;
}

.financial-rules-section .container-custom {
    position: relative;
    z-index: 2;
}

.financial-rules-grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    padding-bottom: 20px
}

.financial-rule-card {
    position: relative;
    min-width: 0;
    padding: 28px 14px 18px;
    background: rgba(255, 255, 255, 0.82);
    border-radius: 18px;
    box-shadow: 0 4px 14px rgba(0, 70, 70, 0.10);
    text-align: center;
    box-sizing: border-box;
    overflow: hidden;
}

.financial-rule-image {
    position: relative;
    width: 100%;
    height: 145px;
    margin-bottom: 18px;
    overflow: hidden;
}

.financial-rule-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.financial-rule-number {
    position: absolute;
    top: 8px;
    left: 14px;
    z-index: 2;

    width: 48px;
    height: 48px;

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

    background: #004f4c;
    color: #ffffff;

    border-radius: 50%;

    font-family: Tinos, serif;
    font-size: 22px;
    line-height: 1;
}

.financial-rule-card h3 {
    margin: 0 0 14px;
    color: #004b4b;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
    text-transform: uppercase;
}

.financial-rule-highlight {
    width: 100%;
    min-height: 94px;
    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 10px;

    background: #dff1ed;
    border-radius: 10px;
    box-sizing: border-box;
}

.financial-rule-highlight.two-column > div {
    width: 50%;
    min-height: 70px;

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

    padding: 5px 10px;
    box-sizing: border-box;
}

.financial-rule-highlight.two-column > div + div {
    border-left: 2px solid #c4dfda;
}

.financial-rule-highlight strong {
    display: block;
    margin-bottom: 6px;
    color: #d49312;
    font-size: 21px;
    line-height: 1.1;
    font-weight: 700;
}

.financial-rule-highlight span {
    display: block;
    color: #111111;
    font-size: 13px;
    line-height: 1.4;
}

.financial-rule-highlight > div:not(.two-column) {
    width: 100%;
}

.financial-rule-card > p {
    margin: 0;
    color: #222222;
    font-size: 15px;
    line-height: 1.65;
}

.financial-rules-background {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    /* width: 240px; */
    height: 100%;
    pointer-events: none;
}

.financial-rules-background img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left center;
    opacity: 0.35;
}


/* Tablet */

@media (max-width: 991px) {

    .financial-rules-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        ;
    }

    .financial-rules-background {
        width: 180px;
    }

}


/* Mobile */

@media (max-width: 767px) {

    .financial-rules-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .financial-rule-card {
        padding: 24px 14px 18px;
    }

    .financial-rule-image {
        height: 155px;
    }

    .financial-rule-card h3 {
        font-size: 19px;
    }

    .financial-rules-background {
        display: none;
    }

}


.financial-clarity-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 70px;
}

.financial-clarity-content {
    flex: 1;
    max-width: 570px;
}

.financial-clarity-subtitle {
    display: block;
    margin-bottom: 15px;
    color: #e6a321;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 500;
}

.financial-clarity-content h2 {
    margin: 0 0 25px;
    color: #004b4b;
    font-size: 31px;
    line-height: 1.25;
    font-weight: 700;
}


/* Bootstrap Accordion */

.financial-clarity-accordion {
    margin-bottom: 26px;
}

.financial-clarity-accordion .accordion-item {
    background: transparent;
    border: 0;
    border-bottom: 2px solid #e2d9b9;
    border-radius: 0;
}

.financial-clarity-accordion .accordion-button {
    padding: 16px 6px;
    background: transparent;
    color: #111111;
    box-shadow: none;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 500;
}

.financial-clarity-accordion .accordion-button:not(.collapsed) {
    background: transparent;
    color: #004b4b;
    box-shadow: none;
}

.financial-clarity-accordion .accordion-button::after {
    background-image: none;
    content: "+";
    width: auto;
    height: auto;
    color: #004b4b;
    font-size: 20px;
    font-weight: 400;
    transform: none;
}

.financial-clarity-accordion .accordion-button:not(.collapsed)::after {
    content: "−";
    transform: none;
}

.financial-clarity-accordion .accordion-body {
    padding: 0 35px 16px 6px;
    color: #263d5a;
    font-size: 15px;
    line-height: 1.5;
}


/* Image */

.financial-clarity-image {
    flex: 0 0 548px;
    width: 548px;
}

.financial-clarity-image img {
    display: block;
    width: 100%;
    height: 444px;
    object-fit: cover;
    border-radius: 10px;
}


/* Tablet */

@media (max-width: 991px) {

    .financial-clarity-row {
        gap: 35px;
    }

    .financial-clarity-image {
        flex: 0 0 45%;
        width: 45%;
    }

    .financial-clarity-image img {
        height: 400px;
    }

    .financial-clarity-content h2 {
        font-size: 27px;
    }

}


/* Mobile */

@media (max-width: 767px) {

    .financial-clarity-row {
        flex-direction: column;
        gap: 30px;
    }

    .financial-clarity-content {
        width: 100%;
        max-width: none;
    }

    .financial-clarity-content h2 {
        font-size: 25px;
    }

    .financial-clarity-image {
        width: 100%;
        flex: none;
    }

    .financial-clarity-image img {
        height: 300px;
    }

}
.quick-action-section {background: #004f4f}

.quick-action-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    ;
}

.quick-action-grid a:first-child { padding-left: 0px}
.quick-action-grid a:last-child { padding-right: 0px}
.quick-action-item {
    min-height: 184px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0px;
    padding: 20px 18px;
    border-right: 2px solid rgba(231, 177, 53, 0.22);
    box-sizing: border-box;
    color: #ffffff;
    text-decoration: none;
}

.quick-action-item:last-child {
    border-right: 0;
}

.quick-action-icon {
    flex: 0 0 72px;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    overflow: hidden;
}

.quick-action-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.quick-action-content {
    flex: 1;
    min-width: 0;
    padding-left: 16px;
}

.quick-action-content h3 {
    margin: 0 0 4px;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.25;
    font-weight: 700;
}

.quick-action-content p {
    margin: 0;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.45;
}

.quick-action-arrow {
    flex: 0 0 36px;
    
    width: 36px;
    height: 36px;

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

    border: 2px solid #e8b137;
    border-radius: 50%;

    color: #e8b137;
    font-size: 23px;
    line-height: 1;

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

.quick-action-item:hover {
    color: #ffffff;
}

.quick-action-item:hover .quick-action-arrow {
    transform: translateY(4px);
    background: rgba(232, 177, 55, 0.12);
}


/* Tablet */

@media (max-width: 991px) {

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

    .quick-action-item {
        min-height: 150px;
    }

    .quick-action-item:nth-child(2) {
        border-right: 0;
    }

    .quick-action-item:nth-child(-n+2) {
        border-bottom: 2px solid rgba(231, 177, 53, 0.22);
    }

}


/* Mobile */

@media (max-width: 767px) {

    .quick-action-grid {
        grid-template-columns: 1fr;
    }

    .quick-action-item {
        min-height: 125px;
        justify-content: flex-start;
        padding: 18px 20px;
        border-right: 0;
        border-bottom: 2px solid rgba(231, 177, 53, 0.22);
    }

    .quick-action-item:last-child {
        border-bottom: 0;
    }

}



/* =========================================
   TRANSACTION STATS
========================================= */

.transaction-stats-section {
    position: relative;
}

.transaction-stats-box {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: 100%;
    background: url("../images/stats-bg.png") center center / cover no-repeat;;
    border-radius: 30px;
    overflow: hidden;
}


/* =========================================
   STAT ITEM
========================================= */

.transaction-stat-item {
    min-width: 0;
    padding: 30px 28px;
    box-sizing: border-box;
}

.transaction-stat-item + .transaction-stat-item {
    border-left: 1px solid rgba(232, 177, 55, 0.20);
}


/* =========================================
   FIRST ROW
   ICON + TITLE
========================================= */

.transaction-stat-top {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.transaction-stat-icon {
    flex: 0 0 58px;
    width: 58px;
    height: 58px;

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

    border: 2px solid #b8a769;
    border-radius: 50%;

    color: #b8a769;
    font-size: 25px;

    box-sizing: border-box;
}

.transaction-stat-top h3 {
    margin: 0;
    color: #ffffff;
    font-size: 25px;
    line-height: 1.15;
    font-weight: 700;
    white-space: nowrap;
}


/* =========================================
   SECOND ROW
   DESCRIPTION
========================================= */

.transaction-stat-description {
    margin-top: 12px;
}

.transaction-stat-description p {
    margin: 0;
    color: #ffffff;
    font-size: 15px;
    line-height: 1.45;
    font-weight: 600;
}


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

@media (max-width: 1199px) {

    .transaction-stat-item {
        padding: 25px 18px;
    }

    .transaction-stat-top {
        gap: 10px;
    }

    .transaction-stat-icon {
        flex: 0 0 52px;
        width: 52px;
        height: 52px;
        font-size: 21px;
    }

    .transaction-stat-top h3 {
        font-size: 21px;
    }

    .transaction-stat-description p {
        font-size: 14px;
    }

}


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

@media (max-width: 767px) {

    .transaction-stats-box {
        grid-template-columns: 1fr;
        border-radius: 20px;
    }

    .transaction-stat-item {
        padding: 22px 20px;
    }

    .transaction-stat-item + .transaction-stat-item {
        border-left: 0;
        border-top: 1px solid rgba(232, 177, 55, 0.20);
    }

    .transaction-stat-top {
        gap: 12px;
    }

    .transaction-stat-icon {
        flex: 0 0 52px;
        width: 52px;
        height: 52px;
        font-size: 21px;
    }

    .transaction-stat-top h3 {
        font-size: 21px;
        white-space: normal;
    }

    .transaction-stat-description {
        margin-top: 12px;
    }

    .transaction-stat-description p {
        font-size: 14px;
    }

}


.strategic-action-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.strategic-action-card {
    min-width: 0;
    padding: 14px 20px 20px;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 70, 70, 0.08);
    box-sizing: border-box;
}


/* Top */

.strategic-action-top {
    display: flex;
    align-items: center;
    gap: 14px;
}

.strategic-action-icon {
    flex: 0 0 70px;
    width: 70px;
    height: 70px;

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

    border-radius: 50%;

    font-size: 28px;
    box-sizing: border-box;
}

.strategic-action-icon.icon-green {
    background: #005653;
    color: #ffffff;
}

.strategic-action-icon.icon-gold {
    background: #d59a19;
    color: #ffffff;
}


/* Title */

.strategic-action-title {
    min-width: 0;
}

.strategic-action-title h3 {
    margin: 0;
    color: #005653;
    font-size: 16px;
    line-height: 1.45;
    font-weight: 700;
}

.strategic-action-title span {
    display: block;
    width: 42px;
    height: 4px;
    margin-top: 7px;
    background: #e5ae35;
    border-radius: 5px;
}


/* Description */

.strategic-action-card > p {
    min-height: 104px;
    margin: 13px 0 12px;
    color: #222222;
    font-size: 15px;
    line-height: 1.55;
}


/* CTA */

.strategic-action-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;

    color: #005653;
    text-decoration: none;

    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
}

.strategic-action-link i {
    flex: 0 0 24px;
    width: 24px;
    height: 24px;

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

    background: #005653;
    color: #ffffff;

    border-radius: 50%;

    font-size: 11px;

    transition: transform 0.25s ease;
}

.strategic-action-link:hover {
    color: #005653;
}

.strategic-action-link:hover i {
    transform: translateX(4px);
}


/* Tablet */

@media (max-width: 1199px) {

    .strategic-action-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

}


/* Mobile */

@media (max-width: 767px) {

    .strategic-action-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .strategic-action-card {
        padding: 18px;
    }

    .strategic-action-card > p {
        min-height: auto;
    }

}

/* =========================================
   RISK / SOLUTION SECTION
========================================= */

.risk-solution-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-top: 55px;
}


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

.risk-solution-card {
    position: relative;
    min-width: 0;
    min-height: 200px;

    background: #ffffff;
    border-radius: 12px;

    box-shadow: 0 5px 18px rgba(0, 70, 70, 0.08);

    box-sizing: border-box;
}


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

.risk-solution-label {
    position: absolute;

    top: -29px;
    left: 50%;

    transform: translateX(-50%);

    width: 60%;
    min-height: 48px;

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

    border-radius: 11px;

    font-size: 19px;
    line-height: 1.2;
    font-weight: 700;

    box-sizing: border-box;
    text-align: center;
}

.risk-label {
    background: #dfe4ee;
    color: #d88700;
}

.solution-label {
    background: #ccefeb;
    color: #005653;
}


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

.risk-solution-content {
    min-height: 200px;

    display: flex;
    align-items: center;

    gap: 35px;

    padding: 45px 35px 25px;

    box-sizing: border-box;
}


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

.risk-solution-icon {
    position: relative;

    flex: 0 0 96px;
    width: 96px;
    height: 96px;

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

    border-radius: 50%;

    font-size: 42px;

    box-sizing: border-box;
}




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

.risk-solution-text {
    flex: 1;
    min-width: 0;
}

.risk-solution-text p {
    margin: 0;

    color: #26384f;

    font-size: 17px;
    line-height: 1.55;
    font-weight: 400;
}

.risk-solution-text strong {
    font-weight: 700;
}


/* =========================================
   SUPPORTING NOTE
========================================= */

.risk-solution-note {
    margin-top: 30px;

    text-align: center;

    color: #161f25;

    font-size: 16px;
    line-height: 1.5;
}


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

.risk-solution-section .theme-green-button {
    margin-top: 18px;
    text-align: center;
}


/* =========================================
   BOTTOM HIGHLIGHT
========================================= */

.risk-solution-highlight {
    margin-top: 15px;

    text-align: center;

    color: #dd8500;

    font-size: 20px;
    line-height: 1.4;
    font-weight: 700;
}


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

@media (max-width: 991px) {

    .risk-solution-grid {
        gap: 20px;
    }

    .risk-solution-content {
        gap: 20px;
        padding-left: 25px;
        padding-right: 25px;
    }

    .risk-solution-icon {
        flex: 0 0 75px;
        width: 75px;
        height: 75px;
        font-size: 32px;
    }

    .risk-warning {
        font-size: 20px;
    }

    .solution-check {
        font-size: 18px;
    }

    .risk-solution-text p {
        font-size: 15px;
    }

    .risk-solution-label {
        width: 70%;
        font-size: 17px;
    }

}


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

@media (max-width: 767px) {

    .risk-solution-grid {
        grid-template-columns: 1fr;
        gap: 50px;
        margin-top: 50px;
    }

    .risk-solution-card {
        min-height: auto;
    }

    .risk-solution-content {
        min-height: 220px;
        display: block;
        gap: 20px;
        padding: 50px 22px 25px;
    }

    .risk-solution-icon {
        flex: 0 0 70px;
        width: 70px;
        height: 70px;
        font-size: 30px;
    }

    .risk-warning {
        right: 2px;
        bottom: 7px;
        font-size: 18px;
    }

    .solution-check {
        right: 2px;
        bottom: 5px;
        font-size: 17px;
    }

    .risk-solution-label {
        width: 75%;
        min-height: 45px;
        font-size: 16px;
    }

    .risk-solution-text p {
        font-size: 15px;
        line-height: 1.5;
    }

    .risk-solution-note {
        margin-top: 30px;
        font-size: 14px;
    }

    .risk-solution-highlight {
        font-size: 17px;
    }

}