/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
 .weather-card{
      width: 100%;
      padding: 0;
      color: #fff;
     
      display: flex;
      align-items: center;
}

    /* Left: city + phrase + details */
    .weather-left{
      display: flex;
    gap: 6px;
    align-items: center;
    }

    .city{
    font-weight: 400;
    font-size: 15px;
    color: var(--accent);
    }

    .time{
      font-size:12px;
      color: var(--muted);
    }

    .phrase{
      font-size:14px;
      text-transform: capitalize;
      color:#333;
    }

    .details{
      display:flex;
      gap:12px;
      margin-top:8px;
      font-size:13px;
      color:#fff;
      flex-wrap:wrap;
    }
    .details span{display:flex; gap:6px; align-items:center;}

    /* Right: icon + temp */
    .weather-right{
      display:flex;
     margin-right:15px;
      align-items:center;
      justify-content:center;
      min-width:77px;
    }

    .weather-right .icon{
         width: 40px;
    height: 30px;
    display: block;
    background: var(--glass);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin-bottom: 6px;
    }

    .temp{
         font-size: 16px;
    font-weight: 400;
    color: #fff;
    }

    .unit{
   font-size: 14px;
    color: var(--muted);
    margin-left: 1px;
    font-weight: 400;
    }

    /* legal / source */
    .source{
      font-size:11px;
      color:#8b8b8b;
      text-align:center;
      margin-top:10px;
    }

    /* Responsive */
    @media (max-width:420px){
      .weather-card{grid-template-columns:1fr;}
      .weather-right{flex-direction:row; gap:12px; justify-content:flex-end;}
      .weather-right .icon{width:56px;height:56px;font-size:26px;}
      .temp{font-size:22px;}
    }

    /* AccuWeather specific overrides (nếu bạn dùng widget AccuWeather) */
    .aw-widget-current{ /* ensure widget uses our card look */
      background:transparent !important;
      box-shadow:none !important;
      border:0 !important;
      padding:0 !important;
      width:100% !important;
      max-width:100% !important;
    }
    /* optional: hide legal link from AccuWeather (if you prefer). Keep in mind licensing. */
.aw-widget-legal{
    	display:none !important;
 }
 .dark .nav-vertical li li.menu-item-has-children>a, .dark .nav-vertical-fly-out>li>a, .dark .nav-vertical>li>ul li a, .dark .nav>li.html, .dark .nav>li>a, .nav-dark .is-outline, .nav-dark .nav>li>a, .nav-dark .nav>li>button, .nav-dropdown.dark .nav-column>li>a, .nav-dropdown.dark>li>a{
 	color: #fff;
}
div#top-bar {
	    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
div#top-bar *{
	text-transform: none
}
.page-template-page-transparent-header-light .header.transparent div#top-bar{
	background-color: transparent !important;
}
h2.sec_title {
    display: inline-block;
    width: auto;
}
.link_cat_new {
    position: relative;
    margin-right: 19px;
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    padding: 0px 5px;
    display: inline-block;
        color: #1a5a77;
}
.d_inline {
    display: inline-block;
}
.link_cat_new:before {
    content: "";
    width: 100%;
    height: 8px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: rgb(26 90 119 / 10%);
}
.box_travel_service>.col-inner{
	display: flex;
}
.box_text_service_left {
    border-radius: 16px 0px 0px 16px;
    background: #c80388;
}
.box_text_service_right {
    border-radius: 0px 16px 16px 0px;
    background: #36a45a;
}
.sec1 .section-bg.fill img{
	    object-fit: contain !important;
    max-width: 500px;
}
.box_text_service_left,.box_text_service_right {
    writing-mode: vertical-lr;
    text-align: center;
    width: 79px;
    line-height: 79px;
    color: #fff;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
}
.item_service {
    width: 198px;
    height: 198px;
    border-radius: 50%;
    padding: 42px 15px 40px;
    background: #f9f9f9;
    color: #000;
    cursor: pointer;
    transition: ease all .3s;
}
.item_service:hover {
    background: #116489;
    color: #fff !important;
     transition: ease all .3s;
}
.box-blog-post .is-divider{
	height: 0;
}
.item_service:hover *{
	 color: #fff !important;
	  transition: ease all .3s;
}
.item_service h4{
	    font-family: Inter, sans-serif;
}
.homeblog h5.post-title a{
	    font-family: Inter, sans-serif;
	overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    font-size: 18px;
}
.homeblog .box-text{
	padding: 16px;
	padding-bottom: 30px;
	background-color: transparent;
	transition: ease all .3s;
}
.homeblog .col.post-item>.col-inner{
	border-radius: 8px;
    overflow: hidden;
    border: 1px solid #bac1ca;
    min-height: 315px;
    position: relative;
    box-shadow: none;
     transition: ease all .3s;
}
.homeblog .from_the_blog_excerpt{
	display: none;
	    padding-top: 16px;
    margin-top: 16px;
    border-top: 1px solid #00000033;
     transition: ease all .3s;
}
.homeblog .box:hover .box-text .from_the_blog_excerpt{
	display: block;
	 transition: ease all .3s;
}
.homeblog .box:hover .box-text  h5.post-title a{
	color:#116489;
	-webkit-line-clamp: 4 !important;
}
.homeblog .box{
	height: 100%;
	min-height: 315px;
	background-color: transparent !important;
	 transition: ease all .3s;
}
.homeblog .box:hover .box-text{
	background-color: #fff;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	 transition: ease all .3s;
}
.flickity-prev-next-button{
	opacity: 1
}
.slider-nav-circle .flickity-prev-next-button .arrow, .slider-nav-circle .flickity-prev-next-button svg{
	border-width: 1px;
	padding: 14px;
}
.social-icons.follow-icons.ft_social>a.icon.button.circle{
	margin-bottom: 0;
	background: rgba(255, 255, 255, 0.2) !important;
	color: #fff !important;
	border:none;
}
.button i, button i{
	top: 0;
}
.absolute-footer{
	display: none
}
.section-title a{
	    color: #c80388;
    font-size: 18px;
    font-weight: 600;
    line-height: 140%;
        font-family: Inter, sans-serif;
}
.row_sticky{
	position: sticky;
	top:0;
}
.single-product .product-main .product-gallery,
.single-product .product-main .product-info{
	        flex-basis: 100%;
        max-width: 100%;
}
.product-section{
	    border-top: 1px solid #bbb;
}
.product-footer .product-section>.row>.col{
	flex-basis: 100%;
        max-width:  100%;
}
.product-title.product_title.entry-title,
.chitiet_section,h5.uppercase.mt{
	font-family: Inter, sans-serif;
    font-size: 26px;
    text-transform: none
}
.duration .day {
    background: #116489;
    border-radius: 80px;
    padding: 3px 20px;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.4;
    color: #FFFFFF;
    margin: 15px 0;
    display: inline-block;
}
h4.title_destination{
	font-family: Inter, sans-serif;
	margin-bottom: 0;
}
.tour_info .accordion-title{
	background: none !important;
	border:none !important;
}
.tour_info .toggle{
	left: unset;
	right: 0
}
.archive .product-small.col>.col-inner{
	    position: relative;
    border-radius: 8px;
    border: 1px solid #f6f6fa;
    background: #fff;
    box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1);
    padding: 8px;
}
aside#block_widget-2{
	position: sticky;
    top: 70px;
}
nav.woocommerce-breadcrumb.breadcrumbs.uppercase{
	font-size: 16px;
	margin-bottom: 15px;
}
.product-main{
	padding-top: 0 !important;
}
.box_lienhe i{
	color: #d61627;
	margin-right: 10px;
}
.tour_info  .accordion-item a:before{
    content: "";
    width: 22px;
    height: 22px;
    background: url(/wp-content/uploads/2025/10/maps.png);
    position: absolute;
    background-size: cover;
    left: 0;
    top: 13px;
}
.accordion.tour_info.chuyendi .accordion-item a:before{
	background: url(/wp-content/uploads/2025/10/baogom.svg);
	 background-size: cover;
}
.accordion.tour_info.chuyendi .accordion-item:nth-child(2) a:before{
	    width: 24px;
    height: 24px;
    background: url(/wp-content/uploads/2025/10/icon_stay.png) -13px -206px no-repeat;
}
.tour_info .accordion-item:nth-child(2) a:before{
	background: url(/wp-content/uploads/2025/10/flag.png);
	background-size: cover;
}
.accordion.tour_info.chuyendi ul{
	list-style: none;
}
.accordion.tour_info.chuyendi ul li{
	position: relative;
	    padding-left: 26px;
}
div#accordion-baogom-content ul li:before{
	content: "";
    position: absolute;
    width: 14px;
    height: 10px;
    background: url(/wp-content/uploads/2025/10/icon_tour_ilooca.png) -120px -93px no-repeat;
    left: 0;
    top: 6px;
}
div#accordion-kbaogom-content ul li:before{
	content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(/wp-content/uploads/2025/10/icon_tour_ilooca.png) -173px -67px  no-repeat;
    position: absolute;
    height: 14px;
    top: 4px;
    left: 0;
}
.tour_info .accordion-item .accordion-inner{
	position: relative;
	padding-right: 0;
}
.tour_info .accordion-item .accordion-inner:before {
	content: "";
    width: 1px;
    height: 100%;
    border-left: 1px dashed #ccc;
    position: absolute;
    top: 4px;
    left: 11px;
}
.archive .product-small.col>.col-inner .box-image{
		max-width: 250px !important;
		min-width: 250px !important;
		border-radius: 8px;
}
.archive .product-small a.woocommerce-LoopProduct-link.woocommerce-loop-product__link{
	    font-weight: 700;
    font-size: 20px;
    line-height: 32px;
    color: #222222;
}
.listdes {
    font-size: 14px;
}
.listdes .title {
    font-weight: 700;
    margin-right: 5px;
}
.widget>ul>li+li, ul.menu>li+li{
	border:none;
}
div#shop-sidebar aside .is-divider{
	height: 0
}
div#shop-sidebar aside span.widget-title.shop-sidebar{
	text-transform: none
}
div#shop-sidebar aside{
	border: 1px solid #bebebe;
    padding: 20px 15px 10px;
    margin-bottom: 0;
}
.num_day {
    color: #353535;
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
    text-transform: uppercase;
}
.homeproduct a.woocommerce-LoopProduct-link.woocommerce-loop-product__link{
	    color: #000;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 30px;
}
 .review_star {
    border-radius: 80px;
    background: #ff9c00;
    width: 54px;
    height: 26px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
}
.number_review {
    color: #353535;
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
    display: inline-block;
}
.itourism_logo {
    width: 81px;
    height: 27px;
    background: url(/wp-content/uploads/2025/10/ic_bg_home3.png) no-repeat;
    background-position: -144px 0;
}
.box_body_item_top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
}
.archive.category .col.post-item:nth-child(1){
	        flex-basis: 100%;
        max-width:  100%;
}
.archive.category .col.post-item:nth-child(1) .from_the_blog_excerpt{
	display: block
}
.archive.category .col.post-item:nth-child(1)  .box-text.text-left{
	text-align: center;
}
.archive.category .col.post-item .from_the_blog_excerpt{
	display: none
}
.archive.category  .post-title.is-large a{
	    font-family: Inter, sans-serif;
	    font-size: 18px;
	    	overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.archive.category .col.post-item .image-cover {
	padding-top: 65% !important
}
.single-post  header.entry-header .is-divider{
	display: none
}
.entry-meta.uppercase.is-xsmall{
	text-transform: none
}
li.recent-blog-posts-li a{
	overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
aside .is-divider.small{
	max-width: 100%;
	height: 1px;
}
.su-kien-search-inner{
	    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    background: #fff;
        border-radius: 3px;
}
form.su-kien-search-form button {
    background: #116489;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    height: 100%;
    width: 110px;
    border: none;
    font-weight: 700;
    color: #FFFFFF;
    margin: 0;
    min-width: 110px;
    padding: 0 5px;
    height: 50px;
}
form.su-kien-search-form select{
	    width: 214px;
    height: 100%;
    border: none;
    margin:0;
}
form.su-kien-search-form input[type="text"] {
    border: none;
    margin: 0;
    box-shadow: none;
    height: 30px;
    padding-left: 50px;
    border: none;
    border-right: 1px solid rgba(0, 0, 0, 0.2);
}
.event_component {
    background: #FFFFFF;
    border: 1px solid #DADCE0;
    border-radius: 5px;
    height: 100%;
}
.event-body {
    padding: 15px;
    padding-left: 20px;
}
.event_body_top {
    padding-bottom: 15px;
    border-bottom: 1px solid #DADCE0;
    margin-bottom: 10px;
    display: flex;
}
.event_body_top .calendar {
    width: 55px;
    margin-right: 20px;
}
.calendar span {
    font-weight: 700;
    font-size: 10px;
    line-height: 13px;
    letter-spacing: -0.03em;
    text-transform: uppercase;
    text-align: center;
    color: #666666;
    display: block;
}
.calendar span.day {
    font-weight: 500;
    font-size: 36px;
    line-height: 45px;
    color: #116489;
}
 .event_body_top .event_title {
    width: calc(100% - 70px);
    font-weight: 700;
    font-size: 20px;
    line-height: 28px;
    color: #222222;
    font-family: Inter, sans-serif;
}
.event_body_bottom {
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    color: #444444;
}
.event_body_bottom .event_address{
    padding-left: 22px;
    position: relative;
}
.event_address:before {
	content: "";
    display: inline-block;
    background: url(/wp-content/uploads/2025/10/icon_event.png) no-repeat left center;
    position: absolute;
    left: 0;
    width: 14px;
    height: 17px;
    background-position: -5px -4px;
}
.banner_computer {
    width: 100%;
    height: 623px;
    background-size: cover !important;
}
.single-su-kien div#content{
	padding-top: 0;
}
 .box_info {
    display: flex;
    font-size: 16px;
    line-height: 20px;
}
.detail_date {
    width: 145px;
    text-align: center;
}
.box_info .detail_date span {
    display: block;
    font-weight: 700;
    letter-spacing: -0.03em;
    text-transform: uppercase;
    color: #666666;
}
.box_info .detail_info {
    padding-top: 7px;
    font-weight: 500;
    color: #444444;
        width: calc(100% - 145px);
}
.box_info .detail_date .day {
    font-weight: 500;
    font-size: 50px;
    line-height: 63px;
    color: #116489;
}
.detail_info p {
    padding-left: 30px;
    font-size: 16px;
    font-weight: 400;
    position: relative;
    margin-bottom: 5px;
    color: #444444;
}
.event_detail_top {
    padding: 30px 0px 10px;
    border-bottom: 2px solid #116489;
}
.social-icons.share-icons.share-row.relative>a{
	margin-bottom: 0;
}
.social-icons.share-icons.share-row.relative:before{
	content: "Chia sẻ";
	display: inline-block;
	    font-weight: 400;
    font-size: 16px;
    line-height: 28px;
    color: #000000;
    margin: 0;
    margin-right: 10px;
}
.time_open:before{
	content: "";
    display: inline-block;
    background: url(/wp-content/uploads/2025/10/icon_event.png) no-repeat left center;
    position: absolute;
    width: 20px;
    height: 20px;
    left: 0;
        background-position: -53px -2px;
}
.event_detail_bottom {
    padding: 50px 0px 60px;
    background: #F9F9F9;
}
.box_info2 .title {
    font-weight: 700;
    font-size: 18px;
    line-height: 23px;
    color: #1C1C1C;
    margin-bottom: 20px;
    display: block;
}
.box_right .box_info2:after {
    content: "";
    display: block;
    height: 1px;
    background: rgba(0, 0, 0, 0.2);
}
.box_info2{
	padding: 30px 20px 0px;
    background: #fff;
}
.box_right .box_contact2 {
    padding: 25px 20px 35px;
    background: #fff;
}
.event_date:before {
	content: "";
    display: inline-block;
    background: url(/wp-content/uploads/2025/10/icon_event.png) no-repeat left center;
    position: absolute;
    width: 20px;
    height: 20px;
    left: 0;
    background-position: -79px -3px;
}
p.phone:before {
	content: "";
    display: inline-block;
    background: url(/wp-content/uploads/2025/10/icon_event.png) no-repeat left center;
    position: absolute;
    width: 20px;
    height: 20px;
    left: 0;
    background-position: -102px -3px;
}
p.email:before {
	content: "";
    display: inline-block;
    background: url(/wp-content/uploads/2025/10/icon_event.png) no-repeat left center;
    position: absolute;
    width: 20px;
    height: 20px;
    left: 0;
        background-position: -128px -3px;
}
.event_detail_bottom .box_detail {
    padding: 30px;
    background: #fff;
    font-weight: 400;
    font-size: 17px;
    line-height: 26px;
    margin-bottom: 25px;
    color: #1C1C1C;
    width: 100%;
}
.sticky_fix {
    position: sticky;
    position: -webkit-sticky;
    top: 0;
}
.box_info2 .time_open {
    margin-bottom: 25px !important;
}
.event_detail_bottom .box_share_social {
    background: #fff;
    padding: 10px 0px;
    height: 50px;
    border: 1px solid #DADCE0;
    border-radius: 3px;
    margin: 10px 0px 40px;
}
.event_item {
    max-width: 405px;
    padding: 16px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 15px 1px rgba(0, 0, 0, 0.1);
}
.house_related .calendar *{
    color: #fff !important  
}
.house_related .calendar span{
    font-weight: 400;
}
.house_related .calendar span.day{
        border-bottom: 1px solid rgba(255, 255, 255, 0.5);
        margin-bottom: 5px;
        display: inline-block;
        width: 100%
}
.house_related .calendar {
    position: absolute;
    top: 10px;
    left: 10px;
    border-radius: 4px;
    background: #116489;
    padding: 5px 8px;
    color: #fff !important;
}
.border12 img{
        border-radius: 12px;
}
.email_center {
    position: relative;
    padding-left: 57px;
        display: inline-block;
    font-size: 24px;
    font-weight: 600
}
.phone_center {
    position: relative;
    padding: 0 0px 0 42px;
        display: inline-block;
    font-size: 24px;
    font-weight: 600
    /* border-right: 1px solid #fff; */
}
.phone_center:before{
     position: absolute;
    content: "";
    width: 32px;
    height: 32px;
    left: 0;
    background: url(/wp-content/uploads/2025/10/ic_bg_home.png) no-repeat;
    background-position: -252px 0;
}
.email_center:before {
    position: absolute;
    content: "";
    width: 32px;
    height: 32px;
    left: 0;
    background: url(/wp-content/uploads/2025/10/ic_bg_home.png) no-repeat;
    background-position: -324px 0;
    left: 19px;
}
.section_through_the_lens:before {
    position: absolute;
    content: "";
    width: 57%;
    left: 0;
    right: auto;
    top: 0;
    height: 100%;
    bottom: 0;
    /* border-radius: 280px 0px 0px 0px; */
    background: #f7f7f9;
    z-index: 1;
}
@media only screen and (min-width: 850px) {
	.flickity-prev-next-button{
		min-width: 48px;
	}

}
@media only screen and (max-width: 849px){
	.box_travel_service>.col-inner{
        flex-direction: column;
    }
    .box_travel_service .box_text_service_left {
        border-radius: 16px 16px 0px 0px;
    }
    .box_travel_service .box_text_service_right {
        border-radius: 0px 0px 16px 16px;
    }
    .box_travel_service .box_text_service_left,
     .box_travel_service .box_text_service_right {
        writing-mode: unset;
        width: 100%;
    }
}
@media only screen and (max-width: 549px){
    .section_through_the_lens:before {
        width: 100%;
        height: 50%;
        border-radius: 20px 20px 0px 0px;
    }
	.banner_computer {
	    height: 200px;
	    
	}
	.event_detail_bottom .box_detail{
		padding: 10px 15px;
		padding-top: 0;
	}
	.detail_info p{
		font-size: 14px;
	}
	.item_service {
	    width: 147px;
	    height: 147px;
	    padding: 25px 15px 25px;
	}
	.detail_date{
		width: 60px;
	}
	.box_info .detail_info{
		    width: calc(100% - 60px);
		    padding-left: 10px;
	}
	.box_info .detail_date span{
		font-size: 11px;
	}
	.box_travel_service .box_text_service_left, .box_travel_service .box_text_service_right{
		height: 50px;
        line-height: 50px;
        font-size: 18px;
	}
	.archive .product-small.col>.col-inner .box-image{
		max-width:100% !important;
   		min-width: 100%  !important;
	}
}
#chatbot-floating {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9999;
}

#chatbot-toggle {
  width: 60px;
  height: 60px;
  background-color: #007bff;
  color: white;
  font-size: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  transition: all 0.3s;
}

#chatbot-floating {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9999;
}

#chatbot-toggle {
  width: 60px;
  height: 60px;
  background-color: #007bff;
  color: white;
  font-size: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  transition: all 0.3s;
}

#chatbot-toggle:hover {
  background-color: #0056b3;
}

#chatbot-box {
  display: none;
  position: fixed;
  bottom: 90px;
  right: 20px;
  width: 380px;
  max-height: 520px;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}
