/*
Theme Name: Blocksy Child
Theme URI: https://creativethemes.com/blocksy/
Template: blocksy
Author: CreativeThemes
Author URI: https://creativethemes.com
Description: Blocksy is a fast, modern WordPress theme with advanced WooCommerce support and full compatibility with the block editor.
Tags: accessibility-ready,blog,block-patterns,e-commerce,wide-blocks,block-styles,grid-layout,one-column,two-columns,three-columns,four-columns,right-sidebar,left-sidebar,translation-ready,custom-colors,custom-logo,custom-menu,featured-images,footer-widgets,full-width-template,theme-options,threaded-comments
Version: 2.1.1.1751449956
Updated: 2025-07-02 09:52:36

*/
/*---- css form fluent ----*/
.service-item p {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    padding: 0;
}
.bv-related-posts {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.bv-related-item {
    display: flex;
    gap: 15px;
    text-decoration: none;
    color: inherit;
	align-items: center;
}

.bv-related-thumb img {
    width: 80px;
    border-radius: 99px !important;
    object-fit: cover;
}

.bv-related-title {
    font-size: 14px;
    line-height: 1.4;
    margin: 0 0 6px;
    font-weight: 600;
}
.bv-related-thumb {
    width: 80px;
    flex-basis: 80px;
}

.bv-related-content {
    flex-basis: calc(100% - 95px);
    width: calc(100% - 95px);
}
.bv-related-date {
    font-size: 14px;
    color: #7a7a7a;
}
/*--- css contact ----*/
.ct-service-box {
	min-height: 250px;
}
/*--- css icon social ---*/
:root {
	--main-call-icon-color: #005fad; /* mÃ u gá»‘c #1564a7 */
	--main-call-icon-blur-color:rgba(0, 95, 173, 0.7); /* tá»« mÃ u main giáº£m opacity xuá»‘ng 0.7 */
}
.hotline-phone-ring-wrap {
	position: fixed;
	bottom: 68px;
	right: -13px;
	z-index: 999999;
}
.hotline-phone-ring {
	position: relative;
	visibility: visible;
	background-color: transparent;
	width: 110px;
	height: 110px;
	cursor: pointer;
	z-index: 11;
	-webkit-backface-visibility: hidden;
	-webkit-transform: translateZ(0);
	transition: visibility 0.5s;
	right: 0;
	bottom: 0;
	display: block;
}
.hotline-phone-ring-circle {
	width: 110px;
	height: 110px;
	top: 0;
	left: 0;
	position: absolute;
	background-color: transparent;
	border-radius: 100%;

	-webkit-animation: phonering-alo-circle-anim 1.2s infinite ease-in-out;
	animation: phonering-alo-circle-anim 1.2s infinite ease-in-out;
	transition: all 0.5s;
	-webkit-transform-origin: 50% 50%;
	-ms-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
	opacity: 0.5;
}

.hotline-phone-ring-wrap .hotline-phone-ring-circle {
	border: 2px solid var(--main-call-icon-color);
}

.zalo-ring-wrap .hotline-phone-ring-circle {
	border: 2px solid #1564a7;
}

.hotline-phone-ring-circle-fill {
	width: 80px;
	height: 80px;
	top: 16px;
	left: 16px;
	position: absolute;
	background-color: var(--main-call-icon-blur-color);
	border-radius: 100%;
	border: 2px solid transparent;
	-webkit-animation: phonering-alo-circle-fill-anim 2.3s infinite ease-in-out;
	animation: phonering-alo-circle-fill-anim 2.3s infinite ease-in-out;
	transition: all 0.5s;
	-webkit-transform-origin: 50% 50%;
	-ms-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}

.hotline-phone-ring-wrap .hotline-phone-ring-circle-fill {
	background-color: var(--main-call-icon-blur-color);
}

.zalo-ring-wrap .hotline-phone-ring-circle-fill {
	background-color: rgba(21,100,167,.7);
}

.hotline-phone-ring-img-circle {
	background-color: var(--main-call-icon-color);
	width: 50px;
	height: 50px;
	top: 31px;
	left: 31px;
	position: absolute;
	background-size: 20px;
	border-radius: 100%;
	border: 2px solid transparent;
	-webkit-animation: phonering-alo-circle-img-anim 1s infinite ease-in-out;
	animation: phonering-alo-circle-img-anim 1s infinite ease-in-out;
	-webkit-transform-origin: 50% 50%;
	-ms-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
}

.hotline-phone-ring-wrap .hotline-phone-ring-img-circle {
	background-color: var(--main-call-icon-color);
}

.zalo-ring-wrap .hotline-phone-ring-img-circle {
	background-color: #1564a7;
}

.hotline-phone-ring-img-circle .pps-btn-img {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
.hotline-bar {
	position: absolute;
	background: var(--main-call-icon-color);
	height: 45px;
	width: 165px;
	line-height: 40px;
	border-radius: 3px;
	padding-right: 10px;
	background-size: 100%;
	cursor: pointer;
	transition: all 0.8s;
	-webkit-transition: all 0.8s;
	z-index: 9;
	border-radius: 50px;
	right: 47px;
	bottom: 31px;
}
.hotline-bar > a {
	color: #fff;
	text-decoration: none;
	font-size: 16px;
	font-weight: 700;
	text-indent: 14px;
	letter-spacing: 1px;
	display: block;
	line-height: 45px;
	font-family: Arial;
}
.hotline-bar > a:hover,
.hotline-bar > a:active {
	color: #fff;
}
span.background-zalo-ib,
span.background-call {
	width: 31px;
	height: 31px;
	background-size: cover;
}
span.background-call {
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAolBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8ELnaCAAAANXRSTlMA/fnwB9f2sUzq5dLDrDUi+t27jWpmXzALBOHNtJ6Dd1hUR0I9OB8Cx5mSiH1wGxkWEaWjUGLgVpsAAAFWSURBVDjLdZPpkoIwEIQn4RIFFA+8EURBXY+98v6vtrkYki38fqWmO0yqZwCDJjnsvHASbuPsC3oYjBhC4vF/+RwRxhwHLTRfm/I4IL4WkcA19CHrIVqB5pmqSjixHVetf3pMcnkVxHYMpL7Sr9/zngvbkDYAbZFs5JumtuMXOKrB8AMER9swFfno8wIkI8vg8zAifT4IebmjzGIJY/Nrruczmww7UN/lBoaJYeO5PjnshC8wmKOB58ANyYTZFFDq+5xKDHUjxvSDT60h6QypGM76nNU8/ZnSh7wirugR3KAjl5WYn4RX7wJ5QEfUhvN0ZAvFHfWEqJw4c2YgJyIjUx0Ezc50XOSl9U2Gpzd3JdwI2eaPu6rMcOFZLyH+HftenRSgedE+nZbQMuvT/SPqtRrQ9krM/icl4hpGA4AKl2GUudDxzbdJ+d0ySCn14gosgiCB9/wB7hZ8KfMqBEkAAAAASUVORK5CYII=);
}
span.background-zalo-ib {
	background-image: url(data:image/png;base64,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);
}
.zalo-ring-wrap {
	position: fixed;
	right: -14px;
	bottom: 180px;
	z-index: 999999;
}

/*---- logo -----*/
.box-logo .elementor-widget-image .elementor-widget-container img {
	background-color: #fff;
}
/*! CSS Used keyframes */
@-webkit-keyframes phonering-alo-circle-anim {
	0% {
		-webkit-transform: rotate(0) scale(0.5) skew(1deg);
		-webkit-opacity: 0.1;
	}
	30% {
		-webkit-transform: rotate(0) scale(0.7) skew(1deg);
		-webkit-opacity: 0.5;
	}
	100% {
		-webkit-transform: rotate(0) scale(1) skew(1deg);
		-webkit-opacity: 0.1;
	}
}
@-webkit-keyframes phonering-alo-circle-fill-anim {
	0% {
		-webkit-transform: rotate(0) scale(0.7) skew(1deg);
		opacity: 0.6;
	}
	50% {
		-webkit-transform: rotate(0) scale(1) skew(1deg);
		opacity: 0.6;
	}
	100% {
		-webkit-transform: rotate(0) scale(0.7) skew(1deg);
		opacity: 0.6;
	}
}
@-webkit-keyframes phonering-alo-circle-img-anim {
	0% {
		-webkit-transform: rotate(0) scale(1) skew(1deg);
	}
	10% {
		-webkit-transform: rotate(-25deg) scale(1) skew(1deg);
	}
	20% {
		-webkit-transform: rotate(25deg) scale(1) skew(1deg);
	}
	30% {
		-webkit-transform: rotate(-25deg) scale(1) skew(1deg);
	}
	40% {
		-webkit-transform: rotate(25deg) scale(1) skew(1deg);
	}
	50% {
		-webkit-transform: rotate(0) scale(1) skew(1deg);
	}
	100% {
		-webkit-transform: rotate(0) scale(1) skew(1deg);
	}
}
/*-- css blog ---*/
.sidebar-blog .elementor-post__title a {
	display: block;
	display: -webkit-box;
	max-height: 64px;
	-webkit-line-clamp: 3;
	visibility: visible;
	text-overflow: ellipsis;
	overflow:hidden;
	-webkit-box-orient: vertical;
}
/*-- css trang chá»§ ---*/
.customer-feedback .desc-customer .e-con-inner {
	min-height: 250px;
}

.box-service-home .elementor-widget-container p {
	transition: 0.8s, opacity 0s;
	opacity: 0;
	height: 100%;
}

.box-service-home:hover .elementor-widget-container p {
	opacity: 1;
	height: 100%;
	transition: 0.8s,opacity 0.8s calc( 0.8s * 0.45 ),transform calc( 0.8s * 0.33 )
}

.cricle-style .elementor-widget-container img {
	-webkit-animation: criclerotate 30s linear infinite;
	animation: criclerotate 30s linear infinite;
	-webkit-animation-delay: 1.4s;
	animation-delay: 1.4s;
}

.shape-faq details {
	box-shadow: 3px 3px 18px 0px rgba(0, 0, 0, 0.12);
	border-radius: 10px!important;
}

/*-- Css liÃªn há»‡ ----*/
.form-contact .ff-el-input--content input {
	padding: 10px 20px;
}

/*-- css kiáº¿n thá»©c ---*/
.box-content {
	position: relative;
}

.box-knowledge .box-content::before {
	position: absolute;
	content: '';
	background: #ffd400;
	height: 4.25rem;
	width: 0.5rem;
	left: -20px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	border-radius: 0 8px 8px 0;
}

.box-knowledge .btn-more {
	opacity: 0;
}

.box-knowledge:hover {
	transform: translateY(-20px);
}

.box-knowledge:hover .btn-more {
	opacity: 1;
}
/* hiá»‡u á»©ng xoay */
@keyframes criclerotate {
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.f-hotline span.elementor-icon {
	animation: pulse-ring 1.5s infinite;
}
@keyframes pulse-ring {
	0% {
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4);
	}
	70% {
		box-shadow: 0 0 0 15px rgba(255, 255, 255, 0);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
	}
}

.ts-contact {
	position: fixed;
	right: 0px;
	bottom: 30%;
	z-index: 9999;
}


.ts-contact-inner {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	background: transparent;
	border-radius: 5px;
	box-shadow: 6px 0px 50px 0px rgba(7.999999999999972, 0, 63, 0.1);
	transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
	padding: 10px;
}

.ts-contact-inner a {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: center;
	margin-bottom: 10px;
	text-decoration: none !important;
	padding: 10px;
	border-radius: 8px;
}
.ts-contact-inner a:hover {
    background: #448ec8;
}
.ts-contact img {
	max-width: 36px;
}
.ts-contact a span {
	font-size: 10px;
	color: black;
	display: none;
}

.ts-contact-inner a:last-child {
	margin-bottom: 0;
}

.ts-contact-inner a:hover span {
	color: #efbb20;
}
a.ts-hotline img {
    -webkit-animation: lac 1s infinite;
    animation: lac 1s infinite;
}
a.ts-form {
    cursor: pointer;
}
@keyframes lac {
	0%, 100%, 50% {
		transform: rotate(0);
	}
	10%, 30% {
		transform: rotate(-25deg);
	}

	20%, 40% {
		transform: rotate(25deg);
	}
}
@media screen and (max-width: 540px) {
	.call-now-button {
		display: none !important;
	}
	.ts-contact {
		bottom: 0;
		right: 0;
		top: unset;
		width: 100%;
	}

	.ts-contact-inner {
        display: flex;
		background: white;
        padding-bottom: 0;
        flex-direction: row;
        justify-content: space-evenly;
    }

	.ts-contact-inner a {
		margin: 0;
		padding: 0;
	}
	.ts-contact img {
		max-width: 32px;
		margin-bottom: 3px;
	}
	.ts-contact a span {
		display: block;
	}
	.ts-contact-inner a:hover {
		background: transparent;
	}
}


  .bv-box {
    position: relative;
    background: #eef2f6;
    padding: 20px 20px 20px 24px;
    color: #333;
    line-height: 1.6;
	border:1px #eef2f6 solid;
	border-radius:20px;
	  border-left-width:10px;
	  border-left-color:#2b6cb0;
  }
.bv-box a {
  color:#0d6efd;
  line-height:1.8;
  font-weight:bold;
  text-decoration:underline;
  text-underline-offset:3px;
}

.bv-box .bv-title {
	font-weight:bold;
	font-style:italic;
}

.bv-box .bv-title-2 {
	color:#0d6efd;
	background-color: #dfefff;
	width:auto;
	font-weight:bold;
	padding:10px;
	padding-left:10px;
	border-radius:10px;
	margin-bottom: 0px 5px;
	display:inline-block;
}

.bv-box .bv-button{
	background:#0d6efd;
	color:white;
	border-radius:5px;
	font-weight:bold;
	padding: 10px 15px;
	display:inline-block;
	line-height:1;
} 