h1, h2, h3, h4, h5, p, span, b, div {
    font-family: Arial, sans-serif !important;
}

.top_menu > ul.nav > li:first-child a:before {
    display: none !important;
}

.glyphicon {
    font-family: 'Glyphicons Halflings' !important;
}

.top_menu > ul.nav > li > a {
    color: #6CB544;
    font-family: Arial,Helvetica Neue,Helvetica,sans-serif;
    text-transform: capitalize;
    font-size: 18px;
}

    .top_menu > ul.nav > li:hover > a, .top_menu > ul.nav > li > a.menu_hover, .top_menu > ul.nav > li.active > a, .top_menu > ul.nav > li.open > a {
        -webkit-box-shadow: unset;
        box-shadow: unset;
        color: #21572D;
        background: unset;
        font-weight: bold;
        min-height: 40px;
    }

.js-clingify-wrapper {
    background: linear-gradient(135deg, #ff66c2 20%, #00b4d8 100%);
    background: #ffff;
}

ul li {
    list-style-type: unset;
}

.form-control {
    box-shadow: unset !important;
    border: 1px solid #eee;
    height: 45px;
}

.container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 0px;
    padding-right: 0px;
}

@media only screen and (max-width: 1100px) {
    .top_menu > ul.nav > li > a {
        padding-top: 2px;
        padding-bottom: 2px;
        padding-left: 12px;
        padding-right: 12px;
    }
}

#top_logo {
    height: 100px;
    width: auto;
    margin-right: 100px !important;
    margin: 15px 0px;
}

.top_menu > ul.nav > li:hover {
    color: #ffff;
    background-color: unset !important;
    box-shadow: unset !important;
}

.subtle-line {
    display: block;
    border: none;
    color: #fff;
    height: 1px;
    width: 300px;
    /*    background: -webkit-radial-gradient(#7b7878 1%, #bbb 30%, #ccc 40%, #fff 70%);
    background: -o-radial-gradient(#7b7878 1%, #bbb 30%, #ccc 40%, #fff 70%);
    background: -moz-radial-gradient(#7b7878 1%, #bbb 30%, #ccc 40%, #fff 70%);*/
    background: radial-gradient(#21572D 20%,#21572D 10%, #21572D 40%, #fff 79%);
    margin-bottom: 32px
}

.TitleH2-v4 {
    font-size: 24px;
    color: #21572D;
}

.lms_heading_4 .lms_heading_title {
    margin-bottom: 5px;
    margin-top: 5px;
    padding: unset;
}

a.logo_menu_nav_mobile_container {
    position: absolute;
    height: 56px;
    /* padding-right: 110px; */
    z-index: 5;
    text-align: center !important;
    box-shadow: unset;
}

img#dnn_banner_xs {
    height: 100%;
    text-align: center;
    position: relative;
    float: left;
    background-color: #ffff;
    margin: 0 auto;
}

.form-control {
    border-radius: unset !important;
}

.pagination > .active > a, .pagination > .active > a:focus, .pagination > .active > a:hover, .pagination > .active > span, .pagination > .active > span:focus, .pagination > .active > span:hover {
    z-index: 3;
    color: #fff;
    cursor: default;
    background-color: #6CB544 !important;
    border-color: #6CB544 !important;
}

.a-pink {
    color: #6CB544 !important;
}

.btn-success {
    background-color: #6CB544;
}

.btn-primary {
    color: #ffffff;
    background-color: #6CB544 !important;
    border-color: #6CB544 !important;
    background-image: unset;
}

@media (max-width: 767px) {
    .navbar-nav .open .dropdown-menu {
        position: static;
        float: none;
        width: auto;
        margin-top: 0;
        background-color: #6CB544;
        border: 0;
        -webkit-box-shadow: none;
        box-shadow: none;
    }
}

.slogan_home {
    text-align: center;
    font-size: 35px;
    color: black;
    padding: 40px 20px;
}

.flex-to-block {
    display: flex; /* Default for sm, md, lg, xl screens */
    align-items: center;
    justify-content: center;
}

/* Media query for extra-small (xs) screens */
@media (max-width: 994px) {
    .flex-to-block {
        /*display: block !important;*/ /* Override for xs screens */
        flex-wrap: wrap;
    }
}
/* --- 1. Animation Keyframes (Unchanged) --- */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* --- 2. Corrected Animation Logic --- */

/* Set the initial state for any element that will be animated */
.animated-on-scroll {
    opacity: 0; /* Start invisible */
}

    /* When the 'is-visible' class is added by JS, apply the animation */
    .animated-on-scroll.is-visible {
        animation: fadeInUp 0.8s ease-out forwards;
    }

/* Stagger the animation delays for a nice effect */
.is-visible.stagger-1 {
    animation-delay: 0.2s;
}

.is-visible.stagger-2 {
    animation-delay: 0.4s;
}

.is-visible.stagger-3 {
    animation-delay: 0.6s;
}

.is-visible.stagger-4 {
    animation-delay: 0.8s;
}


/* --- Your Component Styles (Unchanged) --- */
.hero-text-container-left {
    text-align: left;
    padding: 20px;
}

.hero-text-container-right {
    text-align: right;
    padding: 20px;
}

.hero-subheading {
    color: #333;
    font-size: 24px;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 0.5em;
}

.hero-heading {
    color: #6CB544;
    font-size: 45px;
    font-weight: 800;
    margin: 0;
    line-height: 45px;
}

.hero-description {
    color: #222;
    font-size: 18px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.hero-button {
    display: inline-block;
    background-color: #1A2942;
    color: #fff !important;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    padding: 14px 30px;
    border-radius: 50px;
    transition: background-color 0.3s, transform 0.2s;
}

    .hero-button:hover {
        background-color: #2c456e;
        transform: translateY(-2px);
    }

.img_home_product img {
    border-radius: 5px;
    width: 100%;
    padding: 40px 0;
}

/* --- Responsive Column Swapping --- */
.swappable-row {
    display: flex;
    flex-wrap: wrap;
}

.btn-success:hover {
    background-color: #8bc76b !important;
}

@media (max-width: 991.98px) {
    .swappable-row {
        flex-direction: column;
    }

    .order-swap-first {
        order: 2;
    }

    .order-swap-second {
        order: 1;
    }
}
/* 2. On screens smaller than the 'md' breakpoint (less than 992px) */
@media (max-width: 991.98px) {
    /* Instead of `display: block`, we change the flex-direction.
               This keeps it a flex container but stacks the items vertically.
            */
    .swappable-row {
        flex-direction: column;
    }

        /* Now we can use the `order` property to swap the visual position.
               Items with a lower order number appear first.
            */
        .swappable-row > .order-swap-first {
            order: 2; /* This will appear second */
        }

        .swappable-row > .order-swap-second {
            order: 1; /* This will appear first */
        }
}

.btn-success:active:hover, .btn-success.active:hover, .open > .dropdown-toggle.btn-success:hover, .btn-success:active:focus, .btn-success.active:focus, .open > .dropdown-toggle.btn-success:focus, .btn-success:active.focus, .btn-success.active.focus, .open > .dropdown-toggle.btn-success.focus
Specificity: (0,3,0) {
    background-color: #21572D !important;
}


.contact-container-info {
}

.contact-container-map iframe {
    padding-top: 60px;
    display: block;
    margin: auto;
    width: 100%;
}

.contact-name {
    padding-top: 60px;
    color: #21572D;
    font-size: 24px;
    line-height: 1.2;
    font-weight: bold;
    letter-spacing: 2px;
}

.contact-items {
    color: #21572D;
    font-size: 18px;
    padding: 20px 0;
    letter-spacing: 2px;
}

.footer-right {
    margin-top: 20px;
}

    .footer-right > h5 {
        color: #21572D;
        font-size: 20px;
        font-weight: bold;
        text-align: left;
    }

    .footer-right > p > a {
        color: #21572D;
        font-size: 14px;
        font-weight: bold;
    }

        .footer-right > p > a:hover {
            color: #6CB544;
        }

    .footer-right > p {
        margin-top: 20px;
        text-align: left;
    }

.footer-img {
    height: 135px;
    width: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
}


.footer-right-item {
    display: flex;
    margin-top: 20px;
    align-items: center;
}

    .footer-right-item > img {
        width: 30px;
        height: auto;
    }

    .footer-right-item > p, .footer-right-item > a {
        margin-left: 10px;
        margin-bottom: 0;
        color: #21572D;
        font-size: 14px;
        text-align: left;
        font-weight: bold;
    }

        .footer-right-item > p:hover, .footer-right-item > a:hover {
            color: #6CB544;
        }

.footer-left-item {
    display: flex;
    margin-top: 10px;
    align-items: center;
}

    .footer-left-item > img {
        width: 30px;
        height: auto;
    }

    .footer-left-item > p, .footer-left-item > a {
        margin-left: 10px;
        margin-bottom: 0;
        color: #21572D;
        font-size: 14px;
        text-align: left;
        font-weight: bold;
    }
/*--------------------------------------------------------------------DIAMOND GALLERY----------------------------*/
.section-parallax > * {
    position: relative;
    z-index: 1;
}

.vc_column_container {
    position: relative;
}

@media (min-width: 768px) {
    .col-md-12 {
        width: 100%;
    }
}

/*.row > * {
    flex-shrink: 0;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x) / 2);
    padding-left: calc(var(--bs-gutter-x) / 2);
    margin-top: var(--bs-gutter-y);
}

.row {
    --bs-gutter-x: 30px;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(var(--bs-gutter-y) * -1);
    margin-right: calc(var(--bs-gutter-x) / -2);
    margin-left: calc(var(--bs-gutter-x) / -2);
}
*/
.vc_column-inner::after, .vc_column-inner::before {
    content: " ";
    display: table;
}

*, ::after, ::before {
    box-sizing: border-box;
}

.porto-diamonds {
    font-size: 0;
    margin: 40px auto;
    position: relative;
    text-align: center;
    max-width: 1110px;
    padding: 50px 0 12px 57px;
}

    .porto-diamonds > li {
        display: inline-block;
        font-size: 18px;
        margin-right: 135px;
    }

* {
    box-sizing: border-box;
}

.porto-diamonds .diamond {
    background: #f4f4f4;
    display: block;
    height: 243px;
    overflow: hidden;
    position: relative;
    text-decoration: none;
    width: 245px;
    overflow: hidden;
    transform: rotate(-45deg);
}

    .porto-diamonds .diamond:before {
        transition: all .2s;
        color: #fff;
        font-family: 'Glyphicons Halflings';
        content: "\e003";
        font-size: 28px;
        opacity: 0;
        position: absolute;
        left: 50%;
        top: 50%;
        z-index: 1000;
        transform-origin: 50% 50%;
        transform: translate3d(-50%, -50%, 0) rotate(45deg) scale(2);
    }

.porto-diamonds .content {
    display: table-cell;
    height: 255px;
    padding: 0 8px 0 6px;
    transform: rotate(45deg);
    text-align: center;
    vertical-align: middle;
    width: 255px;
    position: relative;
}

.porto-diamonds .diamond:after {
    transition: .2s;
    content: " ";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #000;
    opacity: 0;
    transform: scale(0);
    z-index: 100;
}

.porto-diamonds .content img {
    margin-left: -50%;
    max-width: 375px;
}

@media (max-width: 1170px) {
    .porto-diamonds > li {
        display: inline-block;
        font-size: 18px;
        margin-right: 0px !important;
        /* margin-right: 0px; */
    }
}

@media (min-width: 1170px) and (max-width: 1200px) {
    /* Your styles here */

    .porto-diamonds > li:nth-child(4) {
        /*right: 318px !important;*/
        top: 9px;
        position: absolute
    }
}

@media (min-width: 1170px) {

    .porto-diamonds > li:nth-child(3) {
        margin-right: 0
    }

    .porto-diamonds > li:nth-child(4) {
        right: 143px;
        top: 9px;
        position: absolute
    }

    .porto-diamonds > li:nth-child(5) {
        margin-left: 516px;
        margin-top: -60px
    }

    .porto-diamonds > li:nth-child(6) {
        position: absolute;
        margin: -8px 0 0 -27px
    }

    .porto-diamonds > li:nth-child(7) {
        position: absolute;
        margin: 93px 0 0 -133px
    }
}

@media (max-width: 1169px) {
    .porto-diamonds {
        width: 748px;
        margin: 0 auto;
        padding: 75px 0 0 75px
    }

        .porto-diamonds > li {
            margin: 0;
            position: static;
            float: left
        }

            .porto-diamonds > li:nth-child(odd) {
                clear: both
            }

            .porto-diamonds > li:nth-child(2n+2) {
                margin: 200px auto -50px 55px
            }

            .porto-diamonds > li:last-child {
                margin-bottom: 50px
            }

        .porto-diamonds:after {
            content: "";
            display: block;
            clear: both
        }

        .porto-diamonds > li:nth-child(5), .porto-diamonds > li:nth-child(6), .porto-diamonds > li:nth-child(7) {
            float: right
        }

        .porto-diamonds > li:nth-child(7) {
            margin-top: 40px
        }
}

@media (max-width: 748px) {
    .porto-diamonds {
        margin: 40px 0 0 -222px;
        padding: 25px 0 0 50%;
        width: 445px
    }

    .porto-diamonds {
        padding: 0px 0 12px 0px !important;
    }

    .lightbox .porto-diamonds > li {
        float: none;
        clear: both;
        margin: 45px 0 115px 95px;
        display: block
    }

    .porto-diamonds > li:nth-child(4), .porto-diamonds > li:nth-child(6), .porto-diamonds > li:nth-child(7) {
        margin-left: 158px
    }
    /*    .porto-diamonds .diamond {
        height: 200px !important;
        width: 200px !important;
    }*/
}

@media (max-width: 445px) {
    .porto-diamonds {
        margin: 40px 0 0 -222px;
        padding: 25px 0 0 50%;
        width: 100%
    }

    .porto-diamonds {
        padding: 0px 0 12px 0px !important;
    }

    .lightbox .porto-diamonds > li {
        margin-left: 0px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .porto-diamonds > li:nth-child(4), .porto-diamonds > li:nth-child(6), .porto-diamonds > li:nth-child(7) {
        margin-left: 0px;
    }

    .porto-diamonds .diamond {
        height: 200px !important;
        width: 200px !important;
    }

    .porto-diamonds .diamond-sm .content img {
        max-width: 300px !important;
    }
}

.porto-diamonds {
    font-size: 0;
    margin: 40px auto;
    position: relative;
    text-align: center;
    max-width: 1110px;
    padding: 50px 0 12px 57px
}

    .porto-diamonds > li {
        display: inline-block;
        font-size: 18px;
        margin-right: 135px;
        /*margin-right: 0px;*/
    }

    .porto-diamonds .diamond {
        background: #f4f4f4;
        display: block;
        height: 243px;
        overflow: hidden;
        position: relative;
        text-decoration: none;
        width: 245px;
        overflow: hidden;
        transform: rotate(-45deg)
    }

        .porto-diamonds .diamond:before {
            transition: all .2s;
            color: #fff;
            font-family: 'Glyphicons Halflings';
            content: "\e003";
            font-size: 28px;
            opacity: 0;
            position: absolute;
            left: 50%;
            top: 50%;
            z-index: 1000;
            transform-origin: 50% 50%;
            transform: translate3d(-50%,-50%,0) rotate(45deg) scale(2)
        }

        .porto-diamonds .diamond:after {
            transition: .2s;
            content: " ";
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            background: #000;
            opacity: 0;
            transform: scale(0);
            z-index: 100
        }

        .porto-diamonds .diamond:hover:after {
            opacity: .3;
            transform: scale(1)
        }

        .porto-diamonds .diamond:hover:before {
            opacity: 1;
            transform: translate3d(-50%,-50%,0) rotate(45deg) scale(1)
        }

    .porto-diamonds .content {
        display: table-cell;
        height: 255px;
        padding: 0 8px 0 6px;
        transform: rotate(45deg);
        text-align: center;
        vertical-align: middle;
        width: 255px;
        position: relative
    }

        .porto-diamonds .content img {
            margin-left: -25%;
            max-width: 375px
        }

    .porto-diamonds .diamond-sm, .porto-diamonds .diamond-sm .content {
        width: 123px;
        height: 123px
    }

        .porto-diamonds .diamond-sm .content img {
            max-width: 195px
        }

        .porto-diamonds .diamond-sm .content:after {
            left: 24%;
            top: 49%
        }

.content > img {
    max-width: 100%;
    height: auto;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    -moz-user-drag: none;
}


.product-plant-text {
    margin-top: -75px;
}

.table > caption + thead > tr:first-child > td, .table > caption + thead > tr:first-child > th, .table > colgroup + thead > tr:first-child > td, .table > colgroup + thead > tr:first-child > th, .table > thead:first-child > tr:first-child > td, .table > thead:first-child > tr:first-child > th {
    border-top: 0;
    background: #eee;
}

@media (min-width: 768px) {
    .form-inline .form-group {
        display: block;
        margin-bottom: 0;
        vertical-align: middle;
    }
}

.dnnPrimaryAction, .dnnFormItem input[type="submit"], a.dnnPrimaryAction {
    border-color: unset;
    background: #6CB544;
    background: #6CB544;
    background: -moz-linear-gradient(top, #358eea 0%, #2170cd 100%);
    background: linear-gradient(top, #358eea 0%,#2170cd 100%);
    -webkit-box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.6), inset 0px 1px 0px 0px rgba(255, 255, 255, 0.4);
    box-shadow: none;
    color: #efefef;
    text-shadow: none;
}

    .dnnPrimaryAction:hover, .dnnFormItem input[type="submit"]:hover, a.dnnPrimaryAction:hover {
        border-color: unset;
        background-color: #6CB544;
        color: #fff;
    }

    .dnnPrimaryAction:hover, .dnnFormItem input[type="submit"]:hover, a.dnnPrimaryAction:hover {
        border-color: #6CB544;
        background: #6cb6f3;
        background: -moz-linear-gradient(top, #6cb6f3 0%, #4387d2 100%);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #6cb6f3), color-stop(100%, #4387d2));
        background: -webkit-linear-gradient(top, #8bc76b 0%, #6CB544 100%);
        background: linear-gradient(top, #6CB544 0%,#4387d2 100%);
        color: #fff;
    }

.dnnFormItem button, .dnnFormItem input[type="button"], .dnnFormItem input[type="reset"], .dnnSecondaryAction, a.dnnSecondaryAction, ul.dnnAdminTabNav li a, .dnnLogin .LoginTabGroup span {
    background: #f5f5f5;
    background: -moz-linear-gradient(top, #f5f5f5 0%, #dfdfdf 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f5f5f5), color-stop(100%, #dfdfdf));
    background: #eee;
    background: -o-linear-gradient(top, #f5f5f5 0%,#dfdfdf 100%);
    background: -ms-linear-gradient(top, #f5f5f5 0%,#dfdfdf 100%);
    background: linear-gradient(top, #f5f5f5 0%,#dfdfdf 100%);
    -webkit-box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.4), inset 0px 1px 0px 0px rgba(255, 255, 255, 1);
    box-shadow: unset;
    text-shadow: unset;
    border: unset;
    color: #333;
}

.dnnLogin {
    display: flex;
    justify-content: center;
}

#dnn_ctr_Login_pnlLogin {
    padding-top: 40px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;
    border-radius: 5px;
}

/*--------------ABOUT US-------------------*/

.agrifarm-container {
    color: #333;
    margin: 0;
    padding: 0;
    background-color: #f5f5f5;
}

.agrifarm-content-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}

.agrifarm-main-title {
    text-align: center;
    color: #00923e;
    font-size: 2.5rem;
    margin-bottom: 10px;
    font-weight: 700;
}

.agrifarm-subtitle {
    text-align: center;
    color: #00923e;
    font-style: italic;
    font-size: 22px;
    margin: 40px;
}

.agrifarm-section {
    margin-bottom: 60px;
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    padding: 30px;
}

.agrifarm-section-heading {
    text-align: center;
    color: #00923e;
    font-size: 22px;
    margin-bottom: 20px;
}

.agrifarm-content-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: center;
}

.agrifarm-text-block {
    flex: 1;
    min-width: 200px;
    text-align: justify;
}

.agrifarm-image-block {
    flex: 1;
    min-width: 200px;
    text-align: center;
}

    .agrifarm-image-block img {
        max-width: 80%;
        border-radius: 8px;
        box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    }

.agrifarm-text-block>ul {
    list-style-type: none;
    padding-left: 0;
}

.agrifarm-text-block>ul>li {
    margin-bottom: 10px;
    position: relative;
    padding-left: 25px;
}

    .agrifarm-text-block > ul > li::before {
        content: '✓';
        color: #00923e;
        position: absolute;
        left: 0;
    }

.agrifarm-highlight {
    color: #00923e;
    font-weight: bold;
}

@media (max-width: 768px) {
    .agrifarm-content-row {
        flex-direction: column;
    }

    .agrifarm-image-block img {
        max-width: 100%;
    }
.agrifarm-subtitle{
   font-size: 16px;
}
}
@media (min-width: 992px) {
    .col-md-4 {
        width: 33.33333333%; 
    }
}
.dnnLoginActions {
    display: none;
}
