@import url('assets/fonts/Kanit/Kanit-Regular.ttf');

/* :root {
    --base-cs-0: #e4b55b;
    --base-cs-1: #edcd90;
    --base-cs-2: #e3b560;
    --base-cs-3: #d48f00;

    --title-cs: #d48f00;
    --text-cs: #fff;
    --text-cs-1: #333;
    --bg-cs: #f5f5f5;
} */

:root {
    --base-cs-0: #f2eadb;
    --base-cs-1: #E0DAD0;
    --base-cs-2: #C6B4A7;
    --base-cs-3: #938572;

    --title-cs: #938572;
    --text-cs: #fff;
    --text-cs-1: #333;
    --text-cs-2: #d48f02;
    --text-cs-3: #e4b560;
    --bg-cs: #f5f5f5;
}

body {
    font-family: 'Kanit', sans-serif;
    background-color: #fff;
    color: var(--text-cs);
}

.btn-primary {
    background-color: var(--base-cs-0);
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
}

.btn-primary:hover {
    background-color: var(--base-cs-2);
}

.btn-primary-1 {
    background-color: var(--base-cs-1);
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
}

.btn-primary-1:hover {
    background-color: var(--base-cs-2);
}

.btn-primary-2 {
    background-color: var(--base-cs-2);
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
}

.btn-primary-2:hover {
    background-color: var(--base-cs-0);
    color: var(--text-cs-1);
}

.btn-primary-3 {
    background-color: var(--base-cs-3);
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
}

.btn-primary-3:hover {
    background-color: var(--base-cs-2);
}

.btn-tel {
    font-size: 30px;
    font-weight: 500;
    color: var(--base-cs-3);
    border: none;
    cursor: pointer;
}

.btn-tel:hover {
    color: var(--base-cs-3);
}

.fc-primary {
    color: var(--base-cs-0);
}

.fc-primary-1 {
    color: var(--base-cs-1);
}

.fc-primary-2 {
    color: var(--base-cs-2);
}

.fc-primary-3 {
    color: var(--base-cs-3);
}


/* Nav */
.navbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    padding: 15px 0;

    /* background-color: transparent;
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    backdrop-filter: blur(30px);
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1); */

    .navbar-brand {
        padding-right: 0px;

        .card-img {
            img {
                width: 250px;
                height: auto;
            }
        }

        .card-text {
            display: flex;
            align-items: center;
            padding-top: 10px;

            h1 {
                font-size: 24px;
                font-weight: 700;
                color: var(--text-cs);
                text-transform: uppercase;
            }
        }
    }

    .navbar-nav {
        .nav-item {
            padding: 0 10px;

            .nav-link {
                color: var(--text-cs);
                font-size: 18px;
                font-weight: 500;
                padding: 0 10px;
                transition: all 0.3s;

                &:hover {
                    color: var(--base-cs-1);
                }
            }
        }
    }

    .connect-us {
        display: flex;
        align-items: center;

        .btn-connect {
            background-color: var(--base-cs-3);
            color: #fff;
            border: none;
            padding: 10px 20px;
            border-radius: 40px;
            cursor: pointer;
            margin-right: 10px;
            text-transform: uppercase;

            &:hover {
                background-color: var(--base-cs-2);
            }
        }
    }

}

/* Scroll Down */
.navbar-scroll {
    /* background-color: transparent;
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
    backdrop-filter: blur(30px); */

    background-color: var(--base-cs-3);
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);

    .brand-text {
        display: flex !important;
        justify-content: start;
        text-align: left;

        .text {
            text-decoration: none;
            cursor: pointer;

            h1 {
                font-size: 20px;
                font-weight: 700;
                text-transform: uppercase;
                color: var(--text-cs);

                @media (max-width: 500px) {
                    font-size: 12px;
                    margin-bottom: 0;
                }
            }
        }

        .img {
            img {
                width: 250px;
                height: auto;
            }
        }
    }

    .brand-img {
        display: none;
    }

    .connect-us {
        display: flex !important;
        justify-content: end;
        text-align: right;

        .btn-connect {
            text-decoration: none;
            cursor: pointer;

            h1 {
                font-size: 20px;
                font-weight: 700;
                text-transform: uppercase;
                color: var(--text-cs);
                margin-bottom: 0;

                @media (max-width: 500px) {
                    font-size: 11px;
                    margin-bottom: 0;
                }

                @media (max-width: 400px) {
                    font-size: 10px;
                }
            }
        }
    }

    .language {
        display: block !important;
        text-align: right;
        font-size: 20px;
        padding: 0 15px;

        a {
            color: var(--text-cs);
            font-weight: 500;
            text-decoration: none;
            padding: 0 3px;
        }

        @media (max-width: 800px) {
            padding: 0 10px;
        }

        @media (max-width: 500px) {
            font-size: 11px;
            padding: 0 0px 0 0px;
        }

        @media (max-width: 400px) {
            padding: 0 3px 0px 1px;

            a {
                font-size: 10px;
                padding: 0 3px;
            }
        }

        @media (max-width: 350px) {
            padding: 0 2px 0px 0px;

            a {
                padding: 0 0px;
            }
        }

    }
}

/* Banner */
.banner {
    position: relative;
    overflow: hidden;
    padding: 100px 0;
    background: #f9f9f9;
    height: 720px;

    .card-bg {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #f9f9f9;
        opacity: 0.7;
        z-index: 1;

        .bg-img {
            width: 100%;
            height: 100%;
            overflow: hidden;

            img {
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
        }
    }

    .box-content {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;

        .banner-content {
            max-width: 1000px;
            margin: 0 auto;
            text-align: center;

            .banner-title {
                font-size: 50px;
                font-weight: 700;
                margin-bottom: 20px;
                color: var(--title-cs)
            }

            .banner-text {
                font-size: 28px;
                line-height: 1.5;
                color: var(--text-cs);
            }
        }
    }

    .shape-bottom {
        position: absolute;
        bottom: 0;
        left: 0;
        width: calc(290% + 1.3px);
        height: 80px;
        z-index: 1;

        svg {
            width: 100%;
            height: 100%;
            fill: #f9f9f9;
            transform: rotate(180deg);
        }
    }

    .owl-dots {
        position: absolute;
        z-index: 2;
        bottom: 15%;
        left: 50%;
        transform: translateX(-50%);

        @media (max-width: 500px) {
            bottom: 20%;
        }
    }

    @media (max-width: 1200px) {
        height: 550px;
    }

    @media (max-width: 800px) {
        height: 400px;
    }

    @media (max-width: 620px) {
        height: 100%;
    }

    @media (max-width: 350px) {
        height: 100px;

        .shape-bottom {
            width: calc(200% + 0px);
            height: 126px;
        }
    }
}

/* About */
.about {
    padding-top: 100px;
    padding-bottom: 50px;

    .content {
        max-width: 1000px;
        margin: 0 auto;
        text-align: center;

        .title {
            font-size: 32px;
            font-weight: 700;
            margin-bottom: 20px;
            color: var(--title-cs);

            @media (max-width: 500px) {
                font-size: 24px;
            }
        }

        .text {
            font-size: 18px;
            line-height: 1.5;
            color: var(--text-cs-1);

            @media (max-width: 500px) {
                font-size: 16px;
            }
        }
    }

    @media (max-width: 500px) {
        padding-top: 40px;
    }
}

/* Gallery */
.gallery {
    background-color: #fff;
    padding: 50px 0;

    .content {
        max-width: 1000px;
        margin: 0 auto;
        text-align: center;

        .title {
            font-size: 36px;
            font-weight: 700;
            margin-bottom: 20px;
            color: var(--title-cs);

            @media (max-width: 500px) {
                font-size: 24px;
            }
        }

        .text {
            font-size: 18px;
            line-height: 1.5;
            color: var(--text-cs);

            @media (max-width: 500px) {
                font-size: 16px;
            }
        }
    }

    .gallery-items {
        .gallery-item {
            position: relative;
            width: 100%;
            height: 200px;
            margin: 10px 0;
            overflow: hidden;
            border-radius: 10px;
            box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);

            img {
                width: 100%;
                height: 200px;
                object-fit: cover;
                transition: all 0.3s;

                &:hover {
                    transform: scale(1.1);
                }
            }

        }
    }

    @media (max-width: 500px) {
        padding: 0 0 20px 0;
    }
}

/* House Plan */
.house-plan {
    position: relative;
    background-image: url('../images/bg-house-plan-d.png');
    background-size: cover;
    background-position: center;
    padding: 50px 0;
    margin: 0px auto;

    .content {
        position: relative;
        max-width: 400px;
        margin: 0 auto;
        z-index: 1;
        text-align: center;

        .title {
            font-size: 32px;
            font-weight: 700;
            margin-bottom: 20px;
            color: var(--text-cs);

            @media (max-width: 500px) {
                font-size: 24px;
            }
        }

        .text {
            font-size: 18px;
            line-height: 1.5;
            color: var(--text-cs);

            @media (max-width: 500px) {
                font-size: 16px;
            }
        }
    }

    .owl-carousel {

        .card-img-plan {
            position: relative;
            width: 500px;
            height: 100%;

            img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                border-radius: 5px;
            }
        }

        .owl-item {
            display: flex;
            justify-content: center;
        }
    }

    @media (max-width: 1200px) {
        .card-img {
            .backdrop {
                img {
                    width: 400px;
                    height: 250px;
                }
            }

            .owl-carousel {
                top: 20px;
                left: 44px;
                width: 315px;
                height: 180px;

                .item {
                    width: 320px;
                    height: 200px;
                }
            }
        }
    }

    @media (max-width: 1000px) {
        & {
            padding: 40px 40px;

            .container:first-child {
                max-width: 100%;
            }
        }

        .content {
            max-width: 100%;
        }

        .card-img {
            left: 0;
        }
    }
}

/* Timeline */
.timeline {
    background-color: #ffffff;
    padding: 50px 0;

    .timeline-list {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;

        .box-item {
            border-radius: 5px;
            overflow: hidden;
            height: 300px;
            flex: 1 1 20px;
            margin: 5px;
            transition: 0.3s ease-in-out;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);

            img {
                width: 100%;
                height: 100%;
                object-fit: cover;
            }

            &:hover {
                flex: 3 1 20px;
            }
        }
    }

    .content {
        max-width: 1000px;
        margin: 0 auto;
        text-align: center;

        .title {
            font-size: 32px;
            font-weight: 700;
            margin-bottom: 20px;
            color: var(--title-cs);

            @media (max-width: 500px) {
                font-size: 24px;
            }
        }

        .text {
            font-size: 18px;
            line-height: 1.5;
            color: var(--text-cs-1);

            @media (max-width: 500px) {
                font-size: 16px;
            }
        }
    }

    @media (max-width: 500px) {
        padding: 20px 0 0 0;
    }
}

/* Project Location */
.project-location {
    position: relative;
    background-color: var(--bg-cs);
    padding: 50px 0;
    margin: 50px auto;
    margin-bottom: 0;

    .content {
        max-width: 1000px;
        margin: 0 auto;

        .title {
            font-size: 36px;
            font-weight: 700;
            margin-bottom: 20px;
            color: var(--title-cs);
            text-align: center;

            @media (max-width: 500px) {
                font-size: 24px;
            }
        }
    }

    .card-img {
        width: 100%;
        height: 500px;
        margin: 20px 0;
        overflow: hidden;
        box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);

        img {
            width: 100%;
            height: 100%;
        }
    }

    .area-list {
        position: relative;
        left: 20px;

        .area {
            display: flex;
            align-items: center;

            .icon i {
                font-size: 35px;
                color: var(--base-cs-3);
            }

            .content {
                margin-left: 20px;

                .title {
                    font-size: 24px;
                    font-weight: 700;
                    color: var(--title-cs);
                    margin-bottom: 5px;
                }

                .text {
                    font-size: 18px;
                    color: var(--text-cs-1);
                    margin-bottom: 10px;
                }
            }
        }
    }

    @media (max-width: 550px) {
        & {
            padding: 20px 0;

            .card-img {
                height: 100%;
            }

            .area-list {
                left: 0;

                .area {
                    .icon i {
                        font-size: 30px;
                    }

                    .content {
                        margin-left: 15px;

                        .title {
                            font-size: 16px;
                        }

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

    @media (max-width: 400px) {
        .area-list {

            .area {
                .icon i {
                    font-size: 25px;
                }

                .content {
                    margin-left: 15px;

                    .title {
                        font-size: 14px;
                    }

                    .text {
                        font-size: 12px;
                    }
                }
            }
        }
    }
}

/* Footer */
.footer {
    position: relative;
    padding: 40px 0 10px 0;

    .overlay {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0;
        width: 100%;
        height: 100%;
        background-color: var(--base-cs-3);
        opacity: 0.95;
    }

    .container:first-child {
        position: relative;
        z-index: 2;
    }

    .logo {
        margin-bottom: 20px;

        .card-img {
            width: 200px;
            margin: 0 auto;

            img {
                width: 100%;
                height: auto;
            }

            @media (max-width: 550px) {
                width: 200px;
            }
        }
    }

    .title {
        h1 {
            font-size: 18px;
            font-weight: 500;
            color: var(--text-cs);
            text-align: center;
            text-transform: uppercase;
            margin-bottom: 10px;

            @media (max-width: 500px) {
                font-size: 22px;
            }
        }

        h2 {
            font-size: 16px;
            font-weight: 500;
            color: var(--text-cs);
            text-align: center;
            margin-bottom: 20px;

            @media (max-width: 500px) {
                font-size: 16px;
            }
        }
    }

    .telephone {
        display: flex;
        justify-content: center;
        margin-bottom: 20px;

        a {
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 10px;
            color: var(--text-cs);
            text-decoration: none;
            font-size: 24px;

            i {
                margin-right: 10px;
            }

            span {
                font-weight: 500;
            }

            @media (max-width: 500px) {
                font-size: 18px;
            }
        }

        @media (max-width: 500px) {
            flex-wrap: wrap;
        }
    }

    .social {
        display: flex;
        justify-content: center;

        ul {
            display: flex;
            list-style: none;
            padding: 0;

            li {
                margin: 0 10px;

                a {
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    width: 100%;

                    img {
                        width: 40px;
                        height: 40px;
                    }
                }
            }
        }
    }

    .copy-right {
        font-size: 14px;
        font-weight: 500;
        color: var(--base-cs-1);
        text-align: start;

        a {
            color: var(--base-cs-1);
        }

        span {
            color: var(--base-cs-1);
        }

        @media (max-width: 500px) {
            text-align: center;
        }
    }

    .language {
        display: flex;
        justify-content: end;

        ul {
            display: flex;
            list-style: none;
            padding: 0;

            li {
                margin: 0 10px;

                a {
                    text-decoration: none;

                    img {
                        width: 40px;
                        height: 40px;
                    }
                }
            }
        }

        @media (max-width: 500px) {
            padding-top: 20px;
            justify-content: center;
        }
    }
}