/*
Theme Name: Mona Child
Theme URI: https://gaviaspreview.com/wp/consilox/
Author URI: https://themeforest.net/user/gavias
Author: Gaviasthemes Team
Description: Child theme for the Consilox theme.
Template: consilox
*/

/* ----- custom ----- */
:root {
	--wc-red: #dc3232;
	--consilox-font-family-second: Roboto, sans-serif;
}
body .wrapper-page {
    z-index: unset;
}
#btn-back-to-top {
	cursor: pointer;
}

/* title */
.gsc-heading .title em {
	background-image: unset;
	font-weight: unset;
}

/* breadcrumd */
.custom-breadcrumb .breadcrumb li:after {
	content: '/';
}

/* title */
body .gsc-heading.style-2 .sub-title .tagline {
	background: linear-gradient(90deg, var(--e-global-color-primary) 0%, rgba(54, 61, 163, 0) 100%);
}

/* box-shadow */
.mona-sec-services .swiper-slider-wrapper .swiper-nav-next,
.mona-sec-services .swiper-slider-wrapper .swiper-nav-prev,
.mona-sec-giai-phap-portfolio .gva-portfolio-carousel.swiper-slider-wrapper .swiper-nav-next,
.mona-sec-giai-phap-portfolio .gva-portfolio-carousel.swiper-slider-wrapper .swiper-nav-prev {
	box-shadow: 0 3px 13px 0 rgba(0, 0, 0, 0.15) !important;
}

/* transition 0.3s */
.gv-sticky-wrapper > .gv-sticky-menu ul.gva-nav-menu > li {
	transition: all 0.3s !important;
}

/* header */
.menu-mobile-main .uc-menu-item-pointer:after {
	filter: brightness(0);
    -webkit-filter: brightness(0);
    margin: 0 !important;
}
.menu-mobile-main .uc-side-menu-items ul li a {
	justify-content: space-between !important;
}
.gv-sticky-wrapper.is-fixed > .gv-sticky-menu ul.gva-nav-menu > li {
	padding: 30px 15px;
}
.sidebar-menu-mobile {
	position: fixed !important;
}
.sidebar-menu-mobile .dialog-close-button {
	width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 0;
    right: 0;
    background-color: var(--e-global-color-primary);
    color: #fff;
}
.gv-sticky-wrapper.is-fixed > .gv-sticky-menu ul.gva-nav-menu > li {
	padding: 30px 15px;
}
.gv-sticky-wrapper.is-fixed .icon-sb-items .elementor-icon-wrapper a.elementor-icon {
	color: var( --e-global-color-d78bc54 );
}
header .is-fixed .sticky-black {
    background: var(--e-global-color-primary);
}
header.sticky-black img {
	transition: all 0.3s ease;
}
/* header .is-fixed .sticky-black img {
	max-width: 160px;
} */

/* banner */
.hero-banner-items .swiper-slide-inner {
	height: 100%;
	width: 100%;
	aspect-ratio: 1972 / 640;
	overflow: hidden;
}
.hero-banner-items .swiper-slide-inner img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.hero-banner-items .swiper-container-horizontal>.swiper-pagination-bullets {
	bottom: 30px;
}
.hero-banner-items .swiper-container-horizontal .swiper-pagination-bullet {
	position: relative;
	margin: 0 8px;
}
.hero-banner-items .swiper-container-horizontal .swiper-pagination-bullet:before {
	content: '';
	display: block;
    width: calc(100% + 16px);
    height: calc(100% + 16px);
    position: absolute;
    top: -8px;
    left: -8px;
	border-radius: 1000px;
}
.hero-banner-items .swiper-container-horizontal .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
    border: 1px solid #fff;
}
.hero-banner-items .elementor-swiper-button {
	width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #fff;
    border-radius: 1000px;
	transition: all 0.3s ease;
}
.hero-banner-items .elementor-swiper-button:hover {
	background-color: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
}

/* img decor */
.img-prd-items a,
.mona-image-content .about-four__image .content-inner,
.mona-image-content .about-four__image-second .content-inner {
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.img-prd-items img,
.mona-image-content .about-four__image .content-inner img,
.mona-image-content .about-four__image-second .content-inner img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	border-radius: 0;
}

/* dịch vụ */
.mona-sec-services .swiper-slider-wrapper .swiper-nav-next {
	right: calc(((100vw - 1200px) / 2) - 15px) !important;
}
.swiper-slider-wrapper .swiper-nav-next:hover, 
.swiper-slider-wrapper .swiper-nav-prev:hover {
	background: var(--e-global-color-primary);
	color: #fff;
}
.carousel-services-items .service-three__image {
	aspect-ratio: 4 / 3;
}
.carousel-services-items .service-three__title {
	display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* product */
.tabs-content-prd .e-n-tabs .e-n-tabs-heading button {
	padding: 20px 0 !important;
    background-color: transparent !important;
    color: var(--e-global-color-d78bc54) !important;
    box-shadow: none !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
	text-transform: uppercase;
}
.tabs-content-prd .e-n-tabs .e-n-tabs-heading button:hover,
.tabs-content-prd .e-n-tabs .e-n-tabs-heading button[aria-selected="true"] {
	color: var( --e-global-color-primary ) !important;
	border-color: var( --e-global-color-primary ) !important;
}
/* .tabs-content-prd .e-n-tabs .e-n-tabs-heading button .e-n-tab-title-text {
	font-size: 20px;
} */
.tabs-content-prd .e-n-tabs .e-n-tabs-heading button .e-n-tab-title-text:after {
	display: none !important;
}
ul.product-promotion-list {
    padding: 0;
    margin: 0;
    list-style: none;
}
ul.product-promotion-list li + li {
    margin-top: 24px;
}
ul.product-promotion-list li.promo-item {
    display: flex;
    align-items: center;
    gap: 16px;
    border: 1px solid var( --e-global-color-primary );
    padding: 16px 40px;
    font-weight: 500;
    line-height: 1.2;
}
ul.product-promotion-list li.promo-item img {
    width: 40px;
    height: 40px;
    object-fit: contain;
}
ul.product-promotion-list li.promo-item p {
    flex: 1;
    margin: 0;
	font-weight: 600;
}
@media only screen and (max-width: 767px) {
    ul.product-promotion-list br {
        display: none;
    }
    ul.product-promotion-list li.promo-item {
        padding: 16px 20px;
    }
}

.card-prd-main ul.product-promotion-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 16px;
}
.card-prd-main ul.product-promotion-list li.promo-item {
    padding: 0;
    margin: 0;
    border: none;
}
.card-prd-main ul.product-promotion-list li.promo-item p {
    display: none;
}
@media only screen and (min-width: 768px) {
    .tt-prd-card .elementor-heading-title {
        min-height: 3em;
    }
}

.elementor-widget-progress .elementor-title {
    display: block;
    line-height: 1.5;
    padding-right: 45px;
    text-wrap: balance;
}
.breadcrumb {
    margin-bottom: 0;
}
.discount-percentage {
	background-color: var(--e-global-color-primary);
    color: #ffffff;
    font-size: 12px;
    font-weight: 500;
    display: flex;
    justify-content: center;
	align-items: center;
    padding: 2px 10px;
    text-transform: uppercase;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
    max-height: 24px;
}
.single-product .price del {
	font-size: clamp(16px, 2.5vw, 20px);
}
.gallery-prd-single .woocommerce-product-gallery .swiper-container .flex-control-nav .swiper-slide,
.gallery-prd-single .woocommerce-product-gallery .woocommerce-product-gallery__image {
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.gallery-prd-single .woocommerce-product-gallery .woocommerce-product-gallery__image a {
	width: 100%;
    height: 100%;
    display: block;
}
.gallery-prd-single .woocommerce-product-gallery .swiper-container .flex-control-nav .swiper-slide img {
	opacity: 0.75;
	transition: all 0.3s ease;
	border: 1px solid transparent;
}
.gallery-prd-single .woocommerce-product-gallery .swiper-container .flex-control-nav .swiper-slide img:hover,
.gallery-prd-single .woocommerce-product-gallery .swiper-container .flex-control-nav .swiper-slide img.flex-active {
	opacity: 1;
	border-color: #ccc;
}
.gallery-prd-single .woocommerce-product-gallery .swiper-container .flex-control-nav .swiper-slide img,
.gallery-prd-single .woocommerce-product-gallery .woocommerce-product-gallery__image img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.gallery-prd-single .woocommerce-product-gallery .woocommerce-product-gallery__image,
.gallery-prd-single .woocommerce-product-gallery .woocommerce-product-gallery__image img {
	pointer-events: none;
}
.gallery-prd-single .woocommerce-product-gallery .swiper-container .flex-control-nav {
	padding-left: 0;
	margin-top: 24px;
}
.gallery-prd-single .woocommerce-product-gallery__trigger {
	display: none;
}
.ct-text-thongso-items table {
	width: 100% !important;
	border: none;
}
.ct-text-thongso-items table tbody tr:nth-child(odd) {
	background-color: #EAEAEA;
}
.ct-text-thongso-items table tbody tr td:first-child {
    width: 35%;
}
.ct-text-thongso-items table tbody tr td {
    width: 65%;
	border: none;
    padding: 14px 24px;
}
.pum-theme-lightbox .pum-container .pum-close {
	position: absolute !important;
    padding: 0 !important;
}
.pum-container.popmake .pum-title {
	text-align: center;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--e-global-color-primary);
}
.pum-container.popmake .pum-close {
	position: absolute !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.form-prd-contact .field-button {
	text-align: center;
	position: relative;
}
.form-prd-contact .field-button .wpcf7-spinner {
	position: absolute;
    margin: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.field-input.name-prd input {
	pointer-events: none;
	background-color: #ccc;
	font-weight: 600;
}
.status-stock .elementor-shortcode {
	font-size: 16px;
	font-weight: 600;
	color: var(--e-global-color-primary);
}
.single-product .price {
	font-size: clamp(24px, 2.5vw, 32px);
	font-weight: 700;
    color: var(--e-global-color-text);
}
.single-product .gallery-prd-single .woocommerce-product-gallery--with-images .woocommerce-product-gallery__image {
	pointer-events: none;
	aspect-ratio: 1 / 1;
    overflow: hidden;
}
.single-product .gallery-prd-single .woocommerce-product-gallery--with-images .woocommerce-product-gallery__image a img {
	height: 100%;
    width: 100%;
	object-fit: cover;
	border: 1px solid rgb(36 36 36 / 20%);
}
.col-thongso td {
	border: none;
	padding: 14px 24px;
}
.col-thongso .title-left {
	width: 30%;
}
.col-thongso .thongso-right {
	width: 70%;
}
tr.col-thongso:nth-child(odd) {
    background-color: #EAEAEA;
}
.img-prd-card {
	aspect-ratio: 1 / 1;
    overflow: hidden;
}
.img-prd-card a,
.img-prd-card img {
	height: 100% !important;
	width: 100% !important;
}
.img-prd-card img {
	object-fit: cover;
}
.card-prd-main {
	height: 100%;
}
.card-prd-main:hover .btn-card .elementor-button-wrapper .elementor-button {
	background-color: var( --e-global-color-primary );
	color: white;
}
.archive-product-main .elementor-pagination {
	display: flex;
    justify-content: center;
    align-items: center;
	gap: 16px;
	margin-top: 40px;
}
.archive-product-main .elementor-pagination .page-numbers {
	margin: 0 !important;
	width: 24px;
    height: 24px;
	transition: all 0.3s ease;
	display: flex;
    align-items: center;
    justify-content: center;
}
.archive-product-main .elementor-pagination .prev img,
.archive-product-main .elementor-pagination .next img {
	height: 15px;
	transition: all 0.3s ease;
}
.archive-product-main .elementor-pagination .prev:hover img,
.archive-product-main .elementor-pagination .next:hover img {
	filter: brightness(0) invert(1);
   	-webkit-filter: brightness(0) invert(1);
}
.archive-product-main .elementor-pagination .page-numbers.current,
.archive-product-main .elementor-pagination .page-numbers:hover {
	background-color: var(--e-global-color-primary);
	color: white;
}
.sc-category-prd a {
	color: var(--e-global-color-text);
    font-size: 16px;
    font-weight: 600;
	transition: all 0.3s ease;
	line-height: 1.2;
}
.subcategory-dropdown .category-product-main a {
	font-size: 14px;
	font-weight: 500;
}
.subcategory-dropdown .category-product-main a:hover {
	color: var(--e-global-color-primary);
}
.product-categories li {
    margin: 10px 0;
    position: relative;
}
.category-product-main {
	margin: 0 0 24px;
	font-weight: bold;
	display: flex;
    justify-content: space-between;
	align-items: center;
}
.category-product-main:last-child {
	margin-bottom: 0;
}
.subcategory-dropdown .category-product-main {
	margin-bottom: 16px;
}
.subcategory-dropdown {
	margin-left: 16px;
	margin-bottom: 24px;
	display: none;
}
.category-icon {
    font-weight: normal;
    cursor: pointer;
    width: 15px;
    height: 15px;
    background-image: url(/wp-content/uploads/2026/04/arrow-down.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.category-icon.show-cate {
	background-image: url(/wp-content/uploads/2026/04/arrow-up.svg);
}
.form-search-prd .e-search-submit {
	display: none !important;
}
.tt-prd-card .elementor-heading-title {
	display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.col-card-prd-items {
	height: 100%;
}
.tabs-prd-items.elementor-widget-n-tabs .e-n-tab-title-text:after {
	display: none !important;
}
.tt-prd-items .elementor-heading-title {
	font-size: 18px;
    font-weight: 600;
    line-height: 1.3;
}
.tt-prd-items .elementor-heading-title a {
	display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.tt-prd-items .elementor-heading-title a:hover {
	color: var(--e-global-color-primary);
}
.price-prd-items .price {
	margin-bottom: 0;
	color: var(--e-global-color-d78bc54);
}
.price-prd-items .price del {
	margin-right: 5px;
}
ins,
.price-prd-items .price ins {
	text-decoration: unset;
}
.price-prd-items .price del .woocommerce-Price-amount {
	font-weight: 500;
	opacity: 0.5;
}
.price-prd-items .woocommerce-Price-amount {
	font-size: 14px;
	font-weight: 600;
}
.icon-see-prd-items a.elementor-icon {
	display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--e-global-color-primary);
    width: 40px;
    height: 40px;
    border-radius: 1000px;
    color: white;
}

/* counter */
.mona-sec-counter .gva-element-gva-counter .symbol {
	font-size: 60px;
}

/* giải pháp */
.mona-sec-giai-phap-portfolio .gva-portfolio-carousel.swiper-slider-wrapper .swiper-nav-next {
	right: calc(((100vw - 1200px) / 2) - 15px) !important;
}
.mona-sec-giai-phap-portfolio .gva-portfolio-carousel.swiper-slider-wrapper .swiper-nav-prev {
	left: calc(((100vw - 1200px) / 2) - 15px) !important;
}
.mona-sec-giai-phap-portfolio .portfolio-one__image {
	aspect-ratio: 1 / 1;
}
.mona-sec-giai-phap-portfolio .portfolio-one__image .portfolio-one__link,
.mona-sec-giai-phap-portfolio .portfolio-one__image .portfolio-one__link img {
	display: block;
	height: 100%;
	width: 100%;
}
.mona-sec-giai-phap-portfolio .portfolio-one__image .portfolio-one__link img {
	object-fit: cover;
}

/* thành tích */
.mona-sec-achievements .mona-col-left-achievements {
	padding-left: calc(((100vw - 1200px) / 2) - 15px);
}

/* form contact */
.mona-form-contact .wpcf7-not-valid-tip {
	font-size: 11px;
	line-height: 20px;
	position: absolute;
    bottom: 0;
    right: 8px;
}
.mona-form-contact .form-action {
	display: block;
    float: left;
}
.mona-form-contact .form-action .wpcf7-spinner {
	margin: 0;
    position: absolute;
    left: calc(50% - 15px);
    bottom: calc(50% - 15px);
	z-index: 10;
}

/* blog */
.post-one__thumbnail {
	aspect-ratio: 3 / 2;
}
.post-one__title a {
	display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.post-thumb-single img {
	border-radius: 20px;
}

/* footer */
.wpcf7-form-control-wrap {
    display: block;
}
.wpcf7-not-valid-tip {
    font-size: 10px;
    line-height: 20px;
    font-weight: bold;
    background: var(--wc-red);
    color: white;
    margin-top: 8px;
    position: absolute;
    bottom: -20px;
    padding: 2px 8px;
    border-radius: 3px;
    width: fit-content;
    max-width: unset;
    z-index: 1;
    box-shadow: 0 3px 13px 0 rgba(0, 0, 0, 0.15);
}
.wpcf7-not-valid-tip:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 10%;
    transform: translate(-50%);
    border-style: solid;
    border-width: 0 8px 8px;
    border-color: transparent transparent var(--wc-red);
}
.form-dk-ft {
	display: flex;
}
.form-dk-ft .wpcf7-form-control-wrap {
	width: 100%;
	margin-bottom: 0;
}
.form-dk-ft .wpcf7-submit {
	margin-left: 15px;
    padding: 16px 32px !important;
}
.wpcf7-spinner {
	position: absolute;
    margin: 0;
}
.mona-footer-media {
	font-size: 14px;
	line-height: 1;
}
.mona-footer-media img {
	height: 13px !important; 
	padding-left: 5px;
}

/* tablet */
@media (max-width: 1024px) {
	.mona-image-content .about-four__single {
		max-width: 100%;
		padding: 0;
	}
	.mona-image-content .about-four__single .about-four__image-second {
		display: none !important;
	}
	
	/* nav-next , nav-prev */
	.mona-sec-services .swiper-slider-wrapper .swiper-nav-next,
	.mona-sec-giai-phap-portfolio .gva-portfolio-carousel.swiper-slider-wrapper .swiper-nav-next {
		right: 0 !important;
	}
	.mona-sec-giai-phap-portfolio .gva-portfolio-carousel.swiper-slider-wrapper .swiper-nav-prev {
		left: 0 !important;
	}
	.mona-sec-services .swiper-slider-wrapper .swiper-nav-next,
	.mona-sec-services .swiper-slider-wrapper .swiper-nav-prev,
	.mona-sec-giai-phap-portfolio .gva-portfolio-carousel.swiper-slider-wrapper .swiper-nav-next,
	.mona-sec-giai-phap-portfolio .gva-portfolio-carousel.swiper-slider-wrapper .swiper-nav-prev,
	.mona-elementor-team .swiper-slider-wrapper .swiper-nav-next,
	.mona-elementor-team .swiper-slider-wrapper .swiper-nav-prev,
	.mona-testimonials .swiper-slider-wrapper .swiper-nav-next,
	.mona-testimonials .swiper-slider-wrapper .swiper-nav-prev,
	.mona-posts-all-items .swiper-slider-wrapper .swiper-nav-next,
	.mona-posts-all-items .swiper-slider-wrapper .swiper-nav-prev {
		opacity: 1 !important;
	}
	
	/* 	giải pháp */
	.mona-sec-giai-phap-portfolio .portfolio-one__arrow,
	.mona-sec-giai-phap-portfolio .portfolio-one__content:before {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	.mona-sec-giai-phap-portfolio .portfolio-one__content-inner,
	.mona-sec-giai-phap-portfolio .portfolio-one__content:after,
	.mona-sec-giai-phap-portfolio .portfolio-one__content {
		-webkit-transform: translateY(0);
   		transform: translateY(0);
	}
	.mona-sec-giai-phap-portfolio .portfolio-one__arrow,
	.mona-sec-giai-phap-portfolio .portfolio-one__content,
	.mona-sec-giai-phap-portfolio .portfolio-one__content:before {
		opacity: 1;
	}
}

/* mobile */
@media (max-width: 767px) {
	/* banner */
	.hero-banner-items .elementor-swiper-button {
		display: none !important;
	}
	.hero-banner-items .swiper-container-horizontal>.swiper-pagination-bullets {
		bottom: 8px;
	}
	
	/* product */
	.form-search-prd .e-search-input-wrapper {
		width: 100%;
	}
	.e-search-submit {
		display: none !important;
	}
	.gallery-prd-single .woocommerce-product-gallery .swiper-container .flex-control-nav {
		overflow-x: auto;
	}
	.section-dc-wr {
		height: 40px;
	}
	.pum-theme-lightbox .pum-container {
		width: 90% !important;
	}
	.tt-prd-home .elementor-heading-title {
		min-height: 47px;
	}
	.gallery-prd-single .swiper-slide {
		width: 35% !important;
	}
	
	/* counter */
	.mona-sec-counter .gva-element-gva-counter .symbol {
		font-size: 40px;
	}
	.mona-sec-counter .gva-element-gva-counter .milestone-three__title {
		text-align: center;	
	}
	
	/* footer */
	.mona-footer-media {
		font-size: 12px;
	}
	.mona-footer-media img {
		height: 11px !important; 
	}
}
/* ----- end custom ----- */

/* scrollbar */
body::-webkit-scrollbar-track {
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	background-color: #F5F5F5;
}

body::-webkit-scrollbar {
	width: 6px;
	background-color: #F5F5F5;
}

body::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background-color: var(--e-global-color-primary);
}
/* ===== Quanwei ===== */
/*
 * Header: long Quanwei logo with company name (≈8.4:1). The logo column takes the space
 * left by the menu and hotline and the logo shrinks with it (menu is off-centre by design).
 */
.elementor-78 .e-con:has(> .elementor-element-6ccd34f) {
	--width: auto;
	width: auto !important;
	flex: 0 1 auto !important;
	min-width: 0;
}
.elementor-78 .elementor-element-6ccd34f {
	--container-widget-width: auto;
	width: auto !important;
	max-width: 100%;
}
.elementor-78 .elementor-element-6ccd34f .site-branding-logo {
	display: block;
	max-width: none !important;
}
.elementor-78 .elementor-element-6ccd34f img {
	display: block;
	width: 500px;
	max-width: 100%;
	height: auto;
}
@media (min-width: 1025px) {
	.elementor-78 .e-con:has(> .elementor-element-21db505),
	.elementor-78 .e-con:has(> .elementor-element-b7a3e38) {
		--width: auto;
		width: auto !important;
		flex: 0 0 auto !important;
	}
}
.elementor-78 .elementor-element-b7a3e38 .elementor-icon-box-description {
	white-space: nowrap;
}
@media (min-width: 1025px) {
	/* wider than the 1200px content box so the logo keeps a readable size */
	.elementor-78 .elementor-element-0977ac0 {
		--content-width: 1400px;
	}
}
/* small laptops: tighter menu, hotline icon only */
@media (min-width: 1025px) and (max-width: 1279px) {
	.elementor-78 .elementor-element-21db505 .gva-nav-menu > li {
		padding-left: 8px;
		padding-right: 8px;
	}
	.elementor-78 .elementor-element-b7a3e38 .elementor-icon-box-content {
		display: none;
	}
	.elementor-78 .elementor-element-b7a3e38 .elementor-icon-box-icon {
		margin: 0 0 0 12px;
	}
}
/* tablet / mobile: logo fills the row next to the menu button */
@media (max-width: 1024px) {
	.elementor-78 .elementor-element-0977ac0 > .e-con-inner {
		flex-wrap: nowrap;
	}
	.elementor-78 .e-con:has(> .elementor-element-6ccd34f) {
		flex: 1 1 0 !important;
	}
	.elementor-78 .e-con:has(> .elementor-element-b7a3e38) {
		--width: auto;
		width: auto !important;
		flex: 0 0 auto !important;
	}
	.elementor-78 .elementor-element-6ccd34f img {
		width: 100%;
		max-width: 400px;
	}
}
.canvas-mobile .top-canvas .logo-mm img {
	width: 260px;
	max-width: 100%;
	height: auto;
}
.elementor-81 .elementor-element-4b0f4c8 .site-branding-logo {
	max-width: none !important;
}
.elementor-81 .elementor-element-4b0f4c8 img {
	height: auto;
	width: 100%;
	max-width: 340px;
}
.elementor-81 .elementor-element-f4c08b2 a {
	color: inherit;
}
.elementor-81 .elementor-element-f4c08b2 a:hover {
	color: var(--e-global-color-primary);
}
/* Home counters: "5.000 m²" is wider than the old numbers */
@media (max-width: 767px) {
	.elementor-398 .mona-sec-counter .milestone-number {
		font-size: 30px;
	}
}
/* Project cards: image + category + name (always visible) */
.qw-project-card {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 6px 24px rgba(13, 13, 63, 0.08);
	height: 100%;
	transition: box-shadow 0.3s, transform 0.3s;
}
.qw-project-card:hover {
	box-shadow: 0 12px 32px rgba(0, 101, 202, 0.18);
	transform: translateY(-4px);
}
.qw-project-card .portfolio-one__image img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	display: block;
}
.qw-project-card__content {
	padding: 18px 20px 22px;
}
.qw-project-card__category a {
	display: inline-block;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: var(--e-global-color-primary);
	background: rgba(0, 101, 202, 0.08);
	border-radius: 20px;
	padding: 3px 10px;
	margin-bottom: 10px;
}
.qw-project-card__title {
	font-size: 17px;
	line-height: 1.45;
	margin: 0;
}
.qw-project-card__title a {
	color: var(--e-global-color-accent);
}
.qw-project-card__title a:hover {
	color: var(--e-global-color-primary);
}
.qw-center-btn {
	text-align: center;
	margin-top: 40px;
}
/* About: history timeline (horizontal scroll-snap slider) */
.qw-timeline {
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	padding-bottom: 12px;
	scrollbar-width: thin;
}
.qw-timeline > .e-con-inner,
.qw-timeline {
	flex-wrap: nowrap !important;
}
.qw-timeline .qw-timeline__item {
	flex: 0 0 300px !important;
	width: 300px !important;
	scroll-snap-align: start;
	background: #fff;
	border: 1px solid #d6e3f3;
	border-top: 4px solid var(--e-global-color-primary);
	border-radius: 14px;
	padding: 24px 22px;
}
.qw-timeline .qw-timeline__item:nth-child(even) {
	border-top-color: #2e9b3a;
}
.qw-timeline__item .elementor-widget-text-editor p {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
}
.qw-timeline-nav {
	display: flex;
	justify-content: center;
	gap: 14px;
}
/* The theme styles every <button> through a long :not() chain (high specificity) */
.qw-timeline-nav button.qw-timeline-prev,
.qw-timeline-nav button.qw-timeline-next {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 48px !important;
	height: 48px !important;
	min-width: 0 !important;
	padding: 0 !important;
	border-radius: 50% !important;
	border: 1px solid #d6e3f3 !important;
	background: #fff !important;
	color: var(--e-global-color-primary) !important;
	box-shadow: 0 4px 14px rgba(13, 13, 63, 0.08);
	cursor: pointer;
	transition: background 0.25s, color 0.25s, border-color 0.25s;
}
.qw-timeline-nav button.qw-timeline-prev:hover,
.qw-timeline-nav button.qw-timeline-next:hover {
	background: var(--e-global-color-primary) !important;
	border-color: var(--e-global-color-primary) !important;
	color: #fff !important;
}
.qw-timeline-nav button svg {
	width: 18px;
	height: 18px;
	display: block;
}
@media (max-width: 767px) {
	.qw-timeline .qw-timeline__item {
		flex-basis: 82% !important;
		width: 82% !important;
	}
}
/* About: certificates grid */
.qw-cert {
	background: #fff;
	border: 1px solid #e3eaf4;
	border-radius: 12px;
	padding: 12px;
}
.qw-cert .elementor-widget-image img {
	height: 220px;
	width: 100%;
	object-fit: contain;
}
.qw-cert .widget-image-caption {
	font-size: 14px;
	line-height: 1.45;
	margin-top: 10px;
	color: var(--e-global-color-accent);
}
@media (max-width: 767px) {
	.qw-cert .elementor-widget-image img {
		height: 160px;
	}
}
/* Services: process steps + list cards */
.qw-step {
	background: #f3f7fc;
	border-radius: 12px;
	padding: 18px 18px 14px;
	border-left: 4px solid var(--e-global-color-primary);
}
.qw-step .qw-step__no .elementor-heading-title {
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: var(--e-global-color-primary);
}
.qw-step .elementor-widget-text-editor p {
	margin: 0;
	font-weight: 500;
	color: var(--e-global-color-accent);
}
.qw-service-card {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 6px 24px rgba(13, 13, 63, 0.08);
	padding-bottom: 18px;
}
.qw-service-card .elementor-widget-image img {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}
.qw-service-card .elementor-widget-heading,
.qw-service-card .elementor-widget-text-editor {
	padding: 0 20px;
}
.qw-service-card .elementor-widget-text-editor p {
	margin: 0;
}
.qw-projects-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}
@media (max-width: 1024px) {
	.qw-projects-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 767px) {
	.qw-projects-grid {
		grid-template-columns: 1fr;
	}
}
.qw-service-content .elementor-widget-heading h2.elementor-heading-title {
	margin-top: 22px;
}
.qw-service-content .elementor-widget-heading h1.elementor-heading-title {
	margin-top: 10px;
}
/* Product specs table (tab "Thông số kỹ thuật") */
.qw-spec-table {
	width: 100%;
	border-collapse: collapse;
}
.qw-spec-table th,
.qw-spec-table td {
	border: 1px solid #dde6f3;
	padding: 10px 14px;
	text-align: left;
	vertical-align: top;
}
.qw-spec-table th {
	width: 32%;
	background: #f3f7fc;
	color: var(--e-global-color-accent);
	font-weight: 600;
}
/* Shop pagination prev/next (SVG chevrons) */
.archive-product-main .elementor-pagination .page-numbers.prev,
.archive-product-main .elementor-pagination .page-numbers.next {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1px solid #d6e3f3;
	color: var(--e-global-color-primary);
	vertical-align: middle;
}
.archive-product-main .elementor-pagination a.page-numbers.prev:hover,
.archive-product-main .elementor-pagination a.page-numbers.next:hover {
	background: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
	color: #fff;
}
.archive-product-main .elementor-pagination span.page-numbers.prev,
.archive-product-main .elementor-pagination span.page-numbers.next {
	opacity: 0.35;
}
.archive-product-main .elementor-pagination svg {
	display: block;
}
/* Timeline: navigation by arrows / swipe, no native scrollbar */
.qw-timeline {
	scrollbar-width: none;
	padding-top: 4px;
}
.qw-timeline::-webkit-scrollbar {
	display: none;
}
.archive-product-main .elementor-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
}
.archive-product-main .elementor-pagination .page-numbers:not(.prev):not(.next) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin: 0;
	border-radius: 50%;
	border: 1px solid #d6e3f3;
	background: #fff;
	color: var(--e-global-color-accent);
	font-weight: 600;
	line-height: 1;
}
.archive-product-main .elementor-pagination .page-numbers.current,
.archive-product-main .elementor-pagination a.page-numbers:not(.prev):not(.next):hover {
	background: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
	color: #fff;
}
.archive-product-main .elementor-pagination span.page-numbers.current:not(.prev):not(.next) {
	background: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
	color: #fff;
}
/* Galleries (factory photos, project galleries): same frame for every image */
.gva-gallery-carousel .gallery-one__image {
	aspect-ratio: 4 / 3;
	overflow: hidden;
}
.gva-gallery-carousel .gallery-one__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
/* Project cards: same height in every row (the isotope grid positions items absolutely) */
.qw-project-card__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
	min-height: calc(1.45em * 3);
}
.qw-project-card__category {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* ===== Sửa website.pdf (2026-10-14) ===== */
/* 1. Home banner: one full-width artwork (text is part of the image) */
.qw-home-banner,
.qw-home-banner .elementor-widget-container {
	width: 100%;
	line-height: 0;
}
.qw-home-banner img {
	display: block;
	width: 100%;
	height: auto;
	max-width: none;
}

/* 2. About: company photos (replaces the CEO section) */
.qw-company-photo img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: 16px;
	box-shadow: 0 14px 40px rgba(7, 26, 51, 0.12);
}
.qw-company-photo .widget-image-caption {
	margin-top: 12px;
	font-weight: 500;
	color: var(--e-global-color-secondary, #1b2a4e);
	text-align: center;
}

/* 3. Contact-form sections: photo + dark overlay, light text */
.qw-cta-dark .elementor-heading-title,
.qw-cta-dark .gva-heading-block .title,
.qw-cta-dark .gva-heading-block .heading-title,
.qw-cta-dark .elementor-icon-box-title,
.qw-cta-dark .elementor-icon-box-title a,
.qw-cta-dark .elementor-icon-box-description,
.qw-cta-dark .elementor-widget-gva-heading-block h2,
.qw-cta-dark .elementor-widget-gva-heading-block .desc {
	color: #fff !important;
}
.qw-cta-dark .elementor-widget-gva-heading-block em {
	color: #6cc0ff !important;
}
.qw-cta-dark .elementor-icon-box-description {
	opacity: 0.85;
}
.qw-cta-dark .elementor-divider-separator {
	border-color: rgba(255, 255, 255, 0.25) !important;
}

/* 4. Intro: "Phương châm hoạt động" sits under the photo; the column follows the long text */
@media (min-width: 1025px) {
	.elementor-398 .elementor-element-16153da6,
	.elementor-16 .elementor-element-f9c0cde {
		position: sticky;
		top: 110px;
		align-self: flex-start;
	}
}
.qw-intro-motto {
	padding: 22px 24px;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(7, 26, 51, 0.08);
	border-left: 4px solid var(--e-global-color-primary);
}

/* 5. Background accents so pages are not plain white */
.qw-bg-pattern {
	background-color: #f4f6f9;
	background-image: linear-gradient(180deg, #f7f8fa 0%, #eef1f5 100%);
}
.qw-bg-soft {
	background-color: #eef3f8;
	background-image: none;
}

/* 6. Services + projects: even rhythm under every heading */
.qw-service-content .elementor-widget-heading h2.elementor-heading-title {
	margin-top: 34px;
	margin-bottom: 14px;
}
.qw-service-content .elementor-icon-list-items .elementor-icon-list-item {
	padding: 0 !important;
	margin: 0 0 12px !important;
	align-items: flex-start !important;
}
.qw-service-content .elementor-icon-list-items .elementor-icon-list-item:last-child {
	margin-bottom: 0 !important;
}
.qw-service-content .elementor-icon-list-icon {
	height: 28.8px;
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
}
.qw-service-content .elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}
.qw-proj-desc {
	padding-bottom: 0 !important;
}
.qw-proj-desc h1.elementor-heading-title {
	margin-bottom: 18px;
}
.qw-proj-desc .elementor-widget-text-editor p {
	margin-bottom: 12px;
}
.qw-proj-desc ol,
.qw-proj-desc ul {
	margin: 0;
	padding-left: 22px;
}
.qw-proj-desc li {
	margin-bottom: 10px;
	line-height: 1.7;
}
.qw-proj-desc li:last-child {
	margin-bottom: 0;
}
.qw-proj-details {
	padding-top: 30px !important;
}
.qw-proj-details .elementor-widget-text-editor:first-child {
	padding: 10px 28px;
	border-radius: 14px;
	background: #f3f7fc;
	border: 1px solid #e1eaf5;
}
.qw-proj-details .elementor-widget-text-editor:first-child p {
	margin: 0;
	padding: 12px 0;
	display: grid;
	grid-template-columns: 190px 1fr;
	gap: 16px;
	align-items: start;
	border-bottom: 1px dashed #d3e0ef;
}
.qw-proj-details .elementor-widget-text-editor:first-child p:last-child {
	border-bottom: 0;
}
@media (max-width: 767px) {
	.qw-proj-details .elementor-widget-text-editor:first-child {
		padding: 6px 18px;
	}
	.qw-proj-details .elementor-widget-text-editor:first-child p {
		grid-template-columns: 1fr;
		gap: 2px;
	}
}
.qw-proj-info {
	margin-top: 60px;
}

/* 7. Contact: Zalo QR */
.qw-zalo-qr {
	margin-top: 10px;
	padding: 16px;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(7, 26, 51, 0.08);
}
.qw-zalo-qr .qw-zalo-qr__img {
	width: 140px;
	max-width: 140px;
	flex: 0 0 140px;
}
.qw-zalo-qr .qw-zalo-qr__img img {
	width: 140px;
	height: 140px;
	display: block;
}
.qw-zalo-qr p {
	margin-bottom: 6px;
}

/* 9. Partners: several auto-scrolling rows */
.qw-partners {
	display: flex;
	flex-direction: column;
	gap: 18px;
	width: 100%;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.qw-partners__track {
	display: flex;
	gap: 18px;
	width: max-content;
	animation: qw-partners 60s linear infinite;
}
.qw-partners__row.is-reverse .qw-partners__track {
	animation-direction: reverse;
}
.qw-partners:hover .qw-partners__track {
	animation-play-state: paused;
}
.qw-partners__dup {
	display: contents;
}
.qw-partners__item {
	flex: 0 0 auto;
	width: 170px;
	height: 86px;
	padding: 12px 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	border: 1px solid #e3ebf5;
	border-radius: 12px;
}
.qw-partners__item img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}
@keyframes qw-partners {
	to {
		transform: translateX(calc(-50% - 9px));
	}
}
@media (max-width: 767px) {
	.qw-partners,
	.qw-partners__track {
		gap: 12px;
	}
	.qw-partners__item {
		width: 120px;
		height: 64px;
		padding: 8px 12px;
	}
	@keyframes qw-partners {
		to {
			transform: translateX(calc(-50% - 6px));
		}
	}
}
@media (prefers-reduced-motion: reduce) {
	.qw-partners__track {
		animation: none;
		flex-wrap: wrap;
		width: auto;
		justify-content: center;
	}
	.qw-partners__dup {
		display: none;
	}
}

/* ===== Feedback 2026-10-20 ===== */
/* Home: slider again — slide 1 is the banner artwork, then the 4 service slides */
.qw-home-slider .simple-slider .swiper-slide {
	min-height: 0;
	height: max(460px, 33.41vw);
}
.qw-home-slider .simple-slider .swiper-slide .slider-overlay {
	opacity: 1;
	background: linear-gradient(90deg, rgba(7, 26, 51, 0.55) 0%, rgba(7, 26, 51, 0.25) 45%, rgba(7, 26, 51, 0) 75%);
}
.qw-home-slider .slider-item-content:has(img[src*="banner-trang-chu-quanwei"]) .slider-overlay,
.qw-home-slider .slider-item-content:has(img[src*="banner-trang-chu-quanwei"]) .slider-overlay-1,
.qw-home-slider .slider-item-content:has(img[src*="banner-trang-chu-quanwei"]) .slider-overlay-2,
.qw-home-slider .slider-item-content:has(img[src*="banner-trang-chu-quanwei"]) .slider-content {
	display: none;
}
.qw-home-slider img[src*="banner-trang-chu-quanwei"] {
	object-position: 28% center;
	animation: none !important;
}
@media (max-width: 1024px) {
	.qw-home-slider .simple-slider .swiper-slide { height: 420px; }
}
@media (max-width: 767px) {
	.qw-home-slider .simple-slider .swiper-slide { height: max(220px, 56vw); }
	.qw-home-slider img[src*="banner-trang-chu-quanwei"] { object-position: 18% center; }
	.qw-home-slider .layer-wrap.title .slider-caption { font-size: 24px !important; line-height: 1.25 !important; }
	.qw-home-slider .slider-meta .swiper-pagination { bottom: 6px !important; }
	.qw-home-slider .simple-slider .swiper-slide .slider-content-width { padding-bottom: 34px; }
	.qw-home-slider .slider-caption.btn-theme,
	.qw-home-slider .slider-caption.btn-border-white { padding: 8px 14px; font-size: 13px; }
	.qw-home-slider .layer-wrap.sub-title,
	.qw-home-slider .layer-wrap.desc { display: none; }
	.qw-home-slider .simple-slider .swiper-slide .slider-content-width { padding: 20px 15px; }
}

/* Contact: heading, form, then the contact cards below (no two-column split) */
.qw-contact-stack > .e-con-inner,
.qw-contact-stack {
	gap: 28px;
}
.qw-contact-head,
.qw-contact-form,
.qw-contact-cards {
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
}
.qw-contact-head .gva-heading-block,
.qw-contact-head .heading-block { text-align: center; }
.qw-contact-cards {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}
.qw-contact-card {
	background: #fff;
	border-radius: 16px;
	padding: 22px 24px;
	box-shadow: 0 10px 30px rgba(7, 26, 51, 0.06);
	margin: 0 !important;
	width: auto !important;
}
.qw-cc-phone { grid-column: 1; grid-row: 1; }
.qw-cc-email { grid-column: 2; grid-row: 1; }
.qw-cc-qr { grid-column: 3; grid-row: 1 / span 2; }
.qw-cc-address { grid-column: 1 / span 2; grid-row: 2; }
@media (max-width: 767px) {
	.qw-contact-cards { grid-template-columns: 1fr; }
	.qw-cc-phone, .qw-cc-email, .qw-cc-qr, .qw-cc-address { grid-column: 1; grid-row: auto; }
}

/* Contact: office map artwork in place of Google Maps */
.qw-office-map,
.qw-office-map .elementor-widget-container { width: 100%; line-height: 0; }
.qw-office-map img { display: block; width: 100%; height: auto; max-width: none; }
.qw-contact-cards .qw-cc-qr {
	flex-direction: column !important;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 10px;
}
.qw-contact-cards .qw-cc-qr > .elementor-element { width: 100% !important; max-width: 100%; }
.qw-contact-cards .qw-cc-qr img { width: 150px; margin: 0 auto; }
/* contact cards: centre the short phone/email cards vertically */
.qw-contact-cards .qw-cc-phone,
.qw-contact-cards .qw-cc-email {
	display: flex;
	align-items: center;
}
.qw-contact-cards .qw-contact-card > .elementor-widget-container { width: 100%; height: auto !important; margin: 0 !important; }
.qw-contact-cards .qw-cc-phone .elementor-icon-box-wrapper,
.qw-contact-cards .qw-cc-email .elementor-icon-box-wrapper { align-items: center; }
/* mobile menu popup: long logo */
.elementor-1853 .elementor-element-ce876c8 img {
	width: 240px;
	max-width: 100%;
	height: auto;
}
/* language switcher (MONA Multilingual): flags in the header, names in the mobile menu, site colours */
.qw-lang .mml-switcher__item.is-active span[aria-current] {
	background: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
}
.qw-lang .mml-switcher__item a:hover {
	border-color: var(--e-global-color-primary);
	background: #f2f6fc;
}
.elementor-78 .qw-lang {
	margin: 0 18px 0 0;
}
/* two languages: no search box when the list opens, the current flag stays */
.qw-lang .mml-sel--single.is-open .mml-sel__q {
	opacity: 0;
	caret-color: transparent;
	cursor: pointer;
}
.qw-lang .mml-sel--single.is-open .mml-sel__val {
	visibility: visible;
}
.elementor-1853 .qw-lang {
	margin-top: 16px;
}
@media (max-width: 1024px) {
	/* the switcher sits in the mobile menu */
	.elementor-78 .qw-lang {
		display: none;
	}
}
