/*
Theme Name: TTN Blank
Theme URI: https://innhanhttn.com.vn/
Description: Theme WordPress độc lập, giữ bố cục và nội dung hiện tại của In Nhanh TTN.
Author: In Nhanh TTN
Version: 1.0.1
Text Domain: ttn-blank
*/


/*************** ADD CUSTOM CSS HERE.   ***************/

/* Editorial single-post layout, matched to the TTN brand palette. */
.ttn-article-single .single-content {
	padding: 34px 0 44px;
}
.ttn-article-single .single-left .title-sg {
	padding: clamp(20px, 3vw, 36px);
	background: #fff;
	border: 1px solid #e5edf5;
	border-radius: 16px;
	box-shadow: 0 8px 28px rgba(20, 43, 77, .08);
}
.ttn-article-header {
	margin: 0 0 22px;
	padding: 0 0 20px;
	border-bottom: 1px solid #e8edf3;
}
.ttn-article-categories {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 13px;
}
.ttn-article-categories a {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 4px 11px;
	border-radius: 999px;
	background: #fff0ec;
	color: #d94225;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
}
.ttn-article-categories a:hover {
	background: #f54e24;
	color: #fff;
}
.ttn-article-title {
	margin: 0 0 16px;
	color: #17345b;
	font-size: clamp(28px, 3.4vw, 40px);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -.02em;
}
.ttn-article-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.ttn-article-meta li {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	color: #64748b;
	font-size: 13px;
	line-height: 1.5;
}
.ttn-article-meta li i {
	color: #f54e24;
	font-size: 14px;
}
.ttn-article-excerpt {
	margin: 18px 0 0;
	color: #334155;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.7;
}
.ttn-article-excerpt p:last-child {
	margin-bottom: 0;
}
.ttn-article-featured {
	margin: 0 0 24px;
}
.ttn-article-featured img {
	display: block;
	width: 100%;
	max-height: 500px;
	border-radius: 12px;
	object-fit: cover;
}
.ttn-article-featured figcaption {
	margin: 8px 0 0;
	color: #64748b;
	font-size: 13px;
	text-align: center;
}
.ttn-article-single .content-p .entry-content {
	padding: 0;
	color: #29384d;
	font-size: 16px;
	line-height: 1.8;
	 overflow-wrap: anywhere;
}
.ttn-article-content > p:first-of-type {
	color: #334155;
	font-size: 18px;
	line-height: 1.75;
}
.ttn-article-content h2,
.ttn-article-content h3,
.ttn-article-content h4 {
	color: #1e5f9f;
	font-weight: 800;
	line-height: 1.3;
}
.ttn-article-content h2 {
	margin: 34px 0 14px;
	padding-left: 14px;
	border-left: 4px solid #f54e24;
	font-size: clamp(23px, 2.6vw, 30px);
}
.ttn-article-content h3 {
	margin: 25px 0 11px;
	font-size: clamp(19px, 2.2vw, 23px);
}
.ttn-article-content p {
	margin-bottom: 16px;
	font-size: inherit;
	line-height: inherit;
}
.ttn-article-content ul,
.ttn-article-content ol {
	margin: 0 0 20px 1.25em;
}
.ttn-article-content li {
	margin-bottom: 8px;
	line-height: 1.7;
}
.ttn-article-content img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}
.ttn-article-content figure,
.ttn-article-content .wp-caption {
	max-width: 100%;
	margin: 22px auto;
}
.ttn-article-content figcaption,
.ttn-article-content .wp-caption-text {
	margin-top: 8px;
	color: #64748b;
	font-size: 13px;
	line-height: 1.5;
	text-align: center;
}
.ttn-article-content table {
	width: 100%;
	margin: 22px 0;
	border-collapse: collapse;
	font-size: 14px;
}
.ttn-article-content th,
.ttn-article-content td {
	padding: 10px 12px;
	border: 1px solid #dbe4ee;
	vertical-align: top;
}
.ttn-article-content th {
	background: #1e5f9f;
	color: #fff;
	font-weight: 700;
}
.ttn-article-content blockquote {
	margin: 22px 0;
	padding: 16px 20px;
	border-left: 4px solid #f54e24;
	border-radius: 0 10px 10px 0;
	background: #fff7f4;
	color: #334155;
}
.ttn-article-content a {
	color: #1e66a8;
	text-decoration: underline;
	text-underline-offset: 2px;
}
.ttn-article-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 18px;
	margin: 30px 0 0;
	padding: 22px;
	border: 1px solid #dbe7f2;
	border-radius: 14px;
	background: linear-gradient(135deg, #f5faff 0%, #fff 65%, #fff5f1 100%);
}
.ttn-article-cta-copy {
	flex: 1 1 340px;
}
.ttn-article-cta-kicker {
	margin: 0 0 5px !important;
	color: #d94225;
	font-size: 12px !important;
	font-weight: 800;
	letter-spacing: .05em;
}
.ttn-article-cta h2 {
	margin: 0 0 7px;
	color: #17345b;
	font-size: 22px;
	font-weight: 800;
	line-height: 1.3;
}
.ttn-article-cta-copy > p:last-child {
	margin: 0;
	color: #475569;
	font-size: 15px;
	line-height: 1.6;
}
.ttn-article-cta-actions {
	display: flex;
	flex: 0 1 240px;
	flex-direction: column;
	gap: 9px;
}
.ttn-article-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 14px;
	border: 2px solid #d94225;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.25;
	text-align: center;
	text-decoration: none !important;
}
.ttn-article-btn-primary {
	background: #d94225;
	color: #fff !important;
}
.ttn-article-btn-primary:hover {
	background: #b92d1c;
	border-color: #b92d1c;
	color: #fff !important;
}
.ttn-article-btn-secondary {
	background: #fff;
	color: #c53320 !important;
}
.ttn-article-btn-secondary:hover {
	background: #fff2ee;
	color: #a92518 !important;
}
.ttn-article-author {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin: 24px 0 0;
	padding: 18px 0 0;
	border-top: 1px solid #e8edf3;
}
.ttn-article-author-avatar img {
	width: 56px;
	height: 56px;
	border-radius: 50%;
}
.ttn-article-author span,
.ttn-article-author strong {
	display: block;
}
.ttn-article-author span {
	color: #64748b;
	font-size: 12px;
}
.ttn-article-author strong {
	margin: 2px 0 5px;
	color: #17345b;
}
.ttn-article-author p {
	margin: 0;
	color: #475569;
	font-size: 14px;
	line-height: 1.6;
}
.ttn-article-single .sidebar-toc #ez-toc-container,
.ttn-article-single .sidebar-toc .ez-toc-widget-container {
	border: 1px solid #dbe7f2;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 6px 20px rgba(20, 43, 77, .06);
}
.ttn-article-single .related-ct {
	padding: 8px 0 36px;
}
.ttn-article-single .related-ct .title-ct {
	margin-bottom: 10px;
}
.ttn-article-single .related-ct .item-sl h3 {
	min-height: 44px;
	margin: 0 0 6px;
	color: #17345b;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
}
.ttn-article-single .related-ct .item-sl:hover h3 {
	color: #d94225;
}
@media (max-width: 849px) {
	.ttn-article-single .single-content {
		padding: 22px 0 30px;
	}
	.ttn-article-single .single-left .title-sg {
		padding: 18px 16px;
		border-radius: 12px;
		box-shadow: 0 4px 18px rgba(20, 43, 77, .07);
	}
	.ttn-article-title {
		font-size: 28px;
	}
	.ttn-article-meta {
		gap: 7px 14px;
	}
	.ttn-article-single .content-p .entry-content {
		font-size: 16px;
	}
	.ttn-article-content > p:first-of-type {
		font-size: 17px;
	}
	.ttn-article-cta-actions {
		flex-basis: 100%;
	}
}
@media (max-width: 480px) {
	.ttn-article-title {
		font-size: 25px;
	}
	.ttn-article-meta li {
		font-size: 12px;
	}
	.ttn-article-content h2 {
		margin-top: 28px;
		font-size: 22px;
	}
	.ttn-article-cta {
		padding: 17px 15px;
	}
	.ttn-article-cta h2 {
		font-size: 20px;
	}
	.ttn-article-btn {
		width: 100%;
	}
}
.tt-ct h2{
	text-transform: uppercase;
    margin-bottom: 5px;
}
.lien-he-ct .lh-ct .item {
    display: flex !important;
    align-items: center;
    gap: 10px;
	justify-content:center;
}
.lien-he-ct .lh-ct .item .text-lh {
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.lien-he-ct .lh-ct .item .text-lh p {
    display: flex;
    align-items: center;
    margin: 0;
}
.lien-he-ct .lh-ct .item .text-lh p a {
    display: flex;
    align-items: center;
    margin: 0;
    gap: 8px;
	font-size:14px;
}
.lien-he-ct .lh-ct .item .text-lh p a i {
    font-style: normal;
    font-weight: 600;
    color: #f54e25;
}
.lien-he-ct .lh-ct .item .ha{
	width:70px;
	height:70px;
}
.col-height .col-inner{
	height:100%;
}
.di-flex .col-inner{
	height: 100%;
    background: #f8f9fa;
    box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    border-radius: 10px;
    display: flex;
    align-items: center;
}
#ez-toc-container.ez-toc-transparent{
	border:1px solid #1e7bc9;
	padding: 1.5rem 1rem 1.5rem 1rem;
    border-radius: 8px;
}
#ez-toc-container a{
	color:#000;
}
#ez-toc-container a:visited{
	font-weight:bold !important;
	color:#000 !important
}
.ez-toc-widget-container ul li a{
	font-size:14px;
}
#ez-toc-container ul ul, .ez-toc div.ez-toc-widget-container ul ul{
	margin-left:12px;
}
#ez-toc-widget-container nav{
	max-height: 300px;
    overflow-y: auto;
}
#ez-toc-widget-container nav::-webkit-scrollbar{
    width: 3px;
    height: 3px;
    background-color: #fff;
}
#ez-toc-widget-container nav::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #1e7bc9;
}
b, strong{
	font-weight:bold !important;
}
.ez-toc-widget-container li.active>a{
	font-weight:700;
}
.header-button-1 a:before{
	content: "";
    background-image: url(/wp-content/uploads/2024/08/print.png);
    width: 20px;
    height: 20px;
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    left: 10px;
    top: 5px;
    z-index: 9;
}
.header-button-1 a{
	position:relative;
	padding-left:40px;
}
.button-call{
	display: flex;
    align-items: center;
    gap: 12px;
}
.button-call .button-ct{
	display: inline-block;
    padding: 0px 18px;
    line-height: 40px;
    background: #f04122;
    border-radius: 8px;
}
.button-call .button-ct a{
	font-size: 16px;
	color:#fff;
	font-weight:700;
}
.button-call .button-ct img{
	 width: 24px;
    margin-right: 5px;
}
.menu-listct{
	list-style: none;
}
.menu-listct.c-2{
	column-count:2;
}
.menu-listct li{
	position: relative;
    padding: 9px 0;
    border-bottom: 1px solid #ededed;
	margin-left:0 !important;
}
.menu-listct li:last-child{
	margin-bottom:0;
}
.menu-listct li a{
	color: #333;
	font-size:16px;
	position:relative;
	padding-left:17px;
}
.menu-listct li a:hover{
	color:#f54e24;
}
.menu-listct li a:before{
	content: "\f105";
    font-family: fl-icons;
    position: absolute;
    left: 0;
}
.ss-menu-mg img{
	border:1px solid #cdcdcd;
}
.section.ss-menu-mg .col{
	padding-bottom:3px;
}
.footer-wrapper .ux-logo-link.block.image-{
	padding:0 !important;
	margin-bottom:20px;
}
.text-footer p{
	display:flex;
	gap:15px;
	align-items:center;
	margin:0;
}
.text-footer p i{
	font-size:22px;
}
.text-footer p:first-child i{
	width:50px;
}
.text-footer p:nth-child(2) i{
	width:50px;
}
.text-footer .loc{
	display: flex;
    gap: 15px;
    align-items: center;
	margin-top:15px;
}
.text-footer .loc .t-loc{
	display: flex;
    flex-direction: column;
}
.text-footer .loc p i{
	width:auto;
}
.text-footer.mri p{
	margin-bottom:5px;
}
.text-footer.mri{
	padding-left:7px;
}
.text-footer.mri .loc{
	margin-top:0;
	margin-bottom:15px;
}
.list-dathang .item-dh{
	 display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 30px;
}
.list-dathang .item-dh .icon img{
	width: 40px;
    margin-left: -5px;
}

.list-dathang .item-dh .text-d label{
	line-height: 1;
    color: #fff;
    margin: 0;
    font-weight: 400;
}
.list-dathang .item-dh .text-d a{
	color: #fff;
    font-weight: 700;
}
.footer-wrapper .section-title-normal{
	border-bottom: 1px solid #ececec;
}
.footer-wrapper .menu-listct li{
	padding-top:0px;
	margin:0;
	border:0px;
}
.footer-wrapper .menu-listct li a{
	color:#fff;
}
.footer-wrapper .menu-listct li a:hover{
	color:#f54e24;
}
.footer-wrapper .text-no .section-title span{
	text-transform:none;
}
.footer-wrapper .section-title-container{
	margin-bottom:15px;
}
.footer-wrapper .social-icons{
	margin-bottom:20px;
}
.footer-wrapper .col{
	padding-bottom:0
}
.footer-wrapper .absolute-footer.dark{
	color:#fff;
	padding: 10px 0 10px;
}
.searchform input#woocommerce-product-search-field-0{
	border-radius: 20px;
    padding-left: 18px;
    border: 0;
    box-shadow: 0 0 5px #ccc;
    height: 38px;
    line-height: 40px;
    font-size: 15px;
}
.searchform button.ux-search-submit.submit-button.secondary.button.icon.mb-0{
	background-color: #f04121 !important;
    border-radius: 24px !important;
    padding: 0 14px;
    left: -52px;
    height: 32px;
    color: #fff !important;
}
.contact-box-bottom-nav {
    position: fixed;
    right: 2.4375rem;
    background: #fff;
    border-radius: 5px;
    width: auto;
    z-index: 150;
    bottom: 2.4375rem;
    padding: .75rem 1.5rem;
    box-shadow: 0 0 10px 0 rgba(0,0,0,.08);
    border: 1px solid #007ff8
}

.contact-box-bottom-nav ul {
    list-style: none;
    padding: 0;
    margin: 0
}

.contact-box-bottom-nav ul li {
    padding: .3125rem 0;
	margin:0;
	margin-left:0 !important;
}

.contact-box-bottom-nav ul li svg {
    margin-right: .625rem;
	animation: 1s ease-in-out 0s normal none infinite running nml-alo-circle-img-anim;
}

.contact-box-bottom-nav ul>li a {
    font-size: .875rem;
    font-weight: 600;
	display:flex;
	align-items:center;
	
}

.contact-box-bottom-nav ul>li i {
    font-size: 2rem;
    margin-right: .875rem;
	
}
@keyframes nml-alo-circle-img-anim {
	0% {
		transform: rotate(0deg) scale(1) skew(1deg);
	}
	10% {
		transform: rotate(-25deg) scale(1) skew(1deg);
	}
	20% {
		transform: rotate(25deg) scale(1) skew(1deg);
	}
	30% {
		transform: rotate(-25deg) scale(1) skew(1deg);
	}
	40% {
		transform: rotate(25deg) scale(1) skew(1deg);
	}
	50% {
		transform: rotate(0deg) scale(1) skew(1deg);
	}
	100% {
		transform: rotate(0deg) scale(1) skew(1deg);
	}
}
.contact-box-bottom-nav ul>li i.facebook-contact {
    color: #4286f7
}

.contact-box-bottom-nav ul>li i.phone-contact {
    color: #ffaf00
}

.contact-box-bottom-nav ul>li .chat_animation {
    display: none
}

.contact-box-bottom-nav li .button {
    background: transparent
}

.contact-box-bottom-nav ul li .button .btn_phone_txt {
    position: relative;
    top: 35px;
    font-size: 10px;
    font-weight: 700;
    text-transform: none
}

.contact-box-bottom-nav ul li .button .phone_animation i {
    display: inline-block;
    width: 27px;
    font-size: 26px;
    margin-top: 12px
}
.section.ss-banner{
	padding:0 !important
}
.product-categories-grid{
	display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 15px 20px;
}
.product-categories-grid .single-category{
	padding: 15px;
    border: 1px solid #cdcdcd;
    border-radius: 15px;
	transition: .3s all ease;
}
.product-categories-grid .single-category:hover {
	transition: .3s all ease;
	border: 1px solid #f54e24;
}
.product-categories-grid .single-category a{
	display:block;
}
.product-categories-grid .single-category a img{
	width: 110px;
    margin: 0 auto;
    display: block;
}
.product-categories-grid .single-category a h3{
	margin: 0;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
}
.section.ss-cat{
	padding-top:60px !important;
}
.ss-product{
	background-image: linear-gradient(90deg, #f5f5f5 30%, #FFFFFF 100%);
	padding: 50px 0 20px !important;
}
.title-ct{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-bottom:25px;
}
.title-ct h2{
	font-size:22px;
	text-transform:uppercase;
	position:relative;
	padding-left: 40px;
	margin-bottom:0;
}
.title-ct h2:before{
	content:"";
	background-image:url('/wp-content/uploads/2024/08/pricon.png');
	background-repeat:no-repeat;
	position:absolute;
	left:0;
	top:0;
	width:30px;
	height:30px;
	background-size:cover;
}
.title-ct .list-pr{
	width:70%
}
.title-ct .hd-tt{
	width:30%
}
.title-ct .list-pr ul{
	display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0;
    list-style: none;
    gap: 30px;
}
.title-ct .list-pr ul li{
	margin: 0;
    font-size: 16px;
    font-weight: 500;
	position:relative;
	padding-left:20px;
}
.title-ct .list-pr ul li:not(:last-child):before{
	content: '';
    width: 16px;
    height: 16px;
    background-image: url('/wp-content/uploads/2024/08/checked.png');
    background-repeat: no-repeat;
    background-size: cover;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 5px;
}
.title-ct .list-pr ul li:last-child a{
	display: inline-block;
    padding: 5px 20px;
    background: #f54e23;
    color: #fff;
    border-radius: 6px;
    font-weight: 700;
	transition:.3s all ease;
}
.title-ct .list-pr p{
	margin-bottom:0;
}
.title-ct .list-pr ul li:last-child a:hover{
	transition:.3s all ease;
	background:#1e7bc9;
}
.products-grid-ct{
	display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
}
.item-product{
	box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    border-radius: 10px;
	overflow: hidden;
}
.item-product:hover .box-content .product-title{
	color:#f54e24;
	transition:.3s all ease;
}
.item-product .box-img{
	overflow: hidden;
}
.item-product .box-img img{
	 height: 170px;
    object-fit: cover;
    display: block;
	-webkit-transform: scale(1);
    transform: scale(1);
	-webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
	width:100%;
}
.item-product:hover .box-img img{
	-webkit-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
.item-product .box-content{
	padding: 20px;
	background: #fff;
}
.item-product .box-content .product-title{
	font-size:16px;
	overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
	transition:.3s all ease;
	line-height:22px;
	min-height:44px;
}
.item-product .box-content .price{
	margin-bottom:7px;
}
.item-product .box-content .price del{
	font-size: 13px;
}
.item-product .box-content .price ins bdi{
	 color: #f54e23;
    font-size: 18px;
}
.item-product .box-content p{
	margin-bottom: 0;
    color: #f54e24;
	font-size:14px;
}
.section.ss-news{
	padding:50px 0 !important;
}
.news-slider .slick-list.draggable{
	margin:0 -15px;
	padding:20px 0;
}
.news-slider .slick-list.draggable .slick-slide{
	padding:0 15px;
}
.item-sl{
	box-shadow: rgb(5 66 170 / 20%) 0 2px 8px;
    padding: .625rem;
    border-radius: .3125rem;
    transition: 0.3s ease-in-out 0s;
    -moz-transition: 0.3s ease-in-out 0s;
    -webkit-transition: 0.3s ease-in-out 0s;
    border: 1px solid rgba(5, 66, 170, .03);
}
.item-sl img{
	border-radius: .3125rem;
    height: 210px;
    object-fit: cover;
    margin-bottom: 15px;
	width:100%;
}
.item-sl:hover h3{
	color:#f54e23;
}
.item-sl label{
	color: #3a3a3a;
    font-weight: 500;
    display: flex;
    align-items: center;
    margin-bottom: 8px;
    line-height: 1.2;
}
.item-sl label i{
	padding-right:5px;
}
.item-sl h4{
	 overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    transition: .3s all ease;
    font-size: 16px;
    margin-bottom: 5px;
}
.item-sl span{
	color: #f54e23;
    font-weight: 700;
	display: flex;
    align-items: center;
    gap: 8px;
}
.item-sl span i{
	font-size:20px;
}
.news-slider .slick-dots{
	display: flex;
    justify-content: center;
    list-style: none;
	gap: 6px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -20px;
	margin:0;
}
.news-slider .slick-dots li{
	line-height:1;
	margin:0 !important
}
.news-slider .slick-dots li button{
	font-size: 0;
    width: 8px;
    height: 8px;
    background: #fff;
    border: 1px solid #f54e24;
    border-radius: 8px;
    padding: 0;
    margin: 0;
    cursor: pointer;
}
.news-slider .slick-dots li.slick-active button{
	background:#f54e24;
	border: 1px solid #f54e24;
}
body .breadcrumbs a{
	font-weight: 400;
    color: #000;
    text-transform: none;
    font-size: 16px;
}
body .page-title, body .product-main{
	background: #f2f9ff;
}
.product-footer{
	padding-top:40px;
}
body .product-footer .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content{
	box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    border-radius: 10px;
    padding: 30px 25px;
}
.title-sg{
	box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    border-radius: 10px;
    padding: 30px 25px;
}
.product-footer .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content h2,
.product-footer .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content h3,
.product-footer .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content h4{
	color:#1e7bc9;
}
.entry-content h2,
.entry-content h3,
.entry-content h4{
	color:#1e7bc9;
}
.woocommerce-product-gallery img{
	width: 100%;
    height: 450px !important;
    object-fit: cover;
	border:1px solid #cdcdcd;
}
.single-product .product-thumbnails a{
	border: 1px solid #cdcdcd;
}
body .breadcrumbs{
	text-transform:none;
}
.single-product .product-thumbnails .is-nav-selected a, .product-thumbnails a:hover{
	 border-color: rgb(245 78 37);
}
.single-product .product-thumbnails img{
	height:100px;
	object-fit:cover;
}
.btn-blue-gradient{
	background-image: linear-gradient(to right, #1e7bc9, #4481eb, #04befe, #0096ff);
    cursor: pointer;
    background-size: 300% 100%;
	color:#fff;
}
.d-block {
    display: block !important;
}
.btn-transparent{
	border: 1px solid #1e7bc9;
    transition: ease-out 0.3s;
	color:#1e7bc9;
}
.btn-group-lg>.btn, .btn-lg {
    padding: 10px;
    border-radius: .5rem;
}
.btn-blue-gradient:hover{
	background-position: 100% 0;
    moz-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    color: #fff;
}
.btn-transparent:hover{
	box-shadow: inset 500px 0 0 0 #007ff8;
    color: #fff;
}
.product-short-description{
	background: rgb(8 89 221 / 9%);
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 20px;
}
.product-short-description p{
	margin-bottom:10px;
}
.product-short-description ul{
    list-style: none;
    margin: 0;
}
.product-short-description ul li{
    padding-left: 20px;
    position: relative;
    margin-left: 0 !important;
    margin-bottom: 5px;
    font-size: 16px;
}
.product-short-description ul li:last-child{
	margin-bottom:0;
}
.product-short-description ul li:before{
    content: '\e017';
    font-family: fl-icons;
    position: absolute;
    left: 0;
    top: 3px;
	font-size:12px;
	color:#1e7bc9;
}
.custom-price-prefix{
	font-size: 18px;
    font-weight: 500;
}
.product-rl .custom-price-prefix{
	font-size:16px;
}
.box-icon-contact-single-product .icon-box-img .icon {
    background: rgba(8, 89, 221, .13);
    border-radius: 8px;
    padding: 12px;
}
.pd-0 .col{
	padding-bottom:0px;
}
.product-footer .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content,
.product-footer .tab-panels{
	padding:0;
	border:0px;
}
.product-footer ul.tabs.wc-tabs.product-tabs.small-nav-collapse.nav.nav-uppercase.nav-line.nav-left{
	display:none;
}
.ez-toc-pull-right{
	display:none;
}
div#ezw_tco-4{
    padding: 1.5rem 1rem 1.5rem 1rem;
    border-radius: 8px;
    border: 1px solid #1f7bc9;
}
.sidebar-toc{
	position: sticky;
    width: 100%;
    top: 68px;
}
.admin-bar .sidebar-toc{
	top:100px;
}
.product-rl .slick-list.draggable{
	margin:0 -15px;
}
.product-rl .slick-list.draggable .slick-slide{
	padding:0 15px;
}
.slick-prev-ct{
	width: 40px;
    height: 40px;
    display: inline-block;
    position: absolute;
    left: -20px;
    top: 45%;
    background: #f54e23;
    z-index: 9;
    border-radius: 50%;
    text-align: center;
    line-height: 43px;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
}
.slick-right-ct{
	width: 40px;
    height: 40px;
    display: inline-block;
    position: absolute;
    right: -20px;
    top: 45%;
    background: #f54e23;
    z-index: 9;
    border-radius: 50%;
    text-align: center;
    line-height: 43px;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
}
.product-related-ct{
	padding:50px 0 20px;
	background-image: linear-gradient(90deg, #f5f5f5 30%, #FFFFFF 100%);
}
.dataTables_info,.dataTables_scrollFoot{
	display:none !important;
}
.dataTables_wrapper{
	box-shadow: 0 1px 2px rgba(0, 81, 203, .1), 0 4px 12px rgba(0, 81, 203, .15);
	border-radius: 10px;
    overflow: hidden;
	margin-bottom:2rem;
}
.tablepress-table-name{
	color:#1e7bc9;
}
.dataTables_wrapper table tr th{
	background-color: #c1e3ff;
    color: #000;
    font-weight: 700;
    vertical-align: middle;
    word-break: normal;
    border: 1px solid rgba(0, 81, 203, .07);
    padding: 1rem;
    vertical-align: top;
    white-space: nowrap;
}
.dataTables_wrapper table tr td{
	border: 1px solid rgba(0, 81, 203, .07);
    padding: 1rem;
    vertical-align: top;
    white-space: nowrap;
}
td:first-child, th:first-child{
	padding-left:1rem;
}
.archive{
	
}
.archive .product-small.box{
	box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    border-radius: 10px;
	overflow: hidden;
}
.archive .product-small.box:hover .box-content .product-title{
	color:#f54e24;
	transition:.3s all ease;
}
.archive .item-product .box-img{
	overflow: hidden;
}
.archive .product-small.box .box-image img{
	 height: 170px;
    object-fit: cover;
    display: block;
	-webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
	width:100%;
}
.term-description ul,
.term-description ol{
	margin-left:20px;
}
.badge-container.absolute.left.top{
	display:none;
}
.archive .product-small.box .box-text.box-text-products{
	padding: 20px;
}
.archive .product-small.box .box-text.box-text-products .woocommerce-loop-product__link{
	font-size:16px;
	overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
	transition:.3s all ease;
	line-height:22px;
	min-height: 44px;
	font-weight:700;
}
.archive .product-small.box .box-text.box-text-products  .price{
	display:none;
}
.archive .product-small.box .box-text.box-text-products ins bdi{
	 color: #f54e23;
    font-size: 18px;
}
.archive .product-small.box .custom-price-prefix{
	font-size:13px;
}
.archive .product-small.box .box-text.box-text-products p{
	margin-bottom: 0;
    color: #f54e24;
}
.related-products-ct .slick-track{
	margin-left:initial;
}
.single-product ins bdi{
	color: #f54e23;
}
.single-product del{
	font-size:18px;
}
/* modal */
.custom-model-main {
	text-align: center;
	overflow: hidden;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0; /* z-index: 1050; */
	-webkit-overflow-scrolling: touch;
	outline: 0;
	opacity: 0;
	-webkit-transition: opacity 0.15s linear, z-index 0.15;
	-o-transition: opacity 0.15s linear, z-index 0.15;
	transition: opacity 0.15s linear, z-index 0.15;
	z-index: -1;
	overflow-x: hidden;
	overflow-y: auto;
}

.model-open {
	z-index: 99999;
	opacity: 1;
	overflow: hidden;
}
.custom-model-inner {
	-webkit-transform: translate(0, -25%);
	-ms-transform: translate(0, -25%);
	transform: translate(0, -25%);
	-webkit-transition: -webkit-transform 0.3s ease-out;
	-o-transition: -o-transform 0.3s ease-out;
	transition: -webkit-transform 0.3s ease-out;
	-o-transition: transform 0.3s ease-out;
	transition: transform 0.3s ease-out;
	transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
	display: inline-block;
	vertical-align: middle;
	width: 600px;
	margin: 50px auto 0;
	max-width: 97%;
}
.custom-model-wrap {
	display: block;
	width: 100%;
	position: relative;
	background-color: #fff;
	border: 1px solid #999;
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 6px;
	-webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
	box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
	background-clip: padding-box;
	outline: 0;
	text-align: left;
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	max-height: calc(100vh - 70px);
	overflow-y: auto;
}
.model-open .custom-model-inner {
	-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
	position: relative;
	z-index: 999;
}
.model-open .bg-overlay {
	background: rgba(0, 0, 0, 0.6);
	z-index: 99;
}
.bg-overlay {
	background: rgba(0, 0, 0, 0);
	height: 100vh;
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
	-webkit-transition: background 0.15s linear;
	-o-transition: background 0.15s linear;
	transition: background 0.15s linear;
}
.close-btn {
	position: absolute;
	right: -13px;
	top: -13px;
	cursor: pointer;
	z-index: 99;
	font-size: 30px;
	color: #000;
	background: #000833;
	color: #fff;
	width: 30px;
	height: 30px;
	line-height: 25px;
	border-radius: 30px;
}
.title-left {
	width: 40%;
	float: left;
	font-size: 15px;
}

.form-yeucau {
	width: 100%;
	clear: both;
	display: flex;
	align-items: center;
	margin-bottom: 12px;
}

.data-right {
	width: 60%;
	float: left;
}

.single-product .data-right select, .single-product .data-right input {
	box-shadow: 0 0;
	border-color: #ccc;
	border-radius: 4px;
	margin-bottom: 0;
	height: 35px;
	font-size: 14px;
}
.single-product .data-right textarea{
	min-height:80px;
	resize:none;
	border-radius: 4px;
	border-color: #ccc;
}
.ct-loai-dulieu {
	width: 100%;
	display: block;
	font-weight: 700;
	color: #0693e3;
}

.data-text {
	text-align: right;
	color: #0693e3;
	font-weight: 700;
	text-transform: uppercase;
}
.form-sm{
	text-align:center;
}
.form-sm button{
	margin: 0 !important;
	color: #fff;
	background: #f54e24 !important;
	border-radius: 8px;
	width:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
}
#quote-form2 .form-sm button span.loading,
#quote-form1 .form-sm button span.loading{
	background-image: url(/wp-content/uploads/2024/08/load.gif);
    width: 20px;
    height: 20px;
    display: inline-block;
    background-size: cover;
	background-repeat:no-repeat;
}
/* end modal */
.ss-baogia{
	background-image: linear-gradient(90deg, #f5f5f5 30%, #FFFFFF 100%);
    padding: 50px 0 20px !important;
}
.form-baogia{
	box-shadow: rgb(5 66 170 / 12%) 0 2px 8px;
    padding: 25px 20px;
    border-radius: .3125rem;
    transition: 0.3s ease-in-out 0s;
    -moz-transition: 0.3s ease-in-out 0s;
    -webkit-transition: 0.3s ease-in-out 0s;
    border: 1px solid rgba(5, 66, 170, .03);
    background: #fff;
}
.form-baogia form .form-yeucau .data{
	width:100%
}
.form-baogia form .form-yeucau .data input,
.form-baogia form .form-yeucau .data select{
	border-radius: 7px;
    height: 38px;
    font-weight: 400;
    margin: 0;
}
.form-baogia form .form-yeucau .data textarea{
	width:100%;
	border-radius:8px;
	min-height:80px;
	resize:none;
}
.form-baogia form{
	margin-bottom:0px;
}
.img-bd img{
	border-radius:.3125rem;
}
.breadcrumb-sg{
	background-image: linear-gradient(90deg, #f5f5f5 30%, #FFFFFF 100%);
    padding: 20px 0;
}
.breadcrumb-sg ul{
	margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 20px;
}
.breadcrumb-sg ul li{
	margin:0;
	position:relative;
}
.breadcrumb-sg ul li:not(:last-child):before{
	content: "\f105";
    font-family: fl-icons;
    position: absolute;
    right: -12px;
    top: 1px;
}
.single-content{
	padding:50px 0;
}
.single-content h2.tt{
	font-size:32px;
}
.single-content ul.date{
	margin: 0;
    list-style: none;
    display: flex;
    gap: 20px;
}
.single-content ul.date li{
	margin: 0;
    text-transform: uppercase;
    font-size: 13px;
    color: #777;
    display: flex;
    align-items: center;
    gap: 3px;
    line-height: 1;
}
.content-p .entry-content{
	padding: 25px 0px 0;
}
.single-content .col{
	padding-bottom:0;
}
.related-ct .slick-list.draggable {
    margin: 0 -15px;
    padding: 20px 0;
}
.related-ct .slick-list.draggable .slick-slide {
    padding: 0 15px;
}
.related-ct .slick-dots{
	display: flex;
    justify-content: center;
    list-style: none;
	gap: 6px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -20px;
	margin:0;
}
.related-ct .slick-dots li{
	line-height:1;
	margin:0 !important
}
.related-ct .slick-dots li button{
	font-size: 0;
    width: 8px;
    height: 8px;
    background: #fff;
    border: 1px solid #f54e24;
    border-radius: 8px;
    padding: 0;
    margin: 0;
    cursor: pointer;
}
.related-ct .slick-dots li.slick-active button{
	background:#f54e24;
	border: 1px solid #f54e24;
}
.related-ct{
	padding-bottom:30px;
}

.banner-catcustom{
	padding: 40px 50px;
    background-image: linear-gradient(to right, #67c2f0 0%, #1e7bc9 51%, #2fc1eb 100%);
    transition: 0.5s;
    background-size: 200% auto;
    text-align: center;
	border-radius:12px;
}
.banner-catcustom h2{
	    text-align: center;
    color: #fff;
    font-weight: 700;
    font-size: 26px;
}
.form-search{
	position:relative;
}
.banner-catcustom form{
	  max-width: 550px;
    margin: 0 auto;
    position: relative;
}
.banner-catcustom form button{
	    position: absolute;
    right: 10px;
    padding: 0;
    margin: 0;
}
.banner-catcustom form input{
	  border-radius: 20px;
    margin: 0;
}
.banner-catcustom form button i{
	color:#1e7bc9;
}
.archive-ct .col-inner{
	border-radius: 16px;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .15);
    overflow: hidden;
    position: relative;
    background-color: #fff;
    -webkit-transition: all .25s;
    -o-transition: all .25s;
    transition: all .25s;
}
.archive-ct .col-inner .box-text{
	padding:20px;
}
.archive-ct .col-inner .box-text .from_the_blog_excerpt {
	overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.archive-ct .col-inner:hover h5{
	color: #f54e25;
	transition:.3s all ease;
}
#categories-2{
	 -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 0 10px 0 rgb(0 0 0 / 15%);
    overflow: hidden;
    position: relative;
    background-color: #fff;
    -webkit-transition: all .25s;
    -o-transition: all .25s;
    transition: all .25s;
    border-radius: 10px;
    padding: 20px;
}
#categories-2.widget .current-cat>a{
	color:#f54e25;
}
.single-post .title-ct{
	margin-bottom:0px;
}
.w-100 .title-ct .hd-tt{
	width:100%;
}
.section.ss-banner-gt{
	padding:60px 0 30px !important;
}
.gt-left label{
	background: #f2f9ff;
    display: inline-block;
    padding: 3px 10px;
    border-radius: 5px;
    font-size: 14px;
    color: #222;
    font-weight: 400;
    margin-bottom: 15px;
}
.gt-left h2{
	font-size: 32px;
    margin-bottom: 32px;
}
.gt-left h2 span{
	display: block;
    color: #1e7bc9;
}
.box-icon-gt .icon-box-img .icon{
	width: 50px;
    height: 50px;
    background: #e1eafc;
    line-height: 47px;
    text-align: center;
    border-radius: 10px;
}
.box-icon-gt .icon-box-img .icon img{
	width: 26px;
    height: 29px;
}
.box-icon-gt .icon-box-text h3{
	font-size: 15px;
    line-height: 1;
    margin-bottom: 8px;
    padding-top: 6px;
}
.box-icon-gt .icon-box-text p{
	font-size: 14px;
    line-height: 1;
    margin: 0;
}
.icon-box.icon-none{
	padding: 20px 10px;
    box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    border-radius: 10px;
}
.di-flex .icon-box.icon-none{
	padding: 0;
    box-shadow: none;
    border-radius: 0px;
}
.icon-box.icon-none .icon-box-text h3{
	font-size: 25px;
    line-height: 1;
}
.gt-left ul{
    list-style: none;
	margin:0;
}
.gt-left ul li{
    padding-left: 25px;
    position: relative;
    margin-left: 0 !important;
    margin-bottom: 5px;
}
.gt-left ul li:before{
    content: '';
    width: 16px;
    height: 16px;
    background-image: url("/wp-content/uploads/2024/08/checked.png");
    background-repeat: no-repeat;
    background-size: cover;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 6px;
}
.section.ss-lydo{
	background: #f2f9ff;
	padding: 50px 0 20px !important;
}
.title-h2 h2{
	font-size: 32px;
    color: #1e7bc9;
}
.text-why p.num{
	font-size: 3.25rem;
    font-weight: 700;
    color: #dee5f0;
    display: block;
    overflow: hidden;
    line-height: 2.4375rem;
    height: 1.75rem;
    margin-bottom: 15px;
}
.section.ss-banner-gt .bg.section-bg.fill.bg-fill.bg-loaded{
	width: 600px;
    height: 368px;
    background-position: top right;
    left: inherit;
}
.ss-lydo.section .bg.section-bg.fill.bg-fill.bg-loaded{
	width: 600px;
    height: 368px;
	margin:0 auto !important;
	top:30%;
}
ul.sub-menu.nav-dropdown.nav-dropdown-default{
	background: #fff;
    border: 0px;
    box-shadow: 0 0 12.22px .78px rgba(0, 0, 0, .11);
    border-top: 2px solid #179eff;
    border-radius: 0 0 8px 8px;
    top: 115%;
}
.nav-dropdown-has-arrow.nav-dropdown-has-border li.has-dropdown:before,
.nav-dropdown-has-arrow.nav-dropdown-has-border li.has-dropdown:after{
	display:none !important;
}
body .nav-dropdown-default .nav-column li>a,body .nav-dropdown.nav-dropdown-default>li>a{
	border-bottom: 0px solid #ececec;
    margin: 0 0px;
    color: #333;
    padding: 8px 10px;
    font-size: 15px;
}
body .nav-dropdown-default .nav-column li>a:hover,body .nav-dropdown.nav-dropdown-default>li>a:hover{
	color:#f54e23;
}
.woocommerce-ordering, .woocommerce-ordering select{
	border-radius: 20px;
}
.shop-page-title .page-title-inner{
	padding-bottom:20px;
}
.ss-lienhe.section{
	padding-top:50px !important;
}
.ss-lienhe.section .text-footer p:first-child i,
.ss-lienhe.section .text-footer p:nth-child(2) i{
	width:24px;
}
.ss-lienhe.section .text-footer p i{
	color:#1e7bc9;
}
.term-description{
	box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    border-radius: 10px;
    padding: 30px 25px;
	margin:20px 0;
}
.term-description h3,
.term-description h4,
.term-description h2{
	color: #1e7bc9;
}
.term-description img{
	width: 80%;
    height: 100%;
    object-fit: cover;
    margin-bottom: 0 !important;
    display: block;
    margin: 0 auto;
}
.gt-left ul{
	margin-bottom:30px;
}
.ss-tam .icon-box h3{
	color:#1e7bc9;
}
.ss-tam .icon-box p{
	font-size:16px;
	text-align:left
		;
}
.ss-tam .icon-box.icon-none{
	padding:40px 30px;
	background:#f8f9fa;
}
.text-cs .p1{
	color:#1e7bc9;
	font-weight:700;
	font-size:22px;
}
.text-cs p{
	margin-bottom:8px;
}
.section.ss-chinhsach{
	padding:50px 0 20px !important;
}
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce{
	background: #faf9f9;
    padding-top: 50px;
    padding-bottom: 30px;
}
.woocommerce-cart .woocommerce .woocommerce{
	padding:0 !important;
}
.woocommerce-cart .woocommerce .woocommerce-cart-form{
	box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    padding: 30px 30px 0;
    background: #fff;
    border-radius: 10px;
}
.woocommerce-checkout div#customer_details{
	box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    padding: 30px 30px 0;
    background: #fff;
    border-radius: 10px;
}
.woocommerce-cart .woocommerce .cart-collaterals.large-5.col.pb-0{
	border:0px !important;
}
.cart-sidebar.col-inner{
	box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    padding: 30px 30px;
    background: #fff;
    border-radius: 10px;
}
.woocommerce-billing-fields{
	padding-top:0;
	border:0px;
}
.woocommerce-checkout .large-5.col .col-inner.has-border{
	box-shadow: rgba(5, 66, 170, .15) 0px 2px 8px;
    padding: 20px 30px;
    background: #fff;
    border-radius: 10px;
}
.select-resize-ghost, .select2-container .select2-choice, .select2-container .select2-selection, input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea{
	border-radius:5px;
}
@media (max-width:1024px){
	.product-categories-grid .single-category a h3{
		font-size:14px;
	}
	.product-categories-grid .single-category{
		padding: 15px 10px;
	}
	.product-categories-grid{
		gap: 10px 10px;
	}
	.title-ct h2{
		font-size:20px;
	}
	.products-grid-ct{
		grid-template-columns: repeat(4, 1fr);
	}
	.product-rl .slick-dots{
		display: flex;
		justify-content: center;
		list-style: none;
		gap: 6px;
		position: absolute;
		left: 0;
		right: 0;
		bottom: -20px;
		margin:0;
	}
	.product-rl .slick-dots li{
		line-height:1;
		margin:0 !important
	}
	.product-rl .slick-dots li button{
		font-size: 0;
		width: 8px;
		height: 8px;
		background: #fff;
		border: 1px solid #f54e24;
		border-radius: 8px;
		padding: 0;
		margin: 0;
		cursor: pointer;
	}
	.product-rl .slick-dots li.slick-active button{
		background:#f54e24;
		border: 1px solid #f54e24;
	}
}
@media only screen and (max-width: 992px) {
    .contact-box-bottom-nav ul li svg {
        margin:0 auto;
        display: block
    }

    .contact-box-bottom-nav {
        background: #fff;
        width: 100%;
        border: 0;
        position: fixed;
        bottom: 0;
        left: 0;
        z-index: 999;
        padding: 5px;
        margin: 0;
        box-shadow: 0 4px 10px 0 rgba(0,0,0,.1);
        border-radius: 0
    }

    .contact-box-bottom-nav li {
        float: left;
        width: 25%;
        text-align: center
    }

    .contact-box-bottom-nav ul>li a {
        font-weight: 400;
        font-size: .75rem;
		display:block;
    }
}
@media (max-width:849px){
	.header-main{
		height:70px !important;
	}
	li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-124.has-icon-left{
		display:none;
	}
	.product-categories-grid{
		grid-template-columns: repeat(4, 1fr);
	}
	.title-ct .list-pr ul li{
		display:none
	}
	.title-ct .list-pr ul li:last-child{
		display:block;
	}
	.title-ct .hd-tt{
		width:65%
	}
	.title-ct .list-pr{
		width:35%;
	}
	.products-grid-ct{
		gap:15px;
	}
	.item-product .box-content .price bdi{
		font-size:16px;
	}
	.title-ct.tt-text{
		display:block;
	}
	.title-ct.tt-text .hd-tt{
		width:100%
	}
	.title-ct.tt-text .list-pr{
		width:100%;
	}
	.title-ct.tt-text h2{
		margin-bottom:15px;
	}
	.footer-wrapper .col:first-child{
		padding-bottom:20px;
	}
	.text-footer p:first-child i,
	.text-footer p:nth-child(2) i{
		width:auto;
	}
	.title-ct .list-pr ul li:last-child a{
		font-size:14px;
		padding: 5px 16px;
	}
	.list-dathang .item-dh{
		margin-bottom:15px;
	}
	.button-call{
		display:block;
	}
	.button-call .button-ct{
		width:100%;
		text-align:center;
		margin-bottom:10px;
	}
	.gt-left h2{
		font-size: 26px;
    	margin-bottom: 15px;
	}
	.title-h2 h2{
		font-size: 26px;
    	margin-bottom: 15px;
	}
	.text-why h3{
		font-size:18px;
	}
	.text-why p{
		font-size:14px;
		margin-bottom:0;
	}
	.gt-left p{
		font-size:14px;
	}
	.gt-left h3{
		font-size:24px !important;
		line-height:30px !important;
	}
	.gt-left ul li{
		font-size:14px;
	}
	.single-content{
		padding: 30px 0;
	}
	.title-sg {
        padding: 0;
        box-shadow: none;
    }
	.single-content h2.tt{
		font-size:26px;
	}
	.content-p .entry-content p{
		font-size:14px;
	}
	.related-ct .slick-list.draggable .slick-slide{
		padding: 0 10px;
	}
	div#ezw_tco-2{
		display:none;
	}
	body .product-footer .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content{
		padding:0;
		border-radius:0px;
		box-shadow:none;
	}
	.single-product .flex-col.medium-text-center:last-child{
		display:none;
	}
	.pd-0 .col{
		padding-bottom:15px;
	}
	.product-main{
		padding-bottom:0 !important;
	}
	.text-footer .loc p i {
		width: auto !important;
	}
}
@media screen and (min-width:800px){
	.custom-model-main:before {
	  content: "";
	  display: inline-block;
	  height: auto;
	  vertical-align: middle;
	  margin-right: -0px;
	  height: 100%;
	}
}
@media screen and (max-width:799px){
  	.custom-model-inner{
	  margin-top: 45px;
	}
}
@media screen and (max-width:768px){
	.term-description img{
		width:100%;
		height:100%;
	}
     .products-grid-ct {
        grid-template-columns: repeat(3, 1fr);
    }
	.product-categories-grid .single-category{
		padding:0;
		border:0px;
	}
	.section.ss-cat{
		padding:30px 0 0 !important;
	}
	.news-slider .slick-list.draggable .slick-slide{
		padding:0 10px;
	}
	.ss-banner .image-cover img{
		height:200px;
	}
	.ss-banner .flickity-viewport{
		height:200px !important;
	}
	.close-btn{
		right:0px;
	}
	.term-description{
		box-shadow: none;
		border-radius: 0px;
		padding: 0;
	}
}
@media screen and (max-width:600px){
	.products-grid-ct {
        grid-template-columns: repeat(2, 1fr);
    }
	.title-ct h2{
		font-size:16px;
		padding-left:30px;
	}
	.title-ct h2:before{
		top: -2px;
		width: 25px;
		height: 25px;
	}
	.title-ct .list-pr p{
		font-size:14px;
	}
	.product-categories-grid .single-category a h3{
		overflow: hidden;
		display: -webkit-box;
		-webkit-line-clamp: 1;
		-webkit-box-orient: vertical;
	}
	.item-sl img{
		height:150px;
	}
	.item-sl h4{
		font-size:14px;
	}
	.item-sl span{
		font-size:14px;
	}
	.item-sl span i{
		font-size:14px;
	}
	.item-sl{
		padding:7px;
	}
	.product-categories-grid .single-category a h3{
		font-size:12px;
	}
	.archive .product-small.box .custom-price-prefix{
		font-size:14px;
	}
	.archive .product-small.box .box-text.box-text-products bdi{
		font-size:15px;
	}
	.archive .product-small.box .box-text.box-text-products{
		padding:10px;
	}
	.archive .product-small.box .box-image img{
		height:150px;
	}
	.archive .product-small.box .box-text.box-text-products .woocommerce-loop-product__link{
		line-height: 20px;
    	min-height: 40px;
		font-size: 14px;
	}
	.banner-catcustom{
		padding: 25px 20px;
	}
	.banner-catcustom h2{
		font-size:24px;
	}
	.woocommerce-product-gallery img{
		height: 250px !important;
	}
	.product-rl .slick-list.draggable .slick-slide{
		padding:0 10px;
	}
	.single-product .product-thumbnails img{
		height:70px;
	}
}
@media (max-width:549px){
	.ss-tam .icon-box.icon-none{
		min-height:auto;
	}
}
@media screen and (max-width:430px){
	.item-product .box-content .price{
		font-size: 14px;
		margin-bottom:5px;
	}
	.item-product .box-content .product-title{
		font-size:15px;
		line-height: 20px;
    	min-height: 40px;
	}
	.item-product .box-content p{
		font-size:13px;
	}
	.item-product .box-img img{
		height:150px;
	}
	.title-ct{
		margin-bottom:15px;
	}
	.ss-baogia{
		padding:30px 0 0px !important;
	}
	.text-footer p:first-child i,
	.text-footer p:nth-child(2) i{
		width:35px;
	}
	.section.ss-news{
		padding: 30px 0 20px !important;
	}
	.products-grid-ct{
		gap:10px;
	}
	.cat-content img{
		height:300px;
	}
}
@media (max-width:375px){
	.item-product .box-content .price bdi{
		font-size:14px;
	}
	.item-product .box-content{
		padding:10px;
	}
	.title-ct .list-pr ul li:last-child a{
		font-size:12px;
	}
}

/* Article detail layout: breadcrumb, metadata, table of contents, body, and product card. */
.ttn-article-single .ttn-article-top {
	padding: 28px 0 0;
	background: linear-gradient(180deg, #f2f5fb 0, #fff 100px);
}
.ttn-article-single .ttn-article-top > .container,
.ttn-article-single .ttn-article-layout > .container {
	max-width: 1280px;
}
.ttn-article-single .ttn-article-top .ttn-article-title {
	margin: 0 0 12px;
	color: #111827;
	font-size: clamp(28px, 3vw, 36px);
	font-weight: 750;
	line-height: 1.22;
	letter-spacing: -.025em;
}
.ttn-article-top-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 0 0 18px;
	border-bottom: 1px solid #d9e0ea;
}
.ttn-article-single .ttn-article-top .ttn-article-meta {
	gap: 8px 22px;
}
.ttn-article-single .ttn-article-top .ttn-article-meta li {
	color: #29496f;
	font-size: 14px;
}
.ttn-article-single .ttn-article-top .ttn-article-meta li i {
	color: #1769e0;
}
.ttn-article-single .ttn-article-top .ttn-article-meta a {
	color: inherit;
	text-decoration: none;
}
.ttn-article-single .ttn-article-top .ttn-article-meta a:hover {
	color: #0758c7;
	text-decoration: underline;
}
.ttn-article-share {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
}
.ttn-share-button {
	display: inline-flex;
	width: 38px;
	height: 38px;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid #dbe2ec;
	border-radius: 50%;
	background: #fff;
	color: #1266df;
	font-size: 16px;
	line-height: 1;
	text-decoration: none !important;
	cursor: pointer;
	transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}
.ttn-share-button:hover,
.ttn-share-button.is-copied {
	border-color: #9bbcf0;
	background: #eef4ff;
	color: #0758c7;
	transform: translateY(-1px);
}
.ttn-share-zalo span {
	font-size: 10px;
	font-weight: 800;
}
.ttn-copy-status {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
}
.ttn-article-single .single-content.ttn-article-layout {
	padding: 34px 0 48px;
}
.ttn-article-layout > .container > .row {
	align-items: flex-start;
}
.ttn-article-toc {
	position: sticky;
	top: 22px;
}
.ttn-article-single .ttn-article-toc .ez-toc-widget-container,
.ttn-article-single .ttn-article-toc #ez-toc-container {
	padding: 0;
	border: 0;
	border-radius: 10px;
	background: #eaf0fc;
	box-shadow: none;
}
.ttn-article-toc .ez-toc-title-container {
	display: block;
	padding: 14px 17px 12px;
	border-bottom: 1px solid #d0d8e7;
}
.ttn-article-single .ttn-article-toc .ez-toc-title {
	color: #526681 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
}
.ttn-article-single .ttn-article-toc .ez-toc-list {
	margin: 0;
	padding: 10px 17px 14px;
}
.ttn-article-single .ttn-article-toc .ez-toc-list li {
	margin: 0;
	padding: 6px 0;
	line-height: 1.5;
}
.ttn-article-single .ttn-article-toc .ez-toc-list a {
	color: #14233c;
	font-size: 14px;
	text-decoration: none;
}
.ttn-article-single .ttn-article-toc .ez-toc-list a:hover {
	color: #0758c7;
}
.ttn-article-single .ttn-article-card {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}
.ttn-article-single .ttn-article-excerpt {
	margin: 0 0 18px;
	color: #14233c;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.65;
}
.ttn-article-single .ttn-article-excerpt p:last-child {
	margin: 0;
}
.ttn-article-single .ttn-article-main-column .ttn-article-content > p:first-of-type {
	color: #14233c;
	font-size: 16px;
	line-height: 1.65;
}
.ttn-article-single .ttn-article-featured {
	margin: 18px 0 24px;
}
.ttn-article-single .ttn-article-featured img,
.ttn-article-single .ttn-article-content img {
	border-radius: 10px;
}
.ttn-related-product {
	overflow: hidden;
	border: 1px solid #e0e4eb;
	border-radius: 13px;
	background: #fff;
}
.ttn-related-product > h2 {
	margin: 0;
	padding: 0 0 12px;
	color: #101c31;
	font-size: 16px;
	font-weight: 750;
	line-height: 1.4;
}
.ttn-related-product-image {
	display: block;
	overflow: hidden;
	margin: 0 10px;
	border-radius: 9px;
	background: #f7f8fa;
}
.ttn-related-product-image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1.25 / 1;
	object-fit: cover;
}
.ttn-related-product > h3 {
	margin: 12px 10px 5px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
}
.ttn-related-product > h3 a {
	color: #111827;
	text-decoration: none;
}
.ttn-related-product > h3 a:hover {
	color: #0758c7;
}
.ttn-related-product-rating {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0 10px 8px;
	color: #475569;
	font-size: 12px;
}
.ttn-related-product-rating .star-rating {
	margin: 0;
	color: #f28a18;
	font-size: 13px;
}
.ttn-related-product-price {
	margin: 0 10px 10px;
	padding: 8px 10px;
	border-radius: 8px;
	background: #eaf0fc;
	color: #334155;
	font-size: 13px;
}
.ttn-related-product-price > span {
	color: #53647d;
}
.ttn-related-product-price .price {
	color: #0758c7;
	font-size: 14px;
	font-weight: 700;
}
.ttn-related-product-contact {
	display: block;
	margin: 12px 10px 10px;
	padding: 9px 12px;
	border-radius: 7px;
	background: #1769e0;
	color: #fff !important;
	font-size: 13px;
	font-weight: 700;
	text-align: center;
	text-decoration: none !important;
}
.ttn-article-single .related-ct {
	padding-top: 12px;
	overflow-x: clip;
}
@media (max-width: 849px) {
	.ttn-article-single .ttn-article-top {
		padding-top: 18px;
	}
	.ttn-article-single .ttn-article-top .ttn-article-title {
		font-size: 28px;
	}
	.ttn-article-top-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 12px;
	}
	.ttn-article-share {
		align-self: flex-end;
	}
	.ttn-article-single .single-content.ttn-article-layout {
		padding: 24px 0 34px;
	}
	.ttn-article-layout > .container > .row {
		display: flex;
		flex-direction: column;
	}
	.ttn-article-toc {
		position: static;
	}
	.ttn-article-product-column {
		margin-top: 20px;
	}
	.ttn-related-product {
		max-width: 420px;
	}
}
@media (max-width: 480px) {
	.ttn-article-single .ttn-article-top .ttn-article-title {
		font-size: 25px;
	}
	.ttn-article-single .ttn-article-top .ttn-article-meta {
		gap: 7px 14px;
	}
	.ttn-related-product {
		max-width: none;
	}
}
/* Custom article outline */
.ttn-article-toc{padding:0;border-radius:10px;background:#eaf0fc}
.ttn-article-toc-title{margin:0;padding:14px 17px 12px;border-bottom:1px solid #d0d8e7;color:#526681;font-size:16px;font-weight:700;line-height:1.4}
.ttn-article-toc-list{counter-reset:ttn-toc;list-style:none!important;margin:0!important;padding:10px 17px 14px!important}
.ttn-article-toc-list li{position:relative;margin:0!important;padding:6px 0 6px 22px!important;line-height:1.5}
.ttn-article-toc-list li:not(.is-level-3){counter-increment:ttn-toc}
.ttn-article-toc-list li:not(.is-level-3)::before{content:counter(ttn-toc) ".";position:absolute;left:0;color:#1769e0;font-weight:700}
.ttn-article-toc-list li.is-level-3{padding-left:16px!important}
.ttn-article-toc-list li.is-level-3::before{content:"–";position:absolute;left:0;color:#718096}
.ttn-article-toc-list a{color:#14233c;font-size:14px;text-decoration:none}
.ttn-article-toc-list a:hover{color:#0758c7}

/* Standalone theme foundation. This replaces the layout primitives formerly supplied by Flatsome. */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:#252a32;font-family:'Be Vietnam Pro',Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}
img{max-width:100%;height:auto}
a{color:#1559c4;text-decoration:none}
a:hover{color:#f04b25}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{z-index:2000;top:8px;left:8px;width:auto;height:auto;padding:10px 15px;clip:auto;background:#fff;color:#111}
.container{width:min(1200px,calc(100% - 40px));margin-left:auto;margin-right:auto}
.section{position:relative;padding:30px 0;background-position:center;background-size:cover}
.section-bg{position:absolute;inset:0;pointer-events:none}
.section-content{position:relative;z-index:1;width:min(1200px,calc(100% - 40px));margin:0 auto}
.section.ss-banner .section-content{width:100%;max-width:none}
.row{display:flex;flex-flow:row wrap;margin-left:-15px;margin-right:-15px}
.row.align-center{align-items:center}
.row.align-middle{align-items:center}
.col{position:relative;width:100%;min-width:0;padding:0 15px 20px}
.col-inner{position:relative;width:100%}
.large-1{width:8.333333%}.large-2{width:16.666667%}.large-3{width:25%}.large-4{width:33.333333%}.large-5{width:41.666667%}.large-6{width:50%}.large-7{width:58.333333%}.large-8{width:66.666667%}.large-9{width:75%}.large-10{width:83.333333%}.large-11{width:91.666667%}.large-12{width:100%}
.ttn-site-wrapper{min-height:100vh;display:flex;flex-direction:column}
.ttn-header{position:relative;z-index:100;background:#fff;box-shadow:0 2px 10px rgba(20,35,60,.08)}
.ttn-header-main{background:#fff}
.ttn-header-inner{min-height:88px;display:flex;align-items:center;gap:28px}
.ttn-logo{display:flex;flex:0 0 auto;align-items:center;width:160px}
.ttn-logo img{display:block;width:100%;height:auto}
.ttn-header-search{display:flex;flex:1;max-width:430px;height:42px;border:1px solid #d8e0eb;border-radius:6px;overflow:hidden}
.ttn-header-search input{width:100%;min-width:0;padding:0 13px;border:0;outline:0;background:#fff}
.ttn-header-search button{width:46px;border:0;background:#f04b25;color:#fff;font-size:26px;line-height:1}
.ttn-header-phones{display:flex;flex:1;justify-content:flex-end;gap:18px}
.ttn-header-phones a{display:flex;align-items:center;gap:7px;color:#26374e;font-size:15px;font-weight:700;white-space:nowrap}
.ttn-header-phones img{width:22px;height:22px;object-fit:contain}
.ttn-header-actions{display:flex;align-items:center;gap:12px}
.ttn-cart-link,.ttn-menu-toggle{position:relative;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:#f04b25;color:#fff}
.ttn-cart-link svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ttn-cart-count{position:absolute;top:-4px;right:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:12px;background:#1268ce;color:#fff;font-size:11px;line-height:18px;text-align:center}
.ttn-menu-toggle{display:none;padding:11px}
.ttn-menu-toggle span{display:block;width:20px;height:2px;margin:2px 0;background:#fff}
.ttn-desktop-nav{background:#fff;border-top:1px solid #eef0f3;border-bottom:1px solid #e6eaf0}
.ttn-desktop-nav>.container{position:relative}
.ttn-desktop-nav .menu,.ttn-mobile-menu .menu{display:flex;align-items:stretch;gap:0;margin:0;padding:0;list-style:none}
.ttn-desktop-nav .menu>li{position:relative;display:flex;align-items:center;margin:0}
.ttn-desktop-nav .menu>li>a{display:flex;align-items:center;min-height:48px;padding:0 16px;color:#26374e;font-size:14px;font-weight:700;text-transform:none;white-space:nowrap}
.ttn-desktop-nav .menu>li:first-child>a{background:#f04b25;color:#fff}
.ttn-desktop-nav .menu>li:hover>a,.ttn-desktop-nav .menu>li.current-menu-item>a{color:#f04b25}
.ttn-desktop-nav .menu>li:first-child:hover>a{color:#fff;background:#d83f1d}
.ttn-mega-menu{display:none;position:absolute;z-index:120;top:100%;left:0;width:min(1180px,calc(100vw - 40px));padding:18px 24px;background:#fff;box-shadow:0 10px 30px rgba(20,35,60,.18)}
.ttn-desktop-nav .menu>li:hover>.ttn-mega-menu,.ttn-desktop-nav .menu>li:focus-within>.ttn-mega-menu{display:block}
.ttn-mega-menu .section{padding:0!important}
.ttn-mega-menu .section-content{width:100%;max-width:none}
.ttn-mega-menu .row{margin:0 -10px}
.ttn-mega-menu .col{padding:0 10px}
.ttn-mega-menu .menu-listct{margin:0;padding:0;list-style:none}
.ttn-mega-menu .menu-listct a{display:block;padding:6px 0;color:#26374e;font-size:14px}
.ttn-mobile-menu,.ttn-mobile-backdrop{display:none}
.ttn-copyright{padding:14px 0;background:#f5f7fa;color:#627083;font-size:13px;text-align:center}
.ttn-footer .section{padding-top:30px;padding-bottom:30px}
.footer-wrapper{margin-top:auto}
.footer-wrapper .section-content{width:min(1200px,calc(100% - 40px))}
.footer-wrapper h2,.footer-wrapper h3,.footer-wrapper h4{color:#24364b}
.footer-logo{max-width:180px;height:auto}
.follow-icons{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.follow-icons a{padding:5px 10px;border:1px solid #d8e0eb;border-radius:20px;font-size:12px}
.ttn-slider{position:relative;width:100%;overflow:hidden}
.ttn-slider .flickity-viewport{position:relative;width:100%;overflow:hidden;aspect-ratio:1536/387}
.ttn-slider .flickity-slider{display:flex;width:100%;height:100%;transition:transform .45s ease}
.ttn-slider .flickity-slider>.img,.ttn-slider .flickity-slider>*>.img{display:block;flex:0 0 100%;width:100%;height:100%}
.ttn-slider .img-inner,.ttn-slider .image-cover{width:100%;height:100%;overflow:hidden}
.ttn-slider .image-cover img{display:block;width:100%;height:100%;object-fit:cover}
.ttn-slider .flickity-prev-next-button{position:absolute;top:50%;z-index:3;display:grid;place-items:center;width:38px;height:38px;padding:0;transform:translateY(-50%);border:0;border-radius:50%;background:rgba(255,255,255,.88);color:#1e5fab;font-size:30px;line-height:1}
.ttn-slider .flickity-prev-next-button.previous{left:14px}.ttn-slider .flickity-prev-next-button.next{right:14px}
.ttn-slider .flickity-page-dots{position:absolute;right:0;bottom:9px;left:0;z-index:4;display:flex;justify-content:center;gap:7px;margin:0;padding:0;list-style:none}
.ttn-slider .flickity-page-dots .dot{margin:0;padding:0;line-height:1}
.ttn-slider .flickity-page-dots button{width:9px;height:9px;padding:0;border:1px solid #fff;border-radius:50%;background:rgba(255,255,255,.55);font-size:0}
.ttn-slider .flickity-page-dots .is-selected button{background:#f04b25;border-color:#fff}
.ttn-page-content,.ttn-archive-content{padding-top:35px;padding-bottom:45px}
.ttn-page-content .entry-title,.archive-title{color:#1c2a3b;font-size:32px;line-height:1.25}
.ttn-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ttn-post-card{overflow:hidden;border:1px solid #e3e8ef;border-radius:10px;background:#fff}
.ttn-post-card-image img{display:block;width:100%;aspect-ratio:1.55;object-fit:cover}
.ttn-post-card-body{padding:16px}
.ttn-post-card-body time{color:#7b8795;font-size:13px}
.ttn-post-card-body h2{font-size:18px;line-height:1.35}
.ttn-post-card-body h2 a{color:#1d2a3b}
.ttn-post-card-body p{margin-bottom:0}
.woocommerce .site-main>.container,.woocommerce-page .site-main>.container{padding-top:28px;padding-bottom:42px}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:20px 0;padding:0;list-style:none}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}
.woocommerce ul.products li.product{float:none;width:auto;margin:0;padding:12px;border:1px solid #e4e9ef;border-radius:10px;background:#fff}
.woocommerce ul.products li.product img{width:100%;aspect-ratio:1.2;object-fit:cover}
.woocommerce ul.products li.product .button{display:inline-block;padding:8px 12px;border-radius:5px;background:#f04b25;color:#fff}
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px}
.woocommerce div.product .woocommerce-product-gallery,.woocommerce div.product .summary{float:none;width:100%;min-width:0;max-width:100%;margin:0}
.woocommerce div.product .product_title{font-size:30px;line-height:1.25}
.woocommerce div.product .single_add_to_cart_button{background:#f04b25;color:#fff}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1}
.woocommerce table.shop_table{border-collapse:collapse}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:12px;border:1px solid #dfe5ed}
.woocommerce-message,.woocommerce-info,.woocommerce-error{padding:14px 18px;border-top:3px solid #1e7bc9;background:#f1f7fe}
.ttn-page-content input,.ttn-page-content select,.ttn-page-content textarea,.woocommerce input,.woocommerce select,.woocommerce textarea{max-width:100%;padding:9px 11px;border:1px solid #d0d8e2;border-radius:5px;background:#fff}
.ttn-page-content button,.woocommerce button.button,.woocommerce a.button{border:0;border-radius:5px;background:#f04b25;color:#fff}

@media (min-width:850px){.medium-1{width:8.333333%}.medium-2{width:16.666667%}.medium-3{width:25%}.medium-4{width:33.333333%}.medium-5{width:41.666667%}.medium-6{width:50%}.medium-7{width:58.333333%}.medium-8{width:66.666667%}.medium-9{width:75%}.medium-10{width:83.333333%}.medium-11{width:91.666667%}.medium-12{width:100%}}
@media (max-width:849px){
	.container,.section-content,.footer-wrapper .section-content{width:calc(100% - 30px)}
	.row{margin-left:-10px;margin-right:-10px}
	.col{padding-right:10px;padding-left:10px}
	.ttn-header{position:sticky;top:0}
	.admin-bar .ttn-header{top:32px}
	.ttn-header-inner{min-height:70px;gap:10px}
	.ttn-logo{width:110px}
	.ttn-header-search,.ttn-header-phones,.ttn-desktop-nav{display:none}
	.ttn-header-actions{gap:9px;margin-left:auto}
	.ttn-cart-link,.ttn-menu-toggle{width:38px;height:38px}
	.ttn-menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center}
	.ttn-mobile-backdrop:not([hidden]){position:fixed;inset:0;z-index:200;background:rgba(9,22,40,.48)}
	.ttn-mobile-menu:not([hidden]){position:fixed;top:0;right:0;bottom:0;z-index:201;display:block;width:min(88vw,380px);overflow:auto;background:#fff;box-shadow:-8px 0 30px rgba(20,35,60,.2)}
	.ttn-mobile-menu-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px;background:#fff;border-bottom:1px solid #e5eaf0}
	.ttn-menu-close{width:34px;height:34px;border:0;border-radius:50%;background:#f04b25;color:#fff;font-size:24px;line-height:1}
	.ttn-mobile-menu .menu{display:block;padding:8px 16px}
	.ttn-mobile-menu .menu li{position:relative;margin:0;border-bottom:1px solid #edf0f4;list-style:none}
	.ttn-mobile-menu .menu li>a{display:block;padding:12px 24px 12px 4px;color:#26374e;font-weight:600}
	.ttn-mobile-menu .menu .sub-menu{display:none;padding:0 0 4px 14px}
	.ttn-mobile-menu .menu li.is-open>.sub-menu,.ttn-mobile-menu .menu li.is-open>.ttn-mega-menu{display:block}
	.ttn-mobile-menu .ttn-mega-menu{position:static;width:auto;padding:4px 0 10px;background:#f8fafc;box-shadow:none}
	.ttn-mobile-menu .ttn-mega-menu .section-content{width:100%}
	.ttn-mobile-menu .ttn-mega-menu .row{display:block;margin:0}
	.ttn-mobile-menu .ttn-mega-menu .col{width:100%;padding:0 10px}
	.ttn-mobile-menu-open{overflow:hidden}
	.ttn-slider .flickity-prev-next-button{width:30px;height:30px;font-size:24px}
	.ttn-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:600px){
	.large-1,.large-2,.large-3,.large-4,.large-5,.large-6,.large-7,.large-8,.large-9,.large-10,.large-11,.large-12{width:100%}
	.ttn-post-grid{grid-template-columns:1fr}
	.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
	.woocommerce div.product{grid-template-columns:minmax(0,1fr);gap:15px}
	.woocommerce div.product .woocommerce-tabs{grid-column:auto}
	.ttn-page-content .entry-title,.archive-title{font-size:26px}
	.ttn-footer .row{display:block}
}


.ttn-home-heading {
	width: min(1200px, calc(100% - 30px));
	margin: 18px auto 0;
	color: #17345b;
	font-size: clamp(21px, 2.25vw, 30px);
	font-weight: 800;
	line-height: 1.25;
	text-align: center;
}
@media (max-width: 600px) {
	.ttn-home-heading {
		width: calc(100% - 24px);
		margin-top: 14px;
		font-size: 20px;
	}
}

.ttn-article-content iframe[src*="youtube.com/embed"],
.ttn-article-content iframe[src*="youtu.be"] {
	display: block;
	width: min(100%, 560px);
	max-width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	margin-left: auto;
	margin-right: auto;
}

/* Keep breadcrumbs and Facebook sharing icons independent of Flatsome icon fonts. */
.breadcrumb-sg ul li:not(:last-child):before { content: "›"; font-family: Arial, sans-serif; font-size: 18px; line-height: 1; color: #52627b; }
.ttn-share-button .icon-facebook:before { content: "f"; font-family: Arial, sans-serif; font-style: normal; font-weight: 700; }


@media (max-width: 849px) { .breadcrumb-sg ul { flex-wrap: wrap; gap: 8px 20px; } .breadcrumb-sg ul li:not(:last-child) { white-space: nowrap; } .breadcrumb-sg ul li:last-child { flex-basis: 100%; overflow-wrap: anywhere; } }


/* Keep fixed-width product description media inside the mobile content column. */
.woocommerce div.product .woocommerce-tabs figure.wp-caption{width:auto!important;max-width:100%!important}
.woocommerce div.product .woocommerce-tabs figure.wp-caption img{display:block;width:100%;max-width:100%;height:auto!important}
.woocommerce div.product .woocommerce-tabs table{display:block;width:100%;max-width:100%;overflow-x:auto}

.woocommerce div.product .woocommerce-tabs .panel.entry-content p{overflow-wrap:anywhere}
/* Shared visual system for home, archives, WooCommerce, articles and information pages. */
:root {
	--ttn-ink: #14233d;
	--ttn-text: #334155;
	--ttn-muted: #64748b;
	--ttn-brand: #f04b25;
	--ttn-brand-dark: #d83f1d;
	--ttn-link: #1559c4;
	--ttn-border: #e2e8f0;
	--ttn-surface: #f5f8fc;
	--ttn-radius: 14px;
	--ttn-shadow: 0 10px 28px rgba(20, 35, 60, .08);
}

body {
	color: var(--ttn-text);
}

main.site-main {
	flex: 1 0 auto;
}

a,
button,
.ttn-post-card,
.woocommerce ul.products li.product {
	transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 3px solid rgba(21, 89, 196, .4);
	outline-offset: 2px;
}

.ttn-breadcrumb {
	margin: 0 0 22px;
	color: var(--ttn-muted);
	font-size: 14px;
}

.ttn-breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ttn-breadcrumb li {
	min-width: 0;
}

.ttn-breadcrumb li + li::before {
	content: "›";
	margin-right: 12px;
	color: #94a3b8;
}

.ttn-breadcrumb a {
	color: var(--ttn-link);
}

.ttn-breadcrumb [aria-current="page"] {
	color: #52627b;
}

.ttn-page-content,
.ttn-archive-content {
	padding-top: clamp(22px, 3.4vw, 42px);
	padding-bottom: clamp(34px, 5vw, 60px);
}

.ttn-page-content .ttn-page-header {
	margin: 0 0 20px;
	padding: 0 0 16px;
	border-bottom: 1px solid var(--ttn-border);
}

.ttn-page-content .ttn-page-header .entry-title {
	margin: 0;
	color: var(--ttn-ink);
	font-size: clamp(28px, 3vw, 38px);
	font-weight: 750;
	line-height: 1.22;
	letter-spacing: -.025em;
}

.ttn-page-entry-content {
	color: var(--ttn-text);
	font-size: 16px;
	line-height: 1.8;
}

.ttn-page-entry-content h2,
.ttn-page-entry-content h3,
.ttn-page-entry-content h4,
.woocommerce-tabs .entry-content h2,
.woocommerce-tabs .entry-content h3 {
	color: var(--ttn-ink);
	font-weight: 700;
	line-height: 1.35;
}

.ttn-page-entry-content h2 {
	margin: 1.55em 0 .6em;
	font-size: clamp(22px, 2.3vw, 29px);
}

.ttn-page-entry-content h3,
.woocommerce-tabs .entry-content h3 {
	margin: 1.3em 0 .55em;
	font-size: clamp(18px, 1.8vw, 22px);
}

.ttn-page-entry-content p {
	margin: 0 0 1em;
}

.ttn-page-entry-content img,
.ttn-page-entry-content video,
.ttn-page-entry-content iframe,
.ttn-article-content img,
.woocommerce-tabs .entry-content img {
	max-width: 100%;
}

.ttn-page-entry-content figure,
.ttn-page-entry-content .wp-caption {
	max-width: 100%;
}

.ttn-page-entry-content table,
.woocommerce-tabs .entry-content table {
	width: 100%;
	max-width: 100%;
	border-collapse: collapse;
}

.ttn-page-entry-content th,
.ttn-page-entry-content td,
.woocommerce-tabs .entry-content th,
.woocommerce-tabs .entry-content td {
	padding: 10px 12px;
	border: 1px solid var(--ttn-border);
}

.ttn-page-entry-content th,
.woocommerce-tabs .entry-content th {
	background: var(--ttn-surface);
	color: var(--ttn-ink);
}

.ttn-page-entry-content blockquote {
	margin: 1.5em 0;
	padding: 14px 18px;
	border-left: 4px solid var(--ttn-brand);
	border-radius: 0 10px 10px 0;
	background: var(--ttn-surface);
}

.ttn-page-entry-content .section-title,
body.home .section-title {
	color: var(--ttn-ink);
	font-size: clamp(22px, 2.4vw, 30px);
	font-weight: 750;
	line-height: 1.3;
	letter-spacing: -.02em;
}

body.home .section:not(.ss-banner) {
	padding-top: clamp(26px, 4vw, 50px);
	padding-bottom: clamp(26px, 4vw, 50px);
}

body.home .product-categories-grid .single-category,
body.home .archive-ct .col-inner {
	border: 1px solid var(--ttn-border);
	border-radius: var(--ttn-radius);
	box-shadow: var(--ttn-shadow);
}

body.home .product-categories-grid .single-category:hover,
body.home .archive-ct .col-inner:hover {
	transform: translateY(-3px);
	box-shadow: 0 15px 32px rgba(20, 35, 60, .13);
}

body.home .product-categories-grid .single-category a img {
	width: 100%;
	max-width: 100%;
	object-fit: cover;
}

.ttn-archive-header {
	margin: 0 0 26px;
	padding: 0 0 22px;
	border-bottom: 1px solid var(--ttn-border);
}

.ttn-archive-header .ttn-breadcrumb {
	margin-bottom: 16px;
}

.ttn-archive-content .archive-title {
	margin: 0;
	color: var(--ttn-ink);
	font-size: clamp(28px, 3vw, 38px);
	font-weight: 750;
	line-height: 1.22;
	letter-spacing: -.025em;
}

.ttn-archive-description {
	max-width: 100%;
	margin-top: 12px;
	color: var(--ttn-muted);
	font-size: 15px;
	line-height: 1.75;
}

.ttn-archive-description > :last-child {
	margin-bottom: 0;
}

.ttn-post-grid {
	align-items: stretch;
	gap: 24px;
}

.ttn-post-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	border: 1px solid var(--ttn-border);
	border-radius: var(--ttn-radius);
	box-shadow: 0 5px 18px rgba(20, 35, 60, .055);
}

.ttn-post-card:hover {
	transform: translateY(-3px);
	border-color: #d4deeb;
	box-shadow: var(--ttn-shadow);
}

.ttn-post-card-image {
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: linear-gradient(135deg, #edf3fb, #f8fafc);
}

.ttn-post-card-image img,
.ttn-post-card-placeholder {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ttn-post-card:hover .ttn-post-card-image img {
	transform: scale(1.025);
}

.ttn-post-card-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 18px 20px 20px;
}

.ttn-post-card-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px 12px;
	margin: 0 0 9px;
	color: var(--ttn-muted);
	font-size: 13px;
}

.ttn-post-card-meta a {
	color: var(--ttn-link);
}

.ttn-post-card-body h2 {
	margin: 0 0 9px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.45;
}

.ttn-post-card-body h2 a {
	color: var(--ttn-ink);
}

.ttn-post-card-body h2 a:hover {
	color: var(--ttn-brand-dark);
}

.ttn-post-card-excerpt {
	color: var(--ttn-muted);
	font-size: 14px;
	line-height: 1.65;
}

.ttn-post-card-excerpt p {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.ttn-post-card-more {
	align-self: flex-start;
	margin-top: auto;
	padding-top: 13px;
	color: var(--ttn-link);
	font-size: 14px;
	font-weight: 700;
}

.ttn-post-card-more span {
	font-size: 19px;
	line-height: 0;
}

.ttn-pagination {
	margin-top: 30px;
}

.ttn-pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.ttn-pagination .page-numbers {
	display: inline-flex;
	min-width: 40px;
	min-height: 40px;
	align-items: center;
	justify-content: center;
	padding: 7px 12px;
	border: 1px solid var(--ttn-border);
	border-radius: 9px;
	background: #fff;
	color: var(--ttn-ink);
}

.ttn-pagination .page-numbers.current,
.ttn-pagination .page-numbers:hover {
	border-color: var(--ttn-link);
	background: var(--ttn-link);
	color: #fff;
}

.ttn-empty-state {
	padding: 28px;
	border: 1px solid var(--ttn-border);
	border-radius: var(--ttn-radius);
	background: var(--ttn-surface);
}

.ttn-empty-state h2 {
	margin-top: 0;
	color: var(--ttn-ink);
}

body.tax-product_cat .woocommerce-products-header {
	margin: 0 0 22px;
	padding: clamp(20px, 3vw, 34px);
	border: 1px solid #e3eaf3;
	border-radius: 16px;
	background: linear-gradient(135deg, #f4f8fd 0%, #fff 76%);
}

body.tax-product_cat .woocommerce-products-header__title {
	margin: 0 0 10px;
	color: var(--ttn-ink);
	font-size: clamp(26px, 3vw, 36px);
	font-weight: 750;
	line-height: 1.25;
}

body.tax-product_cat .term-description {
	max-width: 100%;
	color: var(--ttn-text);
	font-size: 15px;
	line-height: 1.75;
}

body.tax-product_cat .term-description > :last-child {
	margin-bottom: 0;
}

.woocommerce ul.products li.product {
	display: flex;
	min-width: 0;
	flex-direction: column;
	overflow: hidden;
	padding: 0;
	border-radius: var(--ttn-radius);
	box-shadow: 0 5px 18px rgba(20, 35, 60, .055);
}

.woocommerce ul.products li.product:hover {
	transform: translateY(-3px);
	box-shadow: var(--ttn-shadow);
}

.woocommerce ul.products li.product > a:first-child {
	width: 100%;
}

.woocommerce ul.products li.product a img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	min-height: 2.8em;
	padding: 0 14px;
	color: var(--ttn-ink);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
}

.woocommerce ul.products li.product .price {
	padding: 0 14px;
	color: var(--ttn-brand-dark);
	font-size: 16px;
	font-weight: 700;
}

.woocommerce ul.products li.product .button {
	align-self: flex-start;
	margin: auto 14px 14px;
	padding: 9px 14px;
	border-radius: 8px;
	background: var(--ttn-brand);
	font-weight: 700;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce div.product .single_add_to_cart_button:hover,
.ttn-page-entry-content .button:hover {
	background: var(--ttn-brand-dark);
	color: #fff;
}

.single-product div.product {
	align-items: start;
	margin-top: 8px;
}

.single-product div.product .woocommerce-product-gallery {
	overflow: hidden;
	border: 1px solid var(--ttn-border);
	border-radius: 16px;
	background: #fff;
}

.single-product .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery img {
	width: 100%;
	height: auto !important;
	max-height: min(68vh, 600px);
	object-fit: contain;
}

.single-product div.product .product_title {
	margin: 0 0 12px;
	color: var(--ttn-ink);
	font-size: clamp(26px, 3vw, 36px);
	font-weight: 750;
	line-height: 1.25;
}

.single-product div.product .summary {
	color: var(--ttn-text);
	line-height: 1.7;
}

.single-product div.product .summary .price {
	color: var(--ttn-brand-dark);
	font-size: 23px;
	font-weight: 750;
}

.single-product div.product .single_add_to_cart_button {
	min-height: 46px;
	padding: 10px 20px;
	border-radius: 9px;
	background: var(--ttn-brand);
	font-weight: 700;
}

.single-product .woocommerce-tabs {
	margin-top: 28px;
	padding: clamp(16px, 2.5vw, 28px);
	border: 1px solid var(--ttn-border);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 5px 18px rgba(20, 35, 60, .045);
}

.single-product .woocommerce-tabs .tabs {
	border-bottom: 1px solid var(--ttn-border);
}

.single-product .woocommerce-tabs .tabs li a {
	color: var(--ttn-ink);
	font-weight: 700;
}

.single-product .woocommerce-tabs .panel {
	color: var(--ttn-text);
	font-size: 16px;
	line-height: 1.8;
}

.single-product .related.products {
	margin-top: 34px;
}

.single-product .related.products > h2 {
	margin-bottom: 18px;
	color: var(--ttn-ink);
	font-size: clamp(22px, 2.4vw, 29px);
}

.ttn-article-single .ttn-article-top .ttn-article-title,
.ttn-article-content h2,
.ttn-article-content h3,
.ttn-related-product > h2 {
	color: var(--ttn-ink);
}

.ttn-article-single .ttn-article-top .ttn-article-title {
	font-size: clamp(28px, 3vw, 38px);
	font-weight: 750;
	letter-spacing: -.025em;
}

.ttn-article-toc,
.ttn-related-product,
.ttn-article-card {
	border-radius: var(--ttn-radius);
}

.ttn-article-card,
.ttn-related-product {
	border-color: var(--ttn-border);
	box-shadow: 0 5px 18px rgba(20, 35, 60, .045);
}

.form-yeucau input,
.form-yeucau select,
.form-yeucau textarea,
.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea,
.wpforms input,
.wpforms select,
.wpforms textarea {
	max-width: 100%;
	border: 1px solid #d4dde8;
	border-radius: 8px;
	box-shadow: none;
}

.form-yeucau button,
.wpcf7 input[type="submit"],
.wpforms button[type="submit"],
.wpforms input[type="submit"] {
	min-height: 44px;
	padding: 10px 20px;
	border: 0;
	border-radius: 8px;
	background: var(--ttn-brand);
	color: #fff;
	font-weight: 700;
}

.footer-wrapper a:hover {
	color: var(--ttn-brand);
}

@media (min-width: 850px) and (max-width: 1099px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.ttn-post-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 849px) {
	.small-1 { width: 8.333333%; }
	.small-2 { width: 16.666667%; }
	.small-3 { width: 25%; }
	.small-4 { width: 33.333333%; }
	.small-5 { width: 41.666667%; }
	.small-6 { width: 50%; }
	.small-7 { width: 58.333333%; }
	.small-8 { width: 66.666667%; }
	.small-9 { width: 75%; }
	.small-10 { width: 83.333333%; }
	.small-11 { width: 91.666667%; }
	.small-12 { width: 100%; }

	.ttn-breadcrumb {
		margin-bottom: 16px;
		font-size: 13px;
	}

	body.home .section:not(.ss-banner) {
		padding-top: 28px;
		padding-bottom: 28px;
	}

	.woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 14px;
	}

	.single-product div.product {
		gap: 20px;
	}
}

@media (max-width: 600px) {
	.ttn-page-content,
	.ttn-archive-content {
		padding-top: 20px;
		padding-bottom: 36px;
	}

	.ttn-page-content .ttn-page-header {
		margin-bottom: 16px;
		padding-bottom: 12px;
	}

	.ttn-page-content .ttn-page-header .entry-title,
	.ttn-archive-content .archive-title {
		font-size: 26px;
	}

	.ttn-archive-header {
		margin-bottom: 20px;
		padding-bottom: 18px;
	}

	.ttn-post-grid {
		gap: 16px;
	}

	.ttn-post-card-body {
		padding: 15px 16px 17px;
	}

	.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		padding-right: 10px;
		padding-left: 10px;
		font-size: 14px;
	}

	.woocommerce ul.products li.product .price {
		padding-right: 10px;
		padding-left: 10px;
		font-size: 14px;
	}

	.woocommerce ul.products li.product .button {
		margin-right: 10px;
		margin-left: 10px;
		padding: 8px 10px;
		font-size: 13px;
	}

	.single-product div.product .product_title {
		font-size: 26px;
	}

	.single-product .woocommerce-tabs {
		margin-top: 20px;
		padding: 14px;
	}

	.ttn-page-entry-content table,
	.woocommerce-tabs .entry-content table {
		display: block;
		overflow-x: auto;
		white-space: normal;
	}
}

@media (max-width: 380px) {
	.ttn-post-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.ttn-archive-content .archive-title,
	.ttn-page-content .ttn-page-header .entry-title {
		font-size: 24px;
	}

	.woocommerce ul.products li.product {
		border-radius: 10px;
	}
}

/* Product-category descriptions are editor content and may contain fixed-width captions. */
body.tax-product_cat .term-description figure.wp-caption,
body.tax-product_cat .term-description .wp-caption {
	width: auto !important;
	max-width: 100% !important;
	margin-right: auto;
	margin-left: auto;
}

body.tax-product_cat .term-description img,
body.tax-product_cat .term-description video,
body.tax-product_cat .term-description iframe {
	max-width: 100% !important;
	height: auto !important;
}

body.tax-product_cat .term-description table {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
}

/* TTN header refresh */
.ttn-header{position:relative;z-index:100;background:#fff;box-shadow:0 2px 12px rgba(22,47,83,.08)}
.ttn-header-main{background:#fff}
.ttn-header-inner{width:min(1460px,calc(100% - 48px));max-width:1460px;min-height:88px;display:flex;align-items:center;gap:16px}
.ttn-logo{width:166px;flex:0 0 166px}
.ttn-logo img{display:block;width:100%;height:auto}
.ttn-category-wrap{position:relative;flex:0 0 auto}
.ttn-category-toggle{height:48px;min-width:142px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 15px;border:0;border-radius:8px;background:#075ed7;color:#fff;font-size:15px;font-weight:700;cursor:pointer}
.ttn-category-toggle svg,.ttn-header-search button svg,.ttn-header-contact>svg,.ttn-header-quote>svg,.ttn-cart-link svg,.ttn-mobile-call svg,.ttn-mobile-cart svg,.ttn-menu-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ttn-category-toggle .ttn-category-chevron{width:15px;height:15px;margin-left:2px}
.ttn-category-toggle:hover,.ttn-category-toggle[aria-expanded=true]{background:#064eb4}
.ttn-header-search{height:48px;max-width:none;min-width:170px;display:flex;flex:1 1 330px;overflow:hidden;border:1px solid #d5dce7;border-radius:8px;background:#fff}
.ttn-header-search input{width:100%;min-width:0;height:100%;padding:0 17px;border:0;outline:0;background:transparent;color:#152b49;font-size:14px}
.ttn-header-search input::placeholder{color:#68768a;opacity:1}
.ttn-header-search button{width:54px;min-width:54px;height:100%;display:grid;place-items:center;border:0;background:#075ed7;color:#fff;cursor:pointer}
.ttn-header-search button:hover{background:#064eb4}
.ttn-header-contact-group{display:flex;align-items:center;justify-content:flex-end;gap:15px;flex:0 1 auto}
.ttn-header-contact,.ttn-header-quote{min-height:48px;display:flex;align-items:center;gap:10px;color:#142d50;text-decoration:none!important}
.ttn-header-contact>svg,.ttn-header-quote>svg{width:23px;height:23px;flex:0 0 23px;color:#075ed7}
.ttn-header-contact span,.ttn-header-quote span{display:flex;flex-direction:column;justify-content:center;line-height:1.2}
.ttn-header-contact small,.ttn-header-quote small{color:#283b56;font-size:12px;font-weight:500}
.ttn-header-contact strong,.ttn-header-quote strong{color:#064db7;font-size:14px;font-weight:700;white-space:nowrap}
.ttn-header-secondary-phone{margin-top:2px;color:#68768a!important;font-size:11px!important}
.ttn-header-zalo{padding-left:14px;border-left:1px solid #e5e9ef}
.ttn-zalo-mark{width:27px;height:27px;display:grid;place-items:center;border:1.5px solid #075ed7;border-radius:50%;color:#075ed7;font-size:9px;font-weight:800;line-height:1}
.ttn-header-quote{padding-left:14px;border-left:1px solid #e5e9ef}
.ttn-header-quote:hover strong,.ttn-header-contact:hover strong{color:#003b9d}
.ttn-header-inner>.ttn-cart-link{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border:1px solid #e0e6ee;border-radius:50%;background:#fff;color:#075ed7}
.ttn-header-inner>.ttn-cart-link:hover{border-color:#075ed7;background:#f4f8ff}
.ttn-cart-link svg{width:20px;height:20px}
.ttn-cart-count{top:-4px;right:-5px;background:#075ed7}
.ttn-header-mobile-actions,.ttn-mobile-search-wrap{display:none}
.ttn-benefits-bar{border-top:1px solid #e8ebf0;background:#fff}
.ttn-benefits-inner{width:min(1460px,calc(100% - 48px));max-width:1460px;min-height:47px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.ttn-benefit-item{min-height:29px;display:flex;align-items:center;gap:9px;padding:0 12px;color:#263a57;font-size:13px;line-height:1.3;white-space:nowrap}
.ttn-benefit-item+.ttn-benefit-item{border-left:1px solid #e5e9ef}
.ttn-benefit-item svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:#075ed7;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ttn-desktop-nav[hidden]{display:none!important}
.ttn-desktop-nav:not([hidden]){position:absolute;z-index:130;top:calc(100% + 12px);left:0;display:block;width:280px;max-height:min(72vh,620px);overflow-y:auto;border:1px solid #e3e8f0;border-radius:8px;background:#fff;box-shadow:0 14px 32px rgba(14,39,78,.18)}
.ttn-desktop-nav>.menu{display:block;margin:0;padding:8px 0;list-style:none}
.ttn-desktop-nav .menu>li{position:relative;display:block;margin:0}
.ttn-desktop-nav .menu>li>a{min-height:0;display:flex;align-items:center;justify-content:space-between;padding:11px 16px;border-bottom:1px solid #f0f2f6;color:#26374e;font-size:14px;font-weight:600;white-space:normal}
.ttn-desktop-nav .menu>li:first-child>a{background:#fff;color:#26374e}
.ttn-desktop-nav .menu>li:hover>a,.ttn-desktop-nav .menu>li.current-menu-item>a,.ttn-desktop-nav .menu>li:first-child:hover>a{background:#f3f7fe;color:#075ed7}
.ttn-desktop-nav .menu>li>.sub-menu{display:none;margin:0;padding:0 0 8px 12px;list-style:none;background:#f8faff}
.ttn-desktop-nav .menu>li:hover>.sub-menu,.ttn-desktop-nav .menu>li:focus-within>.sub-menu{display:block}
.ttn-desktop-nav .menu .sub-menu li{margin:0;list-style:none}
.ttn-desktop-nav .menu .sub-menu a{display:block;padding:8px 13px;color:#344762;font-size:13px}
.ttn-desktop-nav .ttn-mega-menu{top:0;left:100%;width:min(720px,calc(100vw - 340px));max-height:70vh;overflow:auto;border:1px solid #e3e8f0;border-radius:8px}
.ttn-mobile-menu,.ttn-mobile-backdrop{display:none}

@media (min-width:1200px){
	.ttn-header-inner{gap:16px}
	.ttn-desktop-search{max-width:440px}
	.ttn-header-contact-group{gap:13px}
}
@media (min-width:850px) and (max-width:1199px){
	.ttn-header-inner{width:calc(100% - 40px);min-height:0;display:grid;grid-template-columns:150px minmax(0,1fr) 40px;grid-template-areas:"logo contacts cart" "category search search";gap:10px 14px;padding:12px 0}
	.ttn-logo{grid-area:logo;width:150px;flex-basis:150px}
	.ttn-header-contact-group{grid-area:contacts;justify-content:flex-end;gap:16px}
	.ttn-header-inner>.ttn-cart-link{grid-area:cart}
	.ttn-category-wrap{grid-area:category}
	.ttn-category-toggle{height:44px;min-width:138px}
	.ttn-desktop-search{grid-area:search;width:100%;height:44px;max-width:none}
	.ttn-header-hotline .ttn-header-secondary-phone{display:none}
	.ttn-header-zalo,.ttn-header-quote{padding-left:12px}
	.ttn-benefits-inner{width:calc(100% - 40px);justify-content:flex-start;overflow-x:auto;scrollbar-width:none}
	.ttn-benefits-inner::-webkit-scrollbar{display:none}
	.ttn-benefit-item{flex:0 0 auto;padding:0 9px}
}
@media (max-width:849px){
	.ttn-header{position:sticky;top:0}
	.admin-bar .ttn-header{top:32px}
	.ttn-header-main{padding:8px 0 10px}
	.ttn-header-inner{width:calc(100% - 30px);min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0}
	.ttn-logo{width:125px;flex:0 0 125px}
	.ttn-category-wrap,.ttn-desktop-search,.ttn-header-contact-group,.ttn-header-inner>.ttn-cart-link{display:none}
	.ttn-header-mobile-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-left:auto}
	.ttn-mobile-call,.ttn-mobile-zalo,.ttn-mobile-cart,.ttn-menu-toggle{position:relative;width:39px;height:39px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid #e0e6ee;border-radius:8px;background:#fff;color:#075ed7;text-decoration:none!important}
	.ttn-mobile-call svg,.ttn-mobile-cart svg,.ttn-menu-toggle svg{width:19px;height:19px}
	.ttn-mobile-call span,.ttn-mobile-zalo>span:last-child,.ttn-menu-toggle>span{color:#344762;font-size:9px;line-height:1}
	.ttn-mobile-zalo .ttn-zalo-mark{width:22px;height:22px;font-size:8px}
	.ttn-mobile-cart .ttn-cart-count{top:-5px;right:-5px}
	.ttn-menu-toggle{padding:0}
	.ttn-mobile-search-wrap{width:calc(100% - 30px);display:block}
	.ttn-mobile-search{height:42px;width:100%;max-width:none}
	.ttn-mobile-search input{font-size:14px}
	.ttn-mobile-search button{width:45px;min-width:45px}
	.ttn-benefits-inner{width:100%;min-height:42px;justify-content:flex-start;gap:0;overflow-x:auto;padding:0 15px;scrollbar-width:none}
	.ttn-benefits-inner::-webkit-scrollbar{display:none}
	.ttn-benefit-item{min-height:26px;flex:0 0 auto;padding:0 14px;font-size:12px}
	.ttn-benefit-item:first-child{padding-left:0}
	.ttn-benefit-item svg{width:16px;height:16px;flex-basis:16px}
	.ttn-desktop-nav{display:none!important}
	.ttn-mobile-backdrop:not([hidden]){position:fixed;inset:0;z-index:200;display:block;background:rgba(9,22,40,.48)}
	.ttn-mobile-menu:not([hidden]){position:fixed;top:0;right:0;bottom:0;z-index:201;display:block;width:min(88vw,380px);overflow:auto;background:#fff;box-shadow:-8px 0 30px rgba(20,35,60,.2)}
	.ttn-mobile-menu-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px;background:#fff;border-bottom:1px solid #e5eaf0}
	.ttn-menu-close{width:34px;height:34px;border:0;border-radius:50%;background:#075ed7;color:#fff;font-size:24px;line-height:1}
	.ttn-mobile-menu .menu{display:block;padding:8px 16px}
	.ttn-mobile-menu .menu li{position:relative;margin:0;border-bottom:1px solid #edf0f4;list-style:none}
	.ttn-mobile-menu .menu li>a{display:block;padding:12px 24px 12px 4px;color:#26374e;font-weight:600}
	.ttn-mobile-menu .menu .sub-menu{display:none;padding:0 0 4px 14px}
	.ttn-mobile-menu .menu li.is-open>.sub-menu,.ttn-mobile-menu .menu li.is-open>.ttn-mega-menu{display:block}
	.ttn-mobile-menu .ttn-mega-menu{position:static;width:auto;padding:4px 0 10px;background:#f8fafc;box-shadow:none}
	.ttn-mobile-menu .ttn-mega-menu .section-content{width:100%}
	.ttn-mobile-menu .ttn-mega-menu .row{display:block;margin:0}
	.ttn-mobile-menu .ttn-mega-menu .col{width:100%;padding:0 10px}
	.ttn-mobile-menu-open{overflow:hidden}
}
@media (max-width:480px){
	.ttn-header-inner,.ttn-mobile-search-wrap{width:calc(100% - 24px)}
	.ttn-logo{width:112px;flex-basis:112px}
	.ttn-header-mobile-actions{gap:6px}
	.ttn-mobile-call,.ttn-mobile-zalo,.ttn-mobile-cart,.ttn-menu-toggle{width:35px;height:37px}
	.ttn-benefits-inner{padding:0 12px}
}
@media (max-width:359px){
	.ttn-logo{width:100px;flex-basis:100px}
	.ttn-header-mobile-actions{gap:4px}
	.ttn-mobile-call,.ttn-mobile-zalo,.ttn-mobile-cart,.ttn-menu-toggle{width:32px;height:35px}
	.ttn-mobile-call span,.ttn-mobile-zalo>span:last-child,.ttn-menu-toggle>span{display:none}
}
/* Keep both TTN phone numbers individually clickable. */
.ttn-header-primary-phone,.ttn-header-secondary-phone{display:block;color:#064db7!important;text-decoration:none!important;white-space:nowrap}
.ttn-header-primary-phone{font-size:14px;font-weight:700;line-height:1.2}
.ttn-header-secondary-phone{margin-top:2px;color:#68768a!important;font-size:11px;font-weight:500;line-height:1.2}
.ttn-header-contact a:hover{text-decoration:underline!important}
@media (min-width:850px) and (max-width:1199px){.ttn-header-hotline .ttn-header-secondary-phone{display:block!important}}

/* Restore the legacy footer block layout after removing Flatsome. */
.footer-wrapper>.section:first-of-type{padding:24px 0;background:#f7f9fc;border-bottom:1px solid #e3e9f1}
.footer-wrapper>.section:first-of-type .section-content{max-width:1200px}
.footer-wrapper .tt-ct h2{margin:0 0 4px;color:#182d4c;font-size:20px;font-weight:700;text-align:center}
.footer-wrapper .tt-ct p{margin:0 0 16px;color:#69778b;text-align:center}
.footer-wrapper .lien-he-ct .lh-ct{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.footer-wrapper .lien-he-ct .item{min-width:0;justify-content:flex-start;padding:10px;border:1px solid #e3eaf4;border-radius:8px;background:#fff}
.footer-wrapper .lien-he-ct .item .ha{flex:0 0 42px;width:42px;height:42px;overflow:hidden;border-radius:50%}
.footer-wrapper .lien-he-ct .item .ha img{display:block;width:100%;height:100%;object-fit:cover}
.footer-wrapper .lien-he-ct .item .text-lh{min-width:0}
.footer-wrapper .lien-he-ct .item .text-lh p a{gap:5px;font-size:12px;white-space:nowrap}
.footer-wrapper .lien-he-ct .item .text-lh p a svg{flex:0 0 22px;width:22px;height:22px}
.footer-wrapper>.section:nth-of-type(2){padding:32px 0;background-color:#1e7bc9;color:#fff}
.footer-wrapper>.section:nth-of-type(2) .section-content{max-width:1200px}
.footer-wrapper>.section:nth-of-type(2) .section-content>.row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0}
.footer-wrapper>.section:nth-of-type(2) .section-content>.row>.col{width:auto!important;min-width:0;padding:0}
.footer-wrapper>.section:nth-of-type(2) h2,.footer-wrapper>.section:nth-of-type(2) h3,.footer-wrapper>.section:nth-of-type(2) h4,.footer-wrapper>.section:nth-of-type(2) .section-title{color:#fff}
.footer-wrapper>.section:nth-of-type(2) p,.footer-wrapper>.section:nth-of-type(2) li,.footer-wrapper>.section:nth-of-type(2) .ux-text{color:rgba(255,255,255,.92)}
.footer-wrapper>.section:nth-of-type(2) a{color:#fff}
.footer-wrapper>.section:nth-of-type(2) .menu-listct{margin:0;padding:0;list-style:none}
.footer-wrapper>.section:nth-of-type(2) .menu-listct li{padding:5px 0;border:0}
.footer-wrapper>.section:nth-of-type(2) .menu-listct li a{display:inline-block;padding-left:17px;font-size:14px;line-height:1.5}
.footer-wrapper>.section:nth-of-type(2) .menu-listct li a:hover{color:#ffdf88}
.footer-wrapper>.section:nth-of-type(2) .footer-logo{display:block;width:160px;max-width:100%;height:auto;margin:0 0 14px}
.footer-wrapper>.section:nth-of-type(2) .follow-icons a{border-color:rgba(255,255,255,.45)}
.ttn-copyright{padding:14px 15px;background:#155f9e;color:#fff;font-size:13px;text-align:center}
@media (max-width:1099px){
	.footer-wrapper .lien-he-ct .lh-ct{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:849px){
	.footer-wrapper>.section:first-of-type{padding:20px 0}
	.footer-wrapper .lien-he-ct .lh-ct{grid-template-columns:repeat(2,minmax(0,1fr))}
	.footer-wrapper>.section:nth-of-type(2) .section-content>.row{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
}
@media (max-width:600px){
	.footer-wrapper>.section:first-of-type .section-content,.footer-wrapper>.section:nth-of-type(2) .section-content{width:calc(100% - 30px)}
	.footer-wrapper .lien-he-ct .lh-ct{grid-template-columns:1fr}
	.footer-wrapper>.section:nth-of-type(2){padding:26px 0}
	.footer-wrapper>.section:nth-of-type(2) .section-content>.row{grid-template-columns:1fr;gap:22px}
	.footer-wrapper>.section:nth-of-type(2) .section-title-container{margin-bottom:10px}
}
.footer-wrapper>.section:nth-of-type(2) .menu-listct li a:before{content:"›";font-family:inherit;color:#fff;font-size:18px}

/* Soft, header-matched footer with a clear business information card. */
.footer-wrapper>.section:first-of-type{background:#f5f8fd;border-bottom:1px solid #e5edf7}
.footer-wrapper .lien-he-ct .item{min-height:68px;padding:12px 14px;border-color:#e2eaf5;border-radius:14px;box-shadow:0 5px 16px rgba(19,54,96,.05)}
.footer-wrapper .lien-he-ct .item .ha{flex-basis:40px;width:40px;height:40px}
.footer-wrapper>.section:nth-of-type(2){padding:38px 0 30px;background:linear-gradient(180deg,#f8faff 0%,#edf4fc 100%);color:#334862;border-top:1px solid #e3ebf6}
.footer-wrapper>.section:nth-of-type(2) .section-content{max-width:1200px}
.footer-wrapper>.section:nth-of-type(2) .section-content>.row{align-items:stretch;gap:18px;margin:0}
.footer-wrapper>.section:nth-of-type(2) .section-content>.row>.col{min-width:0}
.footer-wrapper>.section:nth-of-type(2) .section-content>.row>.col>.col-inner{position:relative;height:100%;padding:24px 22px;border:1px solid #e1eaf6;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(22,57,98,.07)}
.footer-wrapper>.section:nth-of-type(2) .section-content>.row>.col:first-child>.col-inner{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)}
.footer-wrapper>.section:nth-of-type(2) .section-title-container{margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid #e9eff7}
.footer-wrapper>.section:nth-of-type(2) h2,.footer-wrapper>.section:nth-of-type(2) h3,.footer-wrapper>.section:nth-of-type(2) h4,.footer-wrapper>.section:nth-of-type(2) .section-title{color:#17385f;font-size:16px;font-weight:700;letter-spacing:0;text-transform:none}
.footer-wrapper>.section:nth-of-type(2) p,.footer-wrapper>.section:nth-of-type(2) li,.footer-wrapper>.section:nth-of-type(2) .ux-text{color:#53677f}
.footer-wrapper>.section:nth-of-type(2) a{color:#075fc9}
.footer-wrapper>.section:nth-of-type(2) a:hover{color:#f04b25}
.footer-wrapper>.section:nth-of-type(2) .footer-logo{width:148px;margin:0 0 16px}
.footer-wrapper>.section:nth-of-type(2) .text-footer{color:#4e6179!important;font-size:14px;line-height:1.65}
.footer-wrapper>.section:nth-of-type(2) .text-footer p{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;margin:0 0 13px;color:#4e6179!important}
.footer-wrapper>.section:nth-of-type(2) .text-footer p i{width:auto!important;color:#1265ce;font-size:17px;line-height:1.5;text-align:center}
.footer-wrapper>.section:nth-of-type(2) .text-footer p:nth-child(3) a{display:inline-flex;align-items:center;min-height:34px;padding:6px 12px;border:1px solid #dce8f8;border-radius:10px;background:#f3f7fe;font-weight:600;text-decoration:none}
.footer-wrapper>.section:nth-of-type(2) .text-footer .loc{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;margin:5px 0 0;padding:12px;border:1px solid #e6eef9;border-radius:12px;background:#f5f8fd;color:#4e6179}
.footer-wrapper>.section:nth-of-type(2) .text-footer .loc .t-loc{gap:4px;font-size:13px}
.footer-wrapper>.section:nth-of-type(2) .text-footer .loc p{margin:0}
.footer-wrapper>.section:nth-of-type(2) .text-footer .loc p i{width:auto!important;color:#1265ce}
.footer-wrapper>.section:nth-of-type(2) .list-dathang .item-dh{gap:12px;margin:0 0 11px;padding:10px 12px;border:1px solid #e7eef8;border-radius:12px;background:#f7faff}
.footer-wrapper>.section:nth-of-type(2) .list-dathang .item-dh .icon img{width:30px;margin:0}
.footer-wrapper>.section:nth-of-type(2) .list-dathang .item-dh .text-d label{color:#6a7b91}
.footer-wrapper>.section:nth-of-type(2) .list-dathang .item-dh .text-d a{color:#075fc9;font-weight:700}
.footer-wrapper>.section:nth-of-type(2) .menu-listct li{padding:4px 0}
.footer-wrapper>.section:nth-of-type(2) .menu-listct li a{padding-left:15px;color:#4e6179;font-size:14px}
.footer-wrapper>.section:nth-of-type(2) .menu-listct li a:before{color:#1265ce;font-size:17px}
.footer-wrapper>.section:nth-of-type(2) .follow-icons a{border:1px solid #dce7f6;background:#f5f8fd;color:#1265ce}
.footer-wrapper .absolute-footer.dark{background:#e7f0fb;color:#50647d}
.footer-wrapper .absolute-footer.dark a{color:#075fc9}
@media (max-width:849px){
	.footer-wrapper>.section:nth-of-type(2){padding:28px 0 22px}
	.footer-wrapper>.section:nth-of-type(2) .section-content>.row{gap:16px}
	.footer-wrapper>.section:nth-of-type(2) .section-content>.row>.col>.col-inner{padding:20px}
}
@media (max-width:600px){
	.footer-wrapper>.section:nth-of-type(2){padding:22px 0 18px}
	.footer-wrapper>.section:nth-of-type(2) .section-content>.row{gap:14px}
	.footer-wrapper>.section:nth-of-type(2) .section-content>.row>.col>.col-inner{padding:18px;border-radius:15px}
	.footer-wrapper>.section:nth-of-type(2) .footer-logo{width:132px;margin-bottom:12px}
	.footer-wrapper>.section:nth-of-type(2) .text-footer{font-size:14px}
	.footer-wrapper>.section:nth-of-type(2) .text-footer p{gap:8px;margin-bottom:11px}
}
.footer-wrapper>.section:nth-of-type(2) .text-footer p:nth-child(3) a{color:#075fc9!important}

@media (min-width:601px) and (max-width:1099px){.footer-wrapper>.section:nth-of-type(2) .section-content>.row{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Contact page: card layout aligned with the TTN header and footer. */
body.page-id-1339 .ttn-page-content{max-width:1280px}
body.page-id-1339 .ttn-page-content .ttn-page-header{margin-bottom:22px;padding-bottom:18px;border-color:#e4ebf5}
body.page-id-1339 .ttn-page-content .ttn-page-header .entry-title{font-size:clamp(30px,3vw,40px);letter-spacing:-.035em}
body.page-id-1339 .ttn-page-entry-content{line-height:1.65}

/* In Tag article: editorial three-column layout with the TTN / In Viet Dung blue system. */
body.postid-8121 .ttn-article-top {
	padding: 26px 0 0;
	background: linear-gradient(180deg, #eaf0fc 0, #fff 110px);
}
body.postid-8121 .ttn-article-top .ttn-article-title {
	max-width: 1280px;
	color: #020b27;
	font-size: clamp(28px, 2.5vw, 34px);
	font-weight: 700;
	letter-spacing: -.025em;
}
body.postid-8121 .ttn-article-top-row {
	border-color: #d9e0ea;
}
body.postid-8121 .ttn-article-meta li {
	color: #4a4f63;
	font-size: 14px;
}
body.postid-8121 .ttn-article-meta li i,
body.postid-8121 .ttn-article-meta a:hover {
	color: #005edb;
}
body.postid-8121 .ttn-article-layout {
	background: #fff;
}
body.postid-8121 .ttn-article-toc {
	top: 18px;
	border: 1px solid #dfe7f4;
	border-radius: 12px;
	background: #eaf0fc;
}
body.postid-8121 .ttn-article-toc-title {
	color: #526681;
	font-size: 16px;
}
body.postid-8121 .ttn-article-toc-list a {
	color: #14233c;
	font-size: 14px;
}
body.postid-8121 .ttn-article-toc-list a:hover,
body.postid-8121 .ttn-article-toc-list li:not(.is-level-3)::before {
	color: #005edb;
}
body.postid-8121 .ttn-article-card {
	padding: 18px;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 5px 18px rgba(20, 35, 60, .045);
}
body.postid-8121 .ttn-article-content {
	color: #29384d;
	font-size: 16px;
	line-height: 1.7;
}
body.postid-8121 .ttn-article-content h2 {
	margin: 30px 0 13px;
	padding: 0 0 9px;
	border: 0;
	border-bottom: 1px solid #e5e9f1;
	color: #020b27;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.35;
}
body.postid-8121 .ttn-article-content h3 {
	margin: 22px 0 10px;
	color: #14233c;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
}
body.postid-8121 .ttn-article-content > p:first-of-type {
	font-size: 16px;
	line-height: 1.7;
}
body.postid-8121 .ttn-article-content a {
	color: #1250dc;
	text-decoration-thickness: 1px;
}
body.postid-8121 .ttn-article-content a.button {
	min-height: 42px;
	border-radius: 8px;
	background: #005edb;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
}
body.postid-8121 .ttn-article-content a.button:hover {
	background: #0048ad;
	color: #fff;
}
body.postid-8121 .ttn-tag-hero,
body.postid-8121 .ttn-tag-price,
body.postid-8121 .ttn-tag-gallery,
body.postid-8121 .ttn-tag-footer-contact {
	box-sizing: border-box;
	max-width: 100%;
	margin: 0 0 24px;
	border: 1px solid #dfe7f4;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 4px 16px rgba(20, 35, 60, .045);
}
body.postid-8121 .ttn-tag-hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 18px;
	padding: 18px;
	background: linear-gradient(180deg, #f5f8ff 0, #fff 100%);
}
body.postid-8121 .ttn-tag-hero > div:first-child > p {
	margin: 14px 0 0;
	color: #29384d;
	font-size: 16px;
	line-height: 1.7;
}
body.postid-8121 .ttn-tag-badge {
	padding: 7px 12px;
	border-radius: 999px;
	background: #eaf0fc;
	color: #005edb;
	font-size: 13px;
	font-weight: 700;
}
body.postid-8121 .ttn-tag-benefits {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	margin-top: 17px;
}
body.postid-8121 .ttn-tag-benefit {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding: 10px;
	border: 1px solid #dfe7f4;
	border-left: 3px solid #005edb;
	border-radius: 9px;
	background: #fff;
	color: #29384d;
	font-size: 13px;
	font-weight: 600;
}
body.postid-8121 .ttn-tag-benefit b {
	background: #005edb;
}
body.postid-8121 .ttn-tag-visual img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 320px;
	aspect-ratio: 16 / 10;
	border-radius: 10px;
	object-fit: cover;
}
body.postid-8121 .ttn-tag-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
}
body.postid-8121 .ttn-tag-actions a {
	padding: 11px 12px;
	border-radius: 8px;
	font-size: 13px;
}
body.postid-8121 .ttn-tag-actions .zalo {
	background: #005edb;
	color: #fff;
}
body.postid-8121 .ttn-tag-actions .phone {
	border-color: #005edb;
	color: #005edb;
}
body.postid-8121 .ttn-tag-price,
body.postid-8121 .ttn-tag-gallery,
body.postid-8121 .ttn-tag-footer-contact {
	padding: 18px;
}
body.postid-8121 .ttn-tag-price h2,
body.postid-8121 .ttn-tag-gallery h2 {
	margin: 0 0 9px;
	padding: 0;
	border: 0;
	color: #020b27;
	font-size: 21px;
	line-height: 1.35;
}
body.postid-8121 .ttn-tag-price > p,
body.postid-8121 .ttn-tag-gallery > p {
	margin: 0 0 15px;
	color: #4a4f63;
	font-size: 14px;
	line-height: 1.6;
}
body.postid-8121 .ttn-tag-price-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 12px;
}
body.postid-8121 .ttn-tag-price-wrap {
	max-width: 100%;
	overflow-x: auto;
	border-color: #dfe7f4;
	border-radius: 9px;
}
body.postid-8121 .ttn-tag-price table {
	width: 100%;
	min-width: 0;
	table-layout: fixed;
	font-size: 13px;
}
body.postid-8121 .ttn-tag-price th {
	padding: 10px 7px;
	background: #005edb;
	font-size: 12px;
	line-height: 1.35;
	word-break: normal;
}
body.postid-8121 .ttn-tag-price td {
	padding: 9px 7px;
	font-size: 13px;
}
body.postid-8121 .ttn-tag-price td.price {
	color: #005edb;
	font-weight: 700;
}
body.postid-8121 .ttn-tag-price small {
	color: #6b7280;
	font-size: 12px;
	line-height: 1.55;
}
body.postid-8121 .ttn-tag-gallery-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}
body.postid-8121 .ttn-tag-gallery figure {
	min-width: 0;
	padding: 8px;
	border: 1px solid #e5e9f1;
	border-radius: 10px;
	background: #fff;
}
body.postid-8121 .ttn-tag-gallery img {
	display: block;
	width: 100%;
	 aspect-ratio: 4 / 3;
	border-radius: 7px;
	object-fit: cover;
}
body.postid-8121 .ttn-tag-gallery figcaption {
	padding: 8px 2px 1px;
	color: #4a4f63;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
}
body.postid-8121 .ttn-tag-footer-contact {
	margin-top: 28px;
	text-align: left;
}
body.postid-8121 .ttn-tag-footer-service {
	color: #005edb;
	font-size: 13px;
	font-weight: 700;
}
body.postid-8121 .ttn-tag-footer-contact h2 {
	color: #020b27;
	font-size: 19px;
}
body.postid-8121 .ttn-tag-footer-contact a {
	color: #005edb;
}
body.postid-8121 .ttn-related-product {
	padding: 12px;
	border-color: #e0e4eb;
	border-radius: 12px;
}
body.postid-8121 .ttn-related-product > h2 {
	padding-bottom: 11px;
	color: #020b27;
	font-size: 16px;
}
body.postid-8121 .ttn-related-product-contact {
	background: #005edb;
}
body.postid-8121 .ttn-article-single .related-ct .item-sl > a {
	display: block;
	height: 100%;
	padding: 10px;
	border: 1px solid #e1e8f2;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 4px 14px rgba(20, 35, 60, .045);
}
body.postid-8121 .ttn-article-single .related-ct .item-sl img {
	width: 100%;
	border-radius: 8px;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}
body.postid-8121 .ttn-article-single .related-ct .item-sl h3,
body.postid-8121 .ttn-article-single .related-ct .item-sl:hover h3 {
	color: #020b27;
}
body.postid-8121 .ttn-article-single .related-ct .item-sl:hover h3 {
	color: #005edb;
}
@media (max-width: 849px) {
	body.postid-8121 .ttn-article-card {
		padding: 16px;
	}
	body.postid-8121 .ttn-article-toc-list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 3px 10px;
	}
	body.postid-8121 .ttn-tag-hero {
		padding: 16px;
	}
	body.postid-8121 .ttn-tag-visual img {
		max-height: 260px;
	}
}
@media (max-width: 520px) {
	body.postid-8121 .ttn-article-top .ttn-article-title {
		font-size: 25px;
	}
	body.postid-8121 .ttn-article-card {
		padding: 12px;
	}
	body.postid-8121 .ttn-article-content h2,
	body.postid-8121 .ttn-tag-price h2,
	body.postid-8121 .ttn-tag-gallery h2 {
		font-size: 19px;
	}
	body.postid-8121 .ttn-tag-benefits,
	body.postid-8121 .ttn-tag-actions {
		grid-template-columns: minmax(0, 1fr);
	}
	body.postid-8121 .ttn-tag-price,
	body.postid-8121 .ttn-tag-gallery,
	body.postid-8121 .ttn-tag-footer-contact {
		padding: 14px 12px;
	}
	body.postid-8121 .ttn-tag-price th,
	body.postid-8121 .ttn-tag-price td {
		padding: 8px 5px;
		font-size: 11px;
	}
}
@media (max-width: 420px) {
	body.postid-8121 .ttn-article-toc-list {
		grid-template-columns: minmax(0, 1fr);
	}
}
body.page-id-1339 .ss-lienhe.section{padding:0!important}
body.page-id-1339 .ss-lienhe .section-bg{display:none}
body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:22px;align-items:stretch;margin:0!important}
body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type>p:empty,
body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type>br{display:none!important}
body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type>.col{width:auto!important;max-width:none;margin:0!important;padding:0!important}
body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type>.col>.col-inner{height:100%;padding:26px;border:1px solid #e3ebf6;border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(22,57,98,.07)}
body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type>.col:first-of-type>.col-inner{background:linear-gradient(155deg,#f5f9ff 0%,#fff 72%)}
body.page-id-1339 .ss-lienhe .title-ct{justify-content:flex-start;margin:0 0 20px}
body.page-id-1339 .ss-lienhe .title-ct .hd-tt{width:auto}
body.page-id-1339 .ss-lienhe .title-ct h2{margin:0;padding:0;color:#17385f;font-size:22px;font-weight:700;line-height:1.35;letter-spacing:-.02em;text-transform:none}
body.page-id-1339 .ss-lienhe .title-ct h2:before{display:none}
body.page-id-1339 .ss-lienhe .text-footer.mri{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;color:#4e6179;font-size:14px;line-height:1.6}
body.page-id-1339 .ss-lienhe .text-footer.mri>p{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;min-width:0;margin:0;padding:11px 12px;border:1px solid #e5edf8;border-radius:12px;background:rgba(255,255,255,.86);overflow-wrap:anywhere}
body.page-id-1339 .ss-lienhe .text-footer.mri>p:first-child,
body.page-id-1339 .ss-lienhe .text-footer.mri>p:nth-child(2){grid-column:1/-1}
body.page-id-1339 .ss-lienhe .text-footer.mri>p i{width:auto!important;margin:2px 0 0;color:#1265ce;font-size:16px;line-height:1.4;text-align:center}
body.page-id-1339 .ss-lienhe .text-footer.mri .loc{grid-column:1/-1;display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;margin:0;padding:13px 14px;border:1px solid #e2eaf5;border-radius:12px;background:#edf4ff;color:#4e6179}
body.page-id-1339 .ss-lienhe .text-footer.mri .loc p{margin:1px 0 0}
body.page-id-1339 .ss-lienhe .text-footer.mri .loc p i{width:auto!important;color:#1265ce}
body.page-id-1339 .ss-lienhe .text-footer.mri .loc .t-loc{display:grid;gap:3px;font-size:13px}
body.page-id-1339 #quote-form1:before{content:"Gửi yêu cầu tư vấn";display:block;margin:0 0 16px;color:#17385f;font-size:22px;font-weight:700;line-height:1.35;letter-spacing:-.02em}
body.page-id-1339 #quote-form1{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin:0}
body.page-id-1339 #quote-form1 .form-yeucau{min-width:0;margin:0}
body.page-id-1339 #quote-form1 .form-yeucau:has(textarea),
body.page-id-1339 #quote-form1 .form-sm{grid-column:1/-1}
body.page-id-1339 #quote-form1 .form-yeucau .data{width:100%}
body.page-id-1339 #quote-form1 input,
body.page-id-1339 #quote-form1 select,
body.page-id-1339 #quote-form1 textarea{width:100%;max-width:100%;min-height:46px;margin:0;padding:11px 13px;border:1px solid #dbe5f1;border-radius:11px;background:#fff;color:#24364d;box-shadow:none;font:inherit;font-size:14px}
body.page-id-1339 #quote-form1 textarea{min-height:116px;resize:vertical}
body.page-id-1339 #quote-form1 input:focus,
body.page-id-1339 #quote-form1 select:focus,
body.page-id-1339 #quote-form1 textarea:focus{border-color:#2877d7;box-shadow:0 0 0 3px rgba(40,119,215,.12);outline:0}
body.page-id-1339 #quote-form1 .form-sm{margin:0}
body.page-id-1339 #quote-form1 .form-sm button{width:100%;min-height:48px;margin:0;border:0;border-radius:11px;background:linear-gradient(110deg,#1268cf,#0757b5);color:#fff;font-size:15px;font-weight:700;box-shadow:0 6px 14px rgba(18,104,207,.2)}
body.page-id-1339 #quote-form1 .form-sm button:hover{background:#f04b25;transform:translateY(-1px)}
body.page-id-1339 .ss-lienhe .section-content>.row:last-of-type{margin:20px 0 0!important}
body.page-id-1339 .ss-lienhe .section-content>.row:last-of-type>p:empty,
body.page-id-1339 .ss-lienhe .section-content>.row:last-of-type>br{display:none!important}
body.page-id-1339 .ss-lienhe .section-content>.row:last-of-type>.col{width:100%!important;max-width:none;margin:0!important;padding:0!important}
body.page-id-1339 .ss-lienhe .section-content>.row:last-of-type>.col>.col-inner{padding:10px;border:1px solid #e3ebf6;border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(22,57,98,.06)}
body.page-id-1339 .ss-lienhe .section-content>.row:last-of-type iframe{display:block;width:100%;height:360px;max-width:100%;border:0!important;border-radius:12px}
@media(max-width:849px){
	body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type{grid-template-columns:minmax(0,1fr);gap:16px}
	body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type>.col>.col-inner{height:auto;padding:22px}
	body.page-id-1339 .ss-lienhe .section-content>.row:last-of-type{margin-top:16px!important}
}
@media(max-width:600px){
	body.page-id-1339 .ttn-page-content{padding-top:20px;padding-bottom:32px}
	body.page-id-1339 .ttn-page-content .ttn-page-header{margin-bottom:16px;padding-bottom:13px}
	body.page-id-1339 .ttn-page-content .ttn-page-header .entry-title{font-size:28px}
	body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type{gap:14px}
	body.page-id-1339 .ss-lienhe .section-content>.row:first-of-type>.col>.col-inner{padding:18px;border-radius:15px}
	body.page-id-1339 .ss-lienhe .title-ct{margin-bottom:15px}
	body.page-id-1339 .ss-lienhe .title-ct h2,
	body.page-id-1339 #quote-form1:before{font-size:20px}
	body.page-id-1339 .ss-lienhe .text-footer.mri{gap:8px}
	body.page-id-1339 .ss-lienhe .text-footer.mri>p{gap:7px;padding:10px;font-size:13px}
	body.page-id-1339 .ss-lienhe .text-footer.mri .loc{padding:11px}
	body.page-id-1339 #quote-form1{grid-template-columns:minmax(0,1fr);gap:10px}
	body.page-id-1339 #quote-form1 .form-yeucau:has(textarea),
	body.page-id-1339 #quote-form1 .form-sm{grid-column:1}
	body.page-id-1339 #quote-form1 textarea{min-height:100px}
	body.page-id-1339 .ss-lienhe .section-content>.row:last-of-type>.col>.col-inner{padding:7px;border-radius:14px}
	body.page-id-1339 .ss-lienhe .section-content>.row:last-of-type iframe{height:280px;border-radius:9px}
}

/* Giấy Ivory: polished article layout, readable pricing tables and topic-matched links. */
body.postid-7015 .ttn-article-single .ttn-article-top {
	padding: 34px 0 0;
	background: linear-gradient(135deg, #eef5ff 0%, #f8fbff 48%, #fff 100%);
}

body.postid-7015 .ttn-article-single .ttn-article-top .ttn-article-title {
	max-width: 980px;
	color: #14233c;
	font-size: clamp(30px, 3vw, 40px);
	line-height: 1.2;
}

body.postid-7015 .ttn-article-single .ttn-article-top-row {
	padding-bottom: 20px;
	border-bottom-color: #dce6f4;
}

body.postid-7015 .ttn-article-single .ttn-article-layout {
	background: #f8faff;
}

body.postid-7015 .ttn-article-single .ttn-article-toc {
	border: 1px solid #dce6f4;
	border-radius: 16px;
	background: #eef4ff;
	box-shadow: 0 8px 24px rgba(18, 55, 103, .06);
	overflow: hidden;
}

body.postid-7015 .ttn-article-single .ttn-article-toc-title {
	padding: 15px 17px 12px;
	color: #18365b;
}

body.postid-7015 .ttn-article-single .ttn-article-toc-list {
	padding: 10px 17px 16px;
}

body.postid-7015 .ttn-article-single .ttn-article-main-column .ttn-article-card {
	padding: clamp(18px, 2vw, 30px);
	border: 1px solid #e1e8f2;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(18, 55, 103, .055);
}

body.postid-7015 .ttn-article-single .ttn-article-featured img,
body.postid-7015 .ttn-article-single .ttn-article-content img {
	border-radius: 14px;
}

body.postid-7015 .ttn-article-single .ttn-article-content h2 {
	margin-top: 32px;
	padding-left: 14px;
	border-left: 4px solid #f04b25;
	color: #14233c;
	font-size: clamp(22px, 2.3vw, 28px);
	line-height: 1.3;
}

body.postid-7015 .ttn-article-single .ttn-article-content table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border: 1px solid #dce6f4;
	border-radius: 12px;
}

body.postid-7015 .ttn-article-single .ttn-article-content th {
	background: #edf4ff;
	color: #18365b;
}

body.postid-7015 .ttn-article-single .ttn-related-product {
	position: sticky;
	top: 22px;
	padding: 16px;
	border: 1px solid #dce6f4;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(18, 55, 103, .06);
}

body.postid-7015 .ttn-related-product-image {
	 aspect-ratio: 4 / 3;
	border-radius: 12px;
	background: #f3f7fd;
}

body.postid-7015 .ttn-related-product-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.postid-7015 .ttn-ivory-related {
	padding: 42px 24px 58px;
	background: #f6f9ff;
	border-top: 1px solid #e4ebf5;
}

body.postid-7015 .ttn-ivory-related-inner {
	width: min(100%, 1280px);
	margin: 0 auto;
}

body.postid-7015 .ttn-ivory-related-heading {
	max-width: 700px;
	margin: 0 0 24px;
}

body.postid-7015 .ttn-ivory-related-kicker {
	margin: 0 0 7px;
	color: #f04b25;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .08em;
}

body.postid-7015 .ttn-ivory-related-heading h2 {
	margin: 0 0 8px;
	color: #14233c;
	font-size: clamp(24px, 2.4vw, 32px);
	line-height: 1.25;
}

body.postid-7015 .ttn-ivory-related-heading > p:last-child {
	margin: 0;
	color: #5c6e86;
	font-size: 15px;
	line-height: 1.65;
}

body.postid-7015 .ttn-ivory-related-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

body.postid-7015 .ttn-ivory-related-card {
	min-width: 0;
	overflow: hidden;
	border: 1px solid #e0e8f3;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 22px rgba(18, 55, 103, .05);
	transition: transform .18s ease, box-shadow .18s ease;
}

body.postid-7015 .ttn-ivory-related-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 30px rgba(18, 55, 103, .1);
}

body.postid-7015 .ttn-ivory-related-media {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #edf3fc;
}

body.postid-7015 .ttn-ivory-related-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .25s ease;
}

body.postid-7015 .ttn-ivory-related-card:hover .ttn-ivory-related-media img {
	transform: scale(1.035);
}

body.postid-7015 .ttn-ivory-related-placeholder {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: center;
	color: #1769e0;
	font-weight: 800;
}

body.postid-7015 .ttn-ivory-related-copy {
	padding: 15px 16px 17px;
}

body.postid-7015 .ttn-ivory-related-copy time {
	color: #718198;
	font-size: 12px;
}

body.postid-7015 .ttn-ivory-related-copy h3 {
	margin: 8px 0;
	font-size: 17px;
	line-height: 1.4;
}

body.postid-7015 .ttn-ivory-related-copy h3 a {
	color: #14233c;
	text-decoration: none;
}

body.postid-7015 .ttn-ivory-related-copy h3 a:hover {
	color: #0758c7;
}

body.postid-7015 .ttn-ivory-related-copy > p {
	margin: 0 0 13px;
	color: #5c6e86;
	font-size: 13px;
	line-height: 1.55;
}

body.postid-7015 .ttn-ivory-related-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #0758c7;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
}

body.postid-7015 .ttn-ivory-related-link:hover {
	color: #f04b25;
}

.ttn-business-contacts {
	display: grid;
	width: min(100%, 1180px);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 0 auto;
}

.ttn-business-contact {
	display: flex;
	min-width: 0;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 14px 16px;
	border: 1px solid #dce6f4;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 5px 18px rgba(18, 55, 103, .05);
}

.ttn-business-contact-call {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 10px;
	color: #14233c;
	text-decoration: none;
}

.ttn-business-contact-icon {
	display: grid;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	place-items: center;
	border-radius: 50%;
	background: #edf4ff;
	color: #1266df;
}

.ttn-business-contact-icon svg {
	width: 19px;
	height: 19px;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ttn-business-contact-copy {
	display: grid;
	gap: 3px;
}

.ttn-business-contact-copy small {
	color: #6b7d95;
	font-size: 12px;
}

.ttn-business-contact-copy strong {
	color: #0758c7;
	font-size: 15px;
	white-space: nowrap;
}

.ttn-business-contact-zalo {
	flex: 0 0 auto;
	padding: 7px 10px;
	border: 1px solid #d7e5fa;
	border-radius: 999px;
	color: #0758c7;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
}

.ttn-business-contact-zalo:hover {
	border-color: #1769e0;
	background: #eef5ff;
}

@media (max-width: 1100px) {
	body.postid-7015 .ttn-ivory-related-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 849px) {
	body.postid-7015 .ttn-article-single .ttn-article-top {
		padding-top: 22px;
	}

	body.postid-7015 .ttn-article-single .ttn-article-main-column .ttn-article-card {
		padding: 18px;
		border-radius: 15px;
	}

	body.postid-7015 .ttn-article-single .ttn-article-toc-list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 3px 10px;
	}

	body.postid-7015 .ttn-article-single .ttn-article-content table {
		display: block;
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	body.postid-7015 .ttn-ivory-related {
		padding: 30px 16px 40px;
	}

	body.postid-7015 .ttn-ivory-related-grid {
		gap: 12px;
	}

	body.postid-7015 .ttn-ivory-related-copy {
		padding: 12px;
	}

	body.postid-7015 .ttn-ivory-related-copy h3 {
		font-size: 15px;
	}

	.ttn-business-contacts {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 420px) {
	body.postid-7015 .ttn-article-single .ttn-article-top .ttn-article-title {
		font-size: 23px;
	}

	body.postid-7015 .ttn-article-single .ttn-article-toc-list {
		grid-template-columns: minmax(0, 1fr);
	}

	body.postid-7015 .ttn-ivory-related-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.ttn-business-contact {
		padding: 12px;
	}
}


/* Floating contact dock: match the TTN header's clean blue-and-white controls. */
#footer.footer-wrapper .contact-box-bottom-nav {
	position: fixed !important;
	right: 20px !important;
	bottom: 22px !important;
	left: auto !important;
	z-index: 1000 !important;
	width: auto !important;
	min-width: 176px;
	max-width: calc(100vw - 32px);
	margin: 0 !important;
	padding: 10px !important;
	border: 1px solid #dce7f5 !important;
	border-radius: 18px !important;
	background: rgba(255, 255, 255, .97) !important;
	box-shadow: 0 12px 36px rgba(24, 55, 98, .18) !important;
	backdrop-filter: blur(12px);
}

#footer.footer-wrapper .contact-box-bottom-nav ul {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	gap: 6px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

#footer.footer-wrapper .contact-box-bottom-nav ul li {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
}

#footer.footer-wrapper .contact-box-bottom-nav ul > li > a {
	min-height: 44px;
	display: flex !important;
	align-items: center;
	gap: 10px;
	padding: 6px 12px 6px 8px !important;
	border: 1px solid transparent;
	border-radius: 12px;
	background: #f7faff;
	color: #1c3557 !important;
	font-family: inherit;
	font-size: 14px !important;
	font-weight: 650 !important;
	line-height: 1.2;
	text-decoration: none !important;
	transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

#footer.footer-wrapper .contact-box-bottom-nav ul > li > a > svg {
	width: 32px !important;
	height: 32px !important;
	min-width: 32px;
	margin: 0 !important;
	padding: 5px;
	border-radius: 50%;
	background: #edf4ff;
	box-sizing: border-box;
	animation: none !important;
}

#footer.footer-wrapper .contact-box-bottom-nav ul > li > a:hover,
#footer.footer-wrapper .contact-box-bottom-nav ul > li > a:focus-visible {
	transform: translateX(-2px);
	border-color: #cfe0f7;
	background: #edf4ff;
	color: #075ed7 !important;
	outline: none;
}

#footer.footer-wrapper .contact-box-bottom-nav ul > li:last-child > a {
	border-color: #ffe1d8;
	background: #fff5f1;
	color: #bd3c25 !important;
}

#footer.footer-wrapper .contact-box-bottom-nav ul > li:last-child > a > svg {
	background: #ffebe4;
}

#footer.footer-wrapper .contact-box-bottom-nav ul > li:last-child > a:hover,
#footer.footer-wrapper .contact-box-bottom-nav ul > li:last-child > a:focus-visible {
	border-color: #ffc9b9;
	background: #ffebe4;
	color: #a72e1c !important;
}

@media (max-width: 992px) {
	html.ttn-has-contact-box body {
		padding-bottom: calc(94px + env(safe-area-inset-bottom));
	}

	#footer.footer-wrapper .contact-box-bottom-nav {
		right: 12px !important;
		bottom: calc(12px + env(safe-area-inset-bottom)) !important;
		left: auto !important;
		width: min(340px, calc(100vw - 24px)) !important;
		min-width: 0;
		padding: 7px !important;
		border-radius: 17px !important;
	}

	#footer.footer-wrapper .contact-box-bottom-nav ul {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 4px;
	}

	#footer.footer-wrapper .contact-box-bottom-nav ul > li > a {
		min-width: 0;
		min-height: 60px;
		flex-direction: column;
		justify-content: center;
		gap: 3px;
		padding: 5px 1px !important;
		border-color: transparent;
		border-radius: 11px;
		font-size: clamp(10px, 2.75vw, 12px) !important;
		white-space: nowrap;
	}

	#footer.footer-wrapper .contact-box-bottom-nav ul > li > a > svg {
		width: 28px !important;
		height: 28px !important;
		min-width: 28px;
		padding: 4px;
	}

	#footer.footer-wrapper .contact-box-bottom-nav ul > li > a:hover,
	#footer.footer-wrapper .contact-box-bottom-nav ul > li > a:focus-visible {
		transform: translateY(-2px);
	}
}

@media (max-width: 360px) {
	#footer.footer-wrapper .contact-box-bottom-nav ul > li > a {
		font-size: 9px !important;
	}
}

/* Catalogue product page: structured, image-led layout inspired by In Việt Dũng. */
body.postid-3786 .woocommerce-breadcrumb {
	max-width: 1280px;
	margin: 22px auto 18px;
	padding: 0 20px;
	color: #65758a;
	font-size: 14px;
}
body.postid-3786 .woocommerce-breadcrumb a { color: #075fc8; }
body.postid-3786 #main > .container { max-width: 1320px; }
body.postid-3786.single-product div.product {
	grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr);
	align-items: start;
	gap: clamp(24px, 3vw, 42px);
	margin: 0 auto 38px;
}
body.postid-3786.single-product div.product .woocommerce-product-gallery {
	position: relative;
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	padding: 10px;
	border: 1px solid #dce6f2;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(18, 47, 83, .08);
}
body.postid-3786.single-product div.product .woocommerce-product-gallery__wrapper,
body.postid-3786.single-product div.product .woocommerce-product-gallery__image {
	border-radius: 12px;
	background: #f5f8fc;
}
body.postid-3786.single-product div.product .woocommerce-product-gallery__image img {
	width: 100%;
	height: clamp(390px, 44vw, 610px) !important;
	max-height: 610px;
	object-fit: contain;
}
body.postid-3786.single-product div.product .flex-control-thumbs {
	display: flex;
	gap: 10px;
	margin: 12px 2px 2px;
}
body.postid-3786.single-product div.product .flex-control-thumbs li {
	width: 78px;
	padding: 4px;
	border: 1px solid #dce6f2;
	border-radius: 9px;
	background: #fff;
}
body.postid-3786.single-product div.product .flex-control-thumbs img {
	width: 100%;
	height: 66px !important;
	border-radius: 6px;
	object-fit: cover;
}
body.postid-3786.single-product div.product .onsale {
	top: 18px;
	left: 18px;
	min-width: auto;
	min-height: 0;
	padding: 8px 12px;
	border-radius: 999px;
	background: #f4512a;
	font-size: 13px;
	font-weight: 700;
}
body.postid-3786.single-product div.product .summary {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	padding: clamp(22px, 3vw, 36px);
	border: 1px solid #dce6f2;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(18, 47, 83, .07);
}
body.postid-3786.single-product div.product .product_title {
	margin: 0 0 16px;
	color: #122d52;
	font-size: clamp(28px, 2.8vw, 38px);
	font-weight: 750;
	line-height: 1.2;
	letter-spacing: -.025em;
}
body.postid-3786.single-product div.product .summary > .price {
	display: block;
	margin: 18px 0 20px;
	padding: 17px 19px;
	border: 1px solid #cbdcf2;
	border-radius: 12px;
	background: linear-gradient(115deg, #eff5ff, #f8fbff);
	color: #075fc8;
	font-size: 27px;
	font-weight: 750;
}
body.postid-3786.single-product div.product .summary > .price del {
	margin-right: 8px;
	color: #8996a7;
	font-size: 17px;
	font-weight: 500;
}
body.postid-3786.single-product div.product .summary > .price ins { color: #075fc8; text-decoration: none; }
body.postid-3786.single-product div.product .woocommerce-product-details__short-description {
	color: #33465f;
	font-size: 16px;
	line-height: 1.75;
}
body.postid-3786.single-product div.product .woocommerce-product-details__short-description > p:first-child {
	margin: 0 0 16px;
	font-size: 17px;
	font-weight: 600;
}
body.postid-3786.single-product div.product .woocommerce-product-details__short-description ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	margin: 17px 0 20px;
	padding: 0;
	list-style: none;
}
body.postid-3786.single-product div.product .woocommerce-product-details__short-description li {
	position: relative;
	min-height: 58px;
	margin: 0;
	padding: 12px 12px 12px 36px;
	border: 1px solid #e2eaf4;
	border-radius: 10px;
	background: #f8faff;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.45;
}
body.postid-3786.single-product div.product .woocommerce-product-details__short-description li::before {
	position: absolute;
	top: 12px;
	left: 12px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #e7f5ef;
	color: #148250;
	content: "✓";
	font-size: 11px;
	font-weight: 800;
	line-height: 16px;
	text-align: center;
}
body.postid-3786 .ttn-catalogue-product-actions {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 10px;
	margin: 20px 0 7px;
}
body.postid-3786 .ttn-catalogue-product-actions a {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 10px 14px;
	border: 1px solid #075fc8;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
}
body.postid-3786 .ttn-catalogue-quote-button { background: #075fc8; color: #fff !important; }
body.postid-3786 .ttn-catalogue-quote-button:hover { background: #064c9e; }
body.postid-3786 .ttn-catalogue-call-button { background: #fff; color: #075fc8 !important; }
body.postid-3786 .ttn-catalogue-call-button:hover { background: #eff5ff; }
body.postid-3786 .ttn-catalogue-product-note {
	margin: 0;
	color: #697b91;
	font-size: 13px;
	text-align: center;
}
body.postid-3786 .woocommerce-tabs { margin-top: 26px !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
body.postid-3786 .woocommerce-tabs > .tabs { display: none !important; }
body.postid-3786 .woocommerce-tabs .panel {
	display: block !important;
	float: none;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
}
body.postid-3786 .ttn-catalogue-detail-grid {
	display: grid;
	grid-template-columns: minmax(190px, 225px) minmax(0, 1fr) minmax(190px, 225px);
	align-items: start;
	gap: 22px;
}
body.postid-3786 .ttn-catalogue-detail-toc,
body.postid-3786 .ttn-catalogue-consult-card {
	position: sticky;
	top: 18px;
	padding: 19px;
	border: 1px solid #dbe5f1;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 7px 22px rgba(18, 47, 83, .06);
}
body.postid-3786 .ttn-catalogue-detail-toc > strong,
body.postid-3786 .ttn-catalogue-consult-card > strong {
	display: block;
	margin: 0 0 13px;
	color: #142e53;
	font-size: 16px;
	font-weight: 750;
}
body.postid-3786 .ttn-catalogue-detail-toc .ttn-toc-collapse > summary {
	display: block;
	margin: 0 0 13px;
	color: #142e53;
	cursor: pointer;
	font-size: 16px;
	font-weight: 750;
	list-style: none;
}
body.postid-3786 .ttn-catalogue-detail-toc .ttn-toc-collapse > summary::-webkit-details-marker { display: none; }
body.postid-3786 .ttn-catalogue-detail-toc .ttn-toc-collapse > summary::after { float: right; color: #075fc8; content: "−"; }
body.postid-3786 .ttn-catalogue-detail-toc .ttn-toc-collapse:not([open]) > summary { margin-bottom: 0; }
body.postid-3786 .ttn-catalogue-detail-toc .ttn-toc-collapse:not([open]) > summary::after { content: "+"; }
body.postid-3786 .ttn-catalogue-detail-toc nav { display: grid; gap: 4px; }
body.postid-3786 .ttn-catalogue-detail-toc nav a {
	padding: 8px 9px;
	border-radius: 7px;
	color: #334863;
	font-size: 13px;
	line-height: 1.45;
	text-decoration: none;
}
body.postid-3786 .ttn-catalogue-detail-toc nav a:hover { background: #eef4ff; color: #075fc8; }
body.postid-3786 .ttn-catalogue-detail-toc nav a.is-subsection { padding-left: 18px; color: #64748b; }
body.postid-3786 .ttn-catalogue-consult-card { top: 18px; }
body.postid-3786 .ttn-catalogue-consult-card p { margin: 0 0 14px; color: #596d84; font-size: 13px; line-height: 1.65; }
body.postid-3786 .ttn-catalogue-consult-card a {
	display: flex;
	min-height: 39px;
	align-items: center;
	justify-content: center;
	margin-top: 8px;
	padding: 8px 10px;
	border: 1px solid #d7e4f5;
	border-radius: 8px;
	color: #075fc8;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
}
body.postid-3786 .ttn-catalogue-consult-card a:first-of-type { border-color: #075fc8; background: #075fc8; color: #fff; }
body.postid-3786 .ttn-catalogue-detail-article {
	min-width: 0;
	padding: clamp(20px, 3vw, 36px);
	border: 1px solid #dbe5f1;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 25px rgba(18, 47, 83, .05);
	color: #293d56;
	font-size: 16px;
	line-height: 1.85;
	overflow-wrap: anywhere;
}
body.postid-3786 .ttn-catalogue-detail-heading {
	margin: 0 0 24px;
	padding-bottom: 20px;
	border-bottom: 1px solid #e5ebf3;
}
body.postid-3786 .ttn-catalogue-detail-heading > span { color: #f04b25; font-size: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
body.postid-3786 .ttn-catalogue-detail-heading h2 {
	margin: 5px 0 0 !important;
	color: #122d52 !important;
	font-size: clamp(24px, 2.3vw, 31px) !important;
	font-weight: 750 !important;
	line-height: 1.3 !important;
}
body.postid-3786 .ttn-catalogue-detail-article > h2 {
	position: relative;
	margin: 36px 0 16px !important;
	padding: 0 0 11px 50px !important;
	border-bottom: 1px solid #e4ebf4;
	color: #122d52 !important;
	counter-increment: ttn-catalogue-section;
	font-size: clamp(21px, 2vw, 27px) !important;
	font-weight: 750 !important;
	line-height: 1.4 !important;
}
body.postid-3786 .ttn-catalogue-detail-article { counter-reset: ttn-catalogue-section; }
body.postid-3786 .ttn-catalogue-detail-article > h2::before {
	position: absolute;
	left: 0;
	top: -1px;
	color: #b8c9df;
	content: counter(ttn-catalogue-section, decimal-leading-zero) ".";
	font-size: 23px;
	font-weight: 800;
}
body.postid-3786 .ttn-catalogue-detail-article h3 {
	margin: 25px 0 12px !important;
	color: #075fc8 !important;
	font-size: 19px !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
}
body.postid-3786 .ttn-catalogue-detail-article p { margin: 0 0 17px; }
body.postid-3786 .ttn-catalogue-detail-article a { color: #075fc8; text-decoration-thickness: 1px; text-underline-offset: 2px; }
body.postid-3786 .ttn-catalogue-detail-article figure,
body.postid-3786 .ttn-catalogue-detail-article .wp-caption { width: auto !important; max-width: 100% !important; margin: 22px auto !important; }
body.postid-3786 .ttn-catalogue-detail-article figure img,
body.postid-3786 .ttn-catalogue-detail-article .wp-caption img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto !important;
	max-height: 680px;
	margin: 0 auto;
	border-radius: 12px;
	object-fit: contain;
}
body.postid-3786 .ttn-catalogue-detail-article figcaption,
body.postid-3786 .ttn-catalogue-detail-article .wp-caption-text {
	margin-top: 8px;
	color: #6b7b8e;
	font-size: 13px;
	line-height: 1.55;
	text-align: center;
}
body.postid-3786 .ttn-catalogue-detail-article table {
	width: 100%;
	margin: 18px 0 26px;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid #cfdaea;
	border-radius: 10px;
	font-size: 14px;
}
body.postid-3786 .ttn-catalogue-detail-article th,
body.postid-3786 .ttn-catalogue-detail-article td { padding: 11px 12px; border-right: 1px solid #e0e7f0; border-bottom: 1px solid #e0e7f0; }
body.postid-3786 .ttn-catalogue-detail-article tr:first-child th,
body.postid-3786 .ttn-catalogue-detail-article tr:first-child td { background: #edf4ff; color: #17365e; font-weight: 700; }
body.postid-3786 .ttn-catalogue-detail-article tr:last-child td { border-bottom: 0; }
body.postid-3786 .ttn-catalogue-detail-article th:last-child,
body.postid-3786 .ttn-catalogue-detail-article td:last-child { border-right: 0; }
body.postid-3786 .ttn-catalogue-detail-article ul,
body.postid-3786 .ttn-catalogue-detail-article ol { margin: 0 0 20px; padding-left: 23px; }
body.postid-3786 .ttn-catalogue-detail-article li { margin: 0 0 8px; }
body.postid-3786 .related.products {
	margin: 42px 0 54px;
	padding: clamp(18px, 2.5vw, 28px);
	border: 1px solid #dbe5f1;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 25px rgba(18, 47, 83, .05);
}
body.postid-3786 .related.products > h2 { margin: 0 0 20px; }
@media (min-width: 993px) {
	body.postid-3786 #footer.footer-wrapper .contact-box-bottom-nav {
		right: 10px !important;
		width: 62px !important;
		min-width: 0;
		padding: 6px !important;
	}
	body.postid-3786 #footer.footer-wrapper .contact-box-bottom-nav ul { display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; }
	body.postid-3786 #footer.footer-wrapper .contact-box-bottom-nav ul > li > a {
		min-height: 50px;
		flex-direction: column;
		justify-content: center;
		gap: 1px;
		padding: 4px 1px !important;
		font-size: 0 !important;
		line-height: 1;
	}
	body.postid-3786 #footer.footer-wrapper .contact-box-bottom-nav ul > li > a::after { color: #1b3559; font-size: 9px; font-weight: 700; line-height: 1.05; }
	body.postid-3786 #footer.footer-wrapper .contact-box-bottom-nav ul > li:nth-child(1) > a::after { content: "Zalo"; }
	body.postid-3786 #footer.footer-wrapper .contact-box-bottom-nav ul > li:nth-child(2) > a::after { content: "Chat"; }
	body.postid-3786 #footer.footer-wrapper .contact-box-bottom-nav ul > li:nth-child(3) > a::after { content: "Gọi"; }
	body.postid-3786 #footer.footer-wrapper .contact-box-bottom-nav ul > li:nth-child(4) > a::after { content: "Giá"; }
	body.postid-3786 #footer.footer-wrapper .contact-box-bottom-nav ul > li > a > svg { width: 26px !important; height: 26px !important; }
}

@media (max-width: 1100px) {
	body.postid-3786.single-product div.product { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	body.postid-3786 .ttn-catalogue-detail-grid { grid-template-columns: minmax(180px, 215px) minmax(0, 1fr); }
	body.postid-3786 .ttn-catalogue-consult-card { position: static; grid-column: 2; }
}
@media (max-width: 800px) {
	body.postid-3786 .woocommerce-breadcrumb { margin: 16px auto 12px; padding: 0 15px; }
	body.postid-3786.single-product div.product { grid-template-columns: minmax(0, 1fr); gap: 18px; }
	body.postid-3786.single-product div.product .woocommerce-product-gallery__image img { height: min(88vw, 520px) !important; }
	body.postid-3786.single-product div.product .summary { padding: 22px; }
	body.postid-3786 .ttn-catalogue-detail-grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	body.postid-3786 .ttn-catalogue-detail-toc,
	body.postid-3786 .ttn-catalogue-consult-card { position: static; }
	body.postid-3786 .ttn-catalogue-detail-toc nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.postid-3786 .ttn-catalogue-consult-card { grid-column: auto; }
	body.postid-3786 .ttn-catalogue-detail-article { padding: 21px 18px; }
}
@media (max-width: 520px) {
	body.postid-3786.single-product div.product .woocommerce-product-gallery { padding: 6px; border-radius: 13px; }
	body.postid-3786.single-product div.product .summary { padding: 18px; border-radius: 13px; }
	body.postid-3786.single-product div.product .product_title { font-size: 27px; }
	body.postid-3786.single-product div.product .summary > .price { padding: 14px; font-size: 23px; }
	body.postid-3786.single-product div.product .woocommerce-product-details__short-description ul { grid-template-columns: minmax(0, 1fr); }
	body.postid-3786 .ttn-catalogue-product-actions { grid-template-columns: minmax(0, 1fr); }
	body.postid-3786 .ttn-catalogue-detail-toc nav { grid-template-columns: minmax(0, 1fr); }
	body.postid-3786 .ttn-catalogue-detail-article { font-size: 15px; line-height: 1.75; }
	body.postid-3786 .ttn-catalogue-detail-article table { display: block; overflow-x: auto; white-space: nowrap; }
	body.postid-3786 .related.products { padding: 16px 12px; }
}

/* Giay Ivory: keep article media, quote form, footer and mobile contact dock in a clean flow. */
body.postid-7015 .ttn-article-single,
body.postid-7015 .ttn-article-main-column,
body.postid-7015 .ttn-article-card,
body.postid-7015 .ttn-article-content {
	min-width: 0;
	float: none !important;
	clear: both;
}

body.postid-7015 .ttn-article-content figure,
body.postid-7015 .ttn-article-content .wp-caption {
	display: block;
	width: auto !important;
	max-width: 100% !important;
	float: none !important;
	clear: both;
	margin: 22px auto !important;
	box-sizing: border-box;
}

body.postid-7015 .ttn-article-content figure img,
body.postid-7015 .ttn-article-content .wp-caption img {
	display: block;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	margin: 0 auto;
	object-fit: contain;
}

body.postid-7015 .ttn-article-content figcaption,
body.postid-7015 .ttn-article-content .wp-caption-text {
	position: static !important;
	display: block;
	width: auto !important;
	max-width: 100%;
	margin: 8px auto 0;
	color: #687990;
	font-size: 13px;
	font-style: italic;
	line-height: 1.55;
	text-align: center;
}

body.postid-7015 .ttn-article-content iframe,
body.postid-7015 .ttn-article-content video {
	display: block;
	max-width: 100%;
	margin: 20px auto;
}

body.postid-7015 .ttn-ivory-related,
body.postid-7015 #footer.footer-wrapper {
	position: relative;
	clear: both;
	margin-top: 0 !important;
}

body.postid-7015 #footer.footer-wrapper {
	z-index: 1;
}

/* Quote popup: replace legacy floated columns with a readable, responsive form. */
body.postid-7015 .custom-model-main:not(.model-open) {
	display: none !important;
}

body.postid-7015 .custom-model-main.model-open {
	display: block !important;
	box-sizing: border-box;
	padding: 16px;
	background: rgba(20, 35, 60, .48);
	z-index: 99999;
}

body.postid-7015 .custom-model-inner,
body.postid-7015 .model-open .custom-model-inner {
	width: min(720px, 100%);
	max-width: 100%;
	margin: 20px auto;
	transform: none !important;
	vertical-align: top;
}

body.postid-7015 .custom-model-wrap {
	max-height: calc(100vh - 40px);
	padding: 26px;
	border: 1px solid #dce6f4;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 22px 65px rgba(12, 34, 66, .22);
}

body.postid-7015 .custom-model-wrap::before {
	display: block;
	margin: 0 42px 6px 0;
	color: #17385f;
	content: "Liên hệ báo giá";
	font-size: 22px;
	font-weight: 750;
	line-height: 1.3;
}

body.postid-7015 .pop-up-content-wrap::before {
	display: block;
	margin: 0 0 18px;
	color: #65758a;
	content: "Gửi thông tin và quy cách, In Nhanh TTN sẽ liên hệ tư vấn sớm nhất.";
	font-size: 13px;
	line-height: 1.5;
}

body.postid-7015 .custom-model-main .close-btn {
	top: 9px;
	right: 9px;
	width: 34px;
	height: 34px;
	border: 1px solid #dce6f4;
	border-radius: 50%;
	background: #f3f7fd;
	color: #17385f;
	font-size: 23px;
	line-height: 31px;
	text-align: center;
}

body.postid-7015 #quote-form1,
body.postid-7015 #quote-form2 {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	width: 100%;
	margin: 0;
}

body.postid-7015 #quote-form2 > input[type="hidden"] {
	display: none;
}

body.postid-7015 #quote-form1 > .form-yeucau,
body.postid-7015 #quote-form2 > .form-yeucau {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-content: start;
	gap: 6px;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid #e3ebf5;
	border-radius: 11px;
	background: #fbfcff;
}

body.postid-7015 #quote-form2 > .form-yeucau:first-of-type,
body.postid-7015 #quote-form2 > .form-yeucau:nth-of-type(7),
body.postid-7015 #quote-form1 > .form-yeucau:nth-of-type(7),
body.postid-7015 #quote-form1 > .form-sm,
body.postid-7015 #quote-form2 > .form-sm {
	grid-column: 1 / -1;
}

body.postid-7015 #quote-form2 .title-left,
body.postid-7015 #quote-form2 .data-right {
	display: block;
	float: none !important;
	width: 100%;
	margin: 0;
	text-align: left;
}

body.postid-7015 #quote-form2 .title-left {
	color: #53677f;
	font-size: 13px;
	font-weight: 650;
}

body.postid-7015 #quote-form2 .data-right {
	color: #075fc9;
	font-size: 15px;
	font-weight: 700;
	text-transform: none;
}

body.postid-7015 #quote-form1 .data {
	display: block;
	float: none !important;
	width: 100%;
	margin: 0;
	text-align: left;
}

body.postid-7015 #quote-form1 input:not([type="hidden"]),
body.postid-7015 #quote-form1 select,
body.postid-7015 #quote-form1 textarea,
body.postid-7015 #quote-form2 input:not([type="hidden"]),
body.postid-7015 #quote-form2 select,
body.postid-7015 #quote-form2 textarea {
	display: block;
	width: 100% !important;
	max-width: 100%;
	min-height: 42px;
	margin: 0;
	padding: 9px 11px;
	border: 1px solid #d5e0ef;
	border-radius: 8px;
	background: #fff;
	box-shadow: none;
	color: #203550;
	font: inherit;
	font-size: 14px;
	box-sizing: border-box;
}

body.postid-7015 #quote-form1 textarea,
body.postid-7015 #quote-form2 textarea {
	min-height: 92px;
	resize: vertical;
}

body.postid-7015 #quote-form2 .form-sm {
	margin: 2px 0 0;
}

body.postid-7015 #quote-form1 .form-sm button,
body.postid-7015 #quote-form2 .form-sm button {
	min-height: 46px;
	border-radius: 9px;
	background: #f04b25 !important;
	font-size: 15px;
	font-weight: 700;
}

@media (max-width: 600px) {
	body.postid-7015 .custom-model-main.model-open {
		padding: 10px;
	}

	body.postid-7015 .custom-model-inner,
	body.postid-7015 .model-open .custom-model-inner {
		width: 100%;
		margin: 10px auto;
	}

	body.postid-7015 .custom-model-wrap {
		max-height: calc(100vh - 20px);
		padding: 20px 15px 15px;
		border-radius: 15px;
	}

	body.postid-7015 .custom-model-wrap::before {
		font-size: 20px;
	}

	body.postid-7015 #quote-form1,
	body.postid-7015 #quote-form2 {
		grid-template-columns: minmax(0, 1fr);
		gap: 9px;
	}

	body.postid-7015 #quote-form2 > .form-yeucau:first-of-type,
	body.postid-7015 #quote-form2 > .form-yeucau:nth-of-type(7),
	body.postid-7015 #quote-form1 > .form-yeucau:nth-of-type(7),
	body.postid-7015 #quote-form1 > .form-sm,
	body.postid-7015 #quote-form2 > .form-sm {
		grid-column: 1;
	}
}

@media (max-width: 992px) {
	body.postid-7015 {
		padding-bottom: calc(160px + env(safe-area-inset-bottom)) !important;
	}

	body.postid-7015:has(.custom-model-main.model-open) #footer .contact-box-bottom-nav {
		display: none !important;
	}
}

/* Responsive article layout for the PVC card page (post 8117). */
body.single-post.postid-8117 main#main .single-content > .row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	gap: 0;
	width: min(1500px, calc(100% - 48px));
	max-width: 1500px;
	margin: 0 auto !important;
}

body.single-post.postid-8117 main#main .single-content > .row > .col {
	float: none;
	width: auto !important;
	max-width: none !important;
	min-width: 0;
	padding-right: 0 !important;
	padding-left: 0 !important;
	flex: initial !important;
}

body.single-post.postid-8117 main#main .single-content > .row > .col.large-4 {
	display: none !important;
}

body.single-post.postid-8117 .single-left,
body.single-post.postid-8117 .ttn-pvc,
body.single-post.postid-8117 .ttn-pvc * {
	min-width: 0;
}

body.single-post.postid-8117 .ttn-pvc {
	width: 100%;
	max-width: 100%;
}

body.single-post.postid-8117 .ttn-pvc .wrap {
	width: 100%;
}

body.single-post.postid-8117 .ttn-pvc .grid > .card img,
body.single-post.postid-8117 .ttn-pvc .gallery img {
	width: 100%;
	height: auto;
	max-height: none;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	background: #f6f9fd;
}

body.single-post.postid-8117 .ttn-pvc .price-scroll {
	max-width: 100%;
	overscroll-behavior-inline: contain;
}

body.single-post.postid-8117 .ttn-pvc :where(p, li, td, th, a, h1, h2, h3) {
	min-width: 0;
	overflow-wrap: anywhere;
}

@media (min-width: 768px) and (max-width: 1099px) {
	body.single-post.postid-8117 .single-content > .row {
		width: calc(100% - 40px);
	}

	body.single-post.postid-8117 .ttn-pvc h1 {
		font-size: clamp(32px, 3.2vw, 38px);
	}

	body.single-post.postid-8117 .ttn-pvc .hero-grid,
	body.single-post.postid-8117 .ttn-pvc .two {
		gap: 24px;
	}

	body.single-post.postid-8117 .ttn-pvc .grid,
	body.single-post.postid-8117 .ttn-pvc .spec-grid,
	body.single-post.postid-8117 .ttn-pvc .badge-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.single-post.postid-8117 .ttn-pvc .gallery {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 849px) {
	body.single-post.postid-8117 main#main .single-content > .row {
		width: calc(100% - 24px);
	}

	body.single-post.postid-8117 {
		padding-bottom: calc(96px + env(safe-area-inset-bottom));
	}
}

@media (max-width: 767px) {
	body.single-post.postid-8117 .single-content {
		padding-top: 24px;
		padding-bottom: 30px;
	}

	body.single-post.postid-8117 .single-left .title-sg {
		padding: 22px 16px;
	}

	body.single-post.postid-8117 .ttn-pvc section {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	body.single-post.postid-8117 .ttn-pvc .wrap {
		padding-right: 16px;
		padding-left: 16px;
	}

	body.single-post.postid-8117 .ttn-pvc .card {
		padding: 16px;
	}

	body.single-post.postid-8117 .ttn-pvc .grid > .card img {
		margin-bottom: 12px;
	}

	body.single-post.postid-8117 .ttn-pvc .gallery {
		gap: 10px;
	}

	body.single-post.postid-8117 .ttn-pvc .gallery img {
		border: 1px solid #e2e9f2;
		border-radius: 10px;
	}
}

@media (max-width: 374px) {
	body.single-post.postid-8117 main#main .single-content > .row {
		width: calc(100% - 16px);
	}

	body.single-post.postid-8117 .ttn-pvc h1 {
		font-size: 28px;
	}

	body.single-post.postid-8117 .ttn-pvc .wrap {
		padding-right: 12px;
		padding-left: 12px;
	}
}

/* The image widget contains the obsolete phone number previously requested for removal. */
body #media_image-2 {
	display: none !important;
}

body.single-post.postid-8117 main#main .related-ct > .row {
	width: 100%;
	max-width: 1500px;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

body.single-post.postid-8117 main#main .related-ct > .row > .col {
	width: 100% !important;
	max-width: 100% !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
	flex: initial !important;
}

body.single-post.postid-8117 main#main .related-ct .slick-list {
	margin-right: 0 !important;
	margin-left: 0 !important;
}


/* Trang chủ: thẻ sản phẩm và tin tức đồng bộ phong cách TTN. */
body.home .products-grid-ct {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	align-items: stretch;
	gap: 18px;
}
body.home .products-grid-ct > .item-product {
	min-width: 0;
	height: 100%;
	overflow: hidden;
	border: 1px solid #e3eaf3;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 4px 16px rgba(23, 52, 91, .07);
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
body.home .products-grid-ct > .item-product:hover {
	transform: translateY(-3px);
	border-color: #cbd9ea;
	box-shadow: 0 12px 26px rgba(23, 52, 91, .12);
}
body.home .products-grid-ct > .item-product > a {
	display: flex;
	height: 100%;
	flex-direction: column;
	color: inherit;
	text-decoration: none;
}
body.home .products-grid-ct .box-img {
	display: block;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #f5f8fc;
}
body.home .products-grid-ct .box-img img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: none;
	margin: 0;
	padding: 12px;
	object-fit: contain;
	transition: transform .22s ease;
}
body.home .products-grid-ct > .item-product:hover .box-img img {
	transform: scale(1.035);
}
body.home .products-grid-ct .box-content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 14px 15px 16px;
}
body.home .products-grid-ct .box-content .product-title {
	min-height: 2.8em;
	margin: 0 0 9px;
	color: #17345b;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
}
body.home .products-grid-ct .box-content .price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 9px;
	margin: 0 0 8px;
	color: #f54e24;
	font-size: 17px;
	font-weight: 750;
	line-height: 1.35;
}
body.home .products-grid-ct .box-content .price del {
	color: #8a98aa;
	font-size: 13px;
	font-weight: 500;
	opacity: 1;
}
body.home .products-grid-ct .box-content .price ins {
	background: transparent;
	color: #d94225;
	text-decoration: none;
}
body.home .products-grid-ct .box-content .price bdi {
	white-space: nowrap;
}
body.home .products-grid-ct .box-content > p {
	margin: auto 0 0;
	padding: 8px 9px;
	border-radius: 8px;
	background: #f4f7fc;
	color: #64748b;
	font-size: 13px;
	line-height: 1.4;
}
body.home .news-slider .slick-list {
	margin: 0 -10px;
	padding: 6px 0 18px;
}
body.home .news-slider .slick-slide {
	height: auto;
	padding: 0 10px;
}
body.home .news-slider .slick-slide > div,
body.home .news-slider .item-sl {
	height: 100%;
}
body.home .news-slider .item-sl {
	display: flex;
	min-width: 0;
	overflow: hidden;
	padding: 0;
	border: 1px solid #e3eaf3;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 4px 16px rgba(23, 52, 91, .07);
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
body.home .news-slider .item-sl:hover {
	transform: translateY(-3px);
	border-color: #cbd9ea;
	box-shadow: 0 12px 26px rgba(23, 52, 91, .12);
}
body.home .news-slider .item-sl > a {
	display: flex;
	width: 100%;
	height: 100%;
	flex-direction: column;
	padding: 12px 14px 14px;
	color: inherit;
	text-decoration: none;
}
body.home .news-slider .item-sl img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 10;
	margin: 0 0 12px;
	border-radius: 10px;
	background: #f5f8fc;
	object-fit: cover;
}
body.home .news-slider .item-sl label {
	width: fit-content;
	margin: 0 0 9px;
	padding: 5px 9px;
	border-radius: 999px;
	background: #f1f6fd;
	color: #64748b;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
}
body.home .news-slider .item-sl h4 {
	display: -webkit-box;
	min-height: 2.8em;
	margin: 0 0 10px;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: #17345b;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
}
body.home .news-slider .item-sl > a > span {
	display: flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 8px;
	color: #005edb;
	font-size: 14px;
	font-weight: 700;
}
body.home .news-slider .item-sl > a:hover > span {
	color: #d94225;
}
body.home .news-slider .slick-dots li button {
	border-color: #005edb;
}
body.home .news-slider .slick-dots li.slick-active button {
	border-color: #005edb;
	background: #005edb;
}
@media (max-width: 1199px) {
	body.home .products-grid-ct {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 16px;
	}
}
@media (max-width: 849px) {
	body.home .products-grid-ct {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 14px;
	}
}
@media (max-width: 600px) {
	body.home .products-grid-ct {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}
	body.home .products-grid-ct .box-img img {
		padding: 9px;
	}
	body.home .products-grid-ct .box-content {
		padding: 12px;
	}
	body.home .products-grid-ct .box-content .product-title,
	body.home .news-slider .item-sl h4 {
		font-size: 14px;
	}
	body.home .products-grid-ct .box-content .price {
		font-size: 16px;
	}
	body.home .products-grid-ct .box-content > p {
		font-size: 12px;
	}
	body.home .news-slider .slick-list {
		margin: 0 -7px;
		padding-top: 4px;
	}
	body.home .news-slider .slick-slide {
		padding: 0 7px;
	}
	body.home .news-slider .item-sl > a {
		padding: 9px;
	}
	body.home .news-slider .item-sl img {
		margin-bottom: 9px;
	}
	body.home .news-slider .item-sl label {
		padding: 4px 7px;
		font-size: 11px;
	}
	body.home .news-slider .item-sl > a > span {
		font-size: 12px;
	}
}
@media (max-width: 360px) {
	body.home .products-grid-ct {
		gap: 9px;
	}
	body.home .products-grid-ct .box-content {
		padding: 10px;
	}
	body.home .products-grid-ct .box-content .price del {
		font-size: 12px;
	}
}/* WooCommerce product detail: restore full-width image and purchase columns. */
body.single-product #main.site-main > .container {
	width: min(1320px, calc(100% - 48px));
	max-width: 1320px;
}
body.single-product.woocommerce div.product {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
	align-items: start;
	gap: clamp(22px, 3vw, 40px);
	width: 100%;
	margin: 0 auto 38px;
}
body.single-product.woocommerce div.product div.images,
body.single-product.woocommerce div.product div.summary {
	float: none !important;
	width: 100% !important;
	min-width: 0;
	max-width: 100%;
	margin: 0 !important;
}
body.single-product div.product .woocommerce-product-gallery {
	position: relative;
	overflow: hidden;
	padding: 12px;
	border: 1px solid var(--ttn-border, #e2e8f0);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(20, 35, 60, .06);
}
body.single-product .woocommerce-product-gallery .flex-viewport,
body.single-product .woocommerce-product-gallery__wrapper,
body.single-product .woocommerce-product-gallery__image {
	width: 100% !important;
}
body.single-product .woocommerce-product-gallery__image img {
	display: block;
	width: 100% !important;
	height: clamp(360px, 40vw, 560px) !important;
	max-height: 600px;
	border: 0;
	border-radius: 10px;
	background: #f5f8fc;
	object-fit: contain !important;
}
body.single-product .woocommerce-product-gallery .flex-control-thumbs {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 8px;
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 3px;
	border: 1px solid var(--ttn-border, #e2e8f0);
	border-radius: 8px;
	background: #fff;
}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img {
	display: block;
	width: 100%;
	height: 70px !important;
	border-radius: 5px;
	object-fit: cover;
}
body.single-product div.product .onsale {
	top: 20px;
	left: 20px;
	z-index: 2;
	min-width: 0;
	min-height: 0;
	padding: 8px 12px;
	border-radius: 999px;
	background: var(--ttn-brand, #f04b25);
	font-size: 13px;
	font-weight: 700;
}
body.single-product div.product .summary {
	padding: clamp(22px, 2.5vw, 34px);
	border: 1px solid var(--ttn-border, #e2e8f0);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(20, 35, 60, .06);
	color: var(--ttn-text, #334155);
	line-height: 1.7;
}
body.single-product div.product .product_title {
	margin: 0 0 16px;
	color: var(--ttn-ink, #14233d);
	font-size: clamp(27px, 2.6vw, 36px);
	font-weight: 750;
	line-height: 1.22;
}
body.single-product div.product .summary > .price {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 8px 12px;
	margin: 0 0 20px;
	color: var(--ttn-brand-dark, #d83f1d);
	font-size: clamp(22px, 2vw, 28px);
	font-weight: 750;
}
body.single-product div.product .summary > .price del { color: #8b96a5; font-size: 16px; font-weight: 500; }
body.single-product div.product .summary > .price ins { color: var(--ttn-brand-dark, #d83f1d); text-decoration: none; }
body.single-product div.product .woocommerce-product-details__short-description { color: var(--ttn-text, #334155); font-size: 15px; line-height: 1.75; }
body.single-product div.product .woocommerce-product-details__short-description > p:first-child { margin-top: 0; font-size: 16px; font-weight: 600; }
body.single-product div.product .woocommerce-product-details__short-description ul { margin: 16px 0 20px; padding-left: 20px; }
body.single-product div.product .woocommerce-product-details__short-description li { margin-bottom: 8px; }
body.single-product div.product form.cart { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 20px 0 14px; }
body.single-product div.product form.cart .quantity .qty { width: 76px; min-height: 46px; border: 1px solid #d5deea; border-radius: 8px; text-align: center; }
body.single-product div.product .single_add_to_cart_button { min-height: 46px; padding: 10px 20px; border: 0; border-radius: 8px; background: var(--ttn-brand, #f04b25); color: #fff; font-weight: 700; }
body.single-product div.product .product_meta { padding-top: 12px; border-top: 1px solid var(--ttn-border, #e2e8f0); color: var(--ttn-muted, #64748b); font-size: 13px; }
body.single-product div.product .product_meta a { color: var(--ttn-link, #1559c4); }
body.single-product.woocommerce div.product > .woocommerce-tabs,
body.single-product.woocommerce div.product > .related.products { grid-column: 1 / -1; width: 100%; min-width: 0; }
body.single-product .woocommerce-tabs .panel { max-width: 100%; overflow-wrap: anywhere; }
body.single-product .woocommerce-tabs .panel img,
body.single-product .woocommerce-tabs .panel figure,
body.single-product .woocommerce-tabs .panel .wp-caption { max-width: 100% !important; height: auto; }
body.single-product .woocommerce-tabs .panel img { display: block; height: auto !important; margin-right: auto; margin-left: auto; object-fit: contain; }
body.single-product .related.products > h2 { margin: 0 0 18px; color: var(--ttn-ink, #14233d); font-size: clamp(22px, 2.3vw, 29px); }
@media (max-width: 900px) {
	body.single-product #main.site-main > .container { width: calc(100% - 32px); }
	body.single-product.woocommerce div.product { grid-template-columns: minmax(0, 1fr); gap: 18px; }
	body.single-product.woocommerce div.product > .woocommerce-product-gallery,
	body.single-product.woocommerce div.product > .summary,
	body.single-product.woocommerce div.product > .woocommerce-tabs,
	body.single-product.woocommerce div.product > .related.products { grid-column: 1; }
	body.single-product .woocommerce-product-gallery__image img { height: min(88vw, 520px) !important; }
	body.single-product div.product .summary { padding: 22px; }
}
@media (max-width: 600px) {
	body.single-product #main.site-main > .container { width: calc(100% - 28px); }
	body.single-product div.product .woocommerce-product-gallery { padding: 8px; border-radius: 13px; }
	body.single-product .woocommerce-product-gallery .flex-control-thumbs { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; }
	body.single-product .woocommerce-product-gallery .flex-control-thumbs img { height: 58px !important; }
	body.single-product div.product .summary { padding: 18px; border-radius: 13px; }
	body.single-product div.product .product_title { font-size: 27px; }
	body.single-product div.product .single_add_to_cart_button { flex: 1 1 auto; }
	body.single-product .woocommerce-tabs { margin-top: 10px; padding: 16px; }
	body.single-product .woocommerce-tabs .panel { font-size: 15px; line-height: 1.75; }
	body.single-product .related.products ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
}
@media (max-width: 380px) {
	body.single-product .woocommerce-product-gallery .flex-control-thumbs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	body.single-product div.product .summary { padding: 16px; }
}


/* TTN mobile header spacing and logo scale */
@media (max-width: 600px) {
  #header .header-main .header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-right: 12px !important;
    padding-left: 12px !important;
  }
  #header .header-main #logo,
  #header .header-main .logo {
    flex: 0 0 auto;
    width: auto !important;
    max-width: 112px;
    margin: 0 !important;
  }
  #header .header-main #logo img,
  #header .header-main .logo img {
    display: block;
    width: 108px !important;
    max-width: 108px !important;
    max-height: 50px;
    height: auto !important;
    object-fit: contain;
  }
  #header .header-main .flex-right {
    flex: 0 0 auto;
    min-width: 0;
    margin-left: auto;
  }
  #header .header-main .flex-right .mobile-nav,
  #header .header-main .flex-right .nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
  }
  #header .header-main .flex-right .mobile-nav > li,
  #header .header-main .flex-right .nav > li {
    flex: 0 0 auto;
    margin: 0 !important;
    padding: 0 !important;
  }
  #header .header-main .flex-right .mobile-nav > li > a,
  #header .header-main .flex-right .nav > li > a,
  #header .header-main a[href^="tel:"],
  #header .header-main a[href*="zalo.me"],
  #header .header-main a[href*="/gio-hang/"] {
    min-width: 40px;
    padding-right: 4px !important;
    padding-left: 4px !important;
  }
}
@media (max-width: 380px) {
  #header .header-main #logo img,
  #header .header-main .logo img {
    width: 98px !important;
    max-width: 98px !important;
    max-height: 46px;
  }
  #header .header-main .header-inner { gap: 8px; }
  #header .header-main .flex-right .mobile-nav,
  #header .header-main .flex-right .nav { gap: 5px; }
  #header .header-main .flex-right .mobile-nav > li > a,
  #header .header-main .flex-right .nav > li > a,
  #header .header-main a[href^="tel:"],
  #header .header-main a[href*="zalo.me"],
  #header .header-main a[href*="/gio-hang/"] { min-width: 36px; }
}


/* Mobile header: compact logo and even action spacing */
@media (max-width: 600px) {
  #header .ttn-header-inner {
    gap: 12px;
    padding-right: 14px;
    padding-left: 14px;
  }
  #header .ttn-logo {
    flex: 0 0 108px;
    width: 108px;
    max-width: 108px;
  }
  #header .ttn-logo img {
    display: block;
    width: 108px !important;
    max-width: 108px !important;
    max-height: 54px;
    height: auto !important;
    object-fit: contain;
  }
  #header .ttn-header-mobile-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px !important;
    margin-left: auto;
  }
  #header .ttn-header-mobile-actions > a,
  #header .ttn-header-mobile-actions > button {
    flex: 0 0 42px;
    width: 42px;
    min-width: 42px;
    height: 42px;
    padding: 4px 2px;
    border-radius: 10px;
  }
}
@media (max-width: 380px) {
  #header .ttn-header-inner { gap: 8px; }
  #header .ttn-logo,
  #header .ttn-logo img {
    flex-basis: 96px;
    width: 96px !important;
    max-width: 96px !important;
  }
  #header .ttn-logo img { max-height: 48px; }
  #header .ttn-header-mobile-actions { gap: 6px !important; }
  #header .ttn-header-mobile-actions > a,
  #header .ttn-header-mobile-actions > button {
    flex-basis: 38px;
    width: 38px;
    min-width: 38px;
    height: 40px;
  }
}


/* Hide unused WordPress sidebar widgets on mobile only */
@media (max-width: 767px) {
  #main #secondary,
  #main #sidebar,
  #main aside.sidebar,
  #main .sidebar,
  #main .widget-area,
  #main .secondary-sidebar {
    display: none !important;
  }
  #main #primary,
  #main .primary,
  #main .content-area {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    flex: 0 0 100% !important;
  }
}


/* Sticky header: pin the site header while scrolling */
#header {
  position: sticky !important;
  top: 0 !important;
  z-index: 10000 !important;
  background: #fff;
}
@media (min-width: 783px) {
  body.admin-bar #header { top: 32px !important; }
}


/* Dedicated Catalogue gallery: responsive cards with consistent captions. */
body.postid-3786 .ttn-catalogue-completed-gallery {
  max-width: 1280px;
  margin: 28px auto 36px;
  padding: clamp(20px, 3vw, 34px);
  border: 1px solid #dfe8f3;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(19, 49, 86, .07);
}
body.postid-3786 .ttn-catalogue-completed-gallery-header { position: relative; margin: 0 0 22px; padding-right: 120px; }
body.postid-3786 .ttn-catalogue-completed-gallery-eyebrow {
  display: inline-flex; margin: 0 0 8px; padding: 5px 10px; border-radius: 999px;
  background: #eaf2ff; color: #075fc8; font-size: 12px; font-weight: 700;
}
body.postid-3786 .ttn-catalogue-completed-gallery-header h2 {
  margin: 0 0 7px; color: #142d4e; font-size: clamp(22px, 2.5vw, 30px);
  font-weight: 800; line-height: 1.25;
}
body.postid-3786 .ttn-catalogue-completed-gallery-header p { margin: 0; color: #64748b; font-size: 15px; }
body.postid-3786 .ttn-catalogue-completed-gallery-count {
  position: absolute; top: 50%; right: 0; transform: translateY(-50%); padding: 8px 12px;
  border: 1px solid #dce8f7; border-radius: 999px; background: #f6f9ff;
  color: #075fc8; font-size: 13px; font-weight: 700;
}
body.postid-3786 .ttn-catalogue-completed-gallery-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
body.postid-3786 .ttn-catalogue-completed-gallery-item {
  min-width: 0; margin: 0 !important; overflow: hidden; border: 1px solid #e1e8f0;
  border-radius: 13px; background: #fff; box-shadow: 0 4px 14px rgba(18, 47, 83, .05);
}
body.postid-3786 .ttn-catalogue-completed-gallery-image {
  display: grid; place-items: center; width: 100%; height: 220px; padding: 8px; overflow: hidden; background: #f4f7fb;
}
body.postid-3786 .ttn-catalogue-completed-gallery-image img {
  display: block; width: 100%; height: 100%; margin: 0 !important; object-fit: contain; transition: transform .25s ease;
}
body.postid-3786 .ttn-catalogue-completed-gallery-image:hover img { transform: scale(1.035); }
body.postid-3786 .ttn-catalogue-completed-gallery-item figcaption {
  display: -webkit-box; min-height: 54px; margin: 0 !important; padding: 11px 12px; overflow: hidden;
  color: #334155; font-size: 13px; font-style: normal; font-weight: 600; line-height: 1.45;
  -webkit-box-orient: vertical; -webkit-line-clamp: 2;
}
@media (max-width: 1000px) {
  body.postid-3786 .ttn-catalogue-completed-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  body.postid-3786 .ttn-catalogue-completed-gallery { margin: 20px 12px 26px; padding: 18px 14px; border-radius: 14px; }
  body.postid-3786 .ttn-catalogue-completed-gallery-header { margin-bottom: 16px; padding-right: 0; }
  body.postid-3786 .ttn-catalogue-completed-gallery-header h2 { font-size: 22px; }
  body.postid-3786 .ttn-catalogue-completed-gallery-header p { padding-right: 0; font-size: 14px; }
  body.postid-3786 .ttn-catalogue-completed-gallery-count { position: static; display: inline-flex; margin-top: 10px; transform: none; }
  body.postid-3786 .ttn-catalogue-completed-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  body.postid-3786 .ttn-catalogue-completed-gallery-image { height: clamp(125px, 38vw, 190px); padding: 5px; }
  body.postid-3786 .ttn-catalogue-completed-gallery-item figcaption { min-height: 48px; padding: 8px; font-size: 11px; }
}


/* Catalogue related products: clear card layout matching the In Viet Dung reference. */
body.postid-3786 .related.products {
  margin: 32px 0 48px;
  padding: clamp(18px, 2.5vw, 30px);
  border: 1px solid #e0e9f5;
  border-radius: 18px;
  background: linear-gradient(180deg, #f2f7ff 0%, #fbfdff 100%);
  box-shadow: 0 8px 25px rgba(18, 47, 83, .05);
}
body.postid-3786 .related.products > h2 {
  position: relative; margin: 0 0 24px; color: #142d4e;
  font-size: clamp(21px, 2vw, 27px); font-weight: 800; line-height: 1.3; text-align: center;
}
body.postid-3786 .related.products > h2::after {
  display: block; width: 54px; height: 3px; margin: 10px auto 0;
  border-radius: 999px; background: #1769e0; content: "";
}
body.postid-3786 .related.products .products {
  display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important; width: 100% !important; margin: 0 !important;
}
body.postid-3786 .related.products .products > .product-small {
  display: flex !important; width: auto !important; max-width: none !important; min-width: 0;
  margin: 0 !important; padding: 0 !important; flex: none !important; overflow: hidden;
  border: 1px solid #dce5ef; border-radius: 15px; background: #fff;
  box-shadow: 0 4px 14px rgba(20, 45, 78, .06); transition: transform .2s ease, box-shadow .2s ease;
}
body.postid-3786 .related.products .products > .product-small:hover {
  transform: translateY(-3px); box-shadow: 0 10px 24px rgba(20, 45, 78, .12);
}
body.postid-3786 .related.products .product-small > .col-inner,
body.postid-3786 .related.products .product-small .box { display: flex; width: 100%; height: 100%; flex-direction: column; }
body.postid-3786 .related.products .product-small .box-image { margin: 0 !important; padding: 9px !important; background: #fff; }
body.postid-3786 .related.products .product-small .box-image .image-cover {
  height: auto !important; padding-top: 66.6667% !important; border-radius: 10px; background: #f4f7fb;
}
body.postid-3786 .related.products .product-small .box-image img {
  width: 100% !important; height: 100% !important; border-radius: 9px; object-fit: cover !important;
}
body.postid-3786 .related.products .product-small .box-text {
  display: flex; min-height: 0; flex: 1; flex-direction: column;
  padding: 7px 12px 13px !important; text-align: left !important;
}
body.postid-3786 .related.products .product-small .title-wrapper { margin: 0 0 9px; }
body.postid-3786 .related.products .product-small .product-title {
  min-height: 42px; margin: 0 !important; font-size: 14px; font-weight: 700; line-height: 1.45;
}
body.postid-3786 .related.products .product-small .product-title a {
  display: -webkit-box; overflow: hidden; color: #1e293b; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
}
body.postid-3786 .related.products .product-small .star-rating { margin: 0 0 9px; color: #f28a18; font-size: 13px; }
body.postid-3786 .related.products .product-small .price-wrapper { margin: auto 0 10px !important; padding: 0 !important; }
body.postid-3786 .related.products .product-small .price {
  display: flex; min-height: 40px; align-items: center; flex-wrap: wrap; gap: 5px;
  margin: 0 !important; padding: 8px 10px !important; border-radius: 9px; background: #edf2f7;
  color: #566579; font-size: 13px; line-height: 1.25;
}
body.postid-3786 .related.products .product-small .price::before { color: #64748b; font-weight: 400; content: "Giá từ:"; }
body.postid-3786 .related.products .product-small .price ins,
body.postid-3786 .related.products .product-small .price ins .woocommerce-Price-amount { color: #075fc8 !important; font-weight: 800; }
body.postid-3786 .related.products .product-small .price del { color: #8693a4; font-size: 12px; }
body.postid-3786 .related.products .product-small .add-to-cart-button { margin: 0 !important; }
body.postid-3786 .related.products .product-small .ttn-related-details-button {
  display: flex !important; min-height: 40px; align-items: center; justify-content: center; margin: 0 !important;
  padding: 9px 12px !important; border: 0 !important; border-radius: 999px !important;
  background: linear-gradient(90deg, #2f63e9, #174bd5) !important; box-shadow: none !important;
  color: #fff !important; font-size: 14px !important; font-weight: 700 !important; line-height: 1.2;
  text-align: center; text-transform: none;
}
body.postid-3786 .related.products .product-small .ttn-related-details-button:hover {
  background: linear-gradient(90deg, #174bd5, #103eaf) !important; color: #fff !important;
}
@media (max-width: 1000px) {
  body.postid-3786 .related.products .products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 14px !important; }
}
@media (max-width: 640px) {
  body.postid-3786 .related.products { margin: 24px 12px 36px; padding: 18px 12px; border-radius: 14px; }
  body.postid-3786 .related.products > h2 { margin-bottom: 17px; font-size: 22px; }
  body.postid-3786 .related.products .products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
  body.postid-3786 .related.products .product-small .box-image { padding: 7px !important; }
  body.postid-3786 .related.products .product-small .box-text { padding: 6px 9px 10px !important; }
  body.postid-3786 .related.products .product-small .product-title { min-height: 40px; font-size: 13px; }
  body.postid-3786 .related.products .product-small .price { min-height: 38px; padding: 7px 8px !important; font-size: 12px; }
  body.postid-3786 .related.products .product-small .ttn-related-details-button { min-height: 37px; padding: 8px 7px !important; font-size: 12px !important; }
}
/* Desktop footer: keep the campaign image in flow and align the cards with the 1260px page width. */
@media (min-width: 1100px) {
  #main .ss-baogia .img-inner.image-cover {
    width: 100%;
    height: auto !important;
    aspect-ratio: 1 / 1;
    overflow: hidden;
  }

  #main .ss-baogia .img-inner.image-cover > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  #footer.footer-wrapper > .section:nth-of-type(2) .section-content {
    width: min(1260px, calc(100% - 48px));
    max-width: 1260px;
  }

  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
  }

  #footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh,
  #footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .text-d {
    min-width: 0;
  }

  #footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .text-d a {
    display: block;
    overflow-wrap: anywhere;
  }
}


/* Make the utility-strip labels bolder while preserving their current size and color. */
.ttn-benefits-bar .ttn-benefit-item span {
  font-weight: 700;
}


/* Simplify footer contact details: keep the two business hotlines and addresses only. */
@media (min-width: 1100px) {
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) {
  display: none !important;
}
#footer.footer-wrapper > .section:nth-of-type(2) .text-footer .loc,
#footer.footer-wrapper > .section:nth-of-type(2) .follow-icons a[href^="mailto:"] {
  display: none !important;
}
#footer.footer-wrapper > .section.ss-lh .tt-ct {
  display: none !important;
}
#footer.footer-wrapper .ttn-business-contacts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
#footer.footer-wrapper .ttn-business-contact:nth-child(n+3),
#footer.footer-wrapper .ttn-business-contact-zalo,
#footer.footer-wrapper .ttn-business-contact-copy small {
  display: none !important;
}
#footer.footer-wrapper .ttn-business-contact {
  justify-content: flex-start;
  gap: 10px;
  padding: 10px 14px;
}
#footer.footer-wrapper .ttn-business-contact-icon {
  width: 32px;
  height: 32px;
  flex-basis: 32px;
}
@media (max-width: 849px) {
  #footer.footer-wrapper .ttn-business-contacts {
    grid-template-columns: minmax(0, 1fr);
  }
}


/* Keep each footer hotline in one compact location beside the address. */
#footer.footer-wrapper > .section.ss-lh {
  display: none !important;
}
@media (min-width: 1100px) {
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) {
  display: block !important;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .title-wrapper .section-title {
  font-size: 0 !important;
  line-height: 1.3;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .title-wrapper .section-title::before {
  content: "Hotline";
  color: #17385f;
  font-size: 16px;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .list-dathang .item-dh:nth-child(n+3) {
  display: none !important;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .list-dathang .item-dh {
  display: block;
  margin: 0 0 10px;
  padding: 8px 0;
  border: 0;
  border-bottom: 1px solid #e8edf5;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .list-dathang .item-dh .icon,
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .list-dathang .item-dh .text-d label {
  display: none !important;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .list-dathang .item-dh .text-d a {
  display: inline-block;
  color: #075fc9;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
}


/* Center product-category content and images on narrow mobile screens. */
@media (max-width: 767px) {
  body.tax-product_cat #main.site-main > .container {
    box-sizing: border-box;
    width: calc(100% - 24px) !important;
    max-width: 1260px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  body.tax-product_cat .woocommerce-products-header,
  body.tax-product_cat .term-description,
  body.tax-product_cat .term-description > * {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
  }

  body.tax-product_cat .term-description {
    width: 100% !important;
    margin: 22px auto !important;
    padding: 0 2px !important;
    overflow-wrap: anywhere;
  }

  body.tax-product_cat .term-description h1,
  body.tax-product_cat .term-description h2,
  body.tax-product_cat .term-description h3,
  body.tax-product_cat .term-description h4,
  body.tax-product_cat .term-description p {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  body.tax-product_cat .term-description figure.wp-caption,
  body.tax-product_cat .term-description .wp-caption {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center;
  }

  body.tax-product_cat .term-description img,
  body.tax-product_cat .term-description video,
  body.tax-product_cat .term-description iframe {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
    object-fit: contain;
  }

  body.tax-product_cat .term-description .wp-caption-text,
  body.tax-product_cat .term-description figcaption {
    max-width: 100%;
    text-align: center;
    overflow-wrap: anywhere;
  }

  body.tax-product_cat .term-description table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
  }
}


/* Footer: direct TTN contact roles and continuously looping Zalo advisors. */
#footer.footer-wrapper > .section.ss-lh {
  display: block !important;
  margin: 0 !important;
  padding: 28px 0 32px !important;
  border-top: 1px solid #e3ebf5;
  border-bottom: 1px solid #dce7f4;
  background: #f3f7fc !important;
}
#footer.footer-wrapper > .section.ss-lh .section-content {
  box-sizing: border-box; width: 100%; max-width: 1260px; margin: 0 auto; padding: 0 24px;
}
#footer.footer-wrapper > .section.ss-lh .section-content > .row {
  display: block !important; width: 100% !important; max-width: 100% !important; margin: 0 !important;
}
#footer.footer-wrapper > .section.ss-lh .section-content > .row > .col {
  box-sizing: border-box; width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; flex: 0 0 100% !important;
}
#footer.footer-wrapper > .section.ss-lh .col-inner { padding: 0 !important; }
#footer.footer-wrapper > .section.ss-lh .tt-ct { margin: 0 0 18px; text-align: center; }
#footer.footer-wrapper > .section.ss-lh .tt-ct h2 {
  margin: 0 0 5px; color: #17385f; font-size: clamp(21px, 2.2vw, 27px); font-weight: 750; line-height: 1.25; text-transform: uppercase;
}
#footer.footer-wrapper > .section.ss-lh .tt-ct p { margin: 0; color: #64748b; font-size: 14px; }
#footer.footer-wrapper .ttn-footer-primary {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0 0 18px;
}
#footer.footer-wrapper .ttn-footer-contact-link {
  display: flex; box-sizing: border-box; min-width: 0; min-height: 68px; align-items: center; gap: 11px; padding: 11px 14px;
  border: 1px solid #d8e5f4; border-radius: 14px; background: #fff; color: #17385f; box-shadow: 0 5px 16px rgba(28, 65, 109, .06);
  text-decoration: none; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
#footer.footer-wrapper .ttn-footer-contact-link:hover { transform: translateY(-2px); border-color: #91b7ea; box-shadow: 0 8px 20px rgba(28, 65, 109, .1); }
#footer.footer-wrapper .ttn-footer-contact-mark,
#footer.footer-wrapper .ttn-footer-zalo-badge {
  display: inline-grid; flex: 0 0 38px; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: #eaf2ff; color: #075fc9; font-size: 12px; font-weight: 800; line-height: 1;
}
#footer.footer-wrapper .ttn-footer-contact-mark { font-size: 22px; }
#footer.footer-wrapper .ttn-footer-contact-link-zalo .ttn-footer-contact-mark { font-size: 10px; }
#footer.footer-wrapper .ttn-footer-contact-copy, #footer.footer-wrapper .ttn-footer-zalo-copy { display: block; min-width: 0; }
#footer.footer-wrapper .ttn-footer-contact-copy small, #footer.footer-wrapper .ttn-footer-zalo-copy small {
  display: block; margin: 0 0 3px; color: #64748b; font-size: 12px; font-weight: 500; line-height: 1.25;
}
#footer.footer-wrapper .ttn-footer-contact-copy strong, #footer.footer-wrapper .ttn-footer-zalo-copy strong {
  display: block; color: #075fc9; font-size: 16px; font-weight: 750; line-height: 1.25; white-space: nowrap;
}
#footer.footer-wrapper .ttn-footer-contact-action, #footer.footer-wrapper .ttn-footer-zalo-action {
  flex: 0 0 auto; margin-left: auto; padding: 6px 9px; border: 1px solid #d5e4f8; border-radius: 999px; color: #075fc9; font-size: 11px; font-weight: 700; line-height: 1.2; white-space: nowrap;
}
#footer.footer-wrapper .ttn-footer-zalo-marquee {
  width: 100%; overflow: hidden; padding: 3px 0 5px; -webkit-mask-image: linear-gradient(to right, transparent 0, #000 3%, #000 97%, transparent 100%); mask-image: linear-gradient(to right, transparent 0, #000 3%, #000 97%, transparent 100%);
}
#footer.footer-wrapper .ttn-footer-zalo-track { display: flex; width: max-content; animation: ttn-footer-zalo-loop 32s linear infinite; will-change: transform; }
#footer.footer-wrapper .ttn-footer-zalo-group { display: flex; flex: 0 0 auto; gap: 12px; padding-right: 12px; }
#footer.footer-wrapper .ttn-footer-zalo-card {
  display: flex; box-sizing: border-box; flex: 0 0 245px; min-width: 0; min-height: 64px; align-items: center; gap: 10px; padding: 10px 12px;
  border: 1px solid #d8e5f4; border-radius: 13px; background: #fff; color: #17385f; box-shadow: 0 4px 14px rgba(28, 65, 109, .05); text-decoration: none;
}
#footer.footer-wrapper .ttn-footer-zalo-card:hover { border-color: #91b7ea; }
#footer.footer-wrapper .ttn-footer-zalo-badge { flex-basis: 36px; width: 36px; height: 36px; font-size: 10px; }
#footer.footer-wrapper .ttn-footer-zalo-action { padding: 5px 8px; }
#footer.footer-wrapper .ttn-footer-zalo-track:hover, #footer.footer-wrapper .ttn-footer-zalo-track:focus-within { animation-play-state: paused; }
@keyframes ttn-footer-zalo-loop { to { transform: translateX(-50%); } }
@media (max-width: 849px) {
  #footer.footer-wrapper > .section.ss-lh .section-content { padding-right: 18px; padding-left: 18px; }
  #footer.footer-wrapper .ttn-footer-primary { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  #footer.footer-wrapper .ttn-footer-contact-link:last-child { grid-column: 1 / -1; }
  #footer.footer-wrapper .ttn-footer-zalo-track { animation-duration: 27s; }
  #footer.footer-wrapper .ttn-footer-zalo-card { flex-basis: 220px; }
}
@media (max-width: 520px) {
  #footer.footer-wrapper > .section.ss-lh { padding: 22px 0 25px !important; }
  #footer.footer-wrapper > .section.ss-lh .section-content { padding-right: 14px; padding-left: 14px; }
  #footer.footer-wrapper .tt-ct { margin-bottom: 14px !important; }
  #footer.footer-wrapper .ttn-footer-primary { grid-template-columns: minmax(0, 1fr); gap: 8px; margin-bottom: 13px; }
  #footer.footer-wrapper .ttn-footer-contact-link:last-child { grid-column: auto; }
  #footer.footer-wrapper .ttn-footer-contact-link { min-height: 60px; padding: 9px 11px; border-radius: 12px; }
  #footer.footer-wrapper .ttn-footer-contact-mark { flex-basis: 34px; width: 34px; height: 34px; }
  #footer.footer-wrapper .ttn-footer-contact-copy strong { font-size: 15px; }
  #footer.footer-wrapper .ttn-footer-zalo-card { flex-basis: 205px; min-height: 60px; padding: 9px 10px; }
  #footer.footer-wrapper .ttn-footer-zalo-copy strong { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  #footer.footer-wrapper .ttn-footer-zalo-track { width: 100%; animation: none; }
  #footer.footer-wrapper .ttn-footer-zalo-group[aria-hidden="true"] { display: none; }
  #footer.footer-wrapper .ttn-footer-zalo-marquee { overflow-x: auto; -webkit-mask-image: none; mask-image: none; }
}

/* TTN legal footer strip */
#footer.footer-wrapper .ttn-copyright {
  background: #fff !important;
  color: #4f6078 !important;
  border-top: 1px solid #dbe4ef !important;
  padding: 16px 0 !important;
  clear: both;
}
#footer.footer-wrapper .ttn-copyright .ttn-copyright-inner {
  width: min(1260px, calc(100% - 48px)) !important;
  max-width: 1260px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 28px !important;
  box-sizing: border-box;
}
#footer.footer-wrapper .ttn-copyright-logo {
  flex: 0 0 220px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  line-height: 0;
}
#footer.footer-wrapper .ttn-copyright-logo img {
  display: block;
  width: 190px;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
#footer.footer-wrapper .ttn-copyright-legal {
  min-width: 0;
  color: #52627a;
  font-size: 14px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
#footer.footer-wrapper .ttn-copyright-legal p {
  margin: 0 0 2px;
  padding: 0;
}
#footer.footer-wrapper .ttn-copyright-legal p:last-child { margin-bottom: 0; }
#footer.footer-wrapper .ttn-copyright-legal p:first-child {
  color: #364c69;
  font-size: 15px;
}
@media (max-width: 767px) {
  #footer.footer-wrapper .ttn-copyright { padding: 14px 0 18px !important; }
  #footer.footer-wrapper .ttn-copyright .ttn-copyright-inner {
    width: calc(100% - 32px) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px !important;
  }
  #footer.footer-wrapper .ttn-copyright-logo { flex-basis: auto; }
  #footer.footer-wrapper .ttn-copyright-logo img { width: 132px; }
  #footer.footer-wrapper .ttn-copyright-legal { font-size: 12px; line-height: 1.55; }
  #footer.footer-wrapper .ttn-copyright-legal p:first-child { font-size: 13px; }
}

/* Keep the legal details aligned with the logo on narrow screens too. */
#footer.footer-wrapper .ttn-copyright-inner,
#footer.footer-wrapper .ttn-copyright-legal,
#footer.footer-wrapper .ttn-copyright-legal p {
  text-align: left !important;
}
#footer.footer-wrapper .ttn-copyright-logo {
  justify-content: flex-start !important;
  margin-inline: 0 !important;
}
@media (max-width: 767px) {
  #footer.footer-wrapper .ttn-copyright-inner { justify-items: start !important; }
  #footer.footer-wrapper .ttn-copyright-legal { width: 100%; }
}

@media (max-width: 767px) {
  #footer.footer-wrapper .ttn-copyright { padding-bottom: 96px !important; }
}

@media (max-width: 767px) {
  #footer.footer-wrapper .ttn-copyright .ttn-copyright-inner {
    grid-template-columns: 132px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 14px !important;
  }
  #footer.footer-wrapper .ttn-copyright-logo img { width: 124px; }
  #footer.footer-wrapper .ttn-copyright-legal { font-size: 11px; line-height: 1.45; }
  #footer.footer-wrapper .ttn-copyright-legal p:first-child { font-size: 12px; }
}
@media (max-width: 480px) {
  #footer.footer-wrapper .ttn-copyright .ttn-copyright-inner {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
  }
  #footer.footer-wrapper .ttn-copyright-logo img { width: 112px; }
}


/* TTN footer contact ticker: phone line above, Zalo line below. */
#footer .ttn-footer-contact-panel--moving{width:min(1180px,100%);margin:4px auto 0;padding:0 0 12px;overflow:hidden}
#footer .ttn-footer-phone-marquee,#footer .ttn-footer-zalo-marquee{display:block;width:100%;overflow:hidden;position:relative;overscroll-behavior-x:contain}
#footer .ttn-footer-phone-marquee{padding:8px 0 10px}
#footer .ttn-footer-phone-track,#footer .ttn-footer-zalo-track{display:flex;width:max-content;will-change:transform}
#footer .ttn-footer-phone-track{animation:ttn-footer-phone-loop 42s linear infinite}
#footer .ttn-footer-phone-set{display:flex;flex:0 0 auto}
#footer .ttn-footer-phone-group{box-sizing:border-box;display:flex;flex:0 0 270px;width:270px;min-height:72px;align-items:center;justify-content:center;gap:10px;padding:9px 12px}
#footer .ttn-footer-phone-stack{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;gap:5px}
#footer .ttn-footer-phone-contact{display:flex;min-width:0;align-items:center;gap:8px;color:#f04a2b;text-decoration:none}
#footer .ttn-footer-phone-icon{display:grid;flex:0 0 25px;width:25px;height:25px;place-items:center;border-radius:50%;background:#2864ff;color:#fff;font-size:14px}
#footer .ttn-footer-phone-copy{display:flex;min-width:0;flex-direction:column;line-height:1.15}
#footer .ttn-footer-phone-copy small{color:#6b7c96;font-size:10px}
#footer .ttn-footer-phone-copy strong{color:#ed4a2b;font-size:13px;font-weight:800;white-space:nowrap}
#footer .ttn-footer-phone-logo{display:flex;flex:0 0 65px;width:65px;align-items:center;justify-content:center}
#footer .ttn-footer-phone-logo img{display:block;width:65px;height:auto;max-height:42px;object-fit:contain}
#footer .ttn-footer-zalo-marquee{padding:4px 0 8px}
#footer .ttn-footer-zalo-track{animation:ttn-footer-zalo-loop 38s linear infinite}
#footer .ttn-footer-zalo-group{display:flex;flex:0 0 auto;gap:12px;width:max-content}
#footer .ttn-footer-zalo-card{box-sizing:border-box;display:flex;flex:0 0 220px;width:220px;min-height:60px;align-items:center;gap:9px;padding:9px 12px;border:1px solid #d6e4f5;border-radius:13px;background:#fff;box-shadow:0 4px 14px rgba(20,60,110,.08);text-decoration:none}
#footer .ttn-footer-zalo-badge{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border-radius:50%;background:#eaf2ff;color:#1265db;font-size:9px;font-weight:800}
#footer .ttn-footer-zalo-copy{display:flex;min-width:0;flex:1;flex-direction:column;line-height:1.2}
#footer .ttn-footer-zalo-copy small{color:#71819a;font-size:10px}
#footer .ttn-footer-zalo-copy strong{color:#075ecb;font-size:13px;font-weight:800;white-space:nowrap}
#footer .ttn-footer-zalo-action{padding:4px 8px;border:1px solid #d2e2fa;border-radius:999px;color:#075ecb;font-size:10px;font-weight:700;white-space:nowrap}
@keyframes ttn-footer-phone-loop{to{transform:translateX(-50%)}}
@keyframes ttn-footer-zalo-loop{to{transform:translateX(-50%)}}
#footer .ttn-footer-phone-marquee:hover .ttn-footer-phone-track,#footer .ttn-footer-zalo-marquee:hover .ttn-footer-zalo-track{animation-play-state:paused}
#footer .row:has(> .col .list-dathang) > .col:has(.list-dathang){display:none!important}
#footer .row:has(> .col .list-dathang) > .col:not(:has(.list-dathang)){flex:0 0 33.333%!important;max-width:33.333%!important}
@media(max-width:767px){
 #footer .ttn-footer-contact-panel--moving{padding-bottom:8px}
 #footer .ttn-footer-phone-group{flex-basis:252px;width:252px;min-height:66px;padding:8px 10px;gap:6px}
 #footer .ttn-footer-phone-logo{flex-basis:54px;width:54px}
 #footer .ttn-footer-phone-logo img{width:54px;max-height:36px}
 #footer .ttn-footer-phone-copy strong{font-size:12px}
 #footer .ttn-footer-zalo-card{flex-basis:205px;width:205px;min-height:56px;padding:8px 10px}
 #footer .row:has(> .col .list-dathang) > .col:not(:has(.list-dathang)){flex-basis:100%!important;max-width:100%!important}
}
@media(prefers-reduced-motion:reduce){#footer .ttn-footer-phone-track,#footer .ttn-footer-zalo-track{animation:none!important}}

/* Override legacy footer column sizing after removing its duplicate contact block. */
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2){display:none!important}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(1),
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(3),
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(4){flex:0 0 33.333%!important;max-width:33.333%!important}
@media(max-width:767px){
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(1),
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(3),
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(4){flex:0 0 100%!important;max-width:100%!important}
}

/* Keep the contact ticker above the preceding banner and give phone items card styling. */
#footer.footer-wrapper>.section.ss-lh{position:relative!important;z-index:5!important;background:#f3f7fc!important}
#footer.footer-wrapper>.section.ss-lh>.section-bg{background:#f3f7fc!important}
#footer .ttn-footer-phone-set{gap:12px}
#footer .ttn-footer-phone-group{border:1px solid #d6e4f5;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(20,60,110,.08)}
#footer .section.ss-lh .section-title{font-weight:800;letter-spacing:.025em}

#footer .ttn-footer-contact-heading{text-align:center;margin:0 auto 8px;padding-top:4px}
#footer .ttn-footer-contact-heading h2{margin:0;color:#111;font-size:24px;font-weight:800;line-height:1.2}
#footer .ttn-footer-contact-heading p{margin:5px 0 0;color:#17243a;font-size:15px;line-height:1.35}
@media(max-width:767px){#footer .ttn-footer-contact-heading h2{font-size:20px}#footer .ttn-footer-contact-heading p{font-size:14px}}


/* Footer: four balanced desktop columns, based on the approved reference. */
#footer.footer-wrapper > .section:nth-of-type(2) {
  background: #800000 !important;
  color: #fff !important;
  padding: 30px 0 28px !important;
}
#footer.footer-wrapper > .section:nth-of-type(2) > .section-bg { background: #800000 !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .section-content {
  width: 100%; max-width: 1260px; margin: 0 auto; padding: 0 20px;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row {
  display: flex; align-items: flex-start; flex-wrap: wrap; margin: 0;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(1),
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2),
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(3),
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(4) {
  display: block !important; flex: 0 0 25% !important; max-width: 25% !important;
  padding: 0 18px; margin: 0;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col .col-inner { height: 100%; }
#footer.footer-wrapper > .section:nth-of-type(2) h4,
#footer.footer-wrapper > .section:nth-of-type(2) .section-title,
#footer.footer-wrapper > .section:nth-of-type(2) .widget-title {
  display: block; color: #fff !important; font-size: 15px; font-weight: 800;
  line-height: 1.35; text-transform: uppercase; border-bottom: 1px solid rgba(255,255,255,.75);
  padding: 0 0 10px; margin: 0 0 16px;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:first-child .footer-logo-wrap { display: none !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:first-child .col-inner:before {
  content: "PHỐ IN HÀ NỘI"; display: block; color: #fff; font-size: 24px; font-weight: 800;
  line-height: 1.2; border-bottom: 1px solid rgba(255,255,255,.75); padding: 0 0 10px; margin: 0 0 18px;
}
#footer.footer-wrapper > .section:nth-of-type(2) p,
#footer.footer-wrapper > .section:nth-of-type(2) li,
#footer.footer-wrapper > .section:nth-of-type(2) a,
#footer.footer-wrapper > .section:nth-of-type(2) .text-footer { color: #fff !important; }
#footer.footer-wrapper > .section:nth-of-type(2) p { line-height: 1.6; margin-bottom: 12px; }
#footer.footer-wrapper > .section:nth-of-type(2) a:hover { color: #ffd5c8 !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang > * { margin-bottom: 12px; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang img,
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang svg { filter: brightness(0) invert(1); }
#footer.footer-wrapper > .section:nth-of-type(2) .content-list a,
#footer.footer-wrapper > .section:nth-of-type(2) .widget li a { line-height: 1.6; }
#footer.footer-wrapper > .section:nth-of-type(2) .social-icons a { background: #276ab0 !important; color: #fff !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .social-icons { margin-top: 18px; }
#footer.footer-wrapper > .section:nth-of-type(2) .dmca-badge img { max-width: 150px; height: auto; }
@media (max-width: 900px) {
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(1),
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2),
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(3),
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(4) {
    flex: 0 0 50% !important; max-width: 50% !important; padding: 14px 16px;
  }
}
@media (max-width: 600px) {
  #footer.footer-wrapper > .section:nth-of-type(2) { padding: 20px 0 !important; }
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content { padding: 0 14px; }
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(1),
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2),
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(3),
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(4) {
    flex: 0 0 100% !important; max-width: 100% !important; padding: 14px 8px;
  }
}


/* Remove legacy white footer cards so the maroon band stays continuous. */
#footer.footer-wrapper > .section:nth-of-type(2) .section-content,
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row,
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col,
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col > .col-inner {
  background: transparent !important; background-color: transparent !important;
  box-shadow: none !important; border: 0 !important; border-radius: 0 !important;
}
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col > .col-inner { padding: 0 !important; }


#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:first-child a.button,
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:first-child .button {
  background: transparent !important; border: 1px solid rgba(255,255,255,.7) !important;
  color: #fff !important; box-shadow: none !important;
}


#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:first-child a {
  background: transparent !important; background-color: transparent !important; background-image: none !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  color: #fff !important; padding: 0 !important;
}/* TTN footer: light background, clear contacts and four desktop columns */
#footer.footer-wrapper > .section:nth-of-type(2) { background:#f1f6fd !important; color:#334862 !important; border-top:1px solid #e2eaf5; padding:30px 0 26px; }
#footer.footer-wrapper > .section:nth-of-type(2) .section-content { width:calc(100% - 40px) !important; max-width:1260px !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row { display:grid !important; grid-template-columns:minmax(0,1.08fr) minmax(0,.9fr) minmax(0,1.38fr) minmax(0,1.02fr) !important; gap:16px !important; align-items:stretch !important; margin:0 !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col { width:auto !important; max-width:none !important; min-width:0 !important; flex:none !important; padding:0 !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col > .col-inner { height:100%; padding:22px 18px; border:1px solid #e1eaf6; border-radius:16px; background:#fff; box-shadow:0 7px 22px rgba(22,57,98,.06); }
#footer.footer-wrapper > .section:nth-of-type(2) h2, #footer.footer-wrapper > .section:nth-of-type(2) h3, #footer.footer-wrapper > .section:nth-of-type(2) h4, #footer.footer-wrapper > .section:nth-of-type(2) .section-title { color:#17385f !important; font-size:16px; font-weight:700; }
#footer.footer-wrapper > .section:nth-of-type(2) p, #footer.footer-wrapper > .section:nth-of-type(2) li, #footer.footer-wrapper > .section:nth-of-type(2) .ux-text { color:#53677f !important; }
#footer.footer-wrapper > .section:nth-of-type(2) a { color:#075fc9 !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .row > .col:first-child > .col-inner::before { content:"Công ty cổ phần TTN Việt Nam" !important; display:block; margin:0 0 12px !important; color:#17385f !important; font-size:18px !important; font-weight:800 !important; line-height:1.35; }
#footer.footer-wrapper > .section:nth-of-type(2) .footer-logo { width:138px; max-width:100%; margin:0 0 13px; }
#footer.footer-wrapper > .section:nth-of-type(2) .text-footer { color:#4e6179 !important; font-size:13px; line-height:1.6; }
#footer.footer-wrapper > .section:nth-of-type(2) .text-footer p { grid-template-columns:18px minmax(0,1fr); gap:8px; margin-bottom:10px; color:#4e6179 !important; overflow-wrap:anywhere; }
#footer.footer-wrapper > .section:nth-of-type(2) .text-footer p i { color:#1265ce; }
#footer.footer-wrapper > .section:nth-of-type(2) .row > .col:nth-child(2) .title-wrapper h4.section-title { font-size:0 !important; line-height:1.35; }
#footer.footer-wrapper > .section:nth-of-type(2) .row > .col:nth-child(2) .title-wrapper h4.section-title::after { content:"Hotline"; color:#17385f; font-size:16px; font-weight:700; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh { gap:9px; margin:0 0 10px; padding:10px 9px; border:1px solid #e7eef8; border-radius:11px; background:#f7faff; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh:nth-child(3) { display:none !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh:nth-child(4) { display:flex !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .icon img { width:26px; height:26px; object-fit:contain; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .text-d { min-width:0; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .text-d label { display:block; font-size:0; line-height:1.35; color:#6a7b91; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh:nth-child(1) .text-d label::after { content:"Hotline"; font-size:12px; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh:nth-child(2) .text-d label::after { content:"Phản ánh dịch vụ"; font-size:12px; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh:nth-child(4) .text-d label::after { content:"Email"; font-size:12px; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .text-d a { display:block; color:#075fc9 !important; font-size:14px; font-weight:700; line-height:1.35; overflow-wrap:anywhere; }
#footer.footer-wrapper > .section:nth-of-type(2) .menu-listct { margin:0; padding:0; list-style:none; }
#footer.footer-wrapper > .section:nth-of-type(2) .menu-listct li { padding:3px 0; border:0; }
#footer.footer-wrapper > .section:nth-of-type(2) .menu-listct li a { color:#4e6179 !important; font-size:13px; line-height:1.45; }
#footer.footer-wrapper > .section:nth-of-type(2) .menu-listct li a::before { color:#1265ce; }
#footer.footer-wrapper > .section:nth-of-type(2) .follow-icons a { border-color:#dce7f6; background:#f5f8fd; color:#1265ce !important; }
@media (min-width:768px) and (max-width:991px) {
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:16px !important; }
}
@media (max-width:767px) {
  #footer.footer-wrapper > .section:nth-of-type(2) { padding:22px 0 18px; }
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content { width:calc(100% - 28px) !important; }
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row { grid-template-columns:minmax(0,1fr) !important; gap:14px !important; }
  #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col > .col-inner { padding:18px; }
}

/* Keep the contact icons and email visible in the Hotline column. */
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .list-dathang .item-dh:nth-child(4) { display:flex !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .list-dathang .item-dh .icon,
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .list-dathang .item-dh .text-d label { display:block !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .list-dathang .item-dh .icon { flex:0 0 28px; }

/* Remove the legacy red fill in the section background layer. */
#footer.footer-wrapper > .section:nth-of-type(2) > .section-bg { background:transparent !important; background-color:transparent !important; background-image:none !important; }

/* Prevent duplicate Hotline label and restore clear blue contact icons. */
#footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(2) .title-wrapper .section-title::before { content:none !important; display:none !important; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .icon { display:grid !important; place-items:center; flex:0 0 32px; width:32px; height:32px; border-radius:50%; background:#2f6bff; }
#footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .icon img { width:18px !important; height:18px !important; object-fit:contain; }



/* Homepage service icons: print collateral set and X-frame standee, matching the supplied references. */
body.home .product-categories-grid .single-category > a[href*="/in-an-khac/"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 180'%3E%3Crect x='12' y='10' width='216' height='160' rx='28' fill='%23eef2f5'/%3E%3Cellipse cx='121' cy='151' rx='78' ry='10' fill='%23d6e1ee'/%3Cg transform='rotate(-11 72 101)'%3E%3Crect x='38' y='48' width='65' height='91' rx='5' fill='%23dff6f1' stroke='%2300a5a5' stroke-width='3'/%3E%3Cpath d='M42 53h57v23H42z' fill='%2300a5a5'/%3E%3Cpath d='M49 91h41M49 101h34M49 111h38' stroke='%2369829a' stroke-width='4' stroke-linecap='round'/%3E%3C/g%3E%3Cg transform='rotate(9 172 99)'%3E%3Crect x='143' y='49' width='58' height='91' rx='5' fill='%23fff4df' stroke='%23f1a33a' stroke-width='3'/%3E%3Cpath d='M147 54h50v24h-50z' fill='%23f1a33a'/%3E%3Cpath d='M154 93h35M154 103h31M154 113h34' stroke='%2369829a' stroke-width='4' stroke-linecap='round'/%3E%3C/g%3E%3Crect x='78' y='29' width='84' height='112' rx='6' fill='white' stroke='%23c6d5e7' stroke-width='3'/%3E%3Cpath d='M82 34h76v29H82z' fill='%230b65d8'/%3E%3Cpath d='M91 47h37' stroke='white' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M92 76h54M92 87h42' stroke='%2390a4b8' stroke-width='4' stroke-linecap='round'/%3E%3Ccircle cx='133' cy='108' r='17' fill='%2300a5a5'/%3E%3Cpath d='M122 114l9-16 13 18z' fill='%23fff'/%3E%3Cpath d='M92 126h52' stroke='%23d9e4ef' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M72 145h97' stroke='%23b8c9dc' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}
body.home .product-categories-grid .single-category > a[href*="/in-standee/"]::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 180'%3E%3Crect x='12' y='10' width='216' height='160' rx='28' fill='%23eef2f5'/%3Cellipse cx='120' cy='160' rx='68' ry='8' fill='%23d6e1ee'/%3Cg fill='none' stroke='%23556578' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M120 96L61 160M120 96l59 64M120 98v66M87 123l66 33M153 123l-66 33'/%3E%3C/g%3E%3Cpath d='M81 19h78a7 7 0 0 1 7 7v99H74V26a7 7 0 0 1 7-7z' fill='white' stroke='%233b5878' stroke-width='4'/%3E%3Cpath d='M80 25h80v38H80z' fill='%230b65d8'/%3E%3Cpath d='M88 33h35' stroke='%23ffffff' stroke-width='4' stroke-linecap='round'/%3E%3Ccircle cx='145' cy='43' r='7' fill='%23ffae42'/%3E%3Cpath d='M81 104l18-22 13 14 12-17 22 25v13H81z' fill='%23dceaf7'/%3E%3Cpath d='M91 112v-9h8v9m8 0V96h8v16m8 0v-8h8v8m8 0V99h8v13' fill='%234c77ad'/%3E%3Cpath d='M74 124h92' stroke='%233b5878' stroke-width='5' stroke-linecap='round'/%3E%3Cpath d='M111 128l9 9 9-9' fill='none' stroke='%23f1a33a' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}


/* One service number per card in the rotating consultation strip. */
.ttn-footer-phone-set .ttn-footer-phone-group { min-height:76px; }
.ttn-footer-phone-set .ttn-footer-phone-group:nth-child(1) .ttn-footer-phone-contact:not(:nth-child(1)),
.ttn-footer-phone-set .ttn-footer-phone-group:nth-child(2) .ttn-footer-phone-contact:not(:nth-child(2)),
.ttn-footer-phone-set .ttn-footer-phone-group:nth-child(3) .ttn-footer-phone-contact:not(:nth-child(3)),
.ttn-footer-phone-set .ttn-footer-phone-group:nth-child(4) .ttn-footer-phone-contact:not(:nth-child(4)) { display:none !important; }
#footer .ttn-footer-contact-panel--moving > .ttn-footer-phone-marquee { display:none !important; }
	color: #1265ce;
	font-size: 13px;
}

/* Footer layout correction: keep the service links readable at each screen width. */
#footer.footer-wrapper .ttn-footer-contact-panel .ttn-footer-phone-marquee { display:none !important; height:0 !important; margin:0 !important; padding:0 !important; }
@media (min-width:992px) {
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content { width:calc(100% - 40px) !important; max-width:1260px !important; margin-left:auto !important; margin-right:auto !important; }
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row { display:grid !important; grid-template-columns:minmax(0,1.08fr) minmax(0,.95fr) minmax(0,1.3fr) minmax(0,1fr) !important; gap:18px !important; width:100% !important; max-width:1260px !important; margin:0 auto !important; align-items:stretch !important; }
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col { width:auto !important; max-width:none !important; min-width:0 !important; flex:initial !important; grid-column:auto !important; padding:0 !important; }
}
@media (min-width:768px) and (max-width:991px) {
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:16px !important; width:100% !important; }
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col { width:auto !important; max-width:none !important; min-width:0 !important; flex:initial !important; grid-column:auto !important; padding:0 !important; }
}
@media (max-width:767px) {
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row { display:grid !important; grid-template-columns:minmax(0,1fr) !important; gap:14px !important; width:100% !important; }
}

/* Desktop: prevent the legacy 25% column cap from shrinking each footer card. */
@media (min-width:992px) {
 #footer.footer-wrapper > .section:nth-of-type(2) .section-content > .row > .col:nth-child(n) { width:100% !important; max-width:none !important; min-width:0 !important; flex:0 0 auto !important; padding:0 !important; justify-self:stretch !important; }
}


/* Profile category price tables: contain horizontal scrolling to the table area. */
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing {
  max-width: 100%;
  min-width: 0;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-profile-table-card {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll {
  box-sizing: border-box;
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
  scrollbar-color: #8db5e5 #edf3fa;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll table {
  margin: 0 !important;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll th:first-child {
  position: sticky;
  left: 0;
  z-index: 2;
  background-color: #f3f5f7 !important;
  box-shadow: 2px 0 5px rgba(25, 55, 90, .10);
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll thead th:first-child {
  z-index: 3;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll::-webkit-scrollbar {
  height: 8px;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll::-webkit-scrollbar-track {
  background: #edf3fa;
  border-radius: 8px;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll::-webkit-scrollbar-thumb {
  background: #8db5e5;
  border-radius: 8px;
}

body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll tbody th,
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll tbody td {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll tbody th:first-child {
  position: sticky !important;
  left: 0 !important;
  z-index: 5 !important;
  background-color: #f3f5f7 !important;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll thead th:first-child {
  position: sticky !important;
  left: 0 !important;
  z-index: 6 !important;
}

body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll th,
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll td {
  border: 0 !important;
  border-right: 1px solid #d6d6d6 !important;
  border-bottom: 1px solid #d6d6d6 !important;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll tr:first-child > th,
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll tr:first-child > td {
  border-top: 1px solid #d6d6d6 !important;
}
body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll tr > :first-child {
  border-left: 1px solid #d6d6d6 !important;
}

body.tax-product_cat.term-in-profile-ho-so-nang-luc .pricing .ttn-price-scroll table {
  display: table !important;
  overflow: visible !important;
  max-width: none !important;
}


/* In Kỷ Yếu: keep article content inside the mobile viewport and scroll each price table locally. */
@media (max-width: 767px) {
  body.term-in-ky-yeu .woocommerce-products-header,
  body.term-in-ky-yeu .term-description,
  body.term-in-ky-yeu .term-description > * {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
  }

  body.term-in-ky-yeu .term-description {
    width: 100%;
    overflow-wrap: anywhere;
  }

  body.term-in-ky-yeu .term-description img,
  body.term-in-ky-yeu .term-description video,
  body.term-in-ky-yeu .term-description iframe {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain;
  }

  body.term-in-ky-yeu .ttn-kyyeu-price {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
  }

  body.term-in-ky-yeu .ttn-kyyeu-price__scroll {
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
  }

  body.term-in-ky-yeu .ttn-kyyeu-price__scroll table {
    display: table !important;
    width: max-content !important;
    min-width: 820px !important;
    max-width: none !important;
    overflow: visible !important;
    table-layout: auto;
    white-space: nowrap;
  }

  body.term-in-ky-yeu .ttn-kyyeu-price__scroll th,
  body.term-in-ky-yeu .ttn-kyyeu-price__scroll td {
    white-space: nowrap;
  }
}


/* Prevent the Kỷ Yếu archive itself from shifting sideways on phones; price tables keep their own scrollers above. */
@media (max-width: 767px) {
  body.term-in-ky-yeu {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  body.term-in-ky-yeu #main,
  body.term-in-ky-yeu .ttn-site-wrapper,
  body.term-in-ky-yeu .woocommerce-products-header {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow-x: clip;
  }
}


/* Compact quantity-price tables: pair two quantity groups across a full row. */
body .ttn-price-paired-scroll {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}
body table.ttn-price-paired {
  display: table !important;
  width: 100% !important;
  min-width: 600px !important;
  max-width: none !important;
  table-layout: auto !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 0 !important;
  overflow: hidden;
  border: 1px solid #dbe5ef !important;
  border-radius: 12px;
  background: #fff !important;
  color: #24354a;
  font-size: 14px;
}
body table.ttn-price-paired[data-ttn-price-columns="6"] { min-width: 900px !important; }
body table.ttn-price-paired[data-ttn-price-columns="4"] { min-width: 600px !important; }
body table.ttn-price-paired thead { display: table-header-group !important; }
body table.ttn-price-paired tbody { display: table-row-group !important; }
body table.ttn-price-paired tr { display: table-row !important; }
body table.ttn-price-paired th,
body table.ttn-price-paired td {
  display: table-cell !important;
  box-sizing: border-box !important;
  padding: 12px 14px !important;
  border: 1px solid #dbe5ef !important;
  text-align: left !important;
  vertical-align: middle !important;
  line-height: 1.4 !important;
  white-space: normal;
}
body table.ttn-price-paired th {
  background: #0b4ea2 !important;
  color: #fff !important;
  font-weight: 700 !important;
}
body table.ttn-price-paired tbody tr:nth-child(odd) td { background: #fff !important; }
body table.ttn-price-paired tbody tr:nth-child(even) td { background: #f8fbfe !important; }
body table.ttn-price-paired td.ttn-price-empty {
  text-align: center !important;
  color: #77879a !important;
  font-weight: 600 !important;
}
body .ttn-price-paired-grid { grid-template-columns: minmax(0, 1fr) !important; }
@media (max-width: 767px) {
  body table.ttn-price-paired th,
  body table.ttn-price-paired td { padding: 10px 11px !important; font-size: 13px !important; }
}


/* TTN PVC: cân bằng chiều cao các thẻ bài viết liên quan trên desktop. */
@media (min-width: 850px) {
  body.single-post.postid-8117 main#main .related-ct .rl-content .slick-track {
    display: flex !important;
    align-items: stretch !important;
  }
  body.single-post.postid-8117 main#main .related-ct .rl-content .slick-slide {
    display: flex !important;
    float: none !important;
    height: auto !important;
  }
  body.single-post.postid-8117 main#main .related-ct .rl-content .slick-slide > div {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
  }
  body.single-post.postid-8117 main#main .related-ct .rl-content .item-sl {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    box-sizing: border-box !important;
  }
  body.single-post.postid-8117 main#main .related-ct .rl-content .item-sl > a {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
  }
  body.single-post.postid-8117 main#main .related-ct .rl-content .item-sl img {
    display: block !important;
    width: 100% !important;
    height: 190px !important;
    aspect-ratio: 16 / 10;
    object-fit: cover !important;
    flex: 0 0 190px !important;
  }
  body.single-post.postid-8117 main#main .related-ct .rl-content .item-sl h3 {
    display: -webkit-box !important;
    height: 67.2px !important;
    min-height: 67.2px !important;
    max-height: 67.2px !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-height: 1.4 !important;
    margin: 0 0 10px !important;
  }
  body.single-post.postid-8117 main#main .related-ct .rl-content .item-sl > a > span {
    margin-top: auto !important;
  }
}


/* TTN desktop footer repair: restore four full-width, readable columns. */
@media (min-width: 1100px) {
  #footer.footer-wrapper > .section:nth-of-type(2) > .section-content {
    display: block !important;
    box-sizing: border-box !important;
    width: calc(100% - 48px) !important;
    max-width: 1260px !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }
  #footer.footer-wrapper > .section:nth-of-type(2) > .section-content > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr) minmax(0, 1.3fr) minmax(0, 1fr) !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    align-items: start !important;
  }
  #footer.footer-wrapper > .section:nth-of-type(2) > .section-content > .row > .col:nth-child(-n+4) {
    display: block !important;
    box-sizing: border-box !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    grid-column: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  #footer.footer-wrapper > .section:nth-of-type(2) > .section-content > .row > .col > .col-inner {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }
  #footer.footer-wrapper > .section:nth-of-type(2) .text-footer p,
  #footer.footer-wrapper > .section:nth-of-type(2) .menu-listct li a {
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
  #footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .text-d {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
  #footer.footer-wrapper > .section:nth-of-type(2) .list-dathang .item-dh .text-d a {
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}
@media (min-width: 992px) and (max-width: 1099px) {
  #footer.footer-wrapper > .section:nth-of-type(2) > .section-content > .row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }
  #footer.footer-wrapper > .section:nth-of-type(2) > .section-content > .row > .col:nth-child(-n+4) {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    padding: 0 !important;
  }
}


/* In hộp giấy: full-width description below products, with a lighter frame. */
body.term-in-hop-giay .term-description {
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin: 24px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}


body.term-in-hop-giay .ttn-cro-top-content {
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin: 24px 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}


/* Homepage quote form: restore a balanced form-and-image layout. */
@media (min-width: 1100px) {
  body.home #main .ss-baogia > .section-content {
    box-sizing: border-box !important;
    width: min(1260px, calc(100% - 48px)) !important;
    max-width: 1260px !important;
    margin: 0 auto !important;
  }
  body.home #main .ss-baogia > .section-content > .row > .col {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }
  body.home #main .ss-baogia > .section-content > .row > .col > .col-inner > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr) !important;
    align-items: stretch !important;
    gap: 24px !important;
    width: 100% !important;
    margin: 0 !important;
  }
  body.home #main .ss-baogia > .section-content > .row > .col > .col-inner > .row > br,
  body.home #main .ss-baogia > .section-content > .row > .col > .col-inner > .row > p:empty {
    display: none !important;
  }
  body.home #main .ss-baogia > .section-content > .row > .col > .col-inner > .row > .col-inner {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.home #main .ss-baogia .form-baogia {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 100% !important;
    padding: 28px !important;
  }
  body.home #main .ss-baogia #quote-form1 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 16px !important;
    width: 100% !important;
    margin: 0 !important;
  }
  body.home #main .ss-baogia #quote-form1 > .form-yeucau {
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
  }
  body.home #main .ss-baogia #quote-form1 > .form-yeucau:has(textarea),
  body.home #main .ss-baogia #quote-form1 > .form-sm {
    grid-column: 1 / -1 !important;
  }
  body.home #main .ss-baogia #quote-form1 .data {
    display: block !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    text-align: left !important;
  }
  body.home #main .ss-baogia #quote-form1 input:not([type=hidden]),
  body.home #main .ss-baogia #quote-form1 select,
  body.home #main .ss-baogia #quote-form1 textarea {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 11px 13px !important;
    border: 1px solid #dbe5f1 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #24364d !important;
    box-shadow: none !important;
    text-align: left !important;
    font: inherit !important;
    font-size: 14px !important;
  }
  body.home #main .ss-baogia #quote-form1 textarea {
    min-height: 112px !important;
    resize: vertical !important;
  }
  body.home #main .ss-baogia #quote-form1 input:focus,
  body.home #main .ss-baogia #quote-form1 select:focus,
  body.home #main .ss-baogia #quote-form1 textarea:focus {
    border-color: #2877d7 !important;
    box-shadow: 0 0 0 3px rgba(40, 119, 215, .12) !important;
    outline: 0 !important;
  }
  body.home #main .ss-baogia #quote-form1 .form-sm {
    width: 100% !important;
    margin: 0 !important;
  }
  body.home #main .ss-baogia #quote-form1 .form-sm button {
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #0864cf !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
  }
  body.home #main .ss-baogia .img-bd,
  body.home #main .ss-baogia .img-bd .img-inner {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}
@media (max-width: 1099px) {
  body.home #main .ss-baogia > .section-content > .row > .col > .col-inner > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
  }
  body.home #main .ss-baogia #quote-form1 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }
  body.home #main .ss-baogia #quote-form1 > .form-yeucau,
  body.home #main .ss-baogia #quote-form1 > .form-sm {
    grid-column: 1 !important;
    min-width: 0 !important;
  }
  body.home #main .ss-baogia #quote-form1 .data,
  body.home #main .ss-baogia #quote-form1 input,
  body.home #main .ss-baogia #quote-form1 select,
  body.home #main .ss-baogia #quote-form1 textarea {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    text-align: left !important;
  }
}

/* Footer desktop repair: keep the four information columns on one readable row. */
@media (min-width: 1100px) {
  #footer.footer-wrapper > section:nth-of-type(2) > .section-content {
    display: block !important;
    box-sizing: border-box !important;
    width: min(1260px, calc(100% - 48px)) !important;
    max-width: 1260px !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }
  #footer.footer-wrapper > section:nth-of-type(2) > .section-content > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .95fr) minmax(0, 1.25fr) minmax(0, 1fr) !important;
    justify-content: stretch !important;
    align-content: start !important;
    align-items: stretch !important;
    gap: 24px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }
  #footer.footer-wrapper > section:nth-of-type(2) > .section-content > .row > .col:nth-child(-n+4) {
    display: block !important;
    box-sizing: border-box !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    grid-column: auto !important;
    justify-self: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  #footer.footer-wrapper > section:nth-of-type(2) > .section-content > .row > .col > .col-inner {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }
  #footer.footer-wrapper > section:nth-of-type(2) .text-footer p,
  #footer.footer-wrapper > section:nth-of-type(2) .menu-listct li a {
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }
  #footer.footer-wrapper > section:nth-of-type(2) .list-dathang .item-dh .text-d {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
  #footer.footer-wrapper > section:nth-of-type(2) .list-dathang .item-dh .text-d a {
    white-space: nowrap !important;
    overflow-wrap: normal !important;
  }
}

/* WooCommerce product detail refresh inspired by the In Viet Dung product layout. Desktop only. */
@media (min-width: 901px) {
  body.single-product #main.site-main > .container { width: min(1260px, calc(100% - 48px)); max-width: 1260px; }
  body.single-product.woocommerce div.product { grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr); align-items: start; gap: clamp(26px, 3vw, 40px); margin-bottom: 44px; }
  body.single-product .woocommerce-breadcrumb { margin: 16px auto 24px; color: #6b7788; font-size: 14px; }
  body.single-product .woocommerce-breadcrumb a { color: #075fc8; }
  body.single-product div.product .woocommerce-product-gallery { padding: 10px; border: 1px solid #dce6f2; border-radius: 14px; background: #fff; box-shadow: 0 5px 18px rgba(24,54,91,.07); }
  body.single-product .woocommerce-product-gallery .flex-viewport { height: auto !important; border-radius: 9px; background: #f4f7fb; }
  body.single-product .woocommerce-product-gallery__image { display: flex !important; align-items: center; justify-content: center; aspect-ratio: 4 / 3; height: auto !important; background: #f4f7fb; }
  body.single-product .woocommerce-product-gallery__image > a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
  body.single-product .woocommerce-product-gallery__image img { display: block; width: 100% !important; height: 100% !important; max-height: none; border: 0; border-radius: 8px; object-fit: contain !important; }
  body.single-product .woocommerce-product-gallery .flex-control-thumbs { grid-template-columns: repeat(6, minmax(0,1fr)); gap: 9px; margin-top: 10px; }
  body.single-product .woocommerce-product-gallery .flex-control-thumbs li { padding: 3px; border-color: #e0e8f2; border-radius: 8px; }
  body.single-product .woocommerce-product-gallery .flex-control-thumbs img { height: 68px !important; object-fit: cover; }
  body.single-product div.product .summary { padding: clamp(24px,2.5vw,34px); border: 1px solid #dce6f2; border-radius: 14px; background: #fff; box-shadow: 0 5px 18px rgba(24,54,91,.07); }
  body.single-product div.product .product_title { margin: 0 0 18px; color: #142d50; font-size: clamp(28px,2.4vw,35px); font-weight: 750; line-height: 1.25; }
  body.single-product div.product .summary > .price { justify-content: flex-start; gap: 8px 14px; margin: 0 0 20px; padding: 17px 19px; border: 1px solid #cbdcf4; border-left: 4px solid #1769d2; border-radius: 10px; background: #f3f7fe; color: #075fc8; font-size: 26px; line-height: 1.25; }
  body.single-product div.product .summary > .price del { color: #8995a5; font-size: 16px; font-weight: 500; }
  body.single-product div.product .summary > .price ins { color: #075fc8; font-weight: 800; }
  body.single-product div.product .woocommerce-product-details__short-description { color: #33445b; font-size: 15px; line-height: 1.75; }
  body.single-product div.product .woocommerce-product-details__short-description > p:first-child { margin: 0 0 14px; color: #213653; font-size: 16px; font-weight: 650; }
  body.single-product div.product .woocommerce-product-details__short-description ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin: 14px 0 20px; padding: 0; list-style: none; }
  body.single-product div.product .woocommerce-product-details__short-description li { position: relative; min-width: 0; margin: 0; padding: 10px 11px 10px 34px; border: 1px solid #e0e9f5; border-radius: 8px; background: #f8faff; line-height: 1.5; }
  body.single-product div.product .woocommerce-product-details__short-description li::before { position: absolute; top: 10px; left: 11px; width: 16px; height: 16px; border-radius: 50%; background: #e4efff; color: #075fc8; content: "✓"; font-size: 11px; font-weight: 800; line-height: 16px; text-align: center; }
  body.single-product div.product form.cart { align-items: center; gap: 10px; margin: 20px 0 16px; padding-top: 17px; border-top: 1px solid #e5ebf3; }
  body.single-product div.product form.cart .quantity .qty { min-height: 48px; border-color: #cbd8e8; border-radius: 8px; }
  body.single-product div.product .single_add_to_cart_button { min-height: 48px; padding: 11px 22px; border-radius: 8px; background: #075fc8; box-shadow: 0 5px 12px rgba(7,95,200,.15); font-size: 14px; }
  body.single-product div.product .single_add_to_cart_button:hover { background: #064c9e; }
  body.single-product div.product .product_meta { padding-top: 15px; border-top: 1px solid #e5ebf3; font-size: 13px; }
  body.single-product.woocommerce div.product > .woocommerce-tabs { grid-column: 1 / -1; width: 100%; max-width: none; margin: 2px 0 0; padding: 24px 28px; border: 1px solid #dce6f2; border-radius: 14px; background: #fff; box-shadow: 0 5px 18px rgba(24,54,91,.06); }
  body.single-product .woocommerce-tabs ul.tabs { display: flex; margin: 0 0 22px; padding: 0; border-bottom: 1px solid #dce6f2; }
  body.single-product .woocommerce-tabs ul.tabs li { margin: 0 22px 0 0; padding: 0; border: 0; background: transparent; }
  body.single-product .woocommerce-tabs ul.tabs li a { display: block; padding: 0 0 12px; border-bottom: 3px solid #1769d2; color: #075fc8; font-size: 17px; font-weight: 700; text-transform: none; }
  body.single-product .woocommerce-tabs .panel { margin: 0; color: #35455c; font-size: 15px; line-height: 1.8; }
  body.single-product .woocommerce-tabs .panel > h2:first-child { margin: 0 0 18px; color: #142d50; font-size: 25px; line-height: 1.35; }
  body.single-product .woocommerce-tabs .panel h2, body.single-product .woocommerce-tabs .panel h3, body.single-product .woocommerce-tabs .panel h4 { margin-top: 28px; margin-bottom: 12px; color: #075fc8; line-height: 1.4; }
  body.single-product .woocommerce-tabs .panel p { margin: 0 0 16px; }
  body.single-product .woocommerce-tabs .panel figure, body.single-product .woocommerce-tabs .panel .wp-caption { width: auto !important; max-width: 100% !important; margin: 22px auto; text-align: center; }
  body.single-product .woocommerce-tabs .panel img { width: auto; max-width: 100%; max-height: none; margin: 0 auto; object-fit: contain; }
  body.single-product .woocommerce-tabs .panel .wp-caption-text { margin: 8px 0 0; color: #6b7788; font-size: 13px; }
  body.single-product .woocommerce-tabs .panel table { width: 100%; margin: 20px 0; border-collapse: collapse; border: 1px solid #d7e1ee; }
  body.single-product .woocommerce-tabs .panel th, body.single-product .woocommerce-tabs .panel td { padding: 11px 13px; border: 1px solid #d7e1ee; text-align: left; }
  body.single-product .woocommerce-tabs .panel th { background: #edf4fd; color: #18385e; font-weight: 700; }
  body.single-product.woocommerce div.product > .related.products { grid-column: 1 / -1; width: 100%; margin-top: 2px; padding: 24px 28px; border: 1px solid #dce6f2; border-radius: 14px; background: #f7faff; }
  body.single-product .related.products > h2 { margin: 0 0 18px; color: #142d50; font-size: 25px; }
  body.single-product .related.products ul.products li.product { min-width: 0; padding: 12px; border: 1px solid #dce6f2; border-radius: 10px; background: #fff; box-shadow: 0 3px 12px rgba(24,54,91,.05); }
  body.single-product .related.products ul.products li.product img { aspect-ratio: 4 / 3; object-fit: contain; background: #f4f7fb; }
}


/* In hộp giấy desktop: keep the archive heading and all content sections on one shared width. */
@media (min-width: 768px) {
  body.term-in-hop-giay #main.site-main > .container {
    box-sizing: border-box;
    width: calc(100% - 48px);
    max-width: 1260px;
    margin-right: auto;
    margin-left: auto;
  }

  body.term-in-hop-giay #main.site-main > .container > .woocommerce-products-header,
  body.term-in-hop-giay #main.site-main > .container > .ttn-cro-top-content,
  body.term-in-hop-giay #main.site-main > .container > .term-description,
  body.term-in-hop-giay #main.site-main > .container > .ttn-archive-description {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
  }

  body.term-in-hop-giay #main.site-main > .container .term-description > *,
  body.term-in-hop-giay #main.site-main > .container .ttn-cro-top-content > * {
    box-sizing: border-box;
    max-width: 100%;
  }
}


/* Category archives desktop: reduce decorative panels while keeping product cards distinct. */
@media (min-width: 768px) {
  body.tax-product_cat .woocommerce-products-header {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 0 12px !important;
  }

  body.tax-product_cat .woocommerce-products-header__title.page-title {
    background: transparent !important;
    box-shadow: none !important;
  }

  body.tax-product_cat .ttn-cro-top-content .ttn-cro-card {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 15px 0 !important;
  }

  body.tax-product_cat .ttn-cro-top-content .ttn-cro-cta-wrapper {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 15px 0 !important;
  }
}


/* Desktop WooCommerce product detail: match the InVietDung gallery, price and offer layout. */
body.single-product .ttn-pdp-desktop-layout,
body.single-product .ttn-pdp-gallery-count,
body.single-product .ttn-pdp-gallery-nav { display: none; }

@media (min-width: 901px) {
  body.single-product #main.site-main > .container {
    box-sizing: border-box;
    width: min(1380px, calc(100% - 60px)) !important;
    max-width: 1380px !important;
    margin-right: auto;
    margin-left: auto;
  }
  body.single-product .woocommerce-breadcrumb {
    margin: 18px 0 24px;
    color: #63738b;
    font-size: 14px;
  }
  body.single-product .woocommerce-breadcrumb a { color: #075fc8; }
  body.single-product.woocommerce div.product {
    display: grid !important;
    grid-template-columns: minmax(0, 1.42fr) minmax(0, 1fr) !important;
    align-items: start;
    gap: 26px;
    width: 100%;
    margin: 0 auto 42px;
  }
  body.single-product div.product div.images,
  body.single-product div.product div.summary {
    float: none !important;
    width: 100% !important;
    min-width: 0;
    max-width: 100%;
    margin: 0 !important;
  }
  body.single-product div.product .woocommerce-product-gallery {
    position: relative;
    overflow: hidden;
    padding: 0;
    border: 0;
    border-radius: 10px;
    background: #f4f7fb;
    box-shadow: none;
  }
  body.single-product .woocommerce-product-gallery .flex-viewport {
    height: clamp(430px, 37vw, 530px) !important;
    border-radius: 10px;
    background: #f1f5fa;
  }
  body.single-product .woocommerce-product-gallery__wrapper,
  body.single-product .woocommerce-product-gallery__image {
    width: 100% !important;
    height: 100% !important;
  }
  body.single-product .woocommerce-product-gallery__image > a {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
  }
  body.single-product .woocommerce-product-gallery__image img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-height: none;
    border: 0;
    border-radius: 10px;
    background: #f4f7fb;
    object-fit: contain !important;
  }
  body.single-product .woocommerce-product-gallery .flex-control-thumbs {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin: 16px 0 0;
    padding: 0;
  }
  body.single-product .woocommerce-product-gallery .flex-control-thumbs li {
    position: relative;
    display: block;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 4px;
    overflow: hidden;
    border: 1px solid #dce5ef;
    border-radius: 8px;
    background: #fff;
  }
  body.single-product .woocommerce-product-gallery .flex-control-thumbs li:nth-child(n+6) { display: none !important; }
  body.single-product .woocommerce-product-gallery .flex-control-thumbs img {
    display: block;
    width: 100%;
    height: 82px !important;
    border-radius: 5px;
    object-fit: cover;
  }
  body.single-product .ttn-pdp-gallery-more {
    position: absolute;
    inset: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    background: rgba(12, 24, 43, .58);
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    pointer-events: none;
  }
  body.single-product .ttn-pdp-gallery-count {
    position: absolute;
    z-index: 4;
    bottom: 15px;
    left: 15px;
    display: inline-flex;
    min-width: 48px;
    min-height: 28px;
    align-items: center;
    justify-content: center;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(33, 39, 47, .72);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
  }
  body.single-product .ttn-pdp-gallery-nav {
    position: absolute;
    z-index: 4;
    inset: 50% 14px auto;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
    pointer-events: none;
  }
  body.single-product .ttn-pdp-gallery-nav button {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.94);
    color: #17345b;
    font-size: 28px;
    line-height: 1;
    box-shadow: 0 2px 10px rgba(16, 35, 60, .16);
    cursor: pointer;
    pointer-events: auto;
  }
  body.single-product div.product .summary {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #24354d;
    line-height: 1.55;
  }
  body.single-product div.product .product_title {
    margin: 0 0 8px;
    color: #102f58;
    font-size: clamp(27px, 2.1vw, 32px);
    font-weight: 750;
    line-height: 1.25;
  }
  body.single-product div.product .summary > .woocommerce-product-rating,
  body.single-product div.product .summary > .price,
  body.single-product div.product .summary > .woocommerce-product-details__short-description { display: none !important; }
  body.single-product .ttn-pdp-desktop-layout { display: block; }
  body.single-product .ttn-pdp-product-meta {
    display: flex;
    min-height: 24px;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin: 0 0 12px;
    color: #68788f;
    font-size: 14px;
  }
  body.single-product .ttn-pdp-rating { display: inline-flex; align-items: center; gap: 5px; }
  body.single-product .ttn-pdp-rating > span { color: #f39818; font-size: 17px; }
  body.single-product .ttn-pdp-rating strong { color: #1d2e43; font-weight: 700; }
  body.single-product .ttn-pdp-rating a { color: #68788f; text-decoration: none; }
  body.single-product .ttn-pdp-purchase-panel {
    padding: 18px;
    border: 1px solid #1769e8;
    border-radius: 12px;
    background: linear-gradient(155deg, #f1f5fd 0%, #fff 80%);
  }
  body.single-product .ttn-pdp-price-quote-row {
    display: grid;
    grid-template-columns: minmax(0, .82fr) 1px minmax(0, 1.18fr);
    align-items: center;
    gap: 18px;
    min-height: 98px;
    padding: 0 0 16px;
  }
  body.single-product .ttn-pdp-price-copy,
  body.single-product .ttn-pdp-quote-copy { min-width: 0; }
  body.single-product .ttn-pdp-eyebrow,
  body.single-product .ttn-pdp-quote-copy > span {
    display: block;
    margin: 0 0 3px;
    color: #74829a;
    font-size: 13px;
  }
  body.single-product .ttn-pdp-price-copy .price {
    display: block;
    margin: 0;
    color: #142b4a;
    font-size: 27px;
    font-weight: 750;
    line-height: 1.25;
  }
  body.single-product .ttn-pdp-price-copy .price del { color: #8995a5; font-size: 15px; font-weight: 500; }
  body.single-product .ttn-pdp-price-copy .price ins { color: #142b4a; text-decoration: none; }
  body.single-product .ttn-pdp-price-divider { display: block; width: 1px; height: 56px; border-left: 1px dashed #c8d3e0; }
  body.single-product .ttn-pdp-quote-copy { display: flex; align-items: center; flex-direction: column; gap: 8px; text-align: center; }
  body.single-product .ttn-pdp-quote-copy > span { color: #152d4e; font-size: 14px; }
  body.single-product .ttn-pdp-quote-button {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 6px 8px 6px 21px;
    border-radius: 999px;
    background: #2464e8;
    color: #fff !important;
    font-size: 16px;
    font-weight: 750;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
  }
  body.single-product .ttn-pdp-quote-button > span {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 50%;
    background: #fff;
    color: #2464e8;
    font-size: 20px;
  }
  body.single-product .ttn-pdp-spec-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 24px;
    margin: 0;
    padding: 18px;
    border: 1px solid #dce5ef;
    border-radius: 7px;
    background: rgba(255,255,255,.78);
  }
  body.single-product .ttn-pdp-spec { min-width: 0; }
  body.single-product .ttn-pdp-spec span,
  body.single-product .ttn-pdp-spec strong { display: block; }
  body.single-product .ttn-pdp-spec span { margin-bottom: 4px; color: #74829a; font-size: 14px; }
  body.single-product .ttn-pdp-spec strong { color: #15263d; font-size: 14px; font-weight: 650; line-height: 1.55; }
  body.single-product .ttn-pdp-short-copy { margin-top: 14px; }
  body.single-product .ttn-pdp-short-copy .woocommerce-product-details__short-description {
    display: block;
    margin: 0;
    color: #384a62;
    font-size: 14px;
    line-height: 1.6;
  }
  body.single-product .ttn-pdp-short-copy .woocommerce-product-details__short-description > p:first-child { margin: 0 0 12px; }
  body.single-product .ttn-pdp-short-copy .woocommerce-product-details__short-description ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  body.single-product .ttn-pdp-short-copy .woocommerce-product-details__short-description li {
    position: relative;
    min-width: 0;
    margin: 0;
    padding: 10px 10px 10px 31px;
    border: 1px solid #dfe8f3;
    border-radius: 7px;
    background: #fff;
    color: #263951;
    line-height: 1.45;
  }
  body.single-product .ttn-pdp-short-copy .woocommerce-product-details__short-description li::before {
    position: absolute;
    top: 10px;
    left: 10px;
    display: grid;
    width: 15px;
    height: 15px;
    place-items: center;
    border-radius: 50%;
    background: #e5efff;
    color: #1769d2;
    content: "✓";
    font-size: 10px;
    font-weight: 800;
  }
  body.single-product .ttn-pdp-promo-carousel { position: relative; margin: 18px 0 12px; padding: 0 2px; }
  body.single-product .ttn-pdp-promo-track {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    padding: 2px 1px 8px;
    scroll-behavior: smooth;
    scrollbar-width: none;
  }
  body.single-product .ttn-pdp-promo-track::-webkit-scrollbar { display: none; }
  body.single-product .ttn-pdp-promo-card {
    display: flex;
    flex: 0 0 222px;
    min-width: 0;
    min-height: 92px;
    align-items: center;
    gap: 11px;
    padding: 13px 12px;
    border: 1px solid #e2e8f0;
    border-radius: 13px;
    background: #fff;
  }
  body.single-product .ttn-pdp-promo-icon {
    display: grid;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    place-items: center;
    border-radius: 50%;
    background: #fff1da;
    color: #f29b21;
    font-size: 21px;
    font-weight: 800;
  }
  body.single-product .ttn-pdp-promo-delivery { background: #e9f1ff; color: #2866db; }
  body.single-product .ttn-pdp-promo-support { background: #e7f7f4; color: #20a695; font-size: 12px; }
  body.single-product .ttn-pdp-promo-card > div { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
  body.single-product .ttn-pdp-promo-card strong { color: #15263e; font-size: 14px; font-weight: 700; line-height: 1.3; }
  body.single-product .ttn-pdp-promo-card span:not(.ttn-pdp-promo-icon) { color: #78869b; font-size: 13px; line-height: 1.3; }
  body.single-product .ttn-pdp-promo-card small { color: #20a069; font-size: 12px; }
  body.single-product .ttn-pdp-promo-arrow {
    position: absolute;
    z-index: 2;
    top: 50%;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    padding: 0;
    border: 1px solid #e0e7ef;
    border-radius: 50%;
    background: #fff;
    color: #53657d;
    font-size: 24px;
    line-height: 1;
    box-shadow: 0 3px 10px rgba(20, 43, 77, .12);
    transform: translateY(-50%);
    cursor: pointer;
  }
  body.single-product .ttn-pdp-promo-prev { left: -14px; }
  body.single-product .ttn-pdp-promo-next { right: -14px; }
  body.single-product div.product form.cart {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 13px 0 14px;
    padding-top: 15px;
    border-top: 1px solid #e1e8f0;
  }
  body.single-product div.product form.cart .quantity .qty {
    width: 76px;
    min-height: 46px;
    border: 1px solid #cfdae7;
    border-radius: 8px;
    text-align: center;
  }
  body.single-product div.product .single_add_to_cart_button {
    min-height: 46px;
    padding: 10px 22px;
    border: 0;
    border-radius: 7px;
    background: #075fc8;
    color: #fff;
    font-weight: 700;
    box-shadow: 0 4px 9px rgba(7, 95, 200, .15);
  }
  body.single-product div.product .product_meta { padding-top: 12px; border-top: 1px solid #e1e8f0; color: #68788f; font-size: 13px; }
  body.single-product.woocommerce div.product > .woocommerce-tabs,
  body.single-product.woocommerce div.product > .related.products { grid-column: 1 / -1; width: 100%; min-width: 0; }
}
@media (min-width: 901px) and (max-width: 1199px) {
  body.single-product.woocommerce div.product { grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr) !important; gap: 20px; }
  body.single-product .ttn-pdp-purchase-panel { padding: 14px; }
  body.single-product .ttn-pdp-price-quote-row { grid-template-columns: minmax(0, .8fr) 1px minmax(0, 1.2fr); gap: 11px; }
  body.single-product .ttn-pdp-quote-button { padding-left: 13px; font-size: 14px; }
  body.single-product .ttn-pdp-promo-card { flex-basis: 205px; }
}

/* Compact floating contact panel, aligned to the right on desktop and mobile. */
#footer.footer-wrapper .contact-box-bottom-nav {
  box-sizing: border-box !important;
  right: 8px !important;
  bottom: 16px !important;
  left: auto !important;
  width: 166px !important;
  min-width: 0 !important;
  max-width: calc(100vw - 16px) !important;
  padding: 6px !important;
  border-radius: 14px !important;
}
#footer.footer-wrapper .contact-box-bottom-nav ul {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 4px !important;
}
#footer.footer-wrapper .contact-box-bottom-nav ul > li {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
#footer.footer-wrapper .contact-box-bottom-nav ul > li > a {
  box-sizing: border-box !important;
  display: flex !important;
  min-width: 0 !important;
  min-height: 36px !important;
  flex-direction: row !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  padding: 4px 7px !important;
  border-radius: 9px !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}
#footer.footer-wrapper .contact-box-bottom-nav ul > li > a > svg {
  flex: 0 0 23px !important;
  width: 23px !important;
  height: 23px !important;
  min-width: 23px !important;
  padding: 3px !important;
}
@media (max-width: 992px) {
  html.ttn-has-contact-box body {
    padding-bottom: calc(164px + env(safe-area-inset-bottom)) !important;
  }
  #footer.footer-wrapper .contact-box-bottom-nav {
    right: 6px !important;
    bottom: calc(8px + env(safe-area-inset-bottom)) !important;
    width: min(164px, calc(100vw - 12px)) !important;
    max-width: calc(100vw - 12px) !important;
    padding: 5px !important;
    border-radius: 12px !important;
  }
  #footer.footer-wrapper .contact-box-bottom-nav ul { gap: 3px !important; }
  #footer.footer-wrapper .contact-box-bottom-nav ul > li > a {
    min-height: 34px !important;
    gap: 6px !important;
    padding: 3px 6px !important;
    border-radius: 8px !important;
    font-size: 11px !important;
  }
  #footer.footer-wrapper .contact-box-bottom-nav ul > li > a > svg {
    flex-basis: 21px !important;
    width: 21px !important;
    height: 21px !important;
    min-width: 21px !important;
    padding: 2px !important;
  }
}
@media (max-width: 360px) {
  #footer.footer-wrapper .contact-box-bottom-nav { width: min(154px, calc(100vw - 12px)) !important; }
  #footer.footer-wrapper .contact-box-bottom-nav ul > li > a { font-size: 10px !important; }
}

/* On phones, keep only the action icons visible to minimize the covered page area. */
@media (max-width: 992px) {
  #footer.footer-wrapper .contact-box-bottom-nav {
    width: 48px !important;
    max-width: 48px !important;
    padding: 4px !important;
  }
  #footer.footer-wrapper .contact-box-bottom-nav ul { gap: 3px !important; }
  #footer.footer-wrapper .contact-box-bottom-nav ul > li > a {
    width: 38px !important;
    min-height: 34px !important;
    justify-content: center !important;
    gap: 0 !important;
    padding: 3px !important;
    font-size: 0 !important;
  }
  #footer.footer-wrapper .contact-box-bottom-nav ul > li > a > svg {
    flex: 0 0 21px !important;
    width: 21px !important;
    height: 21px !important;
    min-width: 21px !important;
  }
}




/* Catalogue price CTA: separate and align the call and Zalo actions. */
.ttn-catalogue-price-cta .ttn-catalogue-price-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  margin-top: 12px !important;
}
.ttn-catalogue-price-cta .ttn-catalogue-price-actions > .ttn-catalogue-price-btn {
  box-sizing: border-box !important;
  display: inline-flex !important;
  flex: 0 0 auto !important;
  min-width: 185px !important;
  min-height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 10px 16px !important;
  border-radius: 8px !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
.ttn-catalogue-price-cta .ttn-catalogue-price-btn:hover,
.ttn-catalogue-price-cta .ttn-catalogue-price-btn:focus-visible {
  background: #1f73c9 !important;
  color: #fff !important;
}
@media (max-width: 600px) {
  .ttn-catalogue-price-cta .ttn-catalogue-price-actions > .ttn-catalogue-price-btn {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* In Phong Bi: add a clear grid to the quotation table. */
body.tax-product_cat.term-in-phong-bi .ttn-envelope-landing #bang-gia-phong-bi .ttn-table-scroll {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #d6e0eb !important;
  border-radius: 10px !important;
  background: #fff !important;
}
body.tax-product_cat.term-in-phong-bi .ttn-envelope-landing #bang-gia-phong-bi .ttn-table-scroll > table {
  display: table !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 680px !important;
  max-width: none !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  table-layout: fixed !important;
  background: #fff !important;
}
body.tax-product_cat.term-in-phong-bi .ttn-envelope-landing #bang-gia-phong-bi .ttn-table-scroll th,
body.tax-product_cat.term-in-phong-bi .ttn-envelope-landing #bang-gia-phong-bi .ttn-table-scroll td {
  display: table-cell !important;
  box-sizing: border-box !important;
  padding: 12px 14px !important;
  border: 1px solid #d6e0eb !important;
  vertical-align: middle !important;
  text-align: center !important;
  line-height: 1.45 !important;
}
body.tax-product_cat.term-in-phong-bi .ttn-envelope-landing #bang-gia-phong-bi .ttn-table-scroll thead th {
  background: #edf4fd !important;
  color: #17385f !important;
  font-weight: 700 !important;
}
body.tax-product_cat.term-in-phong-bi .ttn-envelope-landing #bang-gia-phong-bi .ttn-table-scroll tbody td:first-child {
  background: #f8fafc !important;
  color: #24354a !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}
body.tax-product_cat.term-in-phong-bi .ttn-envelope-landing #bang-gia-phong-bi .ttn-table-scroll tbody tr:nth-child(even) td:not(:first-child) {
  background: #fbfdff !important;
}


/* Keep the desktop contact panel compact so it does not cover price tables. */
@media (min-width: 993px) {
  #footer.footer-wrapper .contact-box-bottom-nav {
    width: 132px !important;
    max-width: 132px !important;
    padding: 4px !important;
  }
  #footer.footer-wrapper .contact-box-bottom-nav ul { gap: 3px !important; }
  #footer.footer-wrapper .contact-box-bottom-nav ul > li > a {
    min-height: 32px !important;
    gap: 5px !important;
    padding: 3px 4px !important;
    border-radius: 8px !important;
    font-size: 10px !important;
  }
  #footer.footer-wrapper .contact-box-bottom-nav ul > li > a > svg {
    flex: 0 0 20px !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    padding: 2px !important;
  }
}
