/*
Theme Name: Flatsome Child
Author: UX Themes
Template: flatsome
Version: 3.11.3
*/


/*************** ADD CUSTOM CSS HERE.   ***************/

body {
    color: #000;
}

p {
    font-family: 'Jost-Regular', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 0;
    color: #1a1a1a;
}

.section-main .row {
   max-width: 1320px !important; 
}

.mb-3 {
    margin-bottom: 1rem!important;
}

.nav > .menu-item > a {
    position: relative;
    font-family: 'Mollie-Glaston', sans-serif !important;
    font-size: 20px;
    font-weight: 700;
    color: #1a1a1a;
    padding-right: 0;
    padding-left: 0;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    min-width: 110px;
    text-align: center !important;
    text-transform: inherit;
}

.header-block-block-1 .btn-read-more {
    margin-top: auto !important;
    margin-left:  auto !important;
}

.header-block {
    display: flex !important;
    flex-direction: row !important;
    -webkit-box-align: center !important;
    align-items: center !important;
}

.btn-view-more {
    font-family: 'Mollie-Glaston', sans-serif !important; 
    font-size: 1.5rem;
    font-weight: bold;
    color: #1a1a1a !important;
}

.section-banner {
    height: 100vh;
    position: relative;
    display: flex;
    align-items: center;
}

.banner-title {
    font-family: 'Mollie-Glaston', sans-serif !important;
    font-size: 100px;
    font-weight: bold;
    line-height: 1.1;
    margin-bottom: 1.5rem;
    color: #000;
}

.banner-hero {
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 50rem 50rem 0 0;
}

.banner-hero .bg-fill {
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 50rem 50rem 0 0;
}

.col-banner-hero {
    padding-left: 6rem !important;
}

.col-banner-hero .col-inner{
    border: 1px solid #1a1a1a;
    padding: 1.5rem;
    border-radius: 50rem 50rem 0 0;
    width: 100%;
    height: 100%;
}

.col-hero-content {
    position: relative;
    display: flex;
    align-items: center;
}


.img-sm-hero img {
    border-radius: 50rem 50rem 50rem 50rem;

}

.header-wrapper .top-divider {
    border-top: none !important;
}

.active .nav-top-link {
    background-image: url(/wp-content/uploads/2023/11/nav-stroke.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.bg-color {
	background-color: rgb(245, 236, 211) !important;
}

.bg-color .sub-title {
	color: #fff !important;
}

.sub-title {
    font-size: 44px;
    font-weight: 500;
    margin: 0;
    font-family: 'Caramello', sans-serif;
    line-height: 1;
    margin-bottom: 0;
    letter-spacing: 1px;
    color: #E3B629;
}

.sub-title.fs-80 {
    font-size: 80px;
}

.col-about-us {
    display: flex;
    flex-direction: row;
    -webkit-box-align: center;
    align-items: center;
}

.btn-read-more {
    position: relative;
    overflow: hidden;
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #fff;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    background-color: #E3B629 !important;
    border: 1px solid transparent;
    padding: 0.375rem 0.75rem;
    font-family: 'Jost', sans-serif;
    font-size: 1rem;
    border: 0;
    border-radius: 25px;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    -webkit-box-shadow: 0 1px 3px 0 rgb(0 0 0 / 10%);
    -moz-box-shadow: 0 1px 3px 0 rgba(0,0,0,0.1);
    box-shadow: 0 1px 3px 0 rgb(0 0 0 / 10%);
    font-size: 18px;
    padding: 12px 24px;
    min-width: 200px;
    margin-top: 3rem!important;
}

.title {
    font-family: 'Mollie-Glaston', sans-serif;
    margin: 0;
    margin-bottom: 1.5rem;
    font-size: 45px;
    font-weight: 500;
    line-height: 1.2;
    color: #1a1a1a;
}

.text-uppercase {
    text-transform: uppercase!important;
}

.heading-flex {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}


.heading-flex .sub-title {
    white-space: nowrap;
    font-size: 80px;
    margin-top: 32px;
}

.service-img img {
    border-radius: 50rem;
    object-fit: cover;
    object-position: center;
}

.service-img {
    position: relative;
    padding: 0.5rem;
    border: 1px solid #1a1a1a;
    border-radius: 50rem;
    margin-bottom: 24px;
    -webkit-transition: all 0.3s ease !important;
    -o-transition: all 0.3s ease !important;
    transition: all 0.3s ease !important;
}

.service-title {
    font-family: 'Mollie-Glaston', sans-serif;
    line-height: 1.2;
    margin: 0;
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    color: #1a1a1a;
    -webkit-transition: all 0.3s ease !important;
    -o-transition: all 0.3s ease !important;
    transition: all 0.3s ease !important;
}

.text-white {
    color: #ffffff;
}



.testimonial-slider .testimonial-item h5 {
    font-family: 'Mollie-Glaston', sans-serif;
    font-style: italic;
    font-weight: bold;
    font-size: 24px;
    margin-bottom: 0;
}

.testimonial-slider::before {
    font-family: Caramello, sans-serif;
    font-weight: 400;
    content: "”";
    position: absolute;
    display: block;
    left: 0px;
    right: initial;
    top: 7rem;
    line-height: 0.25rem;
    font-size: 300px;
    color: rgb(242, 132, 130);
}

.testimonial-item {
    padding-left: 50px !important;
}

.footer-col-title {
    font-family: 'Mollie-Glaston', sans-serif;
    font-size: 28px;
    color: #1a1a1a;
    font-weight: 400;
    margin-bottom: 16px;
    line-height: 1.2;
}

.block-footer ul {
    list-style: none;
}

.block-footer ul li{
    margin-left: 0px !important;
}

.header-block-block-1 .btn-read-more {
    padding: 5px 5px !important;
    min-width: 124px !important;
    font-size: 13px !important;
    text-transform: inherit !important;
    margin-right: 5px;
}

.service-list-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 50rem 50rem 0 0;
}

.col-service-list-img .col-inner {
    position: relative;
    padding: 0.5rem;
    border: 1px solid #1a1a1a;
    border-radius: 50rem 50rem 0 0;
    margin-bottom: 24px;
    -webkit-transition: all 0.3s ease !important;
    -o-transition: all 0.3s ease !important;
    transition: all 0.3s ease !important;
    /* max-width: 200px; */
}

.page-title-custom .entry-title {
    font-family: 'Mollie-Glaston', sans-serif;
    font-size: 55px;
    color: #1a1a1a;
    font-weight: 400;
    line-height: 1.2;
}

.page-title-custom .title-overlay {
    background-color: transparent !important;
}

.service-list-name {
    position: relative;
    margin: 0px 0px 0px 0px;
    font-family: 'Mollie-Glaston', sans-serif;
    font-size: 36px;
    line-height: 1.2;
    font-weight: bold;
    color: #fa5350;
}

ol, ul {
    list-style: none;
}

.service-list .service-item-list:not(.child) {
    margin: 0;
    margin-top: 1.5rem;
    padding: 0;
}

.service-list .service-item-list:not(.child) .service-item:not(.child):first-child {
    margin-top: 0px;
}

.service-list .service-item-list:not(.child) .service-item:not(.child) {
    margin-top: 12px;
    padding: 0px 0px 12px 0px;
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    border-color: #A7A7A7;
}

.service-list .service-item-list:not(.child) .service-item:not(.child) .box-wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
}

.service-item-list:not(.child) .service-item:not(.child) .box-wrap .box-left {
    width: 100%;
}

.service-list .service-item-list .service-item .service-item-name {
    font-family: 'Jost-Medium', sans-serif;
    font-size: 20px;
    font-weight: 400;
    color: #1a1a1a;
    line-height: 1.6;
}

.service-list .service-item-list .service-item .service-item-desc {
    font-family: 'Jost-Regular', sans-serif;
    font-size: 18px;
    font-weight: 300;
    color: #1a1a1a;
    line-height: 1.3;
}

.service-item-list:not(.child) .service-item:not(.child) .box-wrap .box-right {
    margin: 0 0 0 20px;
    white-space: nowrap;
    -webkit-flex-shrink: 0;
    -moz-flex-shrink: 0;
    -ms-flex-shrink: 0;
    flex-shrink: 0;
}

.service-list .service-item-list .service-item .service-item-price {
    font-family: 'Jost-Medium', sans-serif;
    font-size: 18px;
    /* font-weight: 400; */
    font-weight: 500;
    line-height: 1.3;
    color: #1a1a1a;
}

.contact-info-box {
    margin-top: 1.5rem;
}

.contact-info-box h4 {
    font-family: 'Mollie-Glaston', sans-serif;
    font-size: 28px;
    color: #1a1a1a;
    font-weight: 400;
    line-height: 1.2;
}

.contact-info-box .list-social {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    margin-top: 16px;
}

.contact-info-box .list-social li:first-child{
    margin-left: 0px;
}

.contact-info-box .list-social li {
    background-color: #1a1a1a;
    color: #fff;
}

.contact-info-box .list-social li {
    width: 40px;
    height: 40px;
    margin-right: 12px;
    background-color: #1a1a1a;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.contact-info-box .list-social li a {
    color: #ffffff;
}

.box-row-contact >.col {
    padding-bottom: 15px !important;
}

.col-contact-page .heading-flex .sub-title {
    font-size: 60px;
}

.copyright-footer {
    font-family: 'Mollie-Glaston', sans-serif;
    font-size: 18px;
}

.nav-right .header-block {
    height: auto !important;
}

@media screen and (max-width: 549px) {

    .row-banner .col-hero-content {
        order: 2;
    }

    .row-banner .col-banner-hero {
        order: 1;
    }

    .banner-title {
        font-size: 24px;
        text-align: center;
    }

    .col-banner-hero {
        padding: 0 48px !important;
    }

    .section-banner {
        height: 745px;
    }

    .banner-hero {
        padding-top: 350px !important;
    }

    .col-banner-hero {
        padding: 170px 50px 0px 50px !important;
    }

    .banner-title {
        margin-top: 15px;
    }

    .col-hero-content .col-inner {
        text-align: center;
    }

    .col-hero-content .btn-view-more {
        font-size: 18px;
    }

    .sub-title.fs-80 {
        font-size: 44px;
    }

    .title {
        font-size: 36px;
    }

    .service-title {
        font-weight: 400;
        font-size: 24px;
    }

    .section-professional .btn-read-more {
        margin-top: 10px !important;
        margin-bottom: 0px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .sub-title.fs-80, .heading-flex .sub-title {
        font-size: 44px;
    }

    .title, .page-title h2 {
        font-size: 36px;
    }

    .transparent #logo img {
        max-height: 70px!important;
    }

    .page-title-custom .entry-title {
        font-size: 36px;
    }

    .service-list-name {
        text-align: center;
    }

    #main .page-title-inner .page-title-inner {
        height: 20vh !important;
    }

    .col-service-list-img .col-inner{
        width: 75% !important;
    }

    .slider-wrapper .flickity-prev-next-button {
        display: block !important;
    }
}

.btn-phone {
	transition: .3s all;
}

.phone-group.phone-show {
	visibility: visible;
}

.phone-group {
	position: fixed;
	visibility: hidden;
	cursor: pointer;
	z-index: 99;
	-webkit-backface-visibility: hidden;
	-webkit-transform: translateZ(0);
	-webkit-transition: visibility .5s;
	-moz-transition: visibility .5s;
	-o-transition: visibility .5s;
	transition: visibility .5s;
	right: -5px;
	bottom: 60px;
}

.phone-ph-circle,
.phone-group {
	width: 100px;
	height: 100px;
	background-color: transparent;
}

.phone-group.phone-green .phone-ph-circle {
	border-color: #E3B629;
	opacity: .5;
}

.phone-ph-circle {
	top: 0;
	left: 0;
	position: absolute;
	-webkit-border-radius: 100% !important;
	-moz-border-radius: 100% !important;
	border-radius: 100% !important;
	border: 2px solid #fa5350;
	opacity: .1;
	-webkit-animation: phone-circle-anim 1.2s infinite ease-in-out;
	-moz-animation: phone-circle-anim 1.2s infinite ease-in-out;
	-ms-animation: phone-circle-anim 1.2s infinite ease-in-out;
	-o-animation: phone-circle-anim 1.2s infinite ease-in-out;
	animation: phone-circle-anim 1.2s infinite ease-in-out;
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
	transition: all .5s;
	transform-origin: 50% 50%;
}

.phone-ph-circle,
.phone-ph-img-circle {
	-webkit-transform-origin: 50% 50%;
	-moz-transform-origin: 50% 50%;
	-ms-transform-origin: 50% 50%;
	-o-transform-origin: 50% 50%;
}

.phone-group.phone-green .phone-ph-circle-fill {
	background-color: #E3B629;
	opacity: .75 !important;
}

.phone-ph-circle-fill {
	width: 60px;
	height: 60px;
	top: 20px;
	left: 20px;
	position: absolute;
	background-color: #000;
	-webkit-border-radius: 100% !important;
	-moz-border-radius: 100% !important;
	border-radius: 100% !important;
	border: 2px solid transparent;
	opacity: .1;
	-webkit-animation: phone-circle-fill-anim 2.3s infinite ease-in-out;
	-moz-animation: phone-circle-fill-anim 2.3s infinite ease-in-out;
	-ms-animation: phone-circle-fill-anim 2.3s infinite ease-in-out;
	-o-animation: phone-circle-fill-anim 2.3s infinite ease-in-out;
	animation: phone-circle-fill-anim 2.3s infinite ease-in-out;
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
	transition: all .5s;
	-webkit-transform-origin: 50% 50%;
	-moz-transform-origin: 50% 50%;
	-ms-transform-origin: 50% 50%;
	-o-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}

.phone-group.phone-green .phone-ph-img-circle {
	background-color: #E3B629;
	box-shadow: 0 0 20px 6px #E3B629;
}

.slider .flickity-prev-next-button {
    opacity: 1 !important;
}

.phone-ph-img-circle {
	width: 30px;
	height: 30px;
	top: 35px;
	left: 35px;
	position: absolute;
	background: url(/wp-content/uploads/2023/11/phone-ico.png) center center no-repeat rgba(30, 30, 30, .1);
	background-size: contain;
	-webkit-border-radius: 100% !important;
	-moz-border-radius: 100% !important;
	border-radius: 100% !important;
	border: 2px solid transparent;
	opacity: .7;
	-webkit-animation: phone-circle-img-anim 1s infinite ease-in-out;
	-moz-animation: phone-circle-img-anim 1s infinite ease-in-out;
	-ms-animation: phone-circle-img-anim 1s infinite ease-in-out;
	-o-animation: phone-circle-img-anim 1s infinite ease-in-out;
	animation: phone-circle-img-anim 1s infinite ease-in-out;
	transform-origin: 50% 50%;
}

@-moz-keyframes phone-circle-anim {
	0% {
		transform: rotate(0) scale(.5) skew(1deg);
		opacity: .1
	}

	30% {
		transform: rotate(0) scale(.7) skew(1deg);
		opacity: .5
	}

	100% {
		transform: rotate(0) scale(1) skew(1deg);
		opacity: .1
	}
}

@-webkit-keyframes phone-circle-anim {
	0% {
		transform: rotate(0) scale(.5) skew(1deg);
		opacity: .1
	}

	30% {
		transform: rotate(0) scale(.7) skew(1deg);
		opacity: .5
	}

	100% {
		transform: rotate(0) scale(1) skew(1deg);
		opacity: .1
	}
}

@-o-keyframes phone-circle-anim {
	0% {
		transform: rotate(0) scale(.5) skew(1deg);
		opacity: .1
	}

	30% {
		transform: rotate(0) scale(.7) skew(1deg);
		opacity: .5
	}

	100% {
		transform: rotate(0) scale(1) skew(1deg);
		opacity: .1
	}
}

@keyframes phone-circle-anim {
	0% {
		transform: rotate(0) scale(.5) skew(1deg);
		opacity: .1
	}

	30% {
		transform: rotate(0) scale(.7) skew(1deg);
		opacity: .5
	}

	100% {
		transform: rotate(0) scale(1) skew(1deg);
		opacity: .1
	}
}

@-moz-keyframes phone-circle-fill-anim {

	0%,
	100% {
		transform: rotate(0) scale(.7) skew(1deg);
		opacity: .2
	}

	50% {
		transform: rotate(0) scale(1) skew(1deg);
		opacity: .2
	}
}

@-webkit-keyframes phone-circle-fill-anim {

	0%,
	100% {
		transform: rotate(0) scale(.7) skew(1deg);
		opacity: .2
	}

	50% {
		transform: rotate(0) scale(1) skew(1deg);
		opacity: .2
	}
}

@-o-keyframes phone-circle-fill-anim {

	0%,
	100% {
		transform: rotate(0) scale(.7) skew(1deg);
		opacity: .2
	}

	50% {
		transform: rotate(0) scale(1) skew(1deg);
		opacity: .2
	}
}

@keyframes phone-circle-fill-anim {

	0%,
	100% {
		transform: rotate(0) scale(.7) skew(1deg);
		opacity: .2
	}

	50% {
		transform: rotate(0) scale(1) skew(1deg);
		opacity: .2
	}
}

@-moz-keyframes phone-circle-img-anim {

	0%,
	100%,
	50% {
		transform: rotate(0) scale(1) skew(1deg)
	}

	10%,
	30% {
		transform: rotate(-25deg) scale(1) skew(1deg)
	}

	20%,
	40% {
		transform: rotate(25deg) scale(1) skew(1deg)
	}
}

@-webkit-keyframes phone-circle-img-anim {

	0%,
	100%,
	50% {
		transform: rotate(0) scale(1) skew(1deg)
	}

	10%,
	30% {
		transform: rotate(-25deg) scale(1) skew(1deg)
	}

	20%,
	40% {
		transform: rotate(25deg) scale(1) skew(1deg)
	}
}

@-o-keyframes phone-circle-img-anim {

	0%,
	100%,
	50% {
		transform: rotate(0) scale(1) skew(1deg)
	}

	10%,
	30% {
		transform: rotate(-25deg) scale(1) skew(1deg)
	}

	20%,
	40% {
		transform: rotate(25deg) scale(1) skew(1deg)
	}
}

.btn-white {
	background-color: #ffffff !important;
	color: #000;
}

@keyframes phone-circle-img-anim {

	0%,
	100%,
	50% {
		transform: rotate(0) scale(1) skew(1deg)
	}

	10%,
	30% {
		transform: rotate(-25deg) scale(1) skew(1deg)
	}

	20%,
	40% {
		transform: rotate(25deg) scale(1) skew(1deg)
	}
}


@media only screen and (max-width: 48em) {
	/*************** ADD MOBILE ONLY CSS HERE  ***************/
    .heading-flex {
        flex-direction: column-reverse;
    }
}
	
@media(max-width: 850px){
	
}

@media only screen and (min-width: 960px) {
	.nav {
		flex-flow: row !important;
	}
}

#footer #menu-menu-trang-chu-1 .menu-item a {
	color: #000;
}

#footer #menu-menu-trang-chu-1 .nav_menu-2 {
	padding: 0xp !important;
}