/* =========================================
   PROPERTY SEARCH + FILTER BAR
========================================= */

.property-search-filter {
    width: 100%;

    display: grid;

    grid-template-columns:
        minmax(250px, 1.8fr)
        minmax(145px, 0.8fr)
        minmax(155px, 0.9fr)
        minmax(145px, 0.8fr)
        minmax(155px, 0.9fr)
        145px;

    align-items: center;

    gap: 16px;

    padding: 24px 88px;

    box-sizing: border-box;

    background: #f6e8c8;

    border-radius: 6px;

    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);
}


/* ===============================
   SEARCH
================================ */

.filter-search-box {
    position: relative;

    width: 100%;
}

.filter-search-box i {
    position: absolute;

    left: 17px;
    top: 50%;

    transform: translateY(-50%);

    color: #777777;

    font-size: 15px;

    pointer-events: none;
}

.filter-search-box input {
    width: 100%;
    height: 38px;

    padding: 0 16px 0 45px;

    box-sizing: border-box;

    background: #fafbfc;

    border: 1px solid #dfe3e8;
    border-radius: 5px;

    color: #333333;

    font-size: 16px;

    outline: none;
}

.filter-search-box input:focus {
    background: #ffffff;

    border-color: #c99817;

    box-shadow: 0 0 0 3px rgba(201, 152, 23, 0.08);
}

.filter-search-box input::placeholder {
    color: #888888;
}


/* ===============================
   SELECT
================================ */

.filter-select {
    width: 100%;
}

.filter-select select {
    width: 100%;
    height: 38px;

    padding: 0 38px 0 16px;

    box-sizing: border-box;

    background-color: #fafbfc;

    border: 1px solid #dfe3e8;
    border-radius: 5px;

    color: #333333;

    font-size: 16px;

    outline: none;

    cursor: pointer;
}

.filter-select select:focus {
    background-color: #ffffff;

    border-color: #c99817;

    box-shadow: 0 0 0 3px rgba(201, 152, 23, 0.08);
}


/* ===============================
   BUTTON
================================ */

.property-filter-button {
    width: 100%;
    height: 38px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 0 22px;

    border: 0;
    border-radius: 5px;

    background: #111111;
    color: #ffffff;

    font-size: 16px;
    font-weight: 600;

    cursor: pointer;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

.property-filter-button:hover {
    background: #c99817;
}

.property-filter-button:active {
    transform: translateY(1px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .property-search-filter {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    .filter-search-box {
        grid-column: span 2;
    }
}


/* =========================================
   SMALL TABLET
========================================= */

@media (max-width: 768px) {

    .property-search-filter {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 12px;

        padding: 18px;
    }

    .filter-search-box {
        grid-column: 1 / -1;
    }

    .property-filter-button {
        grid-column: 1 / -1;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 520px) {

    .property-search-filter {
        grid-template-columns: 1fr;

        padding: 15px;
    }

    .filter-search-box,
    .property-filter-button {
        grid-column: auto;
    }

    .filter-search-box input,
    .filter-select select,
    .property-filter-button {
        height: 52px;

        font-size: 14px;
    }
}

/* -======================================= */
/* Card css */
        .properties-page-container {
            width: min(94%, 1280px);
            margin: 0 auto;
        }


        /* =========================================
           BREADCRUMB
        ========================================= */

        .requirement-breadcrumb {
            background: #f8ebca;
        }

        .requirement-container {
            width: min(94%, 1280px);
            margin: 0 auto;

            display: flex;
            align-items: center;
            gap: 12px;

            min-height: 48px;
        }

        .requirement-container a {
            color: #b68400;
            text-decoration: none;
        }


        /* =========================================
           FILTER SECTION
        ========================================= */

        .property-filter-section {
            width: 100%;
            padding: 18px 0 22px;
            background: #f8ebca;
        }

        .property-search-filter {
            width: 100%;

            display: grid;

            grid-template-columns:
                minmax(240px, 1.6fr)
                minmax(125px, 0.8fr)
                minmax(135px, 0.9fr)
                minmax(125px, 0.8fr)
                minmax(135px, 0.9fr)
                125px;

            align-items: center;

            gap: 12px;

            padding: 18px;

            background: #ffffff;

            border-radius: 6px;

            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);
        }


        /* Search box */

        .filter-search-box {
            position: relative;
            width: 100%;
        }

        .filter-search-box i {
            position: absolute;

            left: 17px;
            top: 50%;

            transform: translateY(-50%);

            color: #777;
            font-size: 14px;

            pointer-events: none;
        }

        .filter-search-box input {
            width: 100%;
            height: 42px;

            padding: 0 16px 0 45px;

            border: 1px solid #dfe3e8;
            border-radius: 5px;

            background: #fafbfc;

            color: #333;

            font-size: 14px;

            outline: none;
        }

        .filter-search-box input:focus {
            border-color: #d5a316;
            background: #ffffff;

            box-shadow: 0 0 0 3px rgba(213, 163, 22, 0.08);
        }


        /* Select */

        .filter-select {
            width: 100%;
        }

        .filter-select select {
            width: 100%;
            height: 42px;

            padding: 0 38px 0 16px;

            border: 1px solid #dfe3e8;
            border-radius: 5px;

            background: #fafbfc;

            color: #333;

            font-size: 14px;

            outline: none;

            cursor: pointer;
        }

        .filter-select select:focus {
            border-color: #d5a316;
            background: #ffffff;
        }


        /* Search button */

        .property-filter-button {
            width: 100%;
            height: 42px;

            display: flex;
            align-items: center;
            justify-content: center;

            gap: 8px;

            border: 0;
            border-radius: 5px;

            background: #111111;
            color: #ffffff;

            font-size: 14px;
            font-weight: 600;

            cursor: pointer;

            transition: 0.2s ease;
        }

        .property-filter-button:hover {
            background: #d5a316;
        }


        /* =========================================
           HEADING
        ========================================= */

        
        .requirement-heading {
            margin: 0 0 24px;
        }

        .requirement-heading h1 {
            margin: 0;

            color: #111;

            font-size: 26px;
            font-weight: 700;
            line-height: 1.25;
        }

        .requirement-heading h1 span {
            color: #d5a316;
        }

        .requirement-title-line {
            width: 46px;
            height: 4px;

            margin-top: 12px;

            background: #d5a316;

            border-radius: 10px;
        }


        /* =========================================
           PROPERTY CARD GRID
        ========================================= */

     

        /* =========================================
           PROPERTY CARD
        ========================================= */

        .property-card {
            width: 100%;

            display: flex;
            flex-direction: column;

            background: #ffffff;

            border: 1px solid #dddddd;
            border-radius: 10px;

            overflow: hidden;

            transition:
                transform 0.2s ease,
                box-shadow 0.2s ease;
        }

        .property-card:hover {
            transform: translateY(-4px);

            box-shadow: 0 12px 30px rgba(0, 0, 0, 0.10);
        }


        /* Image */

        .property-card-image {
            position: relative;

            width: 100%;
            height: 200px;

            overflow: hidden;
        }

        .property-card-image img {
            width: 100%;
            height: 100%;

            display: block;

            object-fit: cover;
        }

        .property-type-badge {
            position: absolute;

            top: 14px;
            right: 14px;

            min-width: 68px;

            padding: 7px 12px;

            background: rgba(40, 40, 40, 0.78);
            color: #fff;

            text-align: center;

            font-size: 14px;
            font-weight: 600;
        }

      

        /* Body */

        .property-card-body {
            flex: 1;

            display: flex;
            flex-direction: column;

            padding: 8px 18px 10px;
        }

        .property-title {
            margin: 0 0 10px;

            min-height: 48px;

            color: #333;

            font-size: 18px;
            font-weight: 700;
            line-height: 1.35;

            display: -webkit-box;

            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;

            overflow: hidden;
        }


        /* Location */

        .property-location {
            display: flex;
            align-items: center;

            gap: 9px;

            margin-bottom: 18px;

            color: #666;

            font-size: 14px;
        }

        .property-location i {
            color: #19bd5b;
            font-size: 17px;
        }


        /* Property details */

        .property-info-grid {
            display: grid;

            grid-template-columns:
                repeat(2, minmax(0, 1fr));

            column-gap: 16px;
            row-gap: 18px;
        }

        .property-info {
            display: flex;
            align-items: center;

            gap: 7px;

            min-width: 0;

            font-size: 14px;
        }

        .property-info strong {
            flex: 0 0 auto;

            color: #111;

            font-weight: 700;
        }

        .property-info span {
            min-width: 0;

            color: #333;

            overflow: hidden;
            white-space: nowrap;
            text-overflow: ellipsis;
        }


        /* Footer */

        .property-card-divider {
            margin: 24px 0 8px;

            border-top: 1px solid #e6e6e6;
        }

        .property-footer {
            display: flex;

            align-items: center;
            justify-content: space-between;

            gap: 15px;

            min-height: 34px;
        }

        .property-agent {
            display: flex;
            align-items: center;

            gap: 10px;

            color: #555;

            font-size: 14px;
        }

        .property-agent img {
            width: 42px;
            height: 42px;

            object-fit: contain;

            background: #ffffff;

            border: 1px solid #0878f9;
            border-radius: 50%;
        }

        .property-date {
            color: #555;

            font-size: 14px;

            white-space: nowrap;
        }


        /* Actions */

        .property-actions {
            display: flex;
            justify-content: center;

            gap: 18px;

            margin-top: 7px;
        }

        .property-action-btn {
            width: 30px;
            height: 30px;

            display: inline-flex;
            align-items: center;
            justify-content: center;

            padding: 0;

            border: 0;

            background: transparent;

            color: #222;

            font-size: 17px;

            cursor: pointer;
        }

        .property-action-btn:hover {
            color: #d5a316;
        }


        /* =========================================
           RESPONSIVE
        ========================================= */

        @media (max-width: 1050px) {

            .property-search-filter {
                grid-template-columns:
                    repeat(3, minmax(0, 1fr));
            }

            .filter-search-box {
                grid-column: span 2;
            }

            .property-card-grid {
                grid-template-columns:
                    repeat(3, minmax(0, 1fr));
                gap: 16px;
            }
        }

        @media (max-width: 900px) {

            .property-card-grid {
                grid-template-columns:
                    repeat(2, minmax(0, 1fr));
            }
        }


        @media (max-width: 768px) {

            .property-filter-section {
                padding: 18px 0 24px;
            }

            .property-search-filter {
                grid-template-columns:
                    repeat(2, minmax(0, 1fr));

                gap: 12px;

                padding: 18px;
            }

            .filter-search-box {
                grid-column: 1 / -1;
            }

            .property-filter-button {
                grid-column: 1 / -1;
            }

            .properties-content {
                padding-top: 35px;
            }

            .requirement-heading h1 {
                font-size: 24px;
            }

            .property-card-grid {
                grid-template-columns: 1fr;
            }

            .property-card {
                max-width: 420px;
                margin: 0 auto;
            }
        }


        @media (max-width: 520px) {

            .properties-page-container,
            .requirement-container {
                width: calc(100% - 28px);
            }

            .property-search-filter {
                grid-template-columns: 1fr;

                padding: 14px;
            }

            .filter-search-box,
            .property-filter-button {
                grid-column: auto;
            }

            .filter-search-box input,
            .filter-select select,
            .property-filter-button {
                height: 52px;

                font-size: 14px;
            }

            .property-card-image {
                height: 190px;
            }

            .property-card-body {
                padding-left: 18px;
                padding-right: 18px;
            }

            .property-title {
                font-size: 17px;
            }

            .property-info-grid {
                column-gap: 15px;
                row-gap: 20px;
            }

            .property-info {
                font-size: 14px;
            }
        }
/* =========================================
   PROPERTIES CONTENT
========================================= */

.properties-content {
    width: 100%;
    padding: 66px 120px 50px;
    box-sizing: border-box;
}


/* =========================================
   HEADING
========================================= */

.requirement-heading {
    margin: 0 0 24px;
}

.requirement-heading h1 {
    margin: 0;

    color: #111;

    font-size: 26px;
    font-weight: 700;
    line-height: 1.25;
}

.requirement-heading h1 span {
    color: #d5a316;
}

.requirement-title-line {
    width: 46px;
    height: 4px;

    margin-top: 12px;

    background: #d5a316;

    border-radius: 10px;
}


/* =========================================
   PROPERTY CARD GRID
========================================= */

.property-card-grid {
    width: 100%;

    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 20px;

    align-items: stretch;
}


/* =========================================
   PROPERTY CARD
========================================= */

.property-card {
    width: 100%;
    min-width: 0;

    display: flex;
    flex-direction: column;

    background: #ffffff;

    border: 1px solid #dddddd;
    border-radius: 10px;

    overflow: hidden;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.property-card:hover {
    transform: translateY(-4px);

    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.10);
}


/* =========================================
   CARD IMAGE
========================================= */

.property-card-image {
    position: relative;

    width: 100%;
    height: 200px;

    overflow: hidden;
}

.property-card-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.property-type-badge {
    position: absolute;

    top: 14px;
    right: 14px;

    min-width: 68px;

    padding: 7px 12px;

    background: rgba(40, 40, 40, 0.78);
    color: #ffffff;

    text-align: center;

    font-size: 14px;
    font-weight: 600;
}

/* =========================================
   CARD BODY
========================================= */

.property-card-body {
    flex: 1;

    display: flex;
    flex-direction: column;

    padding: 8px 18px 10px;
}

.property-title {
    margin: 0 0 10px;

    min-height: 48px;

    color: #333333;

    font-size: 18px;
    font-weight: 700;
    line-height: 1.35;

    display: -webkit-box;

    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;

    overflow: hidden;
}


/* =========================================
   LOCATION
========================================= */

.property-location {
    display: flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 18px;

    color: #666666;

    font-size: 14px;
}

.property-location i {
    flex-shrink: 0;

    color: #19bd5b;

    font-size: 17px;
}


/* =========================================
   DETAILS
========================================= */

.property-info-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    column-gap: 16px;
    row-gap: 18px;
}

.property-info {
    display: flex;
    align-items: center;

    gap: 7px;

    min-width: 0;

    font-size: 14px;
}

.property-info strong {
    flex: 0 0 auto;

    color: #111111;

    font-weight: 700;
}

.property-info span {
    min-width: 0;

    color: #333333;

    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}


/* =========================================
   FOOTER
========================================= */

.property-card-divider {
    margin: 24px 0 8px;

    border-top: 1px solid #e6e6e6;
}

.property-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    min-height: 42px;
}

.property-agent {
    display: flex;
    align-items: center;

    gap: 9px;

    min-width: 0;

    color: #555555;

    font-size: 14px;
}

.property-agent img {
    flex-shrink: 0;

    width: 42px;
    height: 42px;

    object-fit: contain;

    background: #ffffff;

    border: 1px solid #0878f9;
    border-radius: 50%;
}

.property-agent span {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.property-date {
    flex-shrink: 0;

    color: #555555;

    font-size: 14px;

    white-space: nowrap;
}


/* =========================================
   ACTIONS
========================================= */

.property-actions {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 18px;

    margin-top: 7px;
}

.property-action-btn {
    width: 30px;
    height: 30px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    border: 0;

    background: transparent;

    color: #222222;

    font-size: 17px;

    cursor: pointer;
}

.property-action-btn:hover {
    color: #d5a316;
}


/* =========================================
   LARGE LAPTOP
   3 CARDS
========================================= */

@media (max-width: 1400px) {

    .properties-content {
        padding:
            55px
            clamp(55px, 6vw, 95px)
            45px;
    }

    .property-card-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));

        gap: 18px;
    }

    .property-card-image {
        height: 185px;
    }
}


/* =========================================
   LAPTOP
   STILL 3 CARDS
========================================= */

@media (max-width: 1150px) {

    .properties-content {
        padding:
            48px
            40px
            42px;
    }

    .property-card-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));

        gap: 15px;
    }

    .property-card-image {
        height: 170px;
    }

    .property-card-body {
        padding: 8px 14px 10px;
    }

    .property-title {
        font-size: 16px;
    }

    .property-location,
    .property-info,
    .property-agent,
    .property-date {
        font-size: 13px;
    }

    .property-info-grid {
        column-gap: 10px;
        row-gap: 15px;
    }
}


/* =========================================
   TABLET
   2 CARDS
========================================= */

@media (max-width: 900px) {

    .properties-content {
        padding:
            42px
            28px
            40px;
    }

    .property-card-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 18px;
    }

    .property-card-image {
        height: 190px;
    }

    .property-card-body {
        padding: 9px 16px 11px;
    }

    .property-title {
        font-size: 17px;
    }
}


/* =========================================
   SMALL TABLET
   2 CARDS
========================================= */

@media (max-width: 700px) {

    .properties-content {
        padding:
            35px
            18px
            35px;
    }

    .requirement-heading {
        margin-bottom: 20px;
    }

    .requirement-heading h1 {
        font-size: 22px;
    }

    .property-card-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 12px;
    }

    .property-card-image {
        height: 155px;
    }

    .property-card-body {
        padding: 8px 11px 9px;
    }

    .property-title {
        min-height: 42px;

        font-size: 15px;
    }

    .property-location {
        gap: 6px;

        margin-bottom: 14px;

        font-size: 12px;
    }

    .property-location i {
        font-size: 14px;
    }

    .property-info-grid {
        column-gap: 7px;
        row-gap: 12px;
    }

    .property-info {
        gap: 4px;

        font-size: 11px;
    }

    .property-card-divider {
        margin-top: 18px;
    }

    .property-agent {
        gap: 6px;

        font-size: 11px;
    }

    .property-agent img {
        width: 34px;
        height: 34px;
    }

    .property-date {
        font-size: 11px;
    }
}


/* =========================================
   MOBILE
   1 FULL WIDTH CARD
========================================= */

@media (max-width: 520px) {

    .properties-content {
        padding:
            30px
            15px
            35px;
    }

    .property-card-grid {
        grid-template-columns: 1fr;

        gap: 18px;
    }

    .property-card {
        width: 100%;
        max-width: 100%;

        margin: 0;
    }

    .property-card-image {
        height: 210px;
    }

    .property-card-body {
        padding:
            10px
            16px
            12px;
    }

    .property-title {
        min-height: auto;

        font-size: 17px;
    }

    .property-location {
        margin-bottom: 17px;

        font-size: 14px;
    }

    .property-location i {
        font-size: 17px;
    }

    .property-info-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        column-gap: 12px;
        row-gap: 16px;
    }

    .property-info {
        font-size: 13px;
    }

    .property-agent {
        font-size: 13px;
    }

    .property-agent img {
        width: 40px;
        height: 40px;
    }

    .property-date {
        font-size: 12px;
    }
}


/* =========================================
   VERY SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .properties-content {
        padding:
            26px
            12px
            30px;
    }

    .property-card-image {
        height: 185px;
    }

    .property-info {
        font-size: 12px;
    }
}


/* =-=============================================================================== */
/* About us */

      
        /* ================================
           HERO
        ================================= */

        .about-hero {
            position: relative;

            width: 100%;
            height: 340px;

            overflow: hidden;

            background: #222;
        }

        .about-hero-image {
            width: 100%;
            height: 100%;

            display: block;

            object-fit: cover;
            object-position: top;
        }

        .about-hero::after {
            content: "";

            position: absolute;
            inset: 0;

            background: rgba(0, 0, 0, 0.30);

            pointer-events: none;
        }

        /* ================================
           LOGO
        ================================= */

        .about-logo {
            position: absolute;

            top: 0;
            left: 8%;

            z-index: 2;

            width: 205px;
            height: 68px;

            display: flex;
            align-items: center;
            justify-content: center;

            padding: 7px 18px;

            background: #fff;

            border-radius: 0 0 6px 6px;

            box-shadow: 0 3px 12px rgba(0, 0, 0, 0.12);
        }

        .about-logo img {
            width: 100%;
            height: 100%;

            object-fit: contain;
        }

        /* ================================
           WHO WE ARE
        ================================= */

        .who-we-are {
            width: 100%;

            padding: 54px 20px 70px;

            background: #fff;
        }

        .who-we-are-container {
            width: min(100%, 1320px);

            margin: 0 auto;

            text-align: center;
        }

        .who-subtitle {
            margin-bottom: 15px;

            color: #222;

            font-size: 17px;
            font-style: italic;
            font-weight: 400;
        }

        .who-title {
            display: inline-block;

            margin: 0;

            color: #111;

            font-size: 23px;
            font-weight: 700;
            line-height: 1.2;
        }

        .who-title span {
            display: inline-block;

            padding: 1px 4px;

            /* background: #3267d6; */
            color: #000;
        }

        .who-title-line {
            width: 52px;
            height: 5px;

            margin: 8px auto 17px;

            background: #d9a715;

            border-radius: 20px;
        }

        .who-description {
            max-width: 1100px;

            margin: 0 auto;

            color: #111;

            font-size: 16px;
            font-weight: 400;
            line-height: 1.7;

            text-align: center;
        }

        /* ================================
           FLOATING CONTACT BUTTONS
        ================================= */

        .floating-contact {
            position: fixed;

            right: 20px;
            bottom: 22px;

            z-index: 1000;

            display: flex;
            align-items: center;

            gap: 8px;
        }

        .floating-contact-btn {
            width: 58px;
            height: 58px;

            display: flex;
            align-items: center;
            justify-content: center;

            border: 0;
            border-radius: 50%;

            background: #111;
            color: #fff;

            font-size: 26px;

            text-decoration: none;

            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.20);

            transition:
                transform 0.2s ease,
                background 0.2s ease;
        }

        .floating-contact-btn:hover {
            transform: translateY(-3px);
        }

        .floating-contact-btn.whatsapp {
            background: #25d366;
        }

        /* ================================
           LAPTOP
        ================================= */

        @media (max-width: 1200px) {
            .about-hero {
                height: 480px;
            }

            .who-we-are-container {
                max-width: 1050px;
            }

            .who-description {
                font-size: 17px;
            }
        }

        /* ================================
           TABLET
        ================================= */

        @media (max-width: 768px) {
            .about-hero {
                height: 400px;
            }

            .about-logo {
                left: 25px;

                width: 165px;
                height: 60px;
            }

            .who-we-are {
                padding: 42px 25px 55px;
            }

            .who-subtitle {
                font-size: 18px;
            }

            .who-title {
                font-size: 29px;
            }

            .who-description {
                font-size: 16px;
                line-height: 1.65;
            }

            .floating-contact {
                right: 14px;
                bottom: 15px;
            }

            .floating-contact-btn {
                width: 48px;
                height: 48px;

                font-size: 21px;
            }
        }

        /* ================================
           MOBILE
        ================================= */

        @media (max-width: 520px) {
            .about-hero {
                height: 300px;
            }

            .about-hero-image {
                object-position: center center;
            }

            .about-logo {
                left: 15px;

                width: 135px;
                height: 50px;

                padding: 5px 12px;
            }

            .who-we-are {
                padding: 35px 18px 55px;
            }

            .who-subtitle {
                margin-bottom: 10px;

                font-size: 16px;
            }

            .who-title {
                font-size: 25px;
            }

            .who-title-line {
                width: 45px;
                height: 4px;

                margin-bottom: 15px;
            }

            .who-description {
                font-size: 14px;
                line-height: 1.7;
            }

            .floating-contact {
                right: 10px;

                gap: 6px;
            }

            .floating-contact-btn {
                width: 43px;
                height: 43px;

                font-size: 18px;
            }
        }

/* =========================================
   SERVICES SECTION
========================================= */

.services-section {
    width: 100%;
    padding: 30px 20px 70px;
    background: #fff;
}

.services-container {
    width: min(100%, 1200px);
    margin: 0 auto;
}


/* =========================================
   HEADING
========================================= */

.services-heading {
    margin-bottom: 34px;
    text-align: center;
}

.services-heading h2 {
    margin: 0;

    color: #000;

    font-size: 25px;
    font-weight: 700;
    line-height: 1.2;
}

.services-title-line {
    width: 54px;
    height: 5px;

    margin: 12px auto 0;

    background: #d7aa36;

    border-radius: 20px;
}


/* =========================================
   GRID
========================================= */

.services-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 40px;

    align-items: stretch;
}


/* =========================================
   SERVICE CARD
========================================= */

.service-card {
    min-width: 0;
    min-height: 200px;

    display: flex;
    flex-direction: column;

    padding: 22px 22px 20px;

    background: #fff;

    border: 1px solid #e2e2e2;
    border-radius: 4px;

    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

.service-card:hover {
    transform: translateY(-5px);

    border-color: #d7aa36;

    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.10);
}


/* =========================================
   ICON
========================================= */

.service-icon {
    min-height: 38px;

    display: flex;
    align-items: center;

    margin-bottom: 8px;

    color: #dfb246;

    font-size: 36px;
}


/* =========================================
   CARD TITLE
========================================= */

.service-card h3 {
    margin: 0 0 20px;

    color: #000;

    font-size: 19px;
    font-weight: 700;
    line-height: 1.2;
}


/* =========================================
   DESCRIPTION
========================================= */

.service-card p {
    margin: 0;

    color: #111;

    font-size: 15px;
    font-weight: 400;
    line-height: 1.55;

    text-align: justify;
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1400px) {

    .services-container {
        max-width: 1250px;
    }

    .services-grid {
        gap: 28px;
    }

    .service-card {
        min-height: 285px;
        padding: 25px;
    }

    .service-card h3 {
        font-size: 25px;
    }

    .service-card p {
        font-size: 16px;
    }
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 992px) {

    .services-section {
        padding-left: 28px;
        padding-right: 28px;
    }

    .services-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 24px;
    }

    .services-heading h2 {
        font-size: 30px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 650px) {

    .services-section {
        padding: 35px 16px 50px;
    }

    .services-heading {
        margin-bottom: 26px;
    }

    .services-heading h2 {
        font-size: 26px;
    }

    .services-title-line {
        width: 46px;
        height: 4px;
    }

    .services-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .service-card {
        min-height: auto;
        padding: 22px 20px 24px;
    }

    .service-icon {
        min-height: 48px;
        font-size: 38px;
    }

    .service-card h3 {
        margin-bottom: 14px;

        font-size: 22px;
    }

    .service-card p {
        font-size: 15px;
        line-height: 1.6;

        text-align: left;
    }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .services-section {
        padding-left: 12px;
        padding-right: 12px;
    }

    .services-heading h2 {
        font-size: 23px;
    }

    .service-card {
        padding: 20px 17px 22px;
    }

    .service-card h3 {
        font-size: 20px;
    }

    .service-card p {
        font-size: 14px;
    }
}

/* =============================================================== */
.section-title{
    text-align:center;
    margin-bottom:40px;
}

.section-title h2{
    font-size:26px;
    font-weight:700;
    color:#111;
}

.section-title span{
    width:60px;
    height:5px;
    background:#d4a321;
    display:block;
    margin:14px auto 0;
    border-radius:20px;
    
}

/* ======================== */
/* =========================================================
   STICKY MAIN NAVIGATION
========================================================= */

.main-header {
    position: sticky;
    top: 0;
    z-index: 9999;
    width: 100%;
}

/* =========================================================
   STATS ANIMATION
========================================================= */

.ns-stat-item {
    position: relative;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    min-width: 0;
    min-height: 150px;

    padding: 15px;

    text-align: center;

    opacity: 0;
    transform: translateY(40px);

    transition:
        opacity 0.65s ease,
        transform 0.65s ease;

    will-change: opacity, transform;
}

/* Visible state */
.ns-stats-section.is-visible .ns-stat-item {
    opacity: 1;
    transform: translateY(0);
}

/* Stagger */
.ns-stats-section.is-visible .ns-stat-item:nth-child(1) {
    transition-delay: 0.05s;
}

.ns-stats-section.is-visible .ns-stat-item:nth-child(2) {
    transition-delay: 0.18s;
}

.ns-stats-section.is-visible .ns-stat-item:nth-child(3) {
    transition-delay: 0.31s;
}

.ns-stats-section.is-visible .ns-stat-item:nth-child(4) {
    transition-delay: 0.44s;
}

/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 360px) {

    .ns-stats-container {
        grid-template-columns: 1fr;

        gap: 5px;
    }

    .ns-stat-item {
        min-height: 95px;
    }

    .ns-stat-icon {
        font-size: 22px;
    }

    .ns-stat-number {
        font-size: 21px;
    }

    .ns-stat-label {
        font-size: 8px;
    }
}
