/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/* CUSTOM Fonts */
@font-face {
    font-family: "lexend-light";
    src: url("./assets/fonts/lexend/lexend-light-20210715091546.ttf") format("truetype");
    font-style: normal;
    font-weight: 300;
}

@font-face {
    font-family: "lexend-regular";
    src: url("./assets/fonts/lexend/lexend-regular-20210715091547.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: "lexend-medium";
    src: url("./assets/fonts/lexend/lexend-medium-20210715091546.ttf") format("truetype");
    font-style: normal;
    font-weight: 600;
}

@font-face {
    font-family: "lexend-bold";
    src: url("./assets/fonts/lexend/lexend-bold-20210715091546.ttf") format("truetype");
    font-style: normal;
    font-weight: bold;
}

/*************** ADD CUSTOM CSS HERE.   ***************/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    /* 62.5 % của 16 px (mặc định trình duyệt) ≈ 10 px  */
    font-size: 62.5%;
}

body {
    background-color: #ffffff;
}

:root {
    --background-color: #fff6ef;
    --button-color: #e07a62;
}

/*
=====================
====== Đè CSS =====
=====================
*/
.col,
.columns,
.gallery-item {
    padding: 0;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
button {
    margin: 0;
    padding: 0;
}

.row {
    margin: 0 !important;
}

blockquote,
dl,
figure,
form,
ol,
p,
pre,
ul {
    margin-bottom: 0rem;
}

.container-width,
.full-width .ubermenu-nav,
.container,
.row {
    max-width: 100% !important;
}

/* Translate */
[id^="gtranslate_menu_wrapper"] {
    position: relative !important;
}

.gt_float_switcher .gt-selected .gt-current-lang {
    padding: 4px 4px !important;
}

.gt-lang-code {
    font-size: 1.5rem !important;
}

.gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow {
    height: 8px !important;
    width: 8px !important;
    background-size: 8px !important;
}

/*
=====================
====== Custom =====
=====================
*/

/* TOP */
.top-10 {
    top: 1rem;
}

.top-20 {
    top: 2rem;
}

.top-30 {
    top: 3rem;
}

.top-40 {
    top: 4rem;
}

.top-50 {
    top: 5rem;
}

/* Bottm */
.bottom-10 {
    bottom: 1rem;
}

.bottom-20 {
    bottom: 2rem;
}

.bottom-30 {
    bottom: 3rem;
}

.bottom-40 {
    bottom: 4rem;
}

.bottom-50 {
    bottom: 5rem;
}

/* FONT SIZE */
.fs-10 {
    font-size: 1rem !important;
}

.fs-11 {
    font-size: 1.1rem !important;
}

.fs-12 {
    font-size: 1.2rem !important;
}

.fs-13 {
    font-size: 1.3rem !important;
}

.fs-14 {
    font-size: 1.4rem !important;
}

.fs-15 {
    font-size: 1.5rem !important;
}

.fs-16 {
    font-size: 1.6rem !important;
}

.fs-18 {
    font-size: 1.8rem !important;
}

.fs-20 {
    font-size: 2rem !important;
}

.fs-24 {
    font-size: 2.4rem !important;
}

.fs-28 {
    font-size: 2.8rem !important;
}

.fs-32 {
    font-size: 3.2rem !important;
}

.fs-36 {
    font-size: 3.6rem !important;
}

.fs-40 {
    font-size: 4rem !important;
}

.fs-48 {
    font-size: 4.8rem !important;
}

.fs-56 {
    font-size: 5.6rem !important;
}

.fs-64 {
    font-size: 6.4rem !important;
}

.fs-72 {
    font-size: 7.2rem !important;
}

.fw-4 {
    font-weight: 400 !important;
}

.fw-5 {
    font-weight: 500 !important;
}

.fw-6 {
    font-weight: 600 !important;
}

.fw-7 {
    font-weight: 700 !important;
}

.fw-bold {
    font-weight: bold !important;
}

.fw-bolder {
    font-weight: bolder !important;
}

.fw-normal {
    font-weight: normal !important;
}

/* Text */
.clamp-7-lines {
    display: -webkit-box;
    -webkit-line-clamp: 7;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.clamp-6-lines {
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.clamp-2-lines {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.clamp-3-lines {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.clamp-5-lines {
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.clamp-4-lines {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.text-paragraph {
    font-size: 1.4rem;
    font-family: "lexend-regular";
    color: var(--fs-color-primary) !important;
}

.text-headline-medium {
    font-family: "lexend-medium";
    font-size: 2.5rem;
    color: var(--fs-color-primary) !important;
}

.text-headline-sm {
    font-size: 1.6rem;
    font-family: "lexend-bold";
    color: var(--fs-color-primary) !important;
}

.text-headline-20 {
    font-size: 2rem;
    font-family: "lexend-bold";
    color: var(--fs-color-primary) !important;
}

.text-headline-nm {
    font-size: 2.4rem;
    font-family: "lexend-bold";
    color: var(--fs-color-primary) !important;
}

.text-headline-lg {
    font-size: 2.6rem;
    font-family: "lexend-bold";
    color: var(--fs-color-primary);
}

/* Text Color */
.color-main {
    color: var(--fs-color-primary) !important;
}

.color-second {
    color: var(--button-color) !important;
}

.color-black {
    color: #000 !important;
}

.color-white {
    color: #fff !important;
}

/* Margin */
/* ----- */
.mt--200 {
    margin-top: -20rem !important;
}

.mt--150 {
    margin-top: -15rem !important;
}

.mt--100 {
    margin-top: -10rem !important;
}

.mt--90 {
    margin-top: -9rem !important;
}

.mt--80 {
    margin-top: -8rem !important;
}

.mt--70 {
    margin-top: -7rem !important;
}

.mt--60 {
    margin-top: -6rem !important;
}

.mt--40 {
    margin-top: -4rem !important;
}

.mt--35 {
    margin-top: -3.5rem !important;
}

.mt--30 {
    margin-top: -3rem !important;
}

.mt--25 {
    margin-top: -2.5rem !important;
}

.mt--20 {
    margin-top: -2rem !important;
}

.mt--15 {
    margin-top: -1.5rem !important;
}

.mt--10 {
    margin-top: -1rem !important;
}

.mb--200 {
    margin-bottom: -20rem !important;
}

.mb--100 {
    margin-bottom: -10rem !important;
}

.mb--90 {
    margin-bottom: -9rem !important;
}

.mb--80 {
    margin-bottom: -8rem !important;
}

.mb--70 {
    margin-bottom: -7rem !important;
}

.mb--60 {
    margin-bottom: -6rem !important;
}

.mb--40 {
    margin-bottom: -4rem !important;
}

.mb--35 {
    margin-bottom: -3.5rem !important;
}

.mb--30 {
    margin-bottom: -3rem !important;
}

.mb--25 {
    margin-bottom: -2.5rem !important;
}

.mb--20 {
    margin-bottom: -2rem !important;
}

.mb--15 {
    margin-bottom: -1.5rem !important;
}

.mb--10 {
    margin-bottom: -1rem !important;
}

/* ++++ */

.mt-60 {
    margin-top: 6rem !important;
}

.mt-40 {
    margin-top: 4rem !important;
}

.mt-25 {
    margin-top: 2.5rem !important;
}

.mt-20 {
    margin-top: 2rem !important;
}

.mt-15 {
    margin-top: 1.5rem !important;
}

.mt-10 {
    margin-top: 1rem !important;
}

.mb-60 {
    margin-bottom: 6rem !important;
}

.mb-40 {
    margin-bottom: 4rem !important;
}

.mb-25 {
    margin-bottom: 2.5rem !important;
}

.mb-20 {
    margin-bottom: 2rem !important;
}

.mb-15 {
    margin-bottom: 1.5rem !important;
}

.mb-10 {
    margin-bottom: 1rem !important;
}

/* Padding */
.pb-60 {
    padding-bottom: 6rem !important;
}

.pb-40 {
    padding-bottom: 4rem !important;
}

.pb-25 {
    padding-bottom: 2.5rem !important;
}

.pb-20 {
    padding-bottom: 2rem !important;
}

.pb-15 {
    padding-bottom: 1.5rem !important;
}

.pb-10 {
    padding-bottom: 1rem !important;
}

/*
=====================
===== Max Width =====
=====================
*/
.max-w-90 {
    max-width: 90% !important;
}

.max-w-80 {
    max-width: 80% !important;
}

.max-w-75 {
    max-width: 75% !important;
}

.max-w-70 {
    max-width: 70% !important;
}

.max-w-65 {
    max-width: 65% !important;
}

.max-w-60 {
    max-width: 60% !important;
}

.max-w-55 {
    max-width: 55% !important;
}

.max-w-50 {
    max-width: 50% !important;
}

/*
=====================
===== Image Css =====
=====================
*/
.object-contain {
    object-fit: contain;
}

.object-cover {
    object-fit: cover;
}

.radius-8 img {
    border-radius: .8rem;
}

.radius-12 img {
    border-radius: 1.2rem;
}

.radius-16 img {
    border-radius: 1.6rem;
}

.radius-20 img {
    border-radius: 2rem;
}

.radius-full img {
    border-radius: 50%;
}

/*
============================
===== Flex Same Height =====
============================
*/
.flex-same-height.row .col .col-inner {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.flex-same-height.row .col .col-inner .text-paragraph {
    flex-grow: 1;
}

/*
=====================
===== Container =====
=====================
*/
#main {
    max-width: 1920px;
    margin-left: auto !important;
    margin-right: auto !important;
}

.text-container-sm {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.text-container {
    max-width: 875px;
    margin-left: auto;
    margin-right: auto;
}

.slide-pages-container {
    max-width: 70% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.center-layout {
    max-width: 1140px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-right: 1rem;
    padding-left: 1rem;
}

/*
=====================
====== Common =====
=====================
*/
.center-icon {
    text-align: center;
    min-width: 45px;

}

.center-img-text {
    min-width: 300px;
}

.center-icon img {
    aspect-ratio: 1/1;
    object-fit: contain;
}

.straight-divider {
    height: 35px;
}

.straight-divider::before {
    content: "";
    position: absolute;
    width: 1px;
    height: 35px;
    background: black;
    left: 50%;
    transform: translateX(-50%);
}

.btn-view-more {
    font-size: 1.5rem;
    font-weight: 500;
    padding: 0rem .8rem;
    color: #fff;
    background: var(--button-color);
    border-radius: 2rem;
}

.btn-view-more-2 {
    font-size: 1.5rem;
    font-weight: 500;
    padding: 0rem .8rem;
    color: #fff;
    background: #ffffff00;
    border: 1px solid #fff;
    border-radius: 2rem;
}

.btn-view-more-2:hover {
    background: var(--button-color);
    border: 1px solid var(--button-color);
}

.btn-view-more-black {
    font-size: 1.5rem;
    font-weight: 600;
    padding: 0rem .8rem;
    color: #000 !important;
    background: #ffffff00;
    border: 1px solid #000;
    border-radius: 2rem !important;
}

.btn-view-more-black:hover {
    background: #000;
    border: 1px solid #000;
    color: #fff !important;
}

.btn-service {
    color: var(--button-color) !important;
    font-size: 1.3rem !important;
    font-weight: bold;
    text-align: center;
    line-height: 1.6;
    padding: 0.4rem 1.6rem !important;
    background-color: #fff !important;
    border: 1px solid var(--button-color) !important;
    border-radius: 2rem;
    transition: all .2s linear;
    min-height: 55px;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.btn-service:hover {
    background-color: var(--button-color) !important;
    color: #ffffff !important;
    scale: 1.1;
}

/*
=====================
====== MOBILE MENU =====
=====================
*/
.mfp-content {
    background-color: #e07a62 !important;
    border-top-left-radius: 2.4rem;
    border-bottom-left-radius: 2.4rem;
}

#main-menu.mobile-sidebar.no-scrollbar li.menu-item {
    font-size: 1.6rem;
    font-weight: normal;
}

#main-menu.mobile-sidebar .sidebar-menu.no-scrollbar {
    padding: 0 !important;
}

.header-main i.icon-menu::before {
    content: "";
    display: inline-block;
    width: 26px;
    height: 26px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' preserveAspectRatio='none' viewBox='0 0 1792 1896.0833' class='' fill='rgba(77, 24, 21, 1)'%3E%3Cpath d='M1792 1344v128q0 26-19 45t-45 19H64q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1664q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19H64q-26 0-45-19t-19-45V960q0-26 19-45t45-19h1664q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19H64q-26 0-45-19T0 704V576q0-26 19-45t45-19h1664q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19H64q-26 0-45-19T0 320V192q0-26 19-45t45-19h1664q26 0 45 19t19 45z'%3E%3C/path%3E%3C/svg%3E");
    background-size: contain;
}

/*
=====================
====== HEADER =====
=====================
*/
#header {
    border-bottom: .1rem solid #000;
    margin-bottom: 2rem;
}

.header-wrapper {
    max-width: 1170px;
    margin: 0 auto;
    overflow: hidden;
}

#masthead .top-divider {
    display: none;
}

.nav>li>a>i.icon-menu {
    font-size: 3rem !important;
}

.gsatelites {
    position: absolute !important;
    rotate: 180deg;
    bottom: 0px;
    right: 15px;
}

.gsatelite.gt-current-lang img {
    box-shadow: rgba(0, 0, 0, 0.5) 0 0 16px 8px !important;
}

/* Header Bottom */
.header-bottom {
    background-color: #ffffff !important;
}

.header-bottom .flex-row.container {
    justify-content: space-between;
}

.custom-header-bottom-nav {
    justify-content: space-between;
}

.custom-header-bottom-nav li a {
    font-size: 1.6rem;
    font-family: "lexend-medium" !important;
}

/*
=====================
======== BODY =======
=====================
*/


/* Pages Redirect */
.page-show .box-text.text-center {
    margin: 0 !important;
    width: 60%;
    padding: 1.5rem;
    font-size: 1.6rem;
    color: #fff;
    background: rgba(224, 121, 98, 0.75);
}

.page-show .page-col {
    margin: 1.5rem 0;
}

/* MOBILE */
.page-show .box-text.text-center {
    padding: .8rem 0;
    font-size: 1.4rem;
}

/* MOBILE */

/* Box Pages Footer Slide / Others Services */
.others-services-pages .box-text-inner {
    display: inline-block;
    border: 2px solid var(--fs-color-primary);
    padding: .4rem 1.5rem;
    border-radius: 100px;
    font-weight: 600;
    color: var(--fs-color-primary);
}

.others-services-pages .box-text-inner:hover {
    border-color: var(--button-color);
    background-color: var(--button-color);
}

/* Contact Inpage section */
.wpcf7-spinner {
    display: none !important;
}

.inpage-contact-wrapper {
    padding-right: 10%;
}

.form-btn-wrap {
    text-align: center;
}

.custom-form-inpage input:not(.custom-submit),
.custom-form-inpage select {
    padding: .75rem;
    height: auto;
    font-size: 1.2rem;
    border-color: var(--fs-color-primary);
    border-radius: .8rem;
    color: var(--fs-color-primary);
}

.custom-submit {
    font-size: 1.6rem !important;
    padding: 0 4rem !important;
    margin: 2rem 0 0 !important;
    color: #fff !important;
    background: var(--button-color) !important;
    border: none !important;
    border-radius: 1.6rem !important;
}

/* Contact POP UP Form */
/* ẩn popup mặc định */
.section-contact-popup {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9999;
}

/* lớp nền xám */
.section-contact-popup::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .2);
}

/* khung bên trong */
.section-contact-popup .contact-popup-wrapper {
    position: relative;
    max-width: 640px;
    margin: 5vh auto;
    background: #faf1e9;
    border-radius: 2rem;
    padding: 1rem 4rem 3rem;
    animation: popIn .3s ease;
}

@keyframes popIn {
    from {
        opacity: 0;
        transform: scale(.85);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* nút đóng (đặt class="contact-popup-close") */
.contact-popup-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    font-size: 2rem;
    line-height: 1;
    padding: .4rem;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
}

.contact-popup-close:hover {
    color: #ddd
}

/* khi mở popup ẩn scroll body */
body.popup-open {
    overflow: hidden;
}

/* BOOKING */
.booking-services-wrapper {
    max-width: 80% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* FQA */
.fqa-accordion .toggle {
    position: relative !important;
    transform: translateY(-50%);
    top: 50%;
}

/* Ẩn mũi tên mặc định */
.fqa-accordion .toggle i {
    display: none !important;
}

/* Chèn icon mới */
.fqa-accordion .accordion-title.plain {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
    border: none !important;
    padding: .6rem 1.2rem !important;
    margin-bottom: 1rem;
    border-radius: 1.6rem;
    background-color: #fff6ef;
}

.fqa-accordion .accordion-title.plain.active .toggle::before {
    rotate: 90deg;
}

.fqa-accordion .toggle::before {
    content: "";
    position: absolute;
    left: 0;
    width: 25px;
    height: 40px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' preserveAspectRatio='none' viewBox='0 0 1024 1896.0833' class='' fill='rgba(224, 122, 98, 1)'%3E%3Cpath d='M595 960q0 13-10 23l-466 466q-10 10-23 10t-23-10l-50-50q-10-10-10-23t10-23l393-393L23 567q-10-10-10-23t10-23l50-50q10-10 23-10t23 10l466 466q10 10 10 23zm384 0q0 13-10 23l-466 466q-10 10-23 10t-23-10l-50-50q-10-10-10-23t10-23l393-393-393-393q-10-10-10-23t10-23l50-50q10-10 23-10t23 10l466 466q10 10 10 23z'%3E%3C/path%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    transition: all .3s linear;
}




/*
=====================
======= MEDIA =======
=====================
*/
@media (max-width: 1024px) {}

@media (max-width: 821px) {
    [class*="mt--"] {
        margin-top: 1.6rem !important;
    }

    /*  */
    .md-text-1rem {
        font-size: 1rem !important;
    }

    .md-top-2rem {
        top: 2rem !important;
    }

    .md-top-1rem {
        top: 1rem !important;
    }

    .md-top-0 {
        top: .2rem !important;
    }

    .md-bottom-2rem {
        bottom: 2rem !important;
    }

    .md-bottom-1rem {
        bottom: 1rem !important;
    }

    .md-bottom-0 {
        bottom: .2rem !important;
    }

    .md-button {
        padding: 0 .8rem !important;
        font-size: 1rem !important;
    }

    .md-none {
        display: none;
    }
}

@media (max-width: 769px) {
    .flex-37-md {
        display: flex;
        flex-wrap: wrap;
    }

    .flex-37-md>.col:first-child {
        flex: 1 1 calc(30%);
        max-width: 30%;
    }

    .flex-37-md>.col:last-child {
        flex: 1 1 calc(70%);
        max-width: 70%;
    }

    .flex-2-md {
        display: flex;
        flex-wrap: wrap;
    }

    .flex-2-md>.col {
        flex: 1 1 calc(50%);
        max-width: 50%;
    }
}


@media (max-width: 431px) {
    .flex-37-sm {
        display: flex;
        flex-wrap: wrap;
    }

    .flex-37-sm>.col:first-child {
        flex: 1 1 calc(30%);
        max-width: 30%;
    }

    .flex-37-sm>.col:last-child {
        flex: 1 1 calc(70%);
        max-width: 70%;
    }

    .flex-2-sm {
        display: flex;
        flex-wrap: wrap;
    }

    .flex-2-sm>.col {
        flex: 1 1 calc(50%);
        max-width: 50%;
    }

    .sm-text-14 {
        font-size: 1.4rem !important;
    }

    .sm-text-1rem {
        font-size: 1rem !important;
    }

    .sm-text-8 {
        font-size: .8rem !important;
    }

    .sm-top-1rem {
        top: 1rem !important;
    }

    .sm-top-0 {
        top: .2rem !important;
    }

    .sm-bottom-55 {
        bottom: 55% !important;
        top: auto !important;
    }

    .sm-bottom-1rem {
        bottom: 1rem !important;
    }

    .sm-bottom-0 {
        bottom: .2rem !important;
    }

    .sm-button {
        padding: 0 .8rem !important;
        font-size: 1rem !important;
    }

    .sm-none {
        display: none;
    }

    .sm-mx-auto {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .sm-max-w {
        width: 100% !important;
        max-width: 100% !important;
    }

    .sm-max-w25 {
        width: 25% !important;
        max-width: 25% !important;
    }

    /* Translate */
    #gt_float_wrapper {
        width: 40px !important;
        overflow: hidden;
    }

    #gt_float_wrapper .gt_float_switcher .gt_options a {
        padding: 4px !important;
    }

    /*  */
    .contact-inpage-wrapper {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .contact-inpage-wrapper .col {
        padding-top: .8rem;
        padding-bottom: .8rem;
    }

    .contact-inpage-wrapper .col,
    .contact-inpage-wrapper .col .col-inner {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /*  */
    .center-img-text {
        min-width: 230px;
    }

    .logo-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 20px;
        justify-items: center;
    }

}