        :root {
            --brand-green: #014D23;
            --brand-green-dark: #007E38;
            --brand-gold: #C9A24B;
            --text-dark: #1a1a1a;
            --border-soft: rgba(255, 255, 255, 0.15);
        }

        * {
            box-sizing: border-box;
        }

        body {
            margin: 0;
            font-family: 'Poppins', Arial, sans-serif;
            color: var(--text-dark);
        }

        a {
            text-decoration: none;
            color: inherit;
        }

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

        .container {
            max-width: 1280px;
            margin: 0 auto;
            padding: 0 20px;
        }

        /* ===== TOP BAR ===== */
        .header-top {
            background: var(--brand-green-dark);
            color: #e9f2ec;
            font-size: 13px;
        }

        .header-top .container {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-top: 8px;
            padding-bottom: 8px;
            flex-wrap: wrap;
            gap: 8px;
        }

        .top-info {
            display: flex;
            align-items: center;
            gap: 22px;
            flex-wrap: wrap;
        }

        .top-info span {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            white-space: nowrap;
        }

        .top-info i {
            color: #fff;
            font-size: 12px;
        }

        .top-social {
            display: flex;
            align-items: center;
            gap: 14px;
        }

        .top-social a {
            width: 26px;
            height: 26px;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 1px solid var(--border-soft);
            border-radius: 50%;
            font-size: 12px;
            transition: background .2s, color .2s;
        }

        .top-social a:hover {
            background: var(--brand-gold);
            color: #1a1a1a;
            border-color: var(--brand-gold);
        }

        /* ===== MAIN HEADER ===== */
        .site-header {
            background: #fff;
            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
            position: sticky;
            top: 0;
            z-index: 1000;
        }

        .header-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 1px 2px;
        }

        .logo img {
            height: 80px;
            display: block;
        }

        /* ===== MAIN NAV (desktop) ===== */
        .main-nav {
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .main-nav>a,
        .nav-item>.nav-link {
            display: flex;
            align-items: center;
            gap: 5px;
            padding: 12px 16px;
            font-weight: 500;
            font-size: 15px;
            color: var(--text-dark);
            border-radius: 6px;
            transition: color .2s, background .2s;
            cursor: pointer;
        }

        .main-nav>a:hover,
        .nav-item:hover>.nav-link,
        .nav-item.open>.nav-link {
            color: var(--brand-green);
            background: #f3f8f5;
        }

        .nav-item {
            position: relative;
        }

        .nav-link i.chevron {
            font-size: 11px;
            transition: transform .2s;
        }

        .nav-item.open>.nav-link i.chevron,
        .nav-item:hover>.nav-link i.chevron {
            transform: rotate(180deg);
        }

        /* Dropdown panel */
        .dropdown-panel {
            position: absolute;
            top: calc(100% + 10px);
            left: 50%;
            transform: translateX(-50%);
            background: #fff;
            border-radius: 10px;
            box-shadow: 0 18px 40px rgba(0, 0, 0, 0.14);
            padding: 22px;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 6px 40px;
            min-width: 520px;
            opacity: 0;
            visibility: hidden;
            transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
            z-index: 999;
        }

        .nav-item:hover .dropdown-panel,
        .nav-item.open .dropdown-panel {
            opacity: 1;
            visibility: visible;
            transform: translateX(-50%) translateY(0);
        }

        .dropdown-panel a {
            padding: 9px 10px;
            font-size: 14px;
            color: #333;
            border-radius: 6px;
            display: flex;
            align-items: center;
            gap: 8px;
            transition: background .15s, color .15s, padding-left .15s;
        }

        .dropdown-panel a::before {
            content: "";
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: var(--brand-gold);
            flex-shrink: 0;
        }

        .dropdown-panel a:hover {
            background: #f3f8f5;
            color: var(--brand-green);
            padding-left: 14px;
        }

        .header-actions {
            display: flex;
            align-items: center;
            gap: 14px;
        }

        .btn {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 11px 20px;
            border-radius: 8px;
            font-weight: 600;
            font-size: 14px;
            transition: opacity .2s, transform .2s;
        }

        .btn:hover {
            opacity: .9;
            transform: translateY(-1px);
        }

        /* Hamburger */
        .nav-toggle {
            display: none;
            flex-direction: column;
            justify-content: center;
            gap: 5px;
            width: 38px;
            height: 38px;
            border: none;
            background: none;
            cursor: pointer;
        }

        .nav-toggle span {
            width: 24px;
            height: 2.5px;
            background: var(--brand-green);
            border-radius: 2px;
            transition: transform .25s, opacity .25s;
        }

        .nav-toggle.active span:nth-child(1) {
            transform: translateY(7.5px) rotate(45deg);
        }

        .nav-toggle.active span:nth-child(2) {
            opacity: 0;
        }

        .nav-toggle.active span:nth-child(3) {
            transform: translateY(-7.5px) rotate(-45deg);
        }

        /* ===== MOBILE ===== */
        @media (max-width:991px) {
            .top-info span.hide-mobile {
                display: none;
            }

            .main-nav {
                position: fixed;
                top: 0;
                right: -100%;
                width: 82%;
                max-width: 340px;
                height: 100vh;
                background: #fff;
                flex-direction: column;
                align-items: stretch;
                padding: 90px 24px 24px;
                gap: 2px;
                overflow-y: auto;
                transition: right .3s ease;
                box-shadow: -10px 0 30px rgba(0, 0, 0, 0.15);
                z-index: 1001;
            }

            .main-nav.active {
                right: 0;
            }

            .main-nav>a,
            .nav-item>.nav-link {
                width: 100%;
                justify-content: space-between;
                padding: 14px 6px;
                border-bottom: 1px solid #eee;
                border-radius: 0;
            }

            .nav-item.open>.nav-link i.chevron {
                transform: rotate(180deg);
            }

            .dropdown-panel {
                position: static;
                transform: none;
                min-width: 0;
                grid-template-columns: 1fr;
                box-shadow: none;
                padding: 4px 0 4px 12px;
                display: none;
                opacity: 1;
                visibility: visible;
                gap: 0;
            }

            .nav-item.open .dropdown-panel {
                display: grid;
            }

            .dropdown-panel a {
                padding: 10px 8px;
                border-bottom: 1px dashed #eee;
            }

            .nav-toggle {
                display: flex;
            }

            .nav-overlay {
                display: none;
                position: fixed;
                inset: 0;
                background: rgba(0, 0, 0, .45);
                z-index: 1000;
            }

            .nav-overlay.active {
                display: block;
            }
        }

        @media (max-width:480px) {
            .logo img {
                height: 80px;
            }

            .header-actions .btn span.btn-text {
                display: none;
            }
        }

        /* hero section */
        .hero {
            position: relative;
            min-height: 92vh;
            display: flex;
            align-items: center;
            overflow: hidden;
            background: #0a1410;
            isolation: isolate;
            font-family: 'Poppins', sans-serif;
        }

        .hero-bg {
            position: absolute;
            inset: 0;
            overflow: hidden;
            z-index: -2;
            background-image: url('https://eventasolutions.com/wp-content/uploads/2026/06/20-years-of-experience.jpg');
            background-size: cover;
            background-position: center 30%;
        }

        .hero-bg video {
            position: absolute;
            top: 50%;
            left: 50%;
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            transform: translate(-50%, -50%) scale(1.02);
            object-fit: cover;
        }

        .hero-overlay {
            position: absolute;
            inset: 0;
            background:
                linear-gradient(180deg, rgba(2, 10, 6, 0.75) 0%, rgba(2, 10, 6, 0.55) 35%, rgba(1, 20, 10, 0.92) 100%),
                linear-gradient(100deg, rgba(1, 30, 15, 0.85) 0%, rgba(1, 30, 15, 0.35) 45%, rgba(1, 30, 15, 0.05) 70%);
            z-index: -1;
        }

        .hero-container {
            max-width: 1280px;
            margin: 0 auto;
            padding: 50px 24px 90px;
            width: 100%;
        }

        .hero .eyebrow {
            display: flex;
            align-items: center;
            gap: 14px;
            margin-bottom: 28px;
            opacity: 0;
            animation: heroFadeUp .8s ease forwards .1s;
        }

        .hero .eyebrow .line {
            width: 44px;
            height: 2px;
            background: #C9A24B;
        }

        .hero .eyebrow span {
            color: #C9A24B;
            letter-spacing: 4px;
            font-size: 13px;
            font-weight: 600;
            text-transform: uppercase;
        }

        .hero h1.hero-title {
            font-family: 'Playfair Display', serif;
            font-weight: 700;
            color: #fff;
            font-size: clamp(2.4rem, 5.4vw, 4.6rem);
            line-height: 1.1;
            margin: 0 0 26px;
            max-width: 820px;
            opacity: 0;
            animation: heroFadeUp .9s ease forwards .3s;
        }

        .hero h1.hero-title em {
            font-style: normal;
            color: #C9A24B;
        }

        .hero .hero-sub {
            color: #e6ede8;
            font-size: 17px;
            line-height: 1.7;
            max-width: 560px;
            font-weight: 300;
            margin: 0 0 40px;
            opacity: 0;
            animation: heroFadeUp .9s ease forwards .5s;
        }

        .hero .hero-actions {
            display: flex;
            align-items: center;
            gap: 18px;
            flex-wrap: wrap;
            margin-bottom: 30px;
            opacity: 0;
            animation: heroFadeUp .9s ease forwards .7s;
        }

        .hero .btn {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            padding: 16px 30px;
            border-radius: 8px;
            font-weight: 600;
            font-size: 15px;
            transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
            text-decoration: none;
        }

        .hero .btn-primary {
            background: #fff;
            color: #000;
            box-shadow: 0 10px 30px rgba(201, 162, 75, 0.25);
        }

        .hero .btn-primary:hover {
            transform: translateY(-3px);
            box-shadow: 0 14px 34px rgba(201, 162, 75, 0.4);
        }

        .hero .btn-ghost {
            color: #fff;
            border: 1.5px solid rgba(255, 255, 255, 0.4);
            background: rgba(255, 255, 255, 0.04);
        }

        .hero .btn-ghost:hover {
            border-color: #fff;
            background: rgba(255, 255, 255, 0.12);
            transform: translateY(-3px);
        }

        .hero .hero-stats {
            display: flex;
            gap: 0;
            border-top: 1px solid rgba(255, 255, 255, 0.18);
            padding-top: 28px;
            max-width: 700px;
            opacity: 0;
            animation: heroFadeUp .9s ease forwards .9s;
        }

        .hero .stat {
            flex: 1;
            padding-right: 28px;
            border-right: 1px solid rgba(255, 255, 255, 0.18);
        }

        .hero .stat:last-child {
            border-right: none;
            padding-right: 0;
        }

        .hero .stat+.stat {
            padding-left: 28px;
        }

        .hero .stat-num {
            font-family: 'Playfair Display', serif;
            color: #fff;
            font-size: 28px;
            font-weight: 700;
            display: flex;
            align-items: baseline;
            gap: 2px;
        }

        .hero .stat-num span.suffix {
            color: #C9A24B;
            font-size: 20px;
        }

        .hero .stat-label {
            color: #c9d3ce;
            font-size: 12.5px;
            letter-spacing: .3px;
            margin-top: 4px;
        }

        @keyframes heroFadeUp {
            from {
                opacity: 0;
                transform: translateY(22px);
            }

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

        .hero .scroll-cue {
            position: absolute;
            bottom: 28px;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 8px;
            color: #cfd8d3;
            font-size: 11px;
            letter-spacing: 2px;
            text-transform: uppercase;
            opacity: .85;
        }

        .hero .scroll-cue .dot-track {
            width: 1px;
            height: 38px;
            background: rgba(255, 255, 255, 0.3);
            position: relative;
            overflow: hidden;
        }

        .hero .scroll-cue .dot-track::after {
            content: "";
            position: absolute;
            top: -38px;
            left: 0;
            width: 100%;
            height: 100%;
            background: #C9A24B;
            animation: heroScrollDown 2.2s ease-in-out infinite;
        }

        @keyframes heroScrollDown {
            0% {
                top: -38px;
            }

            60% {
                top: 38px;
            }

            100% {
                top: 38px;
            }
        }

        @media (max-width:768px) {
            .hero {
                min-height: 100vh;
            }

            .hero-container {
                padding: 50px 20px 70px;
            }

            .hero .hero-stats {
                gap: 0;
                flex-wrap: wrap;
            }

            .hero .stat {
                flex: 1 1 45%;
                border-right: none;
                padding: 0 0 16px;
                margin-bottom: 10px;
            }

            .hero .stat+.stat {
                padding-left: 18px;
                border-left: 1px solid rgba(255, 255, 255, 0.18);
            }

            .hero .scroll-cue {
                display: none;
            }
        }

        @media (max-width:480px) {
            .hero .hero-actions .btn {
                width: 100%;
                justify-content: center;
            }
        }

        @media (prefers-reduced-motion: reduce) {
            .hero-bg {
                animation: none;
            }

            .hero .eyebrow,
            .hero h1.hero-title,
            .hero .hero-sub,
            .hero .hero-actions,
            .hero .hero-stats {
                animation: none;
                opacity: 1;
                transform: none;
            }

            .hero .scroll-cue .dot-track::after {
                animation: none;
                top: 0;
            }
        }

        /* about section */
        /* Who Are We — simple two-column section */
        /* Replace colors/fonts below with your own theme variables if you have them */

        .who-we-are {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 3rem;
            max-width: 1200px;
            margin: 0 auto;
            padding: 2rem 1rem;
        }

        .who-we-are__image {
            flex: 1 1 300px;
        }

        .who-we-are__image img {
            width: 100%;
            height: auto;
            border-radius: 8px;
            display: block;
        }

        .who-we-are__content {
            flex: 1 1 400px;
        }

        .who-we-are__content h2 {
            font-size: 2.25rem;
            font-weight: 700;
            margin: 0 0 1.25rem;
        }

        .who-we-are__content p {
            font-size: 1rem;
            line-height: 1.7;
            margin: 0 0 1.1rem;
            color: #333;
        }

        .who-we-are__content a {
            color: #2e7d32;
            text-decoration: underline;
        }

        .who-we-are__content .btn {
            display: inline-block;
            margin-top: 0.5rem;
            padding: 0.75rem 1.75rem;
            background: #2e7d32;
            color: #fff;
            text-decoration: none;
            font-weight: 600;
            border-radius: 4px;
        }

        .who-we-are__content .btn:hover {
            background: #256428;
        }

        /* Responsive */
        @media (max-width: 768px) {
            .who-we-are {
                padding: 2.5rem 1.25rem;
            }

            .who-we-are__content h2 {
                font-size: 1.75rem;
            }
        }

        /* why choose us */

        /* Why Choose Us — bold, modern, no card boxes */
        /* Uses your brand green + gold. Adjust the variables below to match exactly. */

        .why-choose-us {
            --green: #1c7a4b;
            --green-dark: #0f5c37;
            --gold: #c99a2e;
            --ink: #16241d;

            position: relative;
            /* max-width: 1200px; */
            margin: 0 auto;
            padding: 2rem 2rem;
            overflow: hidden;
            background: linear-gradient(135deg, #F8FFF9 0%, #EDFDF3 50%, #DFF7E8 100%);
        }

        .why-choose-us::before {
            content: "";
            position: absolute;
            top: -120px;
            right: -160px;
            width: 420px;
            height: 420px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(28, 122, 75, 0.08), rgba(28, 122, 75, 0) 70%);
            pointer-events: none;
        }

        .why-choose-us__header {
            position: relative;
            text-align: center;
            margin-bottom: 4rem;
        }

        .why-choose-us__eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 0.6rem;
            font-size: 0.95rem;
            color: #333;
            margin: 0 0 0.75rem;
        }

        .why-choose-us__eyebrow::before {
            content: "";
            width: 2px;
            height: 18px;
            background: var(--green);
        }

        .why-choose-us__header h2 {
            font-size: 2.25rem;
            font-weight: 800;
            margin: 0;
            color: var(--ink);
        }

        .why-choose-us__grid {
            position: relative;
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            column-gap: 3rem;
            row-gap: 3.5rem;
        }

        .why-item {
            position: relative;
            padding-top: 0.5rem;
        }

        .why-item__num {
            position: absolute;
            top: -1.4rem;
            right: 0;
            font-size: 3.25rem;
            font-weight: 800;
            color: var(--green);
            opacity: 0.8;
            line-height: 1;
            pointer-events: none;
        }

        .why-item__badge {
            width: 56px;
            height: 56px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            background: linear-gradient(135deg, var(--green), var(--green-dark));
            margin-bottom: 1.25rem;
            transition: transform 0.25s ease, box-shadow 0.25s ease;
            box-shadow: 0 8px 20px -8px rgba(28, 122, 75, 0.55);
        }

        .why-item__badge--gold {
            background: linear-gradient(135deg, var(--gold), #8a6a1e);
            box-shadow: 0 8px 20px -8px rgba(201, 154, 46, 0.55);
        }

        .why-item__badge svg {
            width: 24px;
            height: 24px;
        }

        .why-item:hover .why-item__badge {
            transform: translateY(-4px) scale(1.05);
        }

        .why-item h3 {
            font-size: 1.15rem;
            font-weight: 700;
            color: var(--ink);
            margin: 0 0 0.65rem;
            position: relative;
            display: inline-block;
        }

        .why-item h3::after {
            content: "";
            display: block;
            height: 2px;
            width: 28px;
            margin-top: 0.55rem;
            background: var(--green);
            transition: width 0.3s ease;
        }

        .why-item:hover h3::after {
            width: 56px;
        }

        .why-item p {
            font-size: 0.95rem;
            line-height: 1.7;
            color: #555;
            margin: 0;
        }

        /* Responsive */
        @media (max-width: 900px) {
            .why-choose-us__grid {
                grid-template-columns: repeat(2, 1fr);
                row-gap: 3rem;
            }
        }

        @media (max-width: 600px) {
            .why-choose-us {
                padding: 3rem 1.25rem;
            }

            .why-choose-us__grid {
                grid-template-columns: 1fr;
            }

            .why-choose-us__header h2 {
                font-size: 1.6rem;
            }
        }

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

            .why-item__badge,
            .why-item h3::after {
                transition: none;
            }
        }

        /* services */
        /*==========================================
        PREMIUM SERVICES SECTION
==========================================*/

        .services-section {
            padding: 50px 0;
            background: linear-gradient(135deg,
                    #eef8f2 0%,
                    #dff2e6 35%,
                    #cdebd8 70%,
                    #b9e3c8 100%);
        }

        .section-heading {
            max-width: 1100px;
            margin: 0 auto 70px;
            text-align: center;
        }

        .section-heading .sub-title {
            display: inline-block;
            color: #0d8a46;
            font-size: 14px;
            font-weight: 600;
            letter-spacing: 2px;
            text-transform: uppercase;
            margin-bottom: 15px;
            position: relative;
        }

        .section-heading .sub-title::before,
        .section-heading .sub-title::after {
            content: "";
            position: absolute;
            top: 50%;
            width: 45px;
            height: 2px;
            background: #0d8a46;
        }

        .section-heading .sub-title::before {
            right: 110%;
        }

        .section-heading .sub-title::after {
            left: 110%;
        }

        .section-heading h2 {
            font-size: 48px;
            font-weight: 700;
            color: #111;
            line-height: 1.2;
            margin-bottom: 20px;
            margin-top: 5px;
        }

        .section-heading p {
            color: #666;
            line-height: 1.9;
            font-size: 17px;
        }


        /* our services */

        /*==================================================
        PREMIUM SERVICES SECTION
==================================================*/

        .premium-services {
            position: relative;
            padding: 50px 0;
            overflow: hidden;
            background: #f7f5ee;
        }

        /* Decorative Shapes */

        .premium-services::before {
            content: "";
            position: absolute;
            width: 500px;
            height: 500px;
            border-radius: 50%;
            background: rgba(255, 255, 255, .18);
            filter: blur(90px);
            top: -220px;
            left: -180px;
        }

        .premium-services::after {
            content: "";
            position: absolute;
            width: 450px;
            height: 450px;
            border-radius: 50%;
            background: rgba(255, 255, 255, .12);
            filter: blur(90px);
            bottom: -220px;
            right: -180px;
        }

        /*==================================================
        Heading
==================================================*/

        .section-heading {
            max-width: 760px;
            margin: 0 auto 70px;
            position: relative;
            z-index: 2;
        }

        .sub-title {
            display: inline-block;
            padding: 10px 22px;
            border-radius: 40px;
            background: rgba(255, 255, 255, .75);
            backdrop-filter: blur(15px);
            color: #0b8d49;
            font-weight: 600;
            font-size: 14px;
            letter-spacing: 1px;
            margin-bottom: 20px;
        }

        .section-heading h2 {
            font-size: 52px;
            line-height: 1.15;
            font-weight: 700;
            color: #014D23;
            margin-bottom: 20px;
        }

        .section-heading p {
            font-size: 17px;
            line-height: 1.8;
            color: #555;
        }

        /*==================================================
            Slider
==================================================*/

        .servicesSlider {
            position: relative;
            z-index: 2;
            overflow: hidden;
            border-radius: 35px;
        }

        .swiper-slide {
            height: auto;
        }

        /*==================================================
        Service Item
==================================================*/

        .service-item {
            position: relative;
            height: 550px;
            overflow: hidden;
            border-radius: 35px;
        }

        .service-item img {
            width: 100%;
            height: 100%;
            object-fit: fill;
            transition: 1s;
        }

        .service-item:hover img {
            transform: scale(1.08);
        }

        /*==================================================
        Overlay
==================================================*/

        .service-overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top,
                    rgba(0, 0, 0, .82),
                    rgba(0, 0, 0, .40),
                    rgba(0, 0, 0, .05));
        }

        /*==================================================
        Content
==================================================*/

        .service-content {
            position: absolute;
            left: 60px;
            bottom: 60px;
            max-width: 600px;
            z-index: 5;
        }

        .service-content span {
            display: inline-block;
            padding: 10px 22px;
            border-radius: 50px;
            background: #16a34a;
            backdrop-filter: blur(15px);
            color: #fff;
            font-size: 14px;
            font-weight: 600;
            margin-bottom: 22px;
        }

        .service-content h3 {
            color: #fff;
            font-size: 52px;
            line-height: 1.15;
            margin-bottom: 20px;
        }

        .service-content p {
            color: #ececec;
            line-height: 1.9;
            font-size: 18px;
            margin-bottom: 35px;
            max-width: 550px;
        }

        .service-content a {
            display: inline-flex;
            align-items: center;
            gap: 12px;
            padding: 16px 34px;
            border-radius: 60px;
            background: #16a34a;
            color: #fff;
            text-decoration: none;
            font-weight: 600;
            transition: .35s;
        }

        .service-content a:hover {
            background: #fff;
            color: #111;
        }

        .service-content a i {
            transition: .35s;
        }

        .service-content a:hover i {
            transform: translateX(6px);
        }

        /*==================================================
        Navigation
==================================================*/

        .service-prev,
        .service-next {
            position: absolute;
            top: 90%;
            transform: translateY(-50%);
            width: 65px;
            height: 65px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            background: rgba(255, 255, 255, .18);
            backdrop-filter: blur(18px);
            color: #fff;
            cursor: pointer;
            transition: .35s;
            z-index: 20;
        }

        .service-prev {
            left: 1080px;
        }

        .service-next {
            right: 10px;
        }

        .service-prev:hover,
        .service-next:hover {
            background: #16a34a;
        }

        /*==================================================
        Pagination
==================================================*/

        .swiper-pagination {
            bottom: 20px !important;
        }

        .swiper-pagination-bullet {
            width: 12px;
            height: 12px;
            background: #fff;
            opacity: .4;
        }

        .swiper-pagination-bullet-active {
            width: 40px;
            border-radius: 30px;
            background: #16a34a;
            opacity: 1;
        }

        /*==================================================
        Responsive
==================================================*/

        @media(max-width:991px) {

            .service-item {
                height: 520px;
            }

            .service-content {
                left: 35px;
                bottom: 35px;
            }

            .service-content h3 {
                font-size: 38px;
            }

            .section-heading h2 {
                font-size: 40px;
            }

        }

        @media(max-width:767px) {

            .premium-services {
                padding: 70px 0;
            }

            .section-heading h2 {
                font-size: 30px;
            }

            .section-heading p {
                font-size: 15px;
            }

            .service-item {
                height: 420px;
                border-radius: 24px;
            }

            .service-content {
                left: 25px;
                right: 25px;
                bottom: 25px;
            }

            .service-content span {
                font-size: 12px;
                padding: 8px 18px;
            }

            .service-content h3 {
                font-size: 28px;
            }

            .service-content p {
                font-size: 15px;
                margin-bottom: 22px;
            }

            .service-content a {
                padding: 13px 24px;
                font-size: 14px;
            }

            .service-prev,
            .service-next {
                display: show;
            }
            .service-prev{
                left: 10px;
            }
            .service-prev, .service-next{

                width: 35px;
                height: 35px;
                font-size: 12px;
                top: 50px;
            }

        }

        /*=========================================
        WORK PROCESS
=========================================*/

        .work-process {
            padding: 50px 0;
            background: linear-gradient(180deg, #ffffff 0%, #f7fbf8 100%);
        }

        .section-title {
            max-width: 1200px;
            margin: 0 auto 50px;
        }

        .section-title span {
            display: inline-block;
            color: #16a34a;
            font-size: 14px;
            font-weight: 600;
            letter-spacing: 2px;
            text-transform: uppercase;
            margin-bottom: 15px;
        }

        .section-title h2 {
            font-size: 48px;
            color: #111;
            line-height: 1.2;
            margin-bottom: 18px;
            margin-top: 10px;
        }

        .section-title p {
            color: #666;
            font-size: 17px;
            line-height: 1.8;
        }

        /*=========================================
            Tabs
=========================================*/

        .process-tabs {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
            margin-bottom: 45px;
        }

        .process-tab {
            background: #fff;
            border: 1px solid #e9efeb;
            border-radius: 20px;
            padding: 30px;
            cursor: pointer;
            transition: .35s;
            position: relative;
        }

        .process-tab:hover {
            transform: translateY(-6px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, .08);
        }

        .process-tab.active {
            background: linear-gradient(135deg, #16a34a, #0f8d48);
            color: #fff;
            box-shadow: 0 18px 40px rgba(22, 163, 74, .30);
        }

        .process-tab .number {
            display: block;
            font-size: 42px;
            font-weight: 700;
            opacity: .15;
            margin-bottom: 12px;
            line-height: 1;
        }

        .process-tab.active .number {
            opacity: 1.25;
        }

        .process-tab h4 {
            font-size: 22px;
            margin: 0;
            font-weight: 600;
        }

        /*=========================================
            Content
=========================================*/

        .process-content-wrapper {
            position: relative;
            background: #fff;
            border-radius: 24px;
            padding: 50px;
            border: 1px solid #edf1ee;
            box-shadow: 0 20px 45px rgba(0, 0, 0, .06);
        }

        .process-content {
            display: none;
            animation: fade .4s ease;
        }

        .process-content.active {
            display: block;
        }

        .process-content small {
            display: inline-block;
            color: #16a34a;
            font-size: 14px;
            font-weight: 600;
            letter-spacing: 2px;
            text-transform: uppercase;
            margin-bottom: 12px;
        }

        .process-content h3 {
            font-size: 36px;
            color: #111;
            margin-bottom: 20px;
            line-height: 1.3;
        }

        .process-content p {
            color: #666;
            font-size: 17px;
            line-height: 1.9;
            margin-bottom: 18px;
        }

        .process-content p:last-child {
            margin-bottom: 0;
        }

        /*=========================================
            Animation
=========================================*/

        @keyframes fade {

            from {
                opacity: 0;
                transform: translateY(15px);
            }

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

        }

        /*=========================================
            Responsive
=========================================*/

        @media(max-width:991px) {

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

            .section-title h2 {
                font-size: 38px;
            }

            .process-content h3 {
                font-size: 30px;
            }

        }

        @media(max-width:767px) {

            .work-process {
                padding: 70px 0;
            }

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

            .section-title h2 {
                font-size: 30px;
            }

            .section-title p {
                font-size: 15px;
            }

            .process-tabs {
                grid-template-columns: 1fr;
                gap: 15px;
            }

            .process-tab {
                padding: 22px;
            }

            .process-tab .number {
                font-size: 34px;
            }

            .process-tab h4 {
                font-size: 18px;
            }

            .process-content-wrapper {
                padding: 30px 25px;
                border-radius: 18px;
            }

            .process-content h3 {
                font-size: 24px;
            }

            .process-content p {
                font-size: 15px;
            }

        }

        /*=========================================
            Mobile Tabs
=========================================*/

        @media (max-width:768px) {

            .process-tabs {
                display: flex;
                gap: 15px;
                overflow-x: auto;
                overflow-y: hidden;
                padding-bottom: 10px;
                margin-bottom: 30px;
                scroll-snap-type: x mandatory;
                -ms-overflow-style: none;
                scrollbar-width: none;
            }

            .process-tabs::-webkit-scrollbar {
                display: none;
            }

            .process-tab {
                flex: 0 0 180px;
                min-width: 180px;
                padding: 20px;
                border-radius: 16px;
                scroll-snap-align: start;
            }

            .process-tab .number {
                font-size: 32px;
            }

            .process-tab h4 {
                font-size: 18px;
            }

        }

        /*=========================================
        PREMIUM GALLERY
=========================================*/

        .gallery-section {
            position: relative;
            padding: 50px 0;
            overflow: hidden;
            background:
                radial-gradient(circle at top right, rgba(22, 163, 74, .08), transparent 35%),
                radial-gradient(circle at bottom left, rgba(22, 163, 74, .06), transparent 35%),
                linear-gradient(180deg, #ffffff 0%, #f5faf7 100%);
        }

        .gallery-section::before {
            content: "";
            position: absolute;
            width: 450px;
            height: 450px;
            border-radius: 50%;
            background: rgba(22, 163, 74, .05);
            top: -180px;
            right: -180px;
        }

        .gallery-section::after {
            content: "";
            position: absolute;
            width: 350px;
            height: 350px;
            border-radius: 50%;
            background: rgba(22, 163, 74, .04);
            bottom: -150px;
            left: -150px;
        }

        /*=========================================
        Heading
=========================================*/

        .gallery-section .section-heading {
            max-width: 700px;
            margin: 0 auto 70px;
            text-align: center;
            position: relative;
            z-index: 2;
        }

        .gallery-section .sub-title {
            display: inline-block;
            color: #0f8a45;
            font-size: 14px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 2px;
            margin-bottom: 15px;
        }

        .gallery-section h2 {
            font-size: 48px;
            font-weight: 700;
            color: #111;
            margin-bottom: 20px;
            margin-top: 10px;
        }

        .gallery-section p {
            color: #666;
            line-height: 1.8;
            font-size: 17px;
        }

        /*=========================================
        Grid
=========================================*/

        .gallery-grid {

            display: grid;

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

            grid-auto-rows: 220px;

            gap: 22px;

            position: relative;

            z-index: 2;

        }

        .gallery-item {

            position: relative;

            overflow: hidden;

            border-radius: 24px;

            display: block;

            box-shadow: 0 18px 45px rgba(0, 0, 0, .08);

            transition: .45s;

            background: #fff;

        }

        .gallery-item img {

            width: 100%;

            height: 100%;

            object-fit: cover;

            transition: .7s;

        }

        /* Layout */

        .gallery-item.large {

            grid-column: span 2;

            grid-row: span 2;

        }

        .gallery-item.wide {

            grid-column: span 2;

        }

        .gallery-item.tall {

            grid-row: span 2;

        }

        /*=========================================
        Overlay
=========================================*/

        .gallery-overlay {

            position: absolute;

            inset: 0;

            background: linear-gradient(to top,
                    rgba(0, 0, 0, .85) 0%,
                    rgba(0, 0, 0, .35) 45%,
                    transparent 100%);

            display: flex;

            flex-direction: column;

            justify-content: flex-end;

            padding: 28px;

            color: #fff;

            opacity: 0;

            transition: .45s;

        }

        .gallery-overlay span {

            display: inline-block;

            background: #16a34a;

            width: max-content;

            padding: 7px 16px;

            border-radius: 50px;

            font-size: 13px;

            margin-bottom: 12px;

            font-weight: 600;

        }

        .gallery-overlay h3 {

            font-size: 24px;

            margin: 0;

            line-height: 1.3;

        }

        /*=========================================
        Hover
=========================================*/

        .gallery-item:hover {

            transform: translateY(-10px);

            box-shadow: 0 30px 70px rgba(0, 0, 0, .18);

        }

        .gallery-item:hover img {

            transform: scale(1.08);

        }

        .gallery-item:hover .gallery-overlay {

            opacity: 1;

        }

        /*=========================================
        Responsive
=========================================*/

        @media(max-width:1200px) {

            .gallery-grid {

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

            }

        }

        @media(max-width:991px) {

            .gallery-grid {

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

                grid-auto-rows: 220px;

            }

            .gallery-item.large,

            .gallery-item.wide,

            .gallery-item.tall {

                grid-column: span 1;

                grid-row: span 1;

            }

            .gallery-section h2 {

                font-size: 36px;

            }

        }

        @media(max-width:767px) {

            .gallery-section {

                padding: 70px 0;

            }

            .gallery-grid {

                grid-template-columns: 1fr;

                grid-auto-rows: 260px;

                gap: 18px;

            }

            .gallery-item.large,

            .gallery-item.wide,

            .gallery-item.tall {

                grid-column: span 1;

                grid-row: span 1;

            }

            .gallery-overlay {

                opacity: 1;

                padding: 22px;

                background: linear-gradient(to top,
                        rgba(0, 0, 0, .78),
                        transparent);

            }

            .gallery-overlay h3 {

                font-size: 20px;

            }

            .gallery-section h2 {

                font-size: 30px;

            }

            .gallery-section p {

                font-size: 15px;

            }

        }


        /* client logo */

        .client-logos {
            padding: 20px 0;
            overflow: hidden;
        }

        .logo-slider {
            overflow: hidden;
            margin: 20px 0;
        }

        .logo-track {
            display: flex;
            width: max-content;
            gap: 40px;
        }

        .logo-track img {
            width: 150px;
            height: 80px;
            object-fit: cover;
            background: #fff;
            border-radius: 12px;
            box-shadow: 0 5px 20px rgba(0, 0, 0, .08);
            flex-shrink: 0;
        }

        .logo-track.left {
            animation: scrollLeft 30s linear infinite;
        }

        .logo-track.right {
            animation: scrollRight 30s linear infinite;
        }

        .logo-slider:hover .logo-track {
            animation-play-state: paused;
        }

        @keyframes scrollLeft {
            from {
                transform: translateX(0);
            }

            to {
                transform: translateX(-50%);
            }
        }

        @keyframes scrollRight {
            from {
                transform: translateX(-50%);
            }

            to {
                transform: translateX(0);
            }
        }

    
        /* ===============================
   PREMIUM CERTIFICATE SLIDER
================================ */


        .certificate-area {

            background: linear-gradient(135deg, #00833a, #006b30);
            padding: 50px 0;
            overflow: hidden;

        }



        .certificate-container {

            width: 90%;
            max-width: 1250px;
            margin: auto;

        }



        /* Heading */

        .certificate-heading {

            text-align: center;
            margin-bottom: 50px;

        }


        .certificate-subtitle {

            color: #ffffff;
            font-size: 18px;
            font-weight: 600;
            letter-spacing: .5px;
            margin-bottom: 15px;
            display: inline-block;

        }



        .certificate-heading h2 {

            color: #fff;
            font-size: 42px;
            font-weight: 700;
            max-width: 900px;
            margin: auto;
            line-height: 1.2;

        }





        /* Slider Box */

        .certificate-slider-box {

            position: relative;
            padding: 20px 60px;

        }



        .certificate-track {

            display: flex;
            gap: 30px;
            transition: .6s ease;

        }





        /* Card */

        .certificate-item {

            min-width: calc(33.333% - 20px);

            background: #fff;

            border-radius: 25px;


            height: 450px;

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

            box-shadow:
                0 15px 40px rgba(0, 0, 0, .18);

            transition: .4s;

        }



        .certificate-item:hover {

            transform: translateY(-10px);

        }





        .certificate-item img {

            width: 100%;
            height: 100%;

            object-fit: contain;

            border-radius: 15px;

        }





        /* Buttons */


        .certificate-prev,
        .certificate-next {


            position: absolute;

            top: 50%;
            transform: translateY(-50%);


            width: 55px;
            height: 55px;


            border-radius: 50%;

            border: 2px solid #00833a;

            background: #fff;

            color: #00833a;


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


            cursor: pointer;

            font-size: 22px;


            z-index: 5;


            transition: .3s;


        }



        .certificate-prev {

            left: 0;

        }


        .certificate-next {

            right: 0;

        }




        .certificate-prev:hover,
        .certificate-next:hover {

            background: #00833a;

            color: white;

            transform: translateY(-50%) scale(1.1);

        }





        /* Tablet */

        @media(max-width:991px) {


            .certificate-item {

                min-width: calc(50% - 15px);

            }


            .certificate-heading h2 {

                font-size: 34px;

            }


        }





        /* Mobile */

        @media(max-width:600px) {


            .certificate-slider-box {

                padding: 20px 40px;

            }


            .certificate-item {

                min-width: 100%;

                height: 350px;

            }


            .certificate-heading h2 {

                font-size: 28px;

            }


        }



        /* ==========================
   PREMIUM FAQ SECTION
========================== */


        .faq-section {

            padding: 50px 0;

            background:
                linear-gradient(135deg, #f8fbff, #eef7f5);

        }



        .faq-container {

            width: 90%;
            max-width: 1200px;
            margin: auto;

            display: grid;
            /* grid-template-columns: 45% 55%; */
            gap: 70px;

            align-items: center;

        }



        /* Image */

        .faq-image {

            position: relative;

        }



        .faq-image img {

            width: 100%;
            height: 100%;

            object-fit: contain;

            border-radius: 30px;

            box-shadow:
                0 25px 60px rgba(0, 0, 0, .15);

        }



        /* Green floating shape */

        .faq-image::before {

            content: "";

            position: absolute;

            width: 150px;
            height: 150px;

            background: #00833a;

            border-radius: 50%;

            top: -40px;
            left: -40px;

            z-index: -1;

        }





        /* Heading */


        .faq-small-title {

            display: flex;

            align-items: center;

            gap: 15px;

            color: #00833a;

            font-size: 18px;

            font-weight: 600;

            margin-bottom: 15px;

        }



        .faq-small-title::before {

            content: "";

            width: 45px;
            height: 3px;

            background: #00833a;

        }





        .faq-content h2 {

            font-size: 42px;

            line-height: 1.2;

            color: #111;

            margin-bottom: 40px;

        }





        /* FAQ ITEMS */


        .faq-item {


            background: white;

            border-radius: 18px;

            margin-bottom: 18px;

            overflow: hidden;

            box-shadow:
                0 10px 30px rgba(0, 0, 0, .08);


            transition: .4s;

        }



        .faq-item:hover {

            transform: translateY(-3px);

        }




        .faq-question {

            padding: 24px 28px;

            display: flex;

            align-items: center;

            justify-content: space-between;

            cursor: pointer;

            font-size: 17px;

            font-weight: 600;

            color: #222;

        }




        .faq-question span {

            width: 35px;
            height: 35px;

            display: flex;

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

            border-radius: 50%;

            background: #00833a;

            color: white;

            font-size: 20px;

            transition: .3s;

        }




        .faq-answer {

            max-height: 0;

            overflow: hidden;

            padding: 0 28px;

            color: #666;

            line-height: 1.7;

            transition: .4s;

        }




        .faq-item.active .faq-answer {

            max-height: 150px;

            padding-bottom: 25px;

        }



        .faq-item.active .faq-question span {

            transform: rotate(45deg);

            background: #111;

        }





        /* Responsive */


        @media(max-width:991px) {


            .faq-container {

                grid-template-columns: 1fr;

            }


            .faq-image img {

                height: 400px;

            }


            .faq-content h2 {

                font-size: 34px;

            }


        }


        @media(max-width:600px) {


            .faq-content h2 {

                font-size: 28px;

            }


            .faq-question {

                padding: 20px;

                font-size: 15px;

            }


        }


        .clean-lead-section{

    padding:80px 0;
    background:#f6f8f7;

}


.clean-lead-wrapper{

    display:grid;
    grid-template-columns:1fr 1fr;

    background:white;

    border-radius:24px;
    overflow:hidden;

    box-shadow:
    0 15px 50px rgba(0,0,0,.08);

}



/* IMAGE */


.clean-image-box{

    position:relative;
    min-height:550px;

}


.clean-image-box img{

    width:100%;
    height:100%;
    object-fit:cover;

}



.image-caption{

    position:absolute;

    left:35px;
    bottom:35px;

    background:white;

    padding:20px 30px;

    border-radius:16px;

}


.image-caption h3{

    margin:0;

    color:#00843d;

    font-size:38px;

}



.image-caption p{

    margin:5px 0 0;

    color:#555;

}





/* FORM */


.clean-form-box{

    padding:55px;

}


.clean-form-box span{

    color:#00843d;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

}



.clean-form-box h2{

    font-size:42px;

    line-height:1.2;

    color:#123;

    margin:15px 0;

}



.clean-form-box p{

    color:#666;

    line-height:1.7;

    margin-bottom:35px;

}



.form-row{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:20px;

    margin-bottom:20px;

}



.clean-form-box input,
.clean-form-box textarea{


    width:100%;

    padding:16px 18px;

    border:1px solid #ddd;

    border-radius:12px;

    font-size:15px;

    outline:none;

}



.clean-form-box input:focus,
.clean-form-box textarea:focus{

    border-color:#00843d;

}



.clean-form-box textarea{

    height:130px;

    resize:none;

}



.clean-form-box button{


    margin-top:25px;

    width:100%;

    padding:17px;

    border:none;

    border-radius:12px;

    background:#00843d;

    color:white;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}



.clean-form-box button:hover{

    background:#006b31;

}





@media(max-width:991px){


.clean-lead-wrapper{

    grid-template-columns:1fr;

}


.clean-image-box{

    min-height:400px;

}



.clean-form-box{

    padding:35px 25px;

}


.clean-form-box h2{

    font-size:32px;

}


.form-row{

    grid-template-columns:1fr;

}


}

/* FOOTER */


.premium-footer{

    background:#032b18;

    color:white;

    padding:80px 0 0;

}



.footer-main{

    display:grid;

    grid-template-columns:
    1.5fr 1fr 1fr 1fr;

    gap:45px;

    padding-bottom:60px;

}



/* BRAND */


.footer-logo{

    font-size:34px;

    font-weight:800;

    color:white;

    text-decoration:none;

}



.footer-logo span{

    color:#00a84f;

}



.footer-brand p{

    color:#c8d3cd;

    line-height:1.8;

    margin:20px 0;

    max-width:330px;

}




/* SOCIAL */


.footer-social{

    display:flex;

    gap:12px;

}



.footer-social a{


    width:42px;

    height:42px;

    display:flex;

    align-items:center;

    justify-content:center;


    border-radius:50%;

    background:#0b4428;

    color:white;

    transition:.3s;

}



.footer-social a:hover{

    background:#00a84f;

}





/* HEADINGS */


.footer-col h4{

    font-size:19px;

    margin-bottom:25px;

    position:relative;

}



.footer-col h4::after{


    content:"";

    width:35px;

    height:3px;

    background:#00a84f;

    position:absolute;

    bottom:-10px;

    left:0;


}





/* LINKS */


.footer-col ul{

    list-style:none;

    padding:0;

    margin:0;

}



.footer-col ul li{

    margin-bottom:14px;

}



.footer-col ul li a{


    color:#c8d3cd;

    text-decoration:none;

    transition:.3s;

}



.footer-col ul li a:hover{

    color:#00a84f;

    padding-left:5px;

}




/* CONTACT */


.footer-contact p{

    color:#c8d3cd;

    display:flex;

    gap:12px;

    align-items:center;

    line-height:1.6;

}



.footer-contact i{

    color:#00a84f;

}





/* BOTTOM */


.footer-bottom{

    border-top:1px solid rgba(255,255,255,.12);

    padding:25px 0;

    display:flex;

    justify-content:space-between;

    align-items:center;

}



.footer-bottom p{

    margin:0;

    color:#b7c3bc;

    font-size:14px;

}



.footer-bottom a{

    color:#b7c3bc;

    text-decoration:none;

    margin-left:25px;

    font-size:14px;

}




/* RESPONSIVE */


@media(max-width:991px){


.footer-main{

    grid-template-columns:1fr 1fr;

}



}



@media(max-width:600px){


.premium-footer{

    padding-top:55px;

}



.footer-main{

    grid-template-columns:1fr;

    gap:35px;

}



.footer-logo{

    font-size:30px;

}



.footer-bottom{

    flex-direction:column;

    gap:15px;

    text-align:center;

}



.footer-bottom a{

    margin:0 8px;

}



}

.footer-logo img{

    width:300px;
    height:auto;
    display:block;

}

/* marquee */
        
:root{
  --forest-950:#0e2b21;
  --forest-800:#164a37;
  --gold:#c9a227;
  --cream:#f7f5ee;
}

.marquee-section{
  background:var(--forest-950);
  padding:26px 0;
  overflow:hidden;
}

.marquee{
  width:100%;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
  mask-image:linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
}

.marquee__track{
  display:flex;
  align-items:center;
  width:max-content;
  animation:marquee-scroll 28s linear infinite;
}

.marquee:hover .marquee__track{
  animation-play-state:paused;
}

.marquee__item{
  font-family:'Fraunces', serif;
  font-weight:600;
  font-size:22px;
  color:var(--cream);
  white-space:nowrap;
  padding:0 28px;
}

.marquee__dot{
  color:var(--gold);
  font-size:18px;
}

@keyframes marquee-scroll{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}

@media (max-width:600px){
  .marquee__item{
    font-size:17px;
    padding:0 18px;
  }
}

@media (prefers-reduced-motion: reduce){
  .marquee__track{
    animation:none;
  }
}

/* why new */
/* =========================================
   WHY CHOOSE US
========================================= */

.why-choose-section {
    position: relative;
    padding: 50px 20px 50px;
    background: #0b2b1d;
    overflow: hidden;
}

.why-container {
    width: min(1250px, 100%);
    margin: 0 auto;
}


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

.why-heading {
    max-width: 1200px;
    margin: 0 auto 65px;
    text-align: center;
}


.why-eyebrow span {
    width: 28px;
    height: 2px;
    display: block;
    background: #fff;
}

.why-heading h2 {
    margin: 0;

    font-size: 42px;
    line-height: 1.12;
    letter-spacing: -1.8px;
    /* font-weight: 750; */

    color: #0c2418;
}

.why-heading h2 span {
    color: #177548;
}

.why-heading p {
    max-width: 680px;
    margin: 22px auto 0;

    font-size: 17px;
    line-height: 1.7;
    color: #64736b;
}


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

.why-choose-us__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}


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

.why-card {
    position: relative;

    min-height: 320px;
    padding: 30px;

    background: rgba(255, 255, 255, 0.90);
    border: 1px solid rgba(20, 92, 57, 0.10);
    border-radius: 22px;

    box-shadow:
        0 10px 35px rgba(20, 80, 50, 0.06);

    overflow: hidden;

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

.why-card:hover {
    transform: translateY(-8px);

    border-color: rgba(20, 120, 70, 0.25);

    box-shadow:
        0 20px 50px rgba(20, 80, 50, 0.12);
}


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

.why-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 35px;
}

.why-number {
    font-size: 15px;
    line-height: 1;

    font-weight: 700;
    color: #79a990;

    letter-spacing: 1px;
}


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

.why-icon {
    width: 58px;
    height: 58px;

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

    border-radius: 50%;

    color: #ffffff;
    background: #117447;

    box-shadow:
        0 8px 20px rgba(17, 116, 71, 0.20);

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

.why-icon svg {
    width: 27px;
    height: 27px;
}

.why-icon-gold {
    color: #ffffff;
    background: #c39225;

    box-shadow:
        0 8px 20px rgba(195, 146, 37, 0.20);
}

.why-card:hover .why-icon {
    transform: rotate(-8deg) scale(1.08);
}


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

.why-card-content h3 {
    margin: 0 0 14px;

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

    color: #10291d;
}

.why-card-content p {
    margin: 0;

    font-size: 15.5px;
    line-height: 1.7;

    color: #64736b;
}


/* =========================================
   BOTTOM ACCENT
========================================= */

.why-card-line {
    position: absolute;

    left: 30px;
    bottom: 0;

    width: 45px;
    height: 3px;

    background: #147548;

    transition:
        width 0.35s ease;
}

.why-card:nth-child(even) .why-card-line {
    background: #c39225;
}

.why-card:hover .why-card-line {
    width: calc(100% - 60px);
}


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

@media (max-width: 1000px) {

    .why-choose-section {
        padding: 90px 20px 100px;
    }

    .why-heading {
        margin-bottom: 50px;
    }

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

}


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

@media (max-width: 650px) {

    .why-choose-section {
        padding: 70px 16px 80px;
    }

    .why-heading {
        margin-bottom: 38px;
    }

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

    .why-heading h2 {
        font-size: 32px;
        line-height: 1.18;
        letter-spacing: -0.8px;
    }

    .why-heading p {
        margin-top: 16px;
        font-size: 15px;
        line-height: 1.65;
    }

    .why-choose-us__grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .why-card {
        min-height: auto;
        padding: 25px;
        border-radius: 18px;
    }

    .why-card-top {
        margin-bottom: 28px;
    }

    .why-icon {
        width: 52px;
        height: 52px;
    }

    .why-icon svg {
        width: 24px;
        height: 24px;
    }

    .why-card-content h3 {
        font-size: 19px;
    }

    .why-card-content p {
        font-size: 15px;
    }

    .why-card-line {
        left: 25px;
    }

}


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

@media (max-width: 380px) {

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

    .why-card {
        padding: 22px;
    }

}


/* image marquee gallery */
/* ==========================================
   INFINITE EVENT GALLERY
========================================== */

.event-gallery-strip {
    width: 100%;
    padding: 25px 0;

    overflow: hidden;

    background: #fff;
}


/* ==========================================
   MOVING TRACK
========================================== */

.event-gallery-track {
    display: flex;
    align-items: center;

    width: max-content;

    gap: 18px;

    animation: eventGalleryMove 25s linear infinite;

    will-change: transform;
}


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

.event-gallery-card {
    width: 280px;
    height: 190px;

    flex-shrink: 0;

    overflow: hidden;

    border-radius: 14px;

    background: #173d2c;
}


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

.event-gallery-card img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.5s ease;
}


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

.event-gallery-card:hover img {
    transform: scale(1.08);
}


/* ==========================================
   PAUSE ON HOVER
========================================== */

.event-gallery-strip:hover .event-gallery-track {
    animation-play-state: paused;
}


/* ==========================================
   INFINITE ANIMATION
========================================== */

@keyframes eventGalleryMove {

    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }

}


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

@media (max-width: 768px) {

    .event-gallery-strip {
        padding: 18px 0;
    }

    .event-gallery-track {
        gap: 12px;

        animation-duration: 35s;
    }

    .event-gallery-card {
        width: 220px;
        height: 150px;

        border-radius: 10px;
    }

}


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

@media (max-width: 480px) {

    .event-gallery-card {
        width: 180px;
        height: 125px;

        border-radius: 8px;
    }

}




        /* =========================================================
   DARK EVENT PROCESS
========================================================= */

.dark-event-process {
    position: relative;
    padding: 50px 20px;

    background:
        radial-gradient(
            circle at 45% 15%,
            rgba(20, 117, 72, 0.12),
            transparent 28%
        ),
        #07130e;

    color: #ffffff;
    overflow: hidden;
}

.dark-event-process::after {
    content: "";

    position: absolute;
    width: 420px;
    height: 420px;

    right: -220px;
    bottom: -220px;

    border-radius: 50%;

    border: 1px solid rgba(195, 146, 37, 0.12);

    pointer-events: none;
}


/* =========================================================
   INTRO
========================================================= */

.dark-process-intro {
    display: grid;

    grid-template-columns: 1.2fr 0.8fr;

    gap: 60px;

    align-items: end;

    margin-bottom: 75px;
}

.dark-process-eyebrow {
    display: inline-block;

    margin-bottom: 18px;

    font-size: 12px;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 2.5px;

    color: #c69a3a;
}

.dark-process-intro h2 {
    max-width: 700px;

    margin: 0;

    font-size: clamp(38px, 5vw, 64px);

    line-height: 1.05;

    letter-spacing: -2px;

    font-weight: 700;

    color: #ffffff;
}

.dark-process-intro > p {
    max-width: 440px;

    margin: 0 0 5px;

    font-size: 16px;

    line-height: 1.8;

    color: rgba(255, 255, 255, 0.58);
}


/* =========================================================
   PROCESS LIST
========================================================= */

.dark-process-list {
    position: relative;
}


/* Vertical line */

.dark-process-list::before {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;

    left: 32px;

    width: 1px;

    background: rgba(255, 255, 255, 0.10);
}


/* =========================================================
   PROCESS ITEM
========================================================= */

.dark-process-item {
    position: relative;

    display: grid;

    grid-template-columns: 65px 150px 1fr;

    gap: 40px;

    padding: 38px 0;

    border-top: 1px solid rgba(255, 255, 255, 0.08);

    transition: all 0.35s ease;
}

.dark-process-item:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}


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

.dark-process-index {
    position: relative;

    z-index: 2;

    display: flex;

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

    width: 65px;
    height: 65px;

    border: 1px solid rgba(255, 255, 255, 0.12);

    border-radius: 50%;

    background: #07130e;

    transition: all 0.35s ease;
}

.dark-process-index span {
    font-size: 13px;

    font-weight: 700;

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

    transition: color 0.35s ease;
}


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

.dark-process-label {
    padding-top: 23px;

    font-size: 13px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1.5px;

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

    transition: color 0.35s ease;
}


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

.dark-process-content {
    max-width: 720px;

    padding: 8px 0;
}

.dark-process-stage {
    display: block;

    margin-bottom: 12px;

    font-size: 11px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1.8px;

    color: #c69a3a;
}

.dark-process-content h3 {
    margin: 0 0 16px;

    font-size: clamp(24px, 3vw, 34px);

    line-height: 1.2;

    letter-spacing: -0.7px;

    color: #ffffff;
}

.dark-process-content p {
    margin: 0;

    font-size: 15px;

    line-height: 1.85;

    color: rgba(255, 255, 255, 0.55);
}


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

.dark-process-item:hover .dark-process-index,
.dark-process-item.active .dark-process-index {
    border-color: #147548;

    background: #147548;

    box-shadow:
        0 0 0 7px rgba(20, 117, 72, 0.08);
}

.dark-process-item:hover .dark-process-index span,
.dark-process-item.active .dark-process-index span {
    color: #ffffff;
}

.dark-process-item:hover .dark-process-label,
.dark-process-item.active .dark-process-label {
    color: #ffffff;
}


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

@media (max-width: 900px) {

    .dark-event-process {
        padding: 85px 20px;
    }

    .dark-process-intro {
        grid-template-columns: 1fr;

        gap: 20px;

        margin-bottom: 55px;
    }

    .dark-process-intro > p {
        max-width: 600px;
    }

    .dark-process-item {
        grid-template-columns: 65px 120px 1fr;

        gap: 25px;
    }

}


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

@media (max-width: 650px) {

    .dark-event-process {
        padding: 75px 18px;
    }

    .dark-process-intro {
        margin-bottom: 45px;
    }

    .dark-process-intro h2 {
        font-size: 38px;

        letter-spacing: -1.3px;
    }

    .dark-process-intro > p {
        font-size: 14px;

        line-height: 1.7;
    }


    .dark-process-list::before {
        left: 23px;
    }


    .dark-process-item {
        grid-template-columns: 48px 1fr;

        gap: 20px;

        padding: 30px 0;
    }


    .dark-process-index {
        width: 48px;
        height: 48px;
    }


    .dark-process-label {
        display: none;
    }


    .dark-process-content {
        grid-column: 2;
        grid-row: 1;
    }


    .dark-process-content h3 {
        font-size: 24px;

        line-height: 1.25;
    }


    .dark-process-content p {
        font-size: 14px;

        line-height: 1.75;
    }

}


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

@media (max-width: 400px) {

    .dark-process-intro h2 {
        font-size: 32px;
    }

    .dark-process-item {
        gap: 15px;
    }

    .dark-process-content h3 {
        font-size: 21px;
    }

}



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

.testimonials-section {
    position: relative;
    padding: 50px 20px 50px;
    background: #f5f8f6;
    overflow: hidden;
}

.testimonials-section .container {
    width: min(1200px, 100%);
    margin: 0 auto;
}


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

.testimonial-heading {
    max-width: 700px;
    margin: 0 auto 55px;
    text-align: center;
}

.testimonial-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 16px;

    font-size: 13px;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 1.8px;

    color: #147548;
}

.testimonial-label::before,
.testimonial-label::after {
    content: "";

    width: 25px;
    height: 1px;

    background: #147548;
}

.testimonial-heading h2 {
    margin: 0;

    font-size: clamp(36px, 4vw, 52px);
    line-height: 1.12;

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

    color: #10291d;
}

.testimonial-heading p {
    max-width: 620px;

    margin: 18px auto 0;

    font-size: 16px;
    line-height: 1.7;

    color: #697870;
}


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

.testimonial-box {
    position: relative;

    padding: 15px 30px 15px;

    background: #014D23;

    border: 1px solid #e2ebe5;

    border-radius: 28px;

    box-shadow:
        0 25px 70px rgba(20, 75, 48, 0.09);

    overflow: hidden;
}


/* ==========================================
   TOP DECORATIVE LINE
========================================== */

.testimonial-box::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background: linear-gradient(
        90deg,
        #147548 0%,
        #147548 70%,
        #c39225 70%,
        #c39225 100%
    );
}


/* ==========================================
   LARGE QUOTE
========================================== */

.testimonial-quote {
    position: absolute;

    top: 25px;
    right: 40px;

    font-size: 90px;

    line-height: 1;

    color: #edf5f0;

    pointer-events: none;
}

.testimonial-quote i {
    transform: rotate(180deg);
}


/* ==========================================
   SLIDER
========================================== */

.testimonial-slider {
    position: relative;

    min-height: 245px;

    display: flex;
    align-items: center;
}

.testimonial-item {
    display: none;

    width: 100%;

    animation: testimonialFade 0.45s ease;
}

.testimonial-item.active {
    display: block;
}

@keyframes testimonialFade {

    from {
        opacity: 0;
        transform: translateY(12px);
    }

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

}


/* ==========================================
   STARS
========================================== */

.testimonial-stars {
    display: flex;
    gap: 5px;

    margin-bottom: 25px;

    color: #fff;

    font-size: 15px;
}


/* ==========================================
   TESTIMONIAL TEXT
========================================== */

.testimonial-item p {
    max-width: 900px;

    margin: 0;

    font-size: clamp(19px, 2vw, 24px);
    line-height: 1.7;

    font-weight: 500;

    color: #fff;
}


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

.testimonial-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 15px;

    border-top: 1px solid #fff;
}


/* ==========================================
   COUNTER
========================================== */

.testimonial-counter {
    display: flex;
    align-items: center;
    gap: 12px;

    font-size: 13px;
    font-weight: 700;

    color: #fff;
}

.counter-line {
    width: 50px;
    height: 1px;

    background: #fff;
}

.testimonial-counter #total {
    color: #fff;
}


/* ==========================================
   NAVIGATION
========================================== */

.testimonial-navigation {
    display: flex;
    gap: 10px;
}

.testimonial-navigation button {
    width: 46px;
    height: 46px;

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

    border: 1px solid #dce6e0;

    border-radius: 50%;

    background: #ffffff;

    color: #147548;

    font-size: 13px;

    cursor: pointer;

    transition: all 0.3s ease;
}

.testimonial-navigation button:hover {
    background: #147548;

    border-color: #147548;

    color: #ffffff;

    transform: translateY(-2px);
}


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

@media (max-width: 700px) {

    .testimonials-section {
        padding: 70px 15px 80px;
    }

    .testimonial-heading {
        margin-bottom: 35px;
    }

    .testimonial-heading h2 {
        font-size: 32px;
        letter-spacing: -0.8px;
    }

    .testimonial-heading p {
        font-size: 15px;
    }


    .testimonial-box {
        padding: 45px 25px 25px;

        border-radius: 20px;
    }


    .testimonial-quote {
        top: 20px;
        right: 20px;

        font-size: 65px;
    }


    .testimonial-slider {
        min-height: 350px;
    }


    .testimonial-stars {
        margin-bottom: 20px;
    }


    .testimonial-item p {
        font-size: 17px;
        line-height: 1.7;
    }


    .testimonial-footer {
        margin-top: 20px;
        padding-top: 20px;
    }


    .testimonial-navigation button {
        width: 42px;
        height: 42px;
    }

}


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

@media (max-width: 380px) {

    .testimonial-box {
        padding: 40px 20px 20px;
    }

    .testimonial-item p {
        font-size: 16px;
    }

    .testimonial-slider {
        min-height: 370px;
    }

}
   
