*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#17191c;line-height:1.6;background-color:#1f2124;background-image:linear-gradient(30deg, rgba(255,255,255,.028) 12%, transparent 12.5%, transparent 87%, rgba(255,255,255,.028) 87.5%, rgba(255,255,255,.028)),linear-gradient(150deg, rgba(255,255,255,.028) 12%, transparent 12.5%, transparent 87%, rgba(255,255,255,.028) 87.5%, rgba(255,255,255,.028)),linear-gradient(30deg, rgba(0,0,0,.14) 12%, transparent 12.5%, transparent 87%, rgba(0,0,0,.14) 87.5%, rgba(0,0,0,.14)),linear-gradient(150deg, rgba(0,0,0,.14) 12%, transparent 12.5%, transparent 87%, rgba(0,0,0,.14) 87.5%, rgba(0,0,0,.14)),linear-gradient(60deg, rgba(255,255,255,.016) 25%, transparent 25.5%, transparent 75%, rgba(255,255,255,.016) 75%, rgba(255,255,255,.016)),linear-gradient(60deg, rgba(255,255,255,.016) 25%, transparent 25.5%, transparent 75%, rgba(255,255,255,.016) 75%, rgba(255,255,255,.016));background-size:44px 76px;background-position:0 0,0 0,22px 38px,22px 38px,0 0,22px 38px;background-attachment:fixed}a{text-decoration:none;color:inherit}.container{width:min(92%,1200px);margin:auto}.header{position:sticky;top:0;z-index:1000;background:#090a0c;color:#fff;box-shadow:0 2px 15px #0005}.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:23px;font-weight:900;letter-spacing:2px;white-space:nowrap}.brand small{display:block;font-size:9px;color:#c9a96a;letter-spacing:2px}.menu{display:flex;list-style:none;padding:0;margin:0}.menu>li{position:relative}.menu a{display:block;padding:27px 14px;font-size:13px;font-weight:700}.menu a:hover{color:#c9a96a}.dropdown{display:none;position:absolute;top:100%;left:0;background:#111;min-width:230px}.dropdown a{padding:13px 17px;border-bottom:1px solid #ffffff15}.menu li:hover>.dropdown{display:block}.hotline,.btn{display:inline-block;padding:12px 18px;background:#c9a96a;color:#111;border:1px solid #c9a96a;font-weight:800;cursor:pointer}.hotline{background:transparent;color:#c9a96a}.hamb{display:none;background:none;border:0;color:#fff;font-size:28px}.mobile-menu{display:none}.hero{min-height:650px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,#070809e8,#07080955),url("../images/noi-that/phong-khach-tong-the.jpg") center/cover no-repeat}.eyebrow{color:#c9a96a;font-weight:800;letter-spacing:3px;font-size:12px}.hero h1{font-size:clamp(42px,7vw,82px);line-height:1;margin:15px 0;max-width:900px}.hero p{font-size:20px;max-width:680px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.outline{background:transparent;color:#fff}.section{padding:80px 0}.alt{background:#f5f5f2}.section h2{font-size:clamp(30px,4vw,48px);line-height:1.1;margin:8px 0 18px}.section-head{margin-bottom:32px}.section-head p{color:#70757a;max-width:700px}.cards,.split,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.card{min-height:410px;position:relative;overflow:hidden;color:#fff}.card-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:.5s}.card:hover .card-bg{transform:scale(1.05)}.card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,#000e)}.card-content{position:absolute;z-index:2;bottom:28px;left:28px;right:28px}.card h3{font-size:34px;margin:0}.card p{max-width:600px}.page-hero{padding:95px 0;color:#fff;background:linear-gradient(90deg,#070809e8,#07080966),url("../images/noi-that/phong-khach-tong-the.jpg") center/cover no-repeat}.page-hero h1{font-size:clamp(38px,6vw,65px);margin:12px 0}.crumb{font-size:13px;color:#aaa}.crumb a{color:#c9a96a}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product{border:1px solid #e4e4df;background:#fff;overflow:hidden}.product-img{height:220px;background-position:center;background-size:cover}.product-body{padding:18px}.product-body h3{margin:0 0 8px}.product-body p{color:#70757a;font-size:14px}.product-body .btn{font-size:12px;margin-top:8px}.split img{width:100%;height:480px;object-fit:cover}.list li{margin:9px 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #ddd}.stat{padding:25px;border-right:1px solid #ddd}.stat span{display:block;color:#70757a;font-size:13px;margin-top:5px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project{position:relative;overflow:hidden;cursor:pointer}.project img{width:100%;height:300px;display:block;object-fit:cover;transition:.4s}.project:hover img{transform:scale(1.04)}.project-info{position:absolute;left:0;right:0;bottom:0;padding:20px;color:#fff;background:linear-gradient(transparent,#000e)}.project-info small{color:#c9a96a}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.filter{padding:10px 16px;border:1px solid #ddd;background:#fff;font-weight:800;cursor:pointer}.filter.active{background:#111;color:#fff}.contact-box{border:1px solid #ddd;padding:28px}.contact-line{padding:13px 0;border-bottom:1px solid #eee}.form{display:grid;gap:13px}.form input,.form textarea{width:100%;padding:14px;border:1px solid #ddd;font:inherit}.form textarea{min-height:150px}.footer{background:#090a0c;color:#fff;padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.5fr;gap:30px}.footer h3{color:#c9a96a;font-size:14px}.footer p,.footer li{color:#aaa;font-size:14px}.footer ul{list-style:none;padding:0}.footer-bottom{border-top:1px solid #ffffff15;margin-top:40px;padding-top:18px;color:#777;font-size:12px}.mobile-bar{display:none}
@media(max-width:950px){.menu,.hotline{display:none}.hamb{display:block}.mobile-menu.open{display:block}.mobile-menu a{display:block;padding:14px 5%;background:#111;color:#fff;border-top:1px solid #ffffff12}.mobile-menu .sub{padding-left:9%}.grid4{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.hero{min-height:600px}.hero p{font-size:16px}.section{padding:60px 0}.cards,.split,.contact-grid{grid-template-columns:1fr}.grid4,.gallery{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.footer-grid{grid-template-columns:1fr}.mobile-bar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:0;right:0;bottom:0;z-index:1000}.mobile-bar a{padding:11px 3px;text-align:center;color:#fff;font-size:11px;background:#168b43}.mobile-bar a:nth-child(2){background:#087bea}.mobile-bar a:nth-child(3){background:#1877f2}body{padding-bottom:48px}}
/* Ảnh công trình thực tế của TRUNG NGHĨA */
.product-img{background-repeat:no-repeat;background-color:#181a1d}.card-bg{background-repeat:no-repeat}.project img{background:#eee}.real-photo-note{margin:12px 0 28px;color:#70757a;font-size:14px}
.aluminum-systems-section .eyebrow{color:#d9b977;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.aluminum-systems-section h2{color:#fff;text-shadow:0 3px 16px rgba(0,0,0,.45)}
.aluminum-systems-section .real-photo-note{color:rgba(255,255,255,.92);font-size:16px;line-height:1.8;max-width:980px;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.aluminum-systems-frame{background:#fff;border:1px solid #e4e0d5;border-radius:18px;padding:28px;box-shadow:0 16px 40px rgba(0,0,0,.16)}
.aluminum-systems-frame .aluminum-systems-grid{gap:22px}
.aluminum-systems-frame .product{height:100%}
@media(max-width:650px){.aluminum-systems-frame{padding:16px;border-radius:14px}}


/* ===== GOOGLE MAPS MINI - FOOTER ===== */
.footer-map-widget{
    margin-top:18px;
    width:100%;
    max-width:430px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.14);
    border-radius:10px;
    background:#111315;
}
.footer-map-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:12px;
    padding:12px 13px 8px;
}
.footer-map-head strong{
    color:#c9a96a;
    font-size:12px;
    letter-spacing:1px;
}
.footer-map-head span{
    color:#8f9499;
    font-size:11px;
}
.footer-map-tabs{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
    padding:0 12px 10px;
}
.footer-map-tab{
    border:1px solid rgba(255,255,255,.14);
    background:#1a1d20;
    color:#d8dadd;
    padding:8px 9px;
    font:inherit;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
    border-radius:6px;
}
.footer-map-tab:hover,
.footer-map-tab.active{
    background:#c9a96a;
    color:#111;
    border-color:#c9a96a;
}
.footer-map-frame{
    width:100%;
    height:210px;
    background:#222;
}
.footer-map-iframe{
    display:block;
    width:100%;
    height:100%;
    border:0;
}
.footer-map-open{
    display:block;
    padding:10px 12px;
    text-align:center;
    background:#c9a96a;
    color:#111 !important;
    font-size:11px;
    font-weight:900;
    letter-spacing:.4px;
}
.footer-map-open:hover{
    background:#fff;
}
@media(max-width:950px){
    .footer-map-widget{max-width:100%}
}
@media(max-width:650px){
    .footer-map-head{align-items:flex-start;flex-direction:column;gap:2px}
    .footer-map-frame{height:230px}
}


/* ===== GOOGLE MAPS VISIBLE LOCATION SECTION ===== */
.location-section{overflow:hidden}
.location-map-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
}
.location-map-card{
    overflow:hidden;
    border:1px solid #deded9;
    border-radius:12px;
    background:#fff;
}
.location-map-title{
    padding:16px 18px;
    border-bottom:1px solid #e8e8e3;
}
.location-map-title strong{
    display:block;
    color:#17191c;
    font-size:14px;
    margin-bottom:4px;
}
.location-map-title span{
    display:block;
    color:#70757a;
    font-size:13px;
}
.location-map-card iframe{
    display:block;
    width:100%;
    height:310px;
    border:0;
    background:#e9e9e9;
}
.location-map-open{
    display:block;
    padding:12px 16px;
    text-align:center;
    background:#c9a96a;
    color:#111 !important;
    font-size:12px;
    font-weight:900;
    letter-spacing:.4px;
}
.location-map-open:hover{background:#111;color:#fff !important}
@media(max-width:800px){
    .location-map-grid{grid-template-columns:1fr}
    .location-map-card iframe{height:280px}
}
@media(max-width:480px){
    .location-map-card iframe{height:240px}
}

.footer-map-frame{min-height:210px}.footer-map-iframe{min-height:210px;background:#e9e9e9}


/* ===== FOOTER MINI GOOGLE MAP - ALWAYS VISIBLE ===== */
.footer-mini-map iframe{max-width:100%}
@media(max-width:950px){
  .footer-mini-map{max-width:100% !important}
}
@media(max-width:650px){
  .footer-mini-map > div:nth-child(2),
  .footer-mini-map iframe{height:230px !important}
}

/* ===== 3 BONG BÓNG LIÊN HỆ NHANH ===== */
.floating-contact-bubbles{position:fixed;right:18px;bottom:110px;z-index:2500;display:flex;flex-direction:column;gap:12px}
.contact-bubble{position:relative;width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.26);border:2px solid rgba(255,255,255,.92);transition:transform .2s ease,box-shadow .2s ease}
.contact-bubble:hover{transform:translateY(-3px) scale(1.06);box-shadow:0 12px 28px rgba(0,0,0,.34)}
.contact-bubble svg{width:25px;height:25px;fill:currentColor}
.bubble-facebook{background:#1877f2}.bubble-zalo{background:#0068ff}.bubble-phone{background:#19a85b;animation:phonePulse 2.2s infinite}
.zalo-mark{width:34px;height:28px;border-radius:8px;background:#fff;color:#0068ff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;letter-spacing:-.3px;position:relative}
.zalo-mark:after{content:"";position:absolute;left:5px;bottom:-4px;width:8px;height:8px;background:#fff;transform:rotate(45deg);border-bottom-right-radius:2px}
.contact-tooltip{position:absolute;right:64px;top:50%;transform:translateY(-50%) translateX(8px);white-space:nowrap;padding:7px 10px;border-radius:6px;background:#111;color:#fff;font-size:12px;font-weight:700;opacity:0;visibility:hidden;pointer-events:none;transition:.2s ease;box-shadow:0 5px 15px rgba(0,0,0,.24)}
.contact-tooltip:after{content:"";position:absolute;right:-5px;top:50%;width:10px;height:10px;background:#111;transform:translateY(-50%) rotate(45deg)}
.contact-bubble:hover .contact-tooltip{opacity:1;visibility:visible;transform:translateY(-50%) translateX(0)}
@keyframes phonePulse{0%,100%{box-shadow:0 8px 24px rgba(0,0,0,.26),0 0 0 0 rgba(25,168,91,.42)}50%{box-shadow:0 8px 24px rgba(0,0,0,.26),0 0 0 9px rgba(25,168,91,0)}}
@media(max-width:650px){.floating-contact-bubbles{right:10px;bottom:68px;gap:9px}.contact-bubble{width:46px;height:46px}.contact-bubble svg{width:22px;height:22px}.zalo-mark{width:31px;height:25px;font-size:9px}.contact-tooltip{display:none}}


/* ===== MOBILE MENU ACCORDION ===== */
.mobile-menu-group{
    border-top:1px solid rgba(255,255,255,.08);
}
.mobile-submenu-toggle{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:14px 5%;
    border:0;
    background:#111;
    color:#fff;
    font:inherit;
    font-weight:700;
    text-align:left;
    cursor:pointer;
}
.mobile-submenu-toggle:hover{
    color:#c9a96a;
}
.mobile-arrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:19px;
    line-height:1;
    transition:transform .25s ease;
}
.mobile-menu-group.open .mobile-arrow{
    transform:rotate(180deg);
}
.mobile-submenu{
    display:none;
    background:#17191c;
}
.mobile-menu-group.open .mobile-submenu{
    display:block;
}
.mobile-submenu a{
    display:block;
    padding:12px 9% !important;
    background:#17191c !important;
    border-top:1px solid rgba(255,255,255,.07) !important;
    color:#d8dadd !important;
    font-size:12px;
}
.mobile-submenu a:hover{
    color:#c9a96a !important;
    background:#1d2024 !important;
}
@media(min-width:951px){
    .mobile-menu{display:none !important}
}



/* ===== CẤU TRÚC SẢN PHẨM → NỘI THẤT → 4 PHÒNG → PHONG CÁCH ===== */
.category-hub-section,.room-category-section{background:#f5f3ee}
.category-hub-grid{display:grid;gap:24px;margin-top:30px}
.category-hub-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.category-hub-card{
  min-height:430px;position:relative;overflow:hidden;border-radius:13px;
  text-decoration:none!important;background:#111;color:#fff;border:1px solid rgba(201,169,106,.42)
}
.category-hub-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.category-hub-card:hover>img{transform:scale(1.05)}
.category-hub-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.86))}
.category-hub-content{position:absolute;z-index:2;left:28px;right:28px;bottom:28px}
.category-hub-content small{display:block;color:#c9a96a;font-weight:900;letter-spacing:1px;margin-bottom:7px}
.category-hub-content strong{display:block;font-size:clamp(30px,4vw,48px);line-height:1.05}
.category-hub-content em{display:block;font-style:normal;color:#ddd;margin:12px 0 18px;line-height:1.6}
.category-hub-content b{color:#c9a96a;font-size:12px;letter-spacing:.5px}

.room-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:30px}
.room-category-card{
  display:grid;grid-template-columns:1.12fr .88fr;min-height:330px;background:#111;color:#fff;
  border-radius:12px;overflow:hidden;text-decoration:none!important;border:1px solid rgba(201,169,106,.34);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease
}
.room-category-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(0,0,0,.18);border-color:#c9a96a}
.room-category-image{position:relative;overflow:hidden;min-height:330px}
.room-category-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.room-category-card:hover img{transform:scale(1.05)}
.room-category-number{
  position:absolute;top:14px;left:14px;width:42px;height:42px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;background:#c9a96a;color:#111;font-weight:900
}
.room-category-body{display:flex;flex-direction:column;justify-content:center;padding:28px 25px}
.room-category-body h3{font-size:28px;color:#fff;margin:0 0 12px}
.room-category-body p{color:#bbb;line-height:1.7;margin:0 0 20px}
.room-category-body span{font-size:11px;font-weight:900;color:#c9a96a;letter-spacing:.5px}

.design-style-section{background:#f7f5f0}
.design-style-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}
.design-style-card{
  background:#fff;border:1px solid #e2ded3;border-radius:11px;overflow:hidden;text-decoration:none!important;color:#111;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease
}
.design-style-card:hover{transform:translateY(-4px);box-shadow:0 15px 30px rgba(0,0,0,.12);border-color:#c9a96a}
.design-style-image{height:260px;position:relative;overflow:hidden;background:#ddd}
.design-style-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.design-style-card:hover .design-style-image img{transform:scale(1.05)}
.design-style-image span{
  position:absolute;top:13px;right:13px;display:flex;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:50%;background:#c9a96a;color:#111;font-weight:900
}
.design-style-body{padding:20px}
.design-style-body h3{font-size:21px;margin:0 0 9px}
.design-style-body p{color:#6b7075;line-height:1.65;margin:0 0 15px}
.design-style-body b{font-size:11px;color:#9a7434;letter-spacing:.4px}
.back-hub-link{text-align:center;margin-top:38px}
.back-hub-link a{font-size:12px;font-weight:900;color:#8e6c32;text-decoration:none}

.design-detail-section{background:#f7f5f0}
.design-detail-head{
  display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px;padding-bottom:22px;
  border-bottom:1px solid #ded9cd
}
.design-detail-head>div{max-width:820px}
.design-detail-head h2{font-size:clamp(28px,4vw,46px);margin:7px 0}
.design-detail-head p{color:#696e74;margin:0;line-height:1.7}
.design-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.design-gallery-item{margin:0;background:#fff;border:1px solid #e3dfd5;border-radius:9px;overflow:hidden}
.design-image-button{position:relative;width:100%;height:255px;padding:0;border:0;background:#ddd;cursor:zoom-in;overflow:hidden}
.design-image-button img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.design-image-button:hover img{transform:scale(1.055)}
.design-zoom{
  position:absolute;right:10px;bottom:10px;width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;background:rgba(10,10,10,.78);color:#fff;font-size:20px
}
.design-gallery-item figcaption{padding:9px 12px;color:#72767b;font-size:12px}
.design-page-nav{
  display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin-top:38px;padding-top:22px;
  border-top:1px solid #ded9cd
}
.design-page-nav a{color:#171717;text-decoration:none;font-size:12px;font-weight:900;line-height:1.5}
.design-page-nav a:last-child{text-align:right}
.design-page-nav .design-all-link{text-align:center;color:#9a7434}
.design-lightbox{
  display:none;position:fixed;inset:0;z-index:5000;align-items:center;justify-content:center;
  background:rgba(0,0,0,.94);padding:58px 76px
}
.design-lightbox.open{display:flex}
.design-lightbox img{max-width:94%;max-height:88vh;object-fit:contain;border-radius:5px}
.design-lightbox-close,.design-lightbox-prev,.design-lightbox-next{
  position:absolute;border:0;color:#fff;background:rgba(255,255,255,.12);cursor:pointer;
  display:flex;align-items:center;justify-content:center
}
.design-lightbox-close{right:20px;top:18px;width:46px;height:46px;border-radius:50%;font-size:30px}
.design-lightbox-prev,.design-lightbox-next{top:50%;width:50px;height:70px;border-radius:8px;font-size:40px;transform:translateY(-50%)}
.design-lightbox-prev{left:18px}.design-lightbox-next{right:18px}
.design-lightbox-count{position:absolute;bottom:18px;color:#fff;font-size:12px}

@media(max-width:1050px){
  .room-category-grid{grid-template-columns:1fr}
  .design-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .design-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .category-hub-grid-2{grid-template-columns:1fr}
  .category-hub-card{min-height:360px}
  .room-category-card{grid-template-columns:1fr;min-height:0}
  .room-category-image{height:255px;min-height:255px}
  .room-category-body{padding:22px 20px}
  .design-detail-head{display:block}
  .design-detail-head .btn{display:inline-block;margin-top:17px}
  .design-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .design-image-button{height:215px}
  .design-lightbox{padding:58px 14px}
  .design-lightbox-prev,.design-lightbox-next{width:42px;height:58px;font-size:34px}
  .design-lightbox-prev{left:5px}.design-lightbox-next{right:5px}
  .design-page-nav{grid-template-columns:1fr 1fr}
  .design-page-nav .design-all-link{grid-column:1/-1;grid-row:2}
}
@media(max-width:500px){
  .design-style-grid{grid-template-columns:1fr}
  .design-style-image{height:235px}
  .design-gallery-grid{grid-template-columns:1fr}
  .design-image-button{height:275px}
}



/* ===== TRANG BÁO GIÁ ===== */
.quote-page-hero{background:linear-gradient(90deg,#070809ed,#07080970),url("../images/nhom-kinh/cua-nhom-kinh-xam.jpg") center/cover no-repeat}
.quote-hero-text{max-width:760px;color:#ddd;font-size:17px}
.quote-section{background:#f6f4ee}
.quote-toolbar{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:24px}
.quote-toolbar>div{max-width:780px}
.quote-toolbar h2{margin-top:7px}
.quote-toolbar p{color:#6d7176}
.quote-filters{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0 30px}
.quote-filter{
  padding:10px 16px;border:1px solid #d7d2c6;background:#fff;color:#111;font-weight:900;
  cursor:pointer;font-size:12px;letter-spacing:.4px
}
.quote-filter.active,.quote-filter:hover{background:#111;color:#c9a96a;border-color:#111}
.quote-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.quote-card{background:#fff;border:1px solid #dfdbd0;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.quote-card-image{position:relative;height:220px;background:#121315;overflow:hidden}
.quote-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.quote-card:hover .quote-card-image img{transform:scale(1.04)}
.quote-card-image span{
  position:absolute;left:12px;top:12px;padding:6px 9px;background:#111;color:#c9a96a;
  font-size:10px;font-weight:900;letter-spacing:.6px
}
.quote-card-body{padding:18px;display:flex;flex-direction:column;flex:1}
.quote-card-body h3{font-size:20px;line-height:1.3;margin:0 0 8px}
.quote-card-body p{color:#6d7176;font-size:13px;line-height:1.65;margin:0 0 16px;flex:1}
.quote-price{font-size:24px;font-weight:900;color:#9a6e28;border-top:1px solid #eee8dc;padding-top:13px}
.quote-price small{font-size:12px;color:#777;margin-left:5px;font-weight:700}
.quote-note{font-size:11px;color:#8b8e92;margin:7px 0 14px}
.quote-contact-btn{font-size:11px;text-align:center;padding:10px 12px}
@media(max-width:1100px){.quote-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.quote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-toolbar{display:block}.quote-toolbar>.btn{margin-top:15px}}
@media(max-width:650px){
  .quote-grid{grid-template-columns:1fr}
  .quote-card-image{height:260px}
  }


/* ===== TRỢ LÝ AI TRUNG NGHĨA V2 ===== */
.tn-assistant{
  --tn-gold:#c9a96a;
  --tn-gold-dark:#a9813c;
  --tn-ink:#111315;
  --tn-soft:#f5f3ee;
  --tn-line:#e5dfd3;
  position:fixed;
  right:18px;
  bottom:315px;
  z-index:3300;
  font-family:Arial,Helvetica,sans-serif;
}
.tn-assistant *{box-sizing:border-box}
.tn-assistant-launcher{
  position:relative;
  width:58px;
  height:58px;
  border:2px solid #fff;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(145deg,#151719,#060708);
  color:var(--tn-gold);
  cursor:pointer;
  box-shadow:0 12px 32px rgba(0,0,0,.32);
  transition:transform .22s ease,box-shadow .22s ease;
}
.tn-assistant-launcher:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 16px 38px rgba(0,0,0,.38)}
.tn-assistant-launcher svg{width:28px;height:28px;fill:currentColor;position:relative;z-index:2}
.tn-assistant-ai-badge{
  position:absolute;right:-4px;top:-5px;z-index:3;
  min-width:25px;height:21px;padding:0 5px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  background:var(--tn-gold);color:#111;font-size:9px;font-weight:900;
  border:2px solid #fff;letter-spacing:.4px
}
.tn-assistant-ring{
  position:absolute;inset:-7px;border-radius:50%;
  border:1.5px solid rgba(201,169,106,.6);
  animation:tnAssistantPulse 2.2s ease-out infinite
}
@keyframes tnAssistantPulse{0%{transform:scale(.9);opacity:.9}100%{transform:scale(1.23);opacity:0}}

.tn-assistant-panel{
  position:absolute;
  right:74px;
  bottom:-210px;
  width:410px;
  height:590px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(201,169,106,.5);
  border-radius:18px;
  background:#fff;
  box-shadow:0 25px 70px rgba(0,0,0,.32);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateX(14px) scale(.985);
  transform-origin:bottom right;
  transition:opacity .2s ease,transform .22s ease,visibility .2s ease;
}
.tn-assistant-panel.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0) scale(1)}

.tn-assistant-header{
  min-height:78px;padding:14px 15px 13px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  color:#fff;background:linear-gradient(120deg,#101214,#1b1e21);
  border-bottom:1px solid rgba(201,169,106,.55)
}
.tn-assistant-brand{display:flex;align-items:center;gap:11px;min-width:0}
.tn-assistant-logo{
  width:44px;height:44px;border-radius:13px;flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;
  background:var(--tn-gold);color:#101214;font-size:13px;font-weight:1000;letter-spacing:.5px
}
.tn-assistant-brand strong{display:block;font-size:13px;letter-spacing:.55px}
.tn-assistant-brand span{display:flex;align-items:center;gap:6px;margin-top:5px;color:#c8c8c8;font-size:10px}
.tn-assistant-brand i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#32bd6c;box-shadow:0 0 0 3px rgba(50,189,108,.12)}
.tn-assistant-close{
  width:35px;height:35px;border:1px solid rgba(255,255,255,.12);border-radius:10px;
  background:rgba(255,255,255,.06);color:#fff;font-size:23px;line-height:1;cursor:pointer
}
.tn-assistant-close:hover{background:rgba(255,255,255,.13)}

.tn-assistant-sourcebar{
  padding:10px 13px 9px;background:#faf9f6;border-bottom:1px solid var(--tn-line)
}
.tn-assistant-sync{display:flex;align-items:center;gap:6px;color:#62666b;font-size:10px;margin-bottom:7px}
.tn-assistant-sync-dot{width:7px;height:7px;border-radius:50%;background:#d69f2b}
.tn-assistant-sync-dot.ready{background:#25a95f}
.tn-assistant-sync-dot.error{background:#d6564d}
.tn-assistant-sources{display:flex;flex-wrap:wrap;gap:5px}
.tn-assistant-sources span{
  padding:5px 7px;border:1px solid #e0d7c5;border-radius:7px;
  background:#fff;color:#7b5e28;font-size:8px;font-weight:900;letter-spacing:.45px
}

.tn-assistant-messages{
  flex:1;overflow-y:auto;padding:15px 14px 18px;
  background:
    radial-gradient(circle at 100% 0,rgba(201,169,106,.09),transparent 35%),
    #f5f4f0;
  scrollbar-width:thin
}
.tn-assistant-msg{display:flex;align-items:flex-end;gap:8px;margin:0 0 13px}
.tn-assistant-msg.user{justify-content:flex-end}
.tn-assistant-avatar{
  width:27px;height:27px;border-radius:9px;flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;
  background:#17191c;color:var(--tn-gold);font-size:8px;font-weight:1000
}
.tn-assistant-message-wrap{max-width:84%}
.tn-assistant-message{
  padding:11px 12px;border:1px solid #e6e0d5;border-radius:14px 14px 14px 4px;
  background:#fff;color:#292c30;font-size:12.5px;line-height:1.58;
  box-shadow:0 4px 14px rgba(0,0,0,.045)
}
.tn-assistant-msg.user .tn-assistant-message-wrap{max-width:80%}
.tn-assistant-msg.user .tn-assistant-message{
  border-color:#17191c;border-radius:14px 14px 4px 14px;background:#17191c;color:#fff
}
.tn-assistant-source-note{margin:5px 3px 0;color:#98938b;font-size:8.5px}
.tn-assistant-msg.user .tn-assistant-source-note{display:none}
.tn-assistant-quick{display:flex;flex-wrap:wrap;gap:7px;margin:2px 0 13px 35px}
.tn-assistant-quick button{
  padding:7px 9px;border:1px solid #d7cdb9;border-radius:9px;
  background:#fff;color:#2f3235;font-size:10px;font-weight:800;cursor:pointer
}
.tn-assistant-quick button:hover{background:#17191c;border-color:#17191c;color:var(--tn-gold)}

.tn-assistant-price-list{display:grid;gap:7px;margin-top:9px}
.tn-assistant-price-row{
  padding:8px 9px;border:1px solid #ece4d6;border-radius:9px;background:#fbfaf7
}
.tn-assistant-price-row strong{display:block;color:#26292d;font-size:10.5px;line-height:1.35}
.tn-assistant-price-row span{display:block;margin-top:3px;color:#9b702b;font-size:11px;font-weight:900}
.tn-assistant-price-row small{display:block;margin-top:3px;color:#888;font-size:8.5px;line-height:1.4}
.tn-assistant-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.tn-assistant-links a{
  padding:7px 9px;border-radius:8px;background:var(--tn-gold);color:#111!important;
  text-decoration:none!important;font-size:9px;font-weight:900
}
.tn-assistant-links a.secondary{background:#17191c;color:#fff!important}

.tn-assistant-typing{display:flex;align-items:center;gap:4px;height:16px}
.tn-assistant-typing i{width:5px;height:5px;border-radius:50%;background:#a9a39a;animation:tnTyping 1s infinite alternate}
.tn-assistant-typing i:nth-child(2){animation-delay:.16s}.tn-assistant-typing i:nth-child(3){animation-delay:.32s}
@keyframes tnTyping{to{transform:translateY(-4px);opacity:.45}}

.tn-assistant-compose{padding:10px 11px 9px;border-top:1px solid var(--tn-line);background:#fff}
.tn-assistant-inputbox{
  display:flex;align-items:flex-end;gap:8px;padding:6px 6px 6px 10px;
  border:1px solid #d9d3c8;border-radius:13px;background:#fff
}
.tn-assistant-input{
  flex:1;min-height:35px;max-height:85px;resize:none;border:0;outline:0;
  padding:8px 2px;background:transparent;color:#24272a;font:inherit;font-size:12px;line-height:1.4
}
.tn-assistant-send{
  width:36px;height:36px;flex:0 0 auto;border:0;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  background:#17191c;color:var(--tn-gold);cursor:pointer
}
.tn-assistant-send svg{width:18px;height:18px;fill:currentColor}
.tn-assistant-send:hover{background:#000}
.tn-assistant-foot{padding-top:7px;text-align:center;color:#999;font-size:8.5px;line-height:1.35}

@media(min-width:651px) and (max-width:1000px){
  .tn-assistant{right:14px;bottom:270px}
  .tn-assistant-panel{position:fixed;right:76px;bottom:72px;width:380px;height:min(590px,calc(100vh - 95px))}
}
@media(max-width:650px){
  .tn-assistant{right:10px;bottom:225px}
  .tn-assistant-launcher{width:49px;height:49px}
  .tn-assistant-launcher svg{width:24px;height:24px}
  .tn-assistant-ai-badge{right:-3px;top:-6px;min-width:23px;height:19px;font-size:8px}
  .tn-assistant-panel{
    position:fixed;left:9px;right:9px;bottom:66px;width:auto;
    height:min(620px,calc(100dvh - 80px));border-radius:16px
  }
  .tn-assistant-header{min-height:70px;padding:11px 12px}
  .tn-assistant-logo{width:40px;height:40px}
  .tn-assistant-messages{padding:13px 11px 15px}
  .tn-assistant-message-wrap{max-width:88%}
  .tn-assistant-quick{margin-left:34px}
}


.tn-assistant-page-info{
  display:grid;gap:4px;margin:9px 0;padding:8px 9px;
  border-left:3px solid var(--tn-gold);border-radius:0 8px 8px 0;
  background:#f8f5ee;color:#555b60;font-size:10px;line-height:1.45
}


/* ===== KHỐI TÍNH KÍCH THƯỚC & GIÁ CỦA TRỢ LÝ AI ===== */
.tn-assistant-calc{
  margin:10px 0 4px;padding:10px;border:1px solid #dfd3bc;border-radius:11px;
  background:#fffdf8;overflow:hidden
}
.tn-assistant-calc-title{
  margin:-10px -10px 8px;padding:7px 9px;background:#17191c;color:#c9a96a;
  font-size:9px;font-weight:900;letter-spacing:.65px
}
.tn-assistant-calc-row{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:6px 0;border-bottom:1px dashed #e8e0d2;font-size:10px
}
.tn-assistant-calc-row span{color:#777}
.tn-assistant-calc-row strong{color:#232629;text-align:right;font-size:10px}
.tn-assistant-calc-total{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:8px -2px -2px;padding:9px;border-radius:8px;background:#f1e6cf
}
.tn-assistant-calc-total span{color:#6f5423;font-size:8px;font-weight:900;letter-spacing:.4px}
.tn-assistant-calc-total strong{color:#111;font-size:13px}


/* ===== TRỢ LÝ AI V5 - CHỮ DỄ ĐỌC & KẾT QUẢ BÁO GIÁ ===== */
.tn-assistant{
  font-family:"Segoe UI",Arial,Helvetica,sans-serif;
  font-size:14px;
}
.tn-assistant-brand strong{font-size:14px;line-height:1.3}
.tn-assistant-brand span{font-size:11.5px;line-height:1.35}
.tn-assistant-sync{font-size:11.5px;line-height:1.4}
.tn-assistant-sources span{font-size:10px;line-height:1.3}
.tn-assistant-message{font-size:14px;line-height:1.62}
.tn-assistant-source-note{font-size:10.5px;line-height:1.4}
.tn-assistant-quick button{font-size:12px;line-height:1.3;padding:8px 10px}
.tn-assistant-price-row strong{font-size:12.5px;line-height:1.45}
.tn-assistant-price-row span{font-size:13px;line-height:1.4}
.tn-assistant-price-row small{font-size:10.5px;line-height:1.45}
.tn-assistant-links a{font-size:11.5px;line-height:1.3;padding:8px 10px}
.tn-assistant-input{font-size:14px;line-height:1.5}
.tn-assistant-foot{font-size:10.5px;line-height:1.4}
.tn-assistant-page-info{font-size:12px;line-height:1.5}
.tn-assistant-calc{padding:12px}
.tn-assistant-calc-title{
  margin:-12px -12px 10px;padding:9px 11px;
  font-size:11px;line-height:1.35;letter-spacing:.45px
}
.tn-assistant-calc-row{padding:8px 0;font-size:13px;line-height:1.45}
.tn-assistant-calc-row strong{font-size:13px;line-height:1.45}
.tn-assistant-unit-price span,.tn-assistant-unit-price strong{color:#7a581f}
.tn-assistant-calc-total{padding:11px 10px;margin-top:10px}
.tn-assistant-calc-total span{font-size:10.5px;line-height:1.35}
.tn-assistant-calc-total strong{font-size:16px;line-height:1.3}
.tn-assistant-formula{
  margin-top:10px;padding:9px 10px;border-radius:9px;
  background:#f7f3ea;color:#34373a;font-size:13px;line-height:1.55
}
.tn-assistant-friendly-note{
  margin-top:9px;color:#5e6266;font-size:12.5px;line-height:1.55
}
@media(max-width:650px){
  .tn-assistant-message{font-size:14px}
  .tn-assistant-calc-row,.tn-assistant-calc-row strong{font-size:12.5px}
  .tn-assistant-calc-total strong{font-size:15px}
}


/* ===== GIỚI THIỆU TRUNG NGHĨA - NÂNG CẤP ===== */
.about-hero{position:relative;overflow:hidden;background:
linear-gradient(90deg,rgba(8,9,10,.94),rgba(8,9,10,.72)),
url("../images/nhom-kinh/cong-trinh-nhom-kinh-02.jpg") center/cover no-repeat}
.about-hero:after{content:"";position:absolute;right:-120px;top:-120px;width:380px;height:380px;border:1px solid rgba(201,169,106,.24);border-radius:50%}
.about-hero .container{position:relative;z-index:2}
.about-hero-content{padding:54px 0 66px;max-width:800px}
.about-hero h1{margin:10px 0 18px;color:#fff;font-size:clamp(34px,5vw,68px);line-height:1.05;letter-spacing:-1.5px}
.about-hero-lead{max-width:720px;color:#d9d9d9;font-size:17px;line-height:1.75}
.about-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff}
.btn.ghost:hover{border-color:#c9a96a;color:#c9a96a}
.btn.ghost.dark{border-color:#333;color:#222}
.btn.ghost.dark:hover{background:#111;color:#fff;border-color:#111}

.about-split{align-items:center;gap:50px}
.about-image-wrap{position:relative}
.about-image-wrap img{width:100%;min-height:500px;object-fit:cover;border-radius:4px;display:block}
.about-image-badge{position:absolute;left:18px;bottom:18px;padding:14px 18px;background:rgba(12,13,14,.92);border-left:4px solid #c9a96a;color:#fff;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.about-image-badge strong{display:block;font-size:18px;letter-spacing:1px}
.about-image-badge span{display:block;margin-top:4px;color:#c9a96a;font-size:10px;font-weight:800;letter-spacing:1.2px}
.about-copy h2,.about-section-head h2,.about-location-box h2{font-size:clamp(27px,3vw,42px);line-height:1.16;margin:8px 0 18px}
.about-copy p{color:#555;line-height:1.8;font-size:15px}
.about-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
.about-points div{display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid #e9e2d5;background:#fbfaf7}
.about-points span{color:#c9a96a;font-weight:900;font-size:12px}
.about-points strong{font-size:12px;line-height:1.35}

.about-section-head{max-width:840px;margin:0 auto 32px;text-align:center}
.about-section-head p{max-width:760px;margin:0 auto;color:#666;line-height:1.75}
.about-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.about-card{position:relative;padding:26px 22px 24px;background:#fff;border:1px solid #e8e1d5;border-radius:4px;box-shadow:0 10px 30px rgba(0,0,0,.035);transition:.22s}
.about-card:hover{transform:translateY(-4px);border-color:#c9a96a;box-shadow:0 16px 34px rgba(0,0,0,.08)}
.about-card-no{font-size:11px;font-weight:900;color:#c9a96a;letter-spacing:1px}
.about-card h3{margin:12px 0 10px;font-size:16px}
.about-card p{margin:0;color:#666;font-size:13px;line-height:1.7}

.about-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.about-service{display:block;min-height:275px;padding:28px 24px;background:#111315;color:#fff;text-decoration:none;border-top:3px solid #c9a96a;transition:.22s}
.about-service:hover{transform:translateY(-4px);background:#1a1c1f}
.about-service>span{font-size:9px;font-weight:900;letter-spacing:1.4px;color:#c9a96a}
.about-service h3{margin:14px 0 13px;font-size:20px;line-height:1.25;color:#fff}
.about-service p{color:#c9c9c9;font-size:13px;line-height:1.75}
.about-service strong{display:block;margin-top:24px;color:#c9a96a;font-size:10px;letter-spacing:.8px}

.about-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.about-step{padding:24px 20px;background:#fff;border-bottom:3px solid #c9a96a}
.about-step span{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;background:#111315;color:#c9a96a;font-size:10px;font-weight:900;border-radius:50%}
.about-step h3{font-size:14px;margin:16px 0 9px}
.about-step p{margin:0;color:#666;font-size:12px;line-height:1.65}
.about-values-grid .product{height:100%}
.about-values-grid .product-body{height:100%;padding:24px}
.about-values-grid .product-body p{line-height:1.7;color:#666}

.about-location-box{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:38px 42px;background:#f6f2e9;border:1px solid #dfd2b7;border-left:5px solid #c9a96a}
.about-location-box>div:first-child{max-width:760px}
.about-location-box p{color:#5c5c5c;line-height:1.7}
.about-contact-lines{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:15px;font-size:13px}
.about-location-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}

@media(max-width:900px){
  .about-card-grid,.about-service-grid{grid-template-columns:1fr 1fr}
  .about-process-grid{grid-template-columns:1fr 1fr}
  .about-location-box{align-items:flex-start;flex-direction:column}
  .about-location-actions{justify-content:flex-start}
}
@media(max-width:650px){
  .about-hero-content{padding:34px 0 44px}
  .about-hero h1{font-size:38px}
  .about-hero-lead{font-size:14px}
  .about-split{gap:28px}
  .about-image-wrap img{min-height:330px}
  .about-points{grid-template-columns:1fr}
  .about-card-grid,.about-service-grid,.about-process-grid{grid-template-columns:1fr}
  .about-location-box{padding:26px 20px}
  .about-copy h2,.about-section-head h2,.about-location-box h2{font-size:28px}
}


/* ===== GIỚI THIỆU TRUNG NGHĨA - CHUYÊN SÂU ===== */
.about-hero-deep .about-hero-content{max-width:920px}
.about-hero-highlight{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 2px}
.about-hero-highlight span{padding:7px 10px;border:1px solid rgba(201,169,106,.45);background:rgba(0,0,0,.28);color:#e1c891;font-size:9px;font-weight:900;letter-spacing:.8px;border-radius:999px}
.about-image-tall img{min-height:610px}

.advantage-list{display:grid;gap:13px;max-width:1080px;margin:0 auto}
.advantage-item{display:grid;grid-template-columns:82px 1fr;gap:20px;padding:27px 28px;background:#fff;border:1px solid #e7e0d3;border-radius:5px;box-shadow:0 9px 26px rgba(0,0,0,.03);transition:.2s}
.advantage-item:hover{border-color:#c9a96a;transform:translateY(-2px);box-shadow:0 14px 35px rgba(0,0,0,.065)}
.advantage-number{font-size:27px;line-height:1;font-weight:900;color:#c9a96a;border-right:1px solid #e5dccb;padding-top:3px}
.advantage-content h3{margin:0 0 11px;font-size:18px;line-height:1.25}
.advantage-content p{margin:0 0 8px;color:#5f6265;font-size:13px;line-height:1.75}
.advantage-content p:last-child{margin-bottom:0}

.about-philosophy-split{align-items:center;gap:50px}
.about-philosophy-split>div:first-child h2{font-size:clamp(28px,3vw,42px);line-height:1.16;margin:8px 0 18px}
.about-philosophy-split>div:first-child p{color:#606266;line-height:1.8}
.quality-pillars{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.quality-pillars>div{padding:22px 18px;background:#111315;color:#fff;border-top:3px solid #c9a96a}
.quality-pillars span{display:block;color:#c9a96a;font-size:10px;font-weight:900}
.quality-pillars h3{font-size:13px;margin:10px 0 7px}
.quality-pillars p{margin:0;color:#c4c4c4;font-size:11px;line-height:1.6}

.specialty-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.specialty-card{overflow:hidden;background:#fff;border:1px solid #e5dfd3}
.specialty-card img{width:100%;height:330px;object-fit:cover;display:block}
.specialty-body{padding:26px}
.specialty-body>span{color:#c9a96a;font-size:9px;font-weight:900;letter-spacing:1.2px}
.specialty-body h3{margin:11px 0 13px;font-size:21px}
.specialty-body p{color:#626568;font-size:13px;line-height:1.75}
.specialty-body a{display:inline-block;margin-top:12px;color:#8b692d;text-decoration:none;font-size:10px;font-weight:900;letter-spacing:.6px}

.process-six{grid-template-columns:repeat(3,1fr)}
.process-six .about-step{min-height:190px}

.commitment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.commitment-card{padding:24px 20px;background:#fff;border:1px solid #e6dfd3;border-left:4px solid #c9a96a}
.commitment-card strong{display:block;font-size:13px;margin-bottom:8px}
.commitment-card p{margin:0;color:#666;font-size:12px;line-height:1.65}

.project-fit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.project-fit-grid>div{padding:25px 20px;background:#111315;color:#fff;min-height:190px}
.project-fit-grid span{color:#c9a96a;font-size:10px;font-weight:900}
.project-fit-grid h3{font-size:15px;margin:14px 0 9px}
.project-fit-grid p{margin:0;color:#c7c7c7;font-size:12px;line-height:1.65}

.trust-message-box{max-width:1040px;margin:0 auto;padding:42px 46px;background:#f7f3ea;border:1px solid #dfd1b4;border-top:5px solid #c9a96a;text-align:center}
.trust-message-box h2{font-size:clamp(27px,3vw,41px);line-height:1.18;margin:9px auto 18px;max-width:900px}
.trust-message-box p{max-width:880px;margin:0 auto 12px;color:#5d5f62;line-height:1.85;font-size:14px}

@media(max-width:900px){
  .advantage-item{grid-template-columns:60px 1fr}
  .specialty-grid{grid-template-columns:1fr}
  .process-six{grid-template-columns:1fr 1fr}
  .commitment-grid{grid-template-columns:1fr 1fr}
  .project-fit-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .about-hero-highlight span{font-size:8px}
  .about-image-tall img{min-height:350px}
  .advantage-item{grid-template-columns:1fr;gap:10px;padding:21px 18px}
  .advantage-number{border-right:0;border-bottom:1px solid #e5dccb;padding:0 0 10px;font-size:23px}
  .quality-pillars{grid-template-columns:1fr}
  .specialty-card img{height:240px}
  .process-six,.commitment-grid,.project-fit-grid{grid-template-columns:1fr}
  .trust-message-box{padding:30px 20px;text-align:left}
}


/* ===== TRANG CHỦ - NỘI DUNG TẬP TRUNG VẬT LIỆU ===== */
.home-hero-refined .container{max-width:1180px}
.home-hero-refined h1{max-width:860px;letter-spacing:-1.8px}
.home-hero-copy{max-width:790px!important;margin-top:18px!important;color:#ececec;font-size:17px!important;line-height:1.68!important}
.home-hero-copy strong{color:#e0c58f}
.home-hero-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px;max-width:850px}
.home-hero-tags span{padding:7px 10px;border:1px solid rgba(201,169,106,.42);border-radius:999px;background:rgba(5,6,7,.34);color:#e3c98e;font-size:9px;font-weight:900;letter-spacing:.8px}
.home-hero-actions{align-items:center}
.home-price-link{display:inline-flex;align-items:center;min-height:40px;padding:0 4px;color:#fff;text-decoration:none;font-size:11px;font-weight:900;letter-spacing:.5px;border-bottom:1px solid rgba(255,255,255,.35)}
.home-price-link:hover{color:#c9a96a;border-color:#c9a96a}
.home-material-head{max-width:850px;margin-left:auto;margin-right:auto}
.home-material-head p{max-width:760px;margin-left:auto;margin-right:auto;line-height:1.75;color:#626568}
.home-card-kicker{margin-bottom:9px;color:#d8b875;font-size:8.5px;font-weight:900;letter-spacing:1.2px}
.home-material-cards .card-content p{max-width:560px;line-height:1.65;color:#ececec}
.home-experience-stats .stat b{letter-spacing:.7px}
.home-calm-note{max-width:860px;margin:20px auto 0;text-align:center;color:#747474;font-size:11px;line-height:1.65}
@media(max-width:650px){
  .home-hero-refined{min-height:690px}
  .home-hero-refined h1{font-size:44px;line-height:1.02}
  .home-hero-copy{font-size:14px!important;line-height:1.6!important}
  .home-hero-tags{gap:5px;margin-top:16px}
  .home-hero-tags span{font-size:7.8px;padding:6px 8px}
  .home-price-link{width:100%;justify-content:flex-start;margin-top:2px;border-bottom:0}
  .home-material-head p{font-size:13px}
  .home-material-cards .card-content p{font-size:12px;line-height:1.55}
  .home-calm-note{text-align:left;font-size:10px}
}


/* ===== TRANG CHỦ - NỘI DUNG TINH TẾ V2 ===== */
.home-material-section{padding-bottom:52px}
.home-editorial-section{padding:58px 0;background:#f5f5f2;border-top:1px solid #ebe7de;border-bottom:1px solid #e5e1d8}
.home-editorial-grid{display:grid;grid-template-columns:.9fr 1.35fr;gap:52px;align-items:start}
.home-editorial-intro{max-width:440px}
.home-editorial-intro h2{margin:8px 0 18px;font-size:clamp(30px,3.6vw,49px);line-height:1.05;letter-spacing:-.6px;color:#17191b}
.home-editorial-intro p{margin:0;color:#65686b;font-size:14px;line-height:1.8}
.home-editorial-link{display:inline-block;margin-top:21px;padding-bottom:4px;border-bottom:1px solid #b28d4d;color:#17191b;text-decoration:none;font-size:10px;font-weight:900;letter-spacing:.7px}
.home-editorial-link:hover{color:#9a7332;border-color:#9a7332}
.home-editorial-notes{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d9d2c5;border-bottom:1px solid #d9d2c5}
.home-editorial-notes article{min-height:220px;padding:25px 22px;border-right:1px solid #d9d2c5}
.home-editorial-notes article:last-child{border-right:0}
.home-editorial-notes span{display:block;color:#a57e3c;font-size:9px;font-weight:900;letter-spacing:1px}
.home-editorial-notes h3{margin:34px 0 9px;font-size:16px;letter-spacing:.5px}
.home-editorial-notes p{margin:0;color:#65686b;font-size:12px;line-height:1.7}
.home-experience-section{padding-top:54px;padding-bottom:62px}
.home-experience-stats .stat{background:rgba(255,255,255,.42)}
.home-calm-note{max-width:760px}

@media(max-width:950px){
  .home-editorial-grid{grid-template-columns:1fr;gap:30px}
  .home-editorial-intro{max-width:700px}
}
@media(max-width:650px){
  .home-material-section{padding-bottom:42px}
  .home-editorial-section{padding:44px 0}
  .home-editorial-grid{gap:26px}
  .home-editorial-notes{grid-template-columns:1fr}
  .home-editorial-notes article{min-height:0;padding:20px 4px;border-right:0;border-bottom:1px solid #d9d2c5}
  .home-editorial-notes article:last-child{border-bottom:0}
  .home-editorial-notes h3{margin:12px 0 7px}
  .home-experience-section{padding-top:42px;padding-bottom:52px}
}


/* ===== TRANG CHỦ - EDITORIAL MỞ RỘNG ===== */
.home-editorial-expanded{
  padding:88px 0 92px;
  background:#f5f5f2;
  border-top:1px solid #e5e0d7;
  border-bottom:1px solid #ded8cd;
}
.home-editorial-expanded .container{max-width:1380px}
.home-editorial-opening{
  display:grid;
  grid-template-columns:.75fr 1.55fr;
  gap:70px;
  align-items:start;
  padding-bottom:54px;
  border-bottom:1px solid #d8d0c3;
}
.home-editorial-opening .eyebrow{
  grid-column:1/-1;
  margin-bottom:-34px;
}
.home-editorial-opening h2{
  margin:0;
  font-size:clamp(48px,5.8vw,84px);
  line-height:.98;
  letter-spacing:-2px;
  color:#151719;
}
.home-editorial-opening>p{
  margin:0;
  max-width:820px;
  color:#555a5e;
  font-size:17px;
  line-height:1.95;
}

.home-editorial-story{display:grid}
.home-story-row{
  display:grid;
  grid-template-columns:.72fr 1.58fr;
  gap:70px;
  padding:58px 0 62px;
  border-bottom:1px solid #d8d0c3;
}
.home-story-heading span{
  display:block;
  margin-bottom:18px;
  color:#a77d37;
  font-size:10px;
  font-weight:900;
  letter-spacing:1.5px;
}
.home-story-heading h3{
  margin:0;
  max-width:360px;
  font-size:clamp(29px,3.4vw,50px);
  line-height:1.06;
  letter-spacing:-1px;
  color:#16181a;
}
.home-story-copy p{
  margin:0;
  max-width:900px;
  color:#555a5e;
  font-size:17px;
  line-height:2;
  text-align:left;
}

.home-editorial-ending{
  max-width:1000px;
  margin:0 0 0 auto;
  padding-top:52px;
}
.home-editorial-ending p{
  margin:0;
  color:#44484b;
  font-size:18px;
  line-height:1.9;
}
.home-editorial-ending strong{color:#17191b}
.home-editorial-expanded .home-editorial-link{
  display:inline-block;
  margin-top:24px;
  padding-bottom:5px;
  border-bottom:1px solid #aa8040;
  color:#17191b;
  text-decoration:none;
  font-size:11px;
  font-weight:900;
  letter-spacing:.8px;
}
.home-editorial-expanded .home-editorial-link:hover{
  color:#9a6e2d;
  border-color:#9a6e2d;
}

@media(max-width:950px){
  .home-editorial-expanded{padding:68px 0 74px}
  .home-editorial-opening,
  .home-story-row{grid-template-columns:1fr;gap:25px}
  .home-editorial-opening .eyebrow{grid-column:auto;margin-bottom:0}
  .home-editorial-opening h2{font-size:58px}
  .home-story-heading h3{max-width:none}
  .home-editorial-ending{margin-left:0}
}

@media(max-width:650px){
  .home-editorial-expanded{padding:50px 0 56px}
  .home-editorial-opening{padding-bottom:36px}
  .home-editorial-opening h2{font-size:43px;letter-spacing:-1.2px}
  .home-editorial-opening>p,
  .home-story-copy p{font-size:14px;line-height:1.82}
  .home-story-row{padding:38px 0 42px}
  .home-story-heading span{margin-bottom:10px}
  .home-story-heading h3{font-size:31px}
  .home-editorial-ending{padding-top:38px}
  .home-editorial-ending p{font-size:15px;line-height:1.8}
}


/* ===== TRANG CHỦ - HIỆU ỨNG NỘI DUNG ĐÃ FIX ===== */
/*
  Nội dung luôn HIỂN THỊ theo mặc định.
  Chỉ khi JavaScript chạy thành công, class .tn-effects-on mới được bật
  và hiệu ứng reveal mới được áp dụng. Vì vậy JS lỗi cũng không làm mất chữ.
*/
.tn-reveal{
  opacity:1;
  transform:none;
}

html.tn-effects-on .tn-reveal{
  opacity:0;
  transform:translate3d(0,30px,0) scale(.992);
  transition:
    opacity .62s cubic-bezier(.22,.61,.36,1),
    transform .70s cubic-bezier(.22,.61,.36,1);
}

html.tn-effects-on .tn-reveal.tn-reveal-up{
  transform:translate3d(0,34px,0);
}

html.tn-effects-on .tn-reveal.tn-reveal-pop{
  transform:translate3d(0,28px,0) scale(.988);
}

html.tn-effects-on .tn-reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
}

/* Hai cột trong từng đoạn xuất hiện lần lượt, không nhấp nháy */
.home-story-row .tn-reveal-child{
  opacity:1;
  transform:none;
}

html.tn-effects-on .home-story-row .tn-reveal-child{
  opacity:0;
  transform:translate3d(0,14px,0);
  transition:
    opacity .48s cubic-bezier(.22,.61,.36,1),
    transform .54s cubic-bezier(.22,.61,.36,1);
}

html.tn-effects-on .home-story-row.is-visible .tn-reveal-child{
  opacity:1;
  transform:translate3d(0,0,0);
}

html.tn-effects-on .home-story-row.is-visible .tn-reveal-child:nth-child(1){
  transition-delay:.05s;
}
html.tn-effects-on .home-story-row.is-visible .tn-reveal-child:nth-child(2){
  transition-delay:.12s;
}

/* Đường vàng chạy nhẹ sau khi khối hiện */
.home-story-row .home-story-heading span{
  position:relative;
}
.home-story-row .home-story-heading span::after{
  content:"";
  display:block;
  width:54px;
  height:1px;
  margin-top:9px;
  background:#c9a96a;
}
html.tn-effects-on .home-story-row .home-story-heading span::after{
  width:0;
  transition:width .58s cubic-bezier(.22,.61,.36,1) .10s;
}
html.tn-effects-on .home-story-row.is-visible .home-story-heading span::after{
  width:54px;
}

/*
  Hover cũ thay đổi padding-left/right làm cả đoạn bị giật và đổi chiều rộng.
  Bản fix chỉ đổi nền/bóng nên KHÔNG làm bố cục nhảy.
*/
@media(hover:hover) and (pointer:fine){
  .home-story-row{
    transition:
      background-color .22s ease,
      box-shadow .22s ease;
  }
  .home-story-row.is-visible:hover{
    background:rgba(255,255,255,.30);
    box-shadow:0 14px 36px rgba(22,24,26,.045);
  }
}

/* Không chạy animation nếu hệ thống yêu cầu giảm chuyển động */
@media(prefers-reduced-motion:reduce){
  html.tn-effects-on .tn-reveal,
  html.tn-effects-on .tn-reveal.tn-reveal-up,
  html.tn-effects-on .tn-reveal.tn-reveal-pop,
  html.tn-effects-on .home-story-row .tn-reveal-child{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
  html.tn-effects-on .home-story-row .home-story-heading span::after{
    width:54px!important;
    transition:none!important;
  }
}

/* ===== POPUP CHI TIẾT VẬT LIỆU ===== */
.home-popup-trigger{
  margin-top:24px;
  padding:0 0 7px;
  display:inline-flex;
  align-items:center;
  gap:11px;
  border:0;
  border-bottom:1px solid #b88e49;
  background:transparent;
  color:#17191b;
  font:inherit;
  font-size:10px;
  font-weight:900;
  letter-spacing:.75px;
  cursor:pointer;
}
.home-popup-trigger b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border:1px solid #c9a96a;
  border-radius:50%;
  color:#9a6e2d;
  font-size:14px;
  line-height:1;
  transition:transform .22s ease,background .22s ease,color .22s ease;
}
.home-popup-trigger:hover b{
  transform:rotate(90deg);
  background:#17191b;
  color:#d5b875;
}
.home-popup-trigger:focus-visible{
  outline:2px solid #c9a96a;
  outline-offset:5px;
}

.material-popup{
  position:fixed;
  inset:0;
  z-index:9000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:28px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease,visibility .24s ease;
}
.material-popup.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.material-popup-backdrop{
  position:absolute;
  inset:0;
  background:rgba(5,6,7,.73);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
.material-popup-panel{
  position:relative;
  z-index:1;
  width:min(900px,100%);
  max-height:min(760px,calc(100dvh - 48px));
  overflow:auto;
  padding:48px 50px 42px;
  border:1px solid rgba(201,169,106,.55);
  border-radius:5px;
  background:
    linear-gradient(135deg,rgba(201,169,106,.08),transparent 28%),
    #f8f7f3;
  color:#17191b;
  box-shadow:0 34px 90px rgba(0,0,0,.38);
  transform:translateY(28px) scale(.965);
  opacity:0;
  transition:transform .34s cubic-bezier(.22,.61,.36,1),opacity .28s ease;
}
.material-popup.is-open .material-popup-panel{
  transform:translateY(0) scale(1);
  opacity:1;
}
.material-popup-close{
  position:absolute;
  right:18px;
  top:16px;
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d8d0c2;
  border-radius:50%;
  background:#fff;
  color:#17191b;
  font-size:25px;
  line-height:1;
  cursor:pointer;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.material-popup-close:hover{
  background:#17191b;
  color:#c9a96a;
  transform:rotate(90deg);
}
.material-popup-kicker{
  color:#a77d37;
  font-size:10px;
  font-weight:900;
  letter-spacing:1.55px;
}
.material-popup-panel h2{
  margin:10px 56px 16px 0;
  max-width:720px;
  font-size:clamp(34px,5vw,60px);
  line-height:1.02;
  letter-spacing:-1.5px;
}
.material-popup-lead{
  max-width:790px;
  margin:0;
  color:#555a5e;
  font-size:15px;
  line-height:1.85;
}
.material-popup-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:32px;
  border-top:1px solid #d9d1c4;
  border-bottom:1px solid #d9d1c4;
}
.material-popup-point{
  min-height:195px;
  padding:24px 22px;
  border-right:1px solid #d9d1c4;
}
.material-popup-point:last-child{border-right:0}
.material-popup-point span{
  color:#a77d37;
  font-size:9px;
  font-weight:900;
  letter-spacing:1px;
}
.material-popup-point h3{
  margin:14px 0 9px;
  font-size:15px;
}
.material-popup-point p{
  margin:0;
  color:#616568;
  font-size:12px;
  line-height:1.7;
}
.material-popup-quote{
  margin-top:28px;
  padding:20px 22px;
  border-left:3px solid #c9a96a;
  background:#efede7;
  color:#34373a;
  font-size:14px;
  line-height:1.75;
}
.material-popup-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:25px;
}
.material-popup-actions a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 16px;
  border:1px solid #17191b;
  background:#17191b;
  color:#fff;
  text-decoration:none;
  font-size:10px;
  font-weight:900;
  letter-spacing:.5px;
}
.material-popup-actions a:first-child{
  border-color:#c9a96a;
  background:#c9a96a;
  color:#111;
}
body.material-popup-lock{
  overflow:hidden;
}

@media(max-width:720px){
  .material-popup{padding:10px}
  .material-popup-panel{
    max-height:calc(100dvh - 20px);
    padding:40px 20px 28px;
    border-radius:4px;
  }
  .material-popup-panel h2{
    margin-right:36px;
    font-size:36px;
  }
  .material-popup-lead{font-size:13px;line-height:1.75}
  .material-popup-grid{grid-template-columns:1fr}
  .material-popup-point{
    min-height:0;
    padding:19px 3px;
    border-right:0;
    border-bottom:1px solid #d9d1c4;
  }
  .material-popup-point:last-child{border-bottom:0}
  .material-popup-actions a{
    width:100%;
    justify-content:center;
  }
}

@media(prefers-reduced-motion:reduce){
  .material-popup,
  .material-popup-panel,
  .material-popup-close,
  .home-popup-trigger b{
    transition:none!important;
  }
}

/* Giữ chiều rộng trang ổn định khi mở popup */
html{scrollbar-gutter:stable;}


/* ===== TIÊU ĐỀ TRANG CHỦ 2 HÀNG ===== */
.home-hero-refined .home-hero-title{
  max-width:1180px;
  font-size:clamp(50px,5.4vw,76px);
  line-height:.98;
  letter-spacing:-1.7px;
}
.home-hero-refined .home-hero-title span{
  display:block;
  white-space:nowrap;
}

@media(max-width:650px){
  .home-hero-refined .home-hero-title{
    max-width:100%;
    font-size:7vw;
    line-height:1.03;
    letter-spacing:-.7px;
  }
}


/* ===== TRANG SẢN PHẨM - TRẢI NGHIỆM MỚI ===== */
.product-showcase-page{background:#f7f6f2;color:#17191b}
.product-hero{
  position:relative;
  min-height:690px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:#0a0b0c;
  color:#fff;
}
.product-hero-media{
  position:absolute;inset:0;
  background:url("../images/noi-that/phong-khach-tong-the.jpg") center/cover no-repeat;
  transform:scale(1.02);
}
.product-hero-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(5,6,7,.94) 0%,rgba(5,6,7,.78) 43%,rgba(5,6,7,.28) 76%,rgba(5,6,7,.50) 100%),
    linear-gradient(0deg,rgba(5,6,7,.50),transparent 45%);
}
.product-hero-inner{position:relative;z-index:2;padding-top:120px;padding-bottom:62px}
.product-hero .crumb{margin-bottom:48px}
.product-hero-layout{display:grid;grid-template-columns:1.4fr .62fr;gap:70px;align-items:end}
.product-hero-copy{max-width:920px}
.product-hero-copy h1{
  margin:11px 0 22px;
  font-size:clamp(50px,6.1vw,88px);
  line-height:.96;
  letter-spacing:-2.4px;
}
.product-hero-copy h1 span{color:#d1b06d}
.product-hero-copy p{
  max-width:800px;
  margin:0;
  color:#e3e3e3;
  font-size:16px;
  line-height:1.82;
}
.product-hero-copy p strong{color:#e2c78e}
.product-hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px}
.product-hero-text-link{color:#fff;text-decoration:none;font-size:10px;font-weight:900;letter-spacing:.7px;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:5px}
.product-hero-text-link:hover{color:#d1b06d;border-color:#d1b06d}
.product-hero-index{border-top:1px solid rgba(255,255,255,.25)}
.product-hero-index a{
  display:grid;
  grid-template-columns:38px 1fr;
  gap:3px 12px;
  padding:20px 0;
  border-bottom:1px solid rgba(255,255,255,.25);
  color:#fff;
  text-decoration:none;
  transition:padding-left .2s ease,color .2s ease;
}
.product-hero-index a:hover{padding-left:10px;color:#d7b975}
.product-hero-index small{grid-row:1/3;color:#c9a96a;font-size:9px;font-weight:900;padding-top:5px}
.product-hero-index strong{font-size:15px;letter-spacing:.7px}
.product-hero-index span{color:#c6c6c6;font-size:10px}

.product-intro{padding:82px 0 72px;background:#f7f6f2}
.product-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
.product-intro h2{margin:8px 0 0;font-size:clamp(33px,4.2vw,57px);line-height:1.06;letter-spacing:-1.2px}
.product-intro p{margin:5px 0 0;color:#5f6366;font-size:15px;line-height:1.9;max-width:760px}

.product-worlds{padding:0 0 88px;background:#f7f6f2}
.product-world{display:grid;grid-template-columns:1.15fr .85fr;min-height:610px;background:#111315;color:#fff;margin-bottom:24px;overflow:hidden}
.product-world-interior{grid-template-columns:.85fr 1.15fr;background:#ece7dd;color:#17191b}
.product-world-media{position:relative;display:block;min-height:610px;overflow:hidden}
.product-world-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.22,.61,.36,1),filter .4s ease}
.product-world-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.28),transparent 42%)}
.product-world:hover .product-world-media img{transform:scale(1.045)}
.product-world-number{position:absolute;z-index:2;left:26px;bottom:22px;color:#fff;font-size:48px;font-weight:900;line-height:1;text-shadow:0 3px 16px rgba(0,0,0,.3)}
.product-world-copy{display:flex;flex-direction:column;justify-content:center;padding:52px 50px}
.product-world-copy h2{margin:9px 0 20px;font-size:clamp(36px,4vw,57px);line-height:1.02;letter-spacing:-1.3px}
.product-world-copy p{margin:0;color:#c9c9c9;font-size:14px;line-height:1.82}
.product-world-interior .product-world-copy p{color:#5f6264}
.product-world-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}
.product-world-tags span{padding:7px 9px;border:1px solid rgba(255,255,255,.19);border-radius:999px;font-size:8px;font-weight:900;letter-spacing:.5px;color:#d9d9d9}
.product-world-interior .product-world-tags span{border-color:#cfc4b0;color:#695a43}
.product-world-link{display:inline-flex;align-items:center;gap:10px;margin-top:30px;color:#d0af6b;text-decoration:none;font-size:10px;font-weight:900;letter-spacing:.7px}
.product-world-interior .product-world-link{color:#7c5c25}
.product-world-link b{font-size:17px;transition:transform .2s ease}
.product-world-link:hover b{transform:translate(4px,-4px)}

.product-feeling-section{padding:86px 0;background:#111315;color:#fff}
.product-section-head{display:grid;grid-template-columns:1.05fr .75fr;gap:70px;align-items:end;margin-bottom:34px}
.product-section-head h2{margin:8px 0 0;font-size:clamp(34px,4.2vw,57px);line-height:1.06;letter-spacing:-1.2px}
.product-section-head p{margin:0;color:#777b7f;font-size:13px;line-height:1.75}
.product-feeling-section .product-section-head p{color:#b9b9b9}
.product-feeling-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17)}
.product-feeling-card{position:relative;min-height:330px;padding:26px 22px 24px;border-right:1px solid rgba(255,255,255,.17);color:#fff;text-decoration:none;transition:background .25s ease,transform .25s ease}
.product-feeling-card:last-child{border-right:0}
.product-feeling-card:hover{background:#1b1e21;transform:translateY(-5px)}
.product-feeling-no{color:#c9a96a;font-size:9px;font-weight:900}
.product-feeling-icon{margin:44px 0 28px;color:#c9a96a;font-size:34px;line-height:1}
.product-feeling-card h3{margin:0 0 12px;font-size:15px;line-height:1.35}
.product-feeling-card p{margin:0;color:#aaaeb1;font-size:11px;line-height:1.7}
.product-feeling-card b{position:absolute;left:22px;bottom:24px;color:#d4b573;font-size:9px;letter-spacing:.6px}

.product-mosaic-section{padding:90px 0;background:#f7f6f2}
.product-mosaic{display:grid;grid-template-columns:1.35fr .75fr;grid-template-rows:270px 270px;gap:14px}
.product-mosaic-item{position:relative;display:block;overflow:hidden;color:#fff;text-decoration:none}
.product-mosaic-large{grid-row:1/3}
.product-mosaic-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .75s cubic-bezier(.22,.61,.36,1)}
.product-mosaic-item:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,4,5,.82),rgba(3,4,5,.04) 62%)}
.product-mosaic-item:hover img{transform:scale(1.055)}
.product-mosaic-item span{position:absolute;z-index:2;left:24px;right:24px;bottom:22px}
.product-mosaic-item small{display:block;color:#d0af6a;font-size:8px;font-weight:900;letter-spacing:1.1px;margin-bottom:7px}
.product-mosaic-item strong{display:block;max-width:520px;font-size:19px;line-height:1.2}

.product-principles-section{padding:0 0 90px;background:#f7f6f2}
.product-principles{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #dcd6ca}
.product-principles>div{padding:25px 22px;min-height:155px;border-right:1px solid #dcd6ca}
.product-principles>div:last-child{border-right:0}
.product-principles span{color:#a87d37;font-size:9px;font-weight:900}
.product-principles strong{display:block;margin-top:19px;font-size:13px}
.product-principles p{margin:8px 0 0;color:#696c6e;font-size:11px;line-height:1.65}

.product-final-cta{padding:0 0 92px;background:#f7f6f2}
.product-final-box{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:42px 46px;background:#c9a96a;color:#111}
.product-final-box>div:first-child{max-width:820px}
.product-final-box h2{margin:8px 0 12px;font-size:clamp(28px,3.5vw,45px);line-height:1.08;letter-spacing:-.8px}
.product-final-box p{margin:0;color:#443a28;font-size:13px;line-height:1.72}
.product-final-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.dark-outline{border:1px solid #111!important;color:#111!important;background:transparent!important}
.dark-outline:hover{background:#111!important;color:#fff!important}

@media(max-width:950px){
  .product-hero{min-height:650px}
  .product-hero-layout,.product-intro-grid,.product-section-head{grid-template-columns:1fr;gap:30px}
  .product-hero-index{max-width:570px}
  .product-world,.product-world-interior{grid-template-columns:1fr}
  .product-world-interior .product-world-copy{order:2}
  .product-world-interior .product-world-media{order:1}
  .product-world-media{min-height:440px}
  .product-feeling-grid{grid-template-columns:1fr 1fr}
  .product-feeling-card:nth-child(2){border-right:0}
  .product-feeling-card:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.17)}
  .product-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:400px 250px}
  .product-mosaic-large{grid-column:1/3;grid-row:auto}
  .product-principles{grid-template-columns:1fr 1fr}
  .product-principles>div:nth-child(2){border-right:0}
  .product-principles>div:nth-child(-n+2){border-bottom:1px solid #dcd6ca}
  .product-final-box{align-items:flex-start;flex-direction:column}
  .product-final-actions{justify-content:flex-start}
}
@media(max-width:650px){
  .product-hero{min-height:720px}
  .product-hero-inner{padding-top:90px;padding-bottom:44px}
  .product-hero .crumb{margin-bottom:34px}
  .product-hero-copy h1{font-size:45px;letter-spacing:-1.3px}
  .product-hero-copy p{font-size:13px;line-height:1.72}
  .product-hero-actions .btn{width:100%;justify-content:center}
  .product-intro{padding:56px 0 50px}
  .product-intro h2{font-size:34px}
  .product-intro p{font-size:13px;line-height:1.78}
  .product-worlds{padding-bottom:62px}
  .product-world{margin-bottom:16px}
  .product-world-media{min-height:320px}
  .product-world-copy{padding:34px 20px 38px}
  .product-world-copy h2{font-size:35px}
  .product-world-copy p{font-size:12px;line-height:1.72}
  .product-feeling-section,.product-mosaic-section{padding:62px 0}
  .product-section-head h2{font-size:34px}
  .product-feeling-grid{grid-template-columns:1fr}
  .product-feeling-card{min-height:265px;border-right:0;border-bottom:1px solid rgba(255,255,255,.17)}
  .product-feeling-card:last-child{border-bottom:0}
  .product-feeling-card:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.17)}
  .product-feeling-icon{margin:30px 0 22px}
  .product-mosaic{display:grid;grid-template-columns:1fr;grid-template-rows:none}
  .product-mosaic-large{grid-column:auto}
  .product-mosaic-item{height:280px}
  .product-principles{grid-template-columns:1fr}
  .product-principles>div{border-right:0;border-bottom:1px solid #dcd6ca}
  .product-principles>div:last-child{border-bottom:0}
  .product-final-box{padding:30px 20px}
  .product-final-actions{width:100%}
  .product-final-actions .btn{width:100%;justify-content:center}
}


/* ===== HỆ THỐNG KIỂU CHỮ DỄ ĐỌC ===== */
/*
  Ưu tiên chữ rõ, hiện đại, dễ đọc trên Windows, Android và iPhone.
  Không dùng các nhãn quá nhỏ / quá đậm / giãn chữ quá rộng.
*/
body{
  font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  font-weight:400;
}

/* Menu chính */
.menu a{
  font-size:14px;
  font-weight:650;
  letter-spacing:.05px;
}
.dropdown a{
  font-size:13.5px;
  font-weight:600;
  line-height:1.45;
}

/* Nhãn vàng / eyebrow */
.eyebrow{
  font-size:13px;
  font-weight:700;
  letter-spacing:1.35px;
  line-height:1.45;
}

/* Nút chung */
.btn,
.hotline{
  font-family:inherit;
  font-size:13px;
  font-weight:700;
  letter-spacing:.05px;
}

/* Trang Sản phẩm: các chữ nhỏ trước đây 8–10px được tăng lên */
.product-world-link{
  gap:8px;
  margin-top:30px;
  color:#d8b86f;
  font-size:13px;
  font-weight:700;
  letter-spacing:.1px;
  line-height:1.4;
}
.product-world-interior .product-world-link{
  color:#765823;
}
.product-world-link b{
  font-size:16px;
  font-weight:500;
}

/* Chữ "Xem báo giá →" trên hero */
.product-hero-text-link{
  font-size:13px;
  font-weight:650;
  letter-spacing:.05px;
  line-height:1.4;
}

/* Mục 01 / 02 trên hero sản phẩm */
.product-hero-index small{
  font-size:11px;
  font-weight:700;
  letter-spacing:.3px;
}
.product-hero-index strong{
  font-size:16px;
  font-weight:700;
  letter-spacing:.15px;
}
.product-hero-index span{
  font-size:12px;
  line-height:1.5;
}

/* Thẻ mô tả sản phẩm */
.product-world-tags span{
  padding:7px 10px;
  font-size:11.5px;
  font-weight:600;
  letter-spacing:.05px;
  line-height:1.35;
}

/* Phần khám phá theo cảm nhận */
.product-feeling-no{
  font-size:11px;
  font-weight:700;
  letter-spacing:.25px;
}
.product-feeling-card h3{
  font-size:16px;
  font-weight:700;
  letter-spacing:0;
}
.product-feeling-card p{
  font-size:12.5px;
  line-height:1.68;
}
.product-feeling-card b{
  font-size:12px;
  font-weight:700;
  letter-spacing:.05px;
}

/* Mosaic */
.product-mosaic-item small{
  font-size:11px;
  font-weight:700;
  letter-spacing:.35px;
}
.product-mosaic-item strong{
  font-size:20px;
  font-weight:700;
  letter-spacing:0;
  line-height:1.3;
}

/* Các nguyên tắc cuối trang */
.product-principles span{
  font-size:11px;
  font-weight:700;
}
.product-principles strong{
  font-size:14px;
  font-weight:700;
}
.product-principles p{
  font-size:12.5px;
  line-height:1.65;
}

/* Footer / nhãn nhỏ — không để chữ quá bé */
.footer h3{
  letter-spacing:.2px;
}
.footer,
.footer a{
  line-height:1.6;
}

/* Chatbot và các nút nhỏ cũng dùng cùng font hệ thống */
.tn-assistant,
.material-popup{
  font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

/* Điện thoại */
@media(max-width:650px){
  .menu a{font-size:14px}
  .eyebrow{font-size:11.5px;letter-spacing:1px}
  .product-world-link,
  .product-hero-text-link{font-size:12.5px}
  .product-world-tags span{font-size:11px}
  .product-feeling-card h3{font-size:15px}
  .product-mosaic-item strong{font-size:18px}
}


/* ===== HOVER HIỆU ỨNG NÚT HERO ===== */
.hero .actions .btn{
  position:relative;
  overflow:hidden;
  transition:transform .28s ease, box-shadow .28s ease, background-color .28s ease, color .28s ease, border-color .28s ease;
}
.hero .actions .btn::before{
  content:"";
  position:absolute;
  top:0;
  left:-130%;
  width:90%;
  height:100%;
  background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.18) 45%, rgba(255,255,255,.45) 50%, rgba(255,255,255,.18) 55%, transparent 100%);
  transform:skewX(-20deg);
  transition:left .45s ease;
  pointer-events:none;
}
.hero .actions .btn:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(0,0,0,.28);
}
.hero .actions .btn:hover::before{
  left:130%;
}
.hero .actions .btn:not(.outline):hover{
  background:#f4e2b1;
  border-color:#f4e2b1;
  color:#111;
}
.hero .actions .btn.outline:hover{
  background:#c9a96a;
  border-color:#c9a96a;
  color:#111;
}
.hero .actions .btn:active{
  transform:translateY(-1px) scale(.98);
}
@media (max-width:650px){
  .hero .actions .btn:hover{
    transform:none;
    box-shadow:none;
  }
}


/* ===== HOVER ĐỒNG BỘ TẤT CẢ NÚT ===== */

/* Chuyển động cơ bản cho toàn bộ thành phần bấm */
.btn,
.hotline,
.filter,
.quote-filter,
.location-map-open,
.design-all-link,
.product-world-link,
.product-hero-text-link,
.home-price-link,
.home-editorial-link,
.home-popup-trigger,
.material-popup-actions a,
.tn-assistant-quick button,
.tn-assistant-send,
.tn-assistant-launcher,
.tn-assistant-close,
.contact-bubble,
.design-lightbox-close,
.design-lightbox-prev,
.design-lightbox-next,
.material-popup-close,
.hamb,
.mobile-submenu-toggle,
.mobile-bar a,
.design-image-button{
  transition:
    transform .26s cubic-bezier(.22,.61,.36,1),
    box-shadow .26s ease,
    background-color .26s ease,
    border-color .26s ease,
    color .26s ease,
    filter .26s ease,
    opacity .26s ease;
}

/* Các nút chữ hình chữ nhật có ánh sáng lướt qua */
.btn,
.hotline,
.filter,
.quote-filter,
.location-map-open,
.home-popup-trigger,
.material-popup-actions a,
.tn-assistant-quick button,
.tn-assistant-send,
.mobile-bar a{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.btn::before,
.hotline::before,
.filter::before,
.quote-filter::before,
.location-map-open::before,
.home-popup-trigger::before,
.material-popup-actions a::before,
.tn-assistant-quick button::before,
.tn-assistant-send::before,
.mobile-bar a::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-20%;
  left:-135%;
  width:82%;
  height:140%;
  background:linear-gradient(
    115deg,
    transparent 0%,
    rgba(255,255,255,.08) 34%,
    rgba(255,255,255,.46) 50%,
    rgba(255,255,255,.08) 66%,
    transparent 100%
  );
  transform:skewX(-19deg);
  transition:left .46s ease;
  pointer-events:none;
}

@media(hover:hover) and (pointer:fine){

  /* Tất cả nút chính: nhô lên nhẹ */
  .btn:hover,
  .hotline:hover,
  .filter:hover,
  .quote-filter:hover,
  .location-map-open:hover,
  .home-popup-trigger:hover,
  .material-popup-actions a:hover,
  .tn-assistant-quick button:hover,
  .tn-assistant-send:hover,
  .mobile-bar a:hover{
    transform:translateY(-4px);
    box-shadow:0 13px 28px rgba(0,0,0,.24);
  }

  .btn:hover::before,
  .hotline:hover::before,
  .filter:hover::before,
  .quote-filter:hover::before,
  .location-map-open:hover::before,
  .home-popup-trigger:hover::before,
  .material-popup-actions a:hover::before,
  .tn-assistant-quick button:hover::before,
  .tn-assistant-send:hover::before,
  .mobile-bar a:hover::before{
    left:135%;
  }

  /* Nút vàng -> vàng sáng/kem */
  .btn:not(.outline):not(.ghost):not(.dark-outline):hover,
  .location-map-open:hover,
  .material-popup-actions a:first-child:hover{
    background:#f2dfae;
    border-color:#f2dfae;
    color:#111 !important;
  }

  /* Nút viền / nền tối -> vàng */
  .btn.outline:hover,
  .btn.ghost:hover,
  .btn.dark-outline:hover,
  .hotline:hover{
    background:#c9a96a !important;
    border-color:#c9a96a !important;
    color:#111 !important;
  }

  /* Bộ lọc / lựa chọn */
  .filter:hover,
  .quote-filter:hover{
    background:#17191b;
    border-color:#17191b;
    color:#d8b86f;
  }

  /* Nút popup nội dung */
  .home-popup-trigger:hover{
    background:#17191b;
    border-color:#17191b;
    color:#d8b86f;
    padding-left:12px;
    padding-right:12px;
  }

  /* Nút nhanh trong AI */
  .tn-assistant-quick button:hover{
    background:#17191b;
    border-color:#17191b;
    color:#d8b86f;
  }

  .tn-assistant-send:hover{
    background:#d8b86f;
    color:#111;
  }

  /* Link dạng nút chữ */
  .design-all-link:hover,
  .product-world-link:hover,
  .product-hero-text-link:hover,
  .home-price-link:hover,
  .home-editorial-link:hover{
    color:#d9b970 !important;
    transform:translateY(-2px);
    text-shadow:0 5px 18px rgba(201,169,106,.20);
  }

  .product-world-link:hover b{
    transform:translate(5px,-4px) rotate(5deg);
  }

  /* Các nút tròn / icon: giữ màu thương hiệu, thêm vòng vàng và phóng nhẹ */
  .contact-bubble:hover,
  .tn-assistant-launcher:hover{
    transform:translateY(-4px) scale(1.07);
    box-shadow:
      0 15px 32px rgba(0,0,0,.25),
      0 0 0 4px rgba(201,169,106,.20);
    filter:brightness(1.09);
  }

  /* Nút đóng / điều hướng ảnh */
  .tn-assistant-close:hover,
  .design-lightbox-close:hover,
  .design-lightbox-prev:hover,
  .design-lightbox-next:hover,
  .material-popup-close:hover{
    background:#c9a96a !important;
    color:#111 !important;
    transform:scale(1.08);
    box-shadow:0 8px 20px rgba(0,0,0,.22);
  }

  /* Hamburger và submenu mobile khi thử trên thiết bị có chuột */
  .hamb:hover,
  .mobile-submenu-toggle:hover{
    color:#c9a96a;
    transform:translateY(-2px);
  }

  /* Các ảnh có thể bấm mở lightbox */
  .design-image-button:hover{
    transform:translateY(-4px);
    box-shadow:0 15px 32px rgba(0,0,0,.16);
    outline:1px solid rgba(201,169,106,.65);
    outline-offset:2px;
  }
  .design-image-button:hover img{
    filter:brightness(1.05) contrast(1.02);
  }

  /* Thanh liên hệ dưới mobile nếu xem bằng chuột */
  .mobile-bar a:hover{
    background:#c9a96a;
    color:#111;
  }
}

/* Khi bấm chuột: phản hồi nhẹ */
.btn:active,
.hotline:active,
.filter:active,
.quote-filter:active,
.location-map-open:active,
.home-popup-trigger:active,
.material-popup-actions a:active,
.tn-assistant-quick button:active,
.tn-assistant-send:active,
.contact-bubble:active,
.tn-assistant-launcher:active,
.design-lightbox-close:active,
.design-lightbox-prev:active,
.design-lightbox-next:active,
.material-popup-close:active,
.mobile-bar a:active{
  transform:translateY(-1px) scale(.98);
}

/* Bàn phím: focus rõ nhưng vẫn đẹp */
.btn:focus-visible,
.hotline:focus-visible,
.filter:focus-visible,
.quote-filter:focus-visible,
.location-map-open:focus-visible,
.home-popup-trigger:focus-visible,
.material-popup-actions a:focus-visible,
.tn-assistant-quick button:focus-visible,
.tn-assistant-send:focus-visible,
.contact-bubble:focus-visible,
.tn-assistant-launcher:focus-visible{
  outline:2px solid #e4c77f;
  outline-offset:3px;
}

/* Tôn trọng người dùng muốn giảm chuyển động */
@media(prefers-reduced-motion:reduce){
  .btn,
  .hotline,
  .filter,
  .quote-filter,
  .location-map-open,
  .design-all-link,
  .product-world-link,
  .product-hero-text-link,
  .home-price-link,
  .home-editorial-link,
  .home-popup-trigger,
  .material-popup-actions a,
  .tn-assistant-quick button,
  .tn-assistant-send,
  .tn-assistant-launcher,
  .tn-assistant-close,
  .contact-bubble,
  .design-lightbox-close,
  .design-lightbox-prev,
  .design-lightbox-next,
  .material-popup-close,
  .hamb,
  .mobile-submenu-toggle,
  .mobile-bar a,
  .design-image-button{
    transition:none!important;
  }
  .btn::before,
  .hotline::before,
  .filter::before,
  .quote-filter::before,
  .location-map-open::before,
  .home-popup-trigger::before,
  .material-popup-actions a::before,
  .tn-assistant-quick button::before,
  .tn-assistant-send::before,
  .mobile-bar a::before{
    display:none!important;
  }
}


/* ===== MOBILE SCROLL EFFECT - TRUNG NGHIA ===== */
/*
  Điện thoại không có trạng thái hover như chuột.
  Khi nút/thẻ đi qua vùng giữa màn hình, JS thêm .tn-mobile-scroll-active
  trong thời gian ngắn để tạo cảm giác tương tự hover trên laptop.
*/
@media (hover:none) and (pointer:coarse){
  .tn-mobile-scroll-fx{
    will-change:transform,box-shadow,background-color,border-color,color;
  }

  .tn-mobile-scroll-fx.tn-mobile-scroll-active{
    transform:translateY(-4px) scale(1.018) !important;
    box-shadow:0 14px 30px rgba(0,0,0,.20) !important;
  }

  /* Nút vàng */
  .btn.tn-mobile-scroll-active:not(.outline):not(.ghost):not(.dark-outline),
  .location-map-open.tn-mobile-scroll-active,
  .material-popup-actions a.tn-mobile-scroll-active:first-child{
    background:#f2dfae !important;
    border-color:#f2dfae !important;
    color:#111 !important;
  }

  /* Nút viền / nền tối */
  .btn.outline.tn-mobile-scroll-active,
  .btn.ghost.tn-mobile-scroll-active,
  .btn.dark-outline.tn-mobile-scroll-active,
  .hotline.tn-mobile-scroll-active{
    background:#c9a96a !important;
    border-color:#c9a96a !important;
    color:#111 !important;
  }

  /* Bộ lọc / nút trắng */
  .filter.tn-mobile-scroll-active,
  .quote-filter.tn-mobile-scroll-active,
  .tn-assistant-quick button.tn-mobile-scroll-active,
  .home-popup-trigger.tn-mobile-scroll-active{
    background:#17191b !important;
    border-color:#17191b !important;
    color:#d8b86f !important;
  }

  /* Link dạng nút chữ */
  .product-world-link.tn-mobile-scroll-active,
  .product-hero-text-link.tn-mobile-scroll-active,
  .home-price-link.tn-mobile-scroll-active,
  .home-editorial-link.tn-mobile-scroll-active,
  .design-all-link.tn-mobile-scroll-active{
    color:#d9b970 !important;
    text-shadow:0 5px 18px rgba(201,169,106,.24);
  }

  .product-world-link.tn-mobile-scroll-active b{
    transform:translate(5px,-4px) rotate(5deg);
  }

  /* Thẻ sản phẩm / thẻ lựa chọn */
  .product-feeling-card.tn-mobile-scroll-active,
  .room-category-card.tn-mobile-scroll-active,
  .design-style-card.tn-mobile-scroll-active,
  .category-hub-card.tn-mobile-scroll-active{
    transform:translateY(-5px) scale(1.012) !important;
    box-shadow:0 16px 34px rgba(0,0,0,.16) !important;
    border-color:rgba(201,169,106,.75) !important;
  }

  .product-mosaic-item.tn-mobile-scroll-active img,
  .category-hub-card.tn-mobile-scroll-active img,
  .design-style-card.tn-mobile-scroll-active img{
    transform:scale(1.045) !important;
  }

  /* Ánh sáng chạy qua khi lướt tới nút */
  .tn-mobile-scroll-fx.tn-mobile-scroll-active::before{
    animation:tnMobileSweep .72s ease both;
  }

  @keyframes tnMobileSweep{
    0%{left:-135%}
    100%{left:135%}
  }
}

/* Với thiết bị cảm ứng nhưng trình duyệt báo pointer khác, vẫn hỗ trợ màn hình nhỏ */
@media (max-width:700px){
  .tn-mobile-scroll-fx.tn-mobile-scroll-active{
    transform:translateY(-3px) scale(1.012);
  }
}

@media(prefers-reduced-motion:reduce){
  .tn-mobile-scroll-fx,
  .tn-mobile-scroll-fx.tn-mobile-scroll-active{
    transform:none!important;
    animation:none!important;
    transition:none!important;
  }
}


/* ===== AI V7 - HỘI THOẠI KHÁCH HÀNG ===== */
.tn-assistant-followup{
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid rgba(201,169,106,.28);
  color:#4d5154;
  line-height:1.65;
}
.tn-assistant-soft{
  display:inline-block;
  margin-top:4px;
  color:#85898c;
  font-size:.92em;
}
.tn-assistant-message strong{
  font-weight:700;
}


/* ===== AI V8 - OPENAI HYBRID ===== */
.tn-assistant-sync-text{
  transition:color .2s ease;
}
.tn-assistant-sync-dot.ready{
  box-shadow:0 0 0 4px rgba(77,179,113,.10);
}


/* ===== AI V9 - WEB SEARCH ===== */
.tn-assistant-links a[href^="http"]{
  position:relative;
}
.tn-assistant-links a[href^="http"]::after{
  content:"↗";
  margin-left:5px;
  font-size:.9em;
  opacity:.72;
}


/* ===== AI V10 - GOOGLE ONLY ===== */
.tn-google-search-suggestions{
  margin-top:10px;
  padding-top:8px;
  border-top:1px solid rgba(201,169,106,.20);
  max-width:100%;
  overflow:hidden;
}
.tn-google-search-suggestions *{
  max-width:100%;
}


/* ===== FORM LIEN HE TRANG CHU - TRUNG NGHIA ===== */
.home-contact-premium{padding:84px 0;background:transparent}
.home-contact-premium-shell{position:relative;overflow:hidden;padding:46px 34px 34px;border-radius:30px;background:radial-gradient(circle at 0% 100%,rgba(191,104,44,.30),transparent 27%),linear-gradient(112deg,#4b2c1e 0%,#3e3430 35%,#34414d 72%,#354653 100%);border:1px solid rgba(255,255,255,.13);box-shadow:0 30px 70px rgba(0,0,0,.22);color:#fff}
.home-contact-orb{position:absolute;width:280px;height:280px;right:-90px;top:-150px;border:1px solid rgba(255,255,255,.20);border-radius:50%;pointer-events:none}
.home-contact-premium-head{position:relative;z-index:1;text-align:center;max-width:900px;margin:0 auto 28px}
.home-contact-pill{display:inline-flex;padding:7px 17px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.06);color:#f0d39b;font-size:11px;font-weight:900;letter-spacing:1.4px}
.home-contact-premium-head h2{margin:12px 0 9px;color:#fff;font-size:clamp(32px,4.2vw,52px);line-height:1.05}
.home-contact-premium-head h2 span{color:#d8ad63}
.home-contact-premium-head p{max-width:780px;margin:0 auto;color:#eef1f3;line-height:1.75}
.home-contact-steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0 24px}
.home-contact-step{min-height:80px;padding:15px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.20);background:rgba(255,255,255,.08);backdrop-filter:blur(4px)}
.home-contact-step strong{display:block;margin-bottom:4px;font-size:17px;color:#fff}.home-contact-step span{display:block;color:#e8eaed;font-size:12px;line-height:1.45}
.home-contact-premium-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:22px}
.home-contact-info-panel{padding:30px;border-radius:24px;background:linear-gradient(180deg,rgba(54,58,64,.95),rgba(43,47,52,.96));border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.home-contact-info-panel h3{margin:0 0 10px;color:#fff;font-size:clamp(25px,3vw,36px);line-height:1.16}.home-contact-info-panel>p{color:#e4e6e8;margin:0;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.13)}
.home-contact-info-list{display:grid;gap:12px;margin:20px 0}.home-contact-info-item{display:flex;align-items:center;gap:13px;min-height:66px;padding:11px 14px;border-radius:16px;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}
.home-contact-icon{flex:0 0 42px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:linear-gradient(135deg,#d2ad68,#a57c39);color:#111;font-size:18px;box-shadow:0 8px 18px rgba(0,0,0,.14)}
.home-contact-info-item b{display:block;margin-bottom:2px;font-size:14px}.home-contact-info-item small{display:block;color:#eceff1;font-size:12px;line-height:1.45}
.home-contact-info-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.home-contact-call,.home-contact-zalo{min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:999px;font-weight:900;font-size:13px;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
.home-contact-call{background:linear-gradient(90deg,#b58d48,#d4b974);color:#111;box-shadow:0 10px 22px rgba(201,169,106,.22)}.home-contact-zalo{background:rgba(255,255,255,.06);color:#fff;border:1px solid rgba(255,255,255,.22)}.home-contact-call:hover,.home-contact-zalo:hover{transform:translateY(-3px)}.home-contact-zalo:hover{background:#c9a96a;color:#111;border-color:#c9a96a}
.home-contact-process{margin-top:14px;padding:18px 20px;border-radius:17px;background:rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.09)}.home-contact-process strong{display:block;color:#f0d39b;font-size:13px;letter-spacing:.6px}.home-contact-process ul{margin:10px 0 0;padding-left:18px;color:#eceff1}.home-contact-process li{margin:8px 0}
.home-contact-form-panel{position:relative;padding:32px;border-radius:24px;background:#fff;color:#202326;box-shadow:0 18px 40px rgba(0,0,0,.17)}.home-contact-form-panel::before{content:"";position:absolute;left:20px;right:20px;top:0;height:4px;border-radius:0 0 6px 6px;background:linear-gradient(90deg,#313b45,#c9a96a,#d08b36)}
.home-contact-form-kicker{display:inline-flex;padding:6px 12px;border-radius:999px;background:#f6eddd;color:#a4742b;font-size:10px;font-weight:900;letter-spacing:1.1px;margin-bottom:8px}.home-contact-form-panel h3{margin:0 0 9px;font-size:clamp(26px,3vw,38px);line-height:1.08;color:#202326}.home-contact-form-panel>p{margin:0 0 18px;color:#666b70;line-height:1.65}
.home-contact-form{display:grid;gap:13px}.home-contact-honeypot{position:absolute!important;left:-9999px!important}.home-contact-form label{display:grid;gap:6px}.home-contact-form label>span{color:#2c3034;font-size:13px;font-weight:800}.home-contact-form em{color:#c18a39;font-style:normal}
.home-contact-form input,.home-contact-form textarea{width:100%;border:1px solid #dfe1e4;border-radius:13px;background:#fafafa;padding:14px 15px;color:#202326;font:inherit;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.home-contact-form input:focus,.home-contact-form textarea:focus{outline:none;background:#fff;border-color:#c9a96a;box-shadow:0 0 0 4px rgba(201,169,106,.14)}.home-contact-form textarea{min-height:110px;resize:vertical}
.home-contact-submit{min-height:56px;border:0;border-radius:999px;background:linear-gradient(90deg,#303b46 0%,#c9a96a 55%,#bd7435 100%);color:#fff;font-weight:900;letter-spacing:.4px;cursor:pointer;box-shadow:0 13px 28px rgba(0,0,0,.14);transition:transform .22s ease,box-shadow .22s ease}.home-contact-submit:hover{transform:translateY(-3px);box-shadow:0 17px 34px rgba(0,0,0,.18)}
.home-contact-privacy{margin-top:14px;padding:14px 16px;border-radius:13px;text-align:center;background:#f6f2eb;color:#6c6d6f;font-size:12px;line-height:1.55}
@media(max-width:950px){.home-contact-steps{grid-template-columns:repeat(2,1fr)}.home-contact-premium-grid{grid-template-columns:1fr}}
@media(max-width:650px){.home-contact-premium{padding:58px 0}.home-contact-premium-shell{padding:28px 16px 18px;border-radius:22px}.home-contact-premium-head h2{font-size:34px}.home-contact-steps{grid-template-columns:1fr 1fr;gap:9px}.home-contact-step{min-height:72px;padding:12px}.home-contact-info-panel,.home-contact-form-panel{padding:22px 17px;border-radius:18px}.home-contact-info-actions{grid-template-columns:1fr}.home-contact-form-panel h3{font-size:29px}}


/* ===== HIEU UNG NOI KHU LIEN HE ===== */
@media (hover:hover) and (pointer:fine){
  .home-contact-premium-shell{
    transition:box-shadow .35s ease,border-color .35s ease,transform .35s ease;
  }
  .home-contact-premium-shell:hover{
    border-color:rgba(216,173,99,.42);
    box-shadow:0 38px 88px rgba(0,0,0,.30),0 0 0 1px rgba(201,169,106,.10);
  }

  .home-contact-step{
    transition:transform .24s ease,background .24s ease,border-color .24s ease,box-shadow .24s ease;
  }
  .home-contact-step:hover{
    transform:translateY(-6px);
    background:rgba(201,169,106,.16);
    border-color:rgba(224,194,132,.48);
    box-shadow:0 14px 28px rgba(0,0,0,.18);
  }

  .home-contact-info-panel,
  .home-contact-form-panel{
    transition:transform .30s cubic-bezier(.22,.61,.36,1),box-shadow .30s ease,border-color .30s ease;
  }
  .home-contact-info-panel:hover{
    transform:translateY(-8px);
    border-color:rgba(216,173,99,.45);
    box-shadow:0 24px 52px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.06);
  }
  .home-contact-form-panel:hover{
    transform:translateY(-8px);
    box-shadow:0 26px 58px rgba(0,0,0,.24),0 0 0 1px rgba(201,169,106,.18);
  }

  .home-contact-info-item{
    transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease;
  }
  .home-contact-info-item:hover{
    transform:translateX(7px);
    background:rgba(201,169,106,.14);
    border-color:rgba(216,173,99,.45);
    box-shadow:0 10px 22px rgba(0,0,0,.16);
  }
  .home-contact-info-item .home-contact-icon{
    transition:transform .22s ease,box-shadow .22s ease;
  }
  .home-contact-info-item:hover .home-contact-icon{
    transform:scale(1.09) rotate(-3deg);
    box-shadow:0 10px 22px rgba(201,169,106,.25);
  }

  .home-contact-process{
    transition:transform .24s ease,border-color .24s ease,background .24s ease;
  }
  .home-contact-process:hover{
    transform:translateY(-4px);
    background:rgba(0,0,0,.22);
    border-color:rgba(216,173,99,.28);
  }

  .home-contact-form label{
    transition:transform .18s ease;
  }
  .home-contact-form label:hover{
    transform:translateY(-2px);
  }
  .home-contact-form input:hover,
  .home-contact-form textarea:hover{
    border-color:#c9a96a;
    background:#fff;
    box-shadow:0 7px 18px rgba(201,169,106,.10);
  }

  .home-contact-submit:hover{
    transform:translateY(-4px) scale(1.012);
    box-shadow:0 19px 38px rgba(0,0,0,.22),0 0 0 1px rgba(255,255,255,.10) inset;
  }
}

/* Điện thoại: hiệu ứng khi chạm để vẫn có cảm giác tương tác */
@media (hover:none), (pointer:coarse){
  .home-contact-step:active,
  .home-contact-info-panel:active,
  .home-contact-form-panel:active,
  .home-contact-info-item:active,
  .home-contact-call:active,
  .home-contact-zalo:active,
  .home-contact-submit:active{
    transform:translateY(-2px) scale(.99);
  }
  .home-contact-info-item:active{
    background:rgba(201,169,106,.13);
    border-color:rgba(216,173,99,.40);
  }
}

@media (prefers-reduced-motion:reduce){
  .home-contact-premium-shell,
  .home-contact-step,
  .home-contact-info-panel,
  .home-contact-form-panel,
  .home-contact-info-item,
  .home-contact-icon,
  .home-contact-process,
  .home-contact-form label,
  .home-contact-submit{
    transition:none!important;
    transform:none!important;
  }
}


/* ===== PHONG CACH THIET KE TRANG CHU ===== */
.home-design-style-section{
  padding:82px 0;
  background:linear-gradient(180deg,#fff 0%,#f8f4ed 100%);
}

.home-design-style-head{
  max-width:850px;
  margin:0 auto 36px;
  text-align:center;
}

.home-design-style-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 15px;
  border-radius:999px;
  background:#2f3944;
  color:#fff;
  font-size:11px;
  font-weight:900;
  letter-spacing:1.15px;
  margin-bottom:12px;
}

.home-design-style-head h2{
  margin:0;
  color:#191c20;
  font-size:clamp(31px,4vw,48px);
  line-height:1.08;
  letter-spacing:-.5px;
}

.home-design-style-line{
  display:block;
  width:76px;
  height:3px;
  margin:15px auto 17px;
  border-radius:999px;
  background:linear-gradient(90deg,#9f7637,#c9a96a,#e0c987);
}

.home-design-style-head p{
  max-width:760px;
  margin:0 auto;
  color:#62666b;
  line-height:1.75;
}

.home-design-style-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}

.home-design-style-card{
  overflow:hidden;
  border-radius:20px;
  background:#fff;
  border:1px solid #e8ddca;
  box-shadow:0 10px 28px rgba(0,0,0,.07);
  transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease;
}

.home-design-style-card:hover,
.home-design-style-card:focus-within{
  transform:translateY(-8px);
  border-color:#c9a96a;
  box-shadow:0 20px 42px rgba(0,0,0,.13);
}

.home-design-style-media{
  position:relative;
  display:block;
  height:238px;
  overflow:hidden;
  background:#ddd;
}

.home-design-style-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 56%,rgba(0,0,0,.18));
  pointer-events:none;
}

.home-design-style-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .52s cubic-bezier(.2,.7,.2,1),filter .32s ease;
}

.home-design-style-card:hover .home-design-style-media img,
.home-design-style-card:focus-within .home-design-style-media img{
  transform:scale(1.065);
  filter:saturate(1.04) contrast(1.02);
}

.home-design-style-tag{
  position:absolute;
  z-index:2;
  left:14px;
  bottom:13px;
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  background:linear-gradient(90deg,#a67d3f,#c9a96a);
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.6px;
  box-shadow:0 7px 18px rgba(0,0,0,.18);
}

.home-design-style-body{
  padding:19px 18px 21px;
}

.home-design-style-body h3{
  margin:0 0 9px;
  color:#202326;
  font-size:20px;
  line-height:1.25;
}

.home-design-style-body p{
  min-height:72px;
  margin:0 0 16px;
  color:#62666b;
  font-size:13.5px;
  line-height:1.65;
}

.home-design-style-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:9px 15px;
  border-radius:999px;
  background:#f2ede4;
  color:#24272b;
  border:1px solid #e6dac5;
  font-size:11px;
  font-weight:900;
  letter-spacing:.4px;
  transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease;
}

.home-design-style-link:hover,
.home-design-style-link:focus-visible{
  transform:translateY(-2px);
  background:#c9a96a;
  color:#111;
  box-shadow:0 9px 18px rgba(201,169,106,.25);
  outline:none;
}

.home-design-style-more{
  margin-top:30px;
  text-align:center;
}

.home-design-style-all{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 21px;
  border:1px solid #c9a96a;
  background:#191b1e;
  color:#fff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.5px;
  transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease;
}

.home-design-style-all:hover,
.home-design-style-all:focus-visible{
  transform:translateY(-3px);
  background:#c9a96a;
  color:#111;
  box-shadow:0 12px 24px rgba(0,0,0,.14);
  outline:none;
}

@media(max-width:950px){
  .home-design-style-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:650px){
  .home-design-style-section{
    padding:58px 0;
  }

  .home-design-style-head{
    margin-bottom:26px;
  }

  .home-design-style-grid{
    grid-template-columns:1fr;
    gap:17px;
  }

  .home-design-style-media{
    height:218px;
  }

  .home-design-style-body p{
    min-height:0;
  }

  .home-design-style-card:active{
    transform:translateY(-5px) scale(.995);
    border-color:#c9a96a;
    box-shadow:0 16px 32px rgba(0,0,0,.13);
  }

  .home-design-style-card:active .home-design-style-media img{
    transform:scale(1.045);
  }
}

@media(prefers-reduced-motion:reduce){
  .home-design-style-card,
  .home-design-style-media img,
  .home-design-style-link,
  .home-design-style-all{
    transition:none!important;
  }
}


/* ===== HOME WIREFRAME DARK PATTERN ===== */
body.tn-homepage-pattern{
  background-color:#1f2124;
  background-image:
    linear-gradient(30deg, rgba(255,255,255,.028) 12%, transparent 12.5%, transparent 87%, rgba(255,255,255,.028) 87.5%, rgba(255,255,255,.028)),
    linear-gradient(150deg, rgba(255,255,255,.028) 12%, transparent 12.5%, transparent 87%, rgba(255,255,255,.028) 87.5%, rgba(255,255,255,.028)),
    linear-gradient(30deg, rgba(0,0,0,.14) 12%, transparent 12.5%, transparent 87%, rgba(0,0,0,.14) 87.5%, rgba(0,0,0,.14)),
    linear-gradient(150deg, rgba(0,0,0,.14) 12%, transparent 12.5%, transparent 87%, rgba(0,0,0,.14) 87.5%, rgba(0,0,0,.14)),
    linear-gradient(60deg, rgba(255,255,255,.016) 25%, transparent 25.5%, transparent 75%, rgba(255,255,255,.016) 75%, rgba(255,255,255,.016)),
    linear-gradient(60deg, rgba(255,255,255,.016) 25%, transparent 25.5%, transparent 75%, rgba(255,255,255,.016) 75%, rgba(255,255,255,.016));
  background-size:44px 76px;
  background-position:0 0,0 0,22px 38px,22px 38px,0 0,22px 38px;
  background-attachment:fixed;
}

body.tn-homepage-pattern .header,
body.tn-homepage-pattern .footer{
  position:relative;
  z-index:3;
}

main.home-wireframe-page{
  width:min(calc(100% - 72px), 1180px);
  margin:18px auto 30px;
  background:#f7f3eb;
  border-radius:0;
  box-shadow:0 18px 48px rgba(0,0,0,.24);
  overflow:hidden;
}

.home-wireframe-page .container{
  width:min(94%, 1140px);
}

.home-wireframe-shell{
  padding:18px 0 16px;
}

.home-wire-hero{
  position:relative;
  min-height:170px;
  margin-bottom:16px;
  border-radius:18px;
  overflow:hidden;
  background:url('../images/noi-that/phong-khach-tong-the.jpg') center/cover no-repeat;
}

.home-wire-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(18,20,24,.72), rgba(18,20,24,.48));
}

.home-wire-hero:after{
  content:'';
  position:absolute;
  inset:auto auto -42px -42px;
  width:150px;
  height:150px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(201,169,106,.28), transparent 70%);
}

.home-wire-hero-content{
  position:relative;
  z-index:1;
  padding:24px 22px 18px;
  color:#fff;
}

.home-wire-kicker{
  font-size:14px;
  font-weight:800;
  line-height:1.5;
  letter-spacing:.4px;
  text-transform:uppercase;
}

.home-wire-kicker span{
  color:#d8b065;
}

.home-wire-hero h1{
  margin:10px 0 8px;
  font-size:28px;
  line-height:1.28;
  color:#fff;
}

.home-wire-hero p{
  margin:0;
  max-width:440px;
  color:rgba(255,255,255,.88);
  font-size:13px;
  line-height:1.7;
}

.home-wire-hotline{
  margin-top:14px;
  text-align:right;
  font-size:12px;
  font-weight:700;
}

.home-wire-box{
  margin-bottom:16px;
}

.home-wire-box-title{
  text-align:center;
  color:#2d2f36;
  font-size:15px;
  font-weight:900;
  letter-spacing:1px;
  margin-bottom:16px;
}

.home-wire-choice-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.home-wire-choice-card{
  min-height:250px;
  border:1px solid #d6d0c6;
  border-radius:20px;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:22px;
  background-size:cover;
  background-position:center;
  box-shadow:0 10px 24px rgba(0,0,0,.10);
  transition:transform .28s ease, box-shadow .28s ease;
  position:relative;
  isolation:isolate;
  background:#777;
}

.home-wire-choice-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  z-index:0;
}

.home-wire-choice-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg, rgba(15,17,21,.08), rgba(15,17,21,.55));
  pointer-events:none;
}

.home-wire-choice-card:hover,
.home-wire-project-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 24px rgba(0,0,0,.14);
}

.home-wire-choice-card span{
  position:relative;
  z-index:2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:145px;
  min-height:48px;
  padding:10px 22px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  color:#1a1c21;
  font-size:14px;
  font-weight:900;
  letter-spacing:1px;
  box-shadow:0 8px 22px rgba(0,0,0,.14);
}

.home-wire-pill{
  width:max-content;
  max-width:100%;
  margin:0 auto 18px;
  padding:16px 40px;
  border-radius:999px;
  background:#ebe6ee;
  color:#44464d;
  font-size:24px;
  font-weight:900;
  letter-spacing:1.2px;
  line-height:1.2;
  text-align:center;
  box-shadow:0 10px 24px rgba(0,0,0,.08);
}

.home-wire-project-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:14px;
  align-items:start;
}

.home-wire-project-card{
  display:block;
  width:100%;
  max-width:210px;
  margin:0 auto;
  background:#fff;
  border:1px solid #ddd6ca;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 5px 16px rgba(0,0,0,.05);
  transition:transform .28s ease, box-shadow .28s ease;
}

.home-wire-project-card img{
  display:block;
  width:100%;
  aspect-ratio:3 / 4;
  object-fit:cover;
  background:#efebe2;
}

.home-wire-project-card span{
  display:block;
  padding:10px 10px 12px;
  font-size:15px;
  line-height:1.45;
  text-align:center;
  font-weight:800;
  color:#383a41;
}

.home-wire-contact{
  padding:0 0 18px;
}

.home-wire-contact .container{
  width:min(92%, 1060px);
}

.home-wire-contact .home-contact-premium-shell{
  background:transparent;
  border:0;
  padding:0;
  box-shadow:none;
}

.home-wire-contact .home-contact-orb,
.home-wire-contact .home-contact-premium-head,
.home-wire-contact .home-contact-steps{
  display:none;
}

.home-wire-contact .home-contact-premium-grid{
  margin-top:0;
  gap:14px;
}

.home-wire-contact .home-contact-info-panel,
.home-wire-contact .home-contact-form-panel{
  border-radius:16px;
  box-shadow:0 10px 26px rgba(0,0,0,.09);
}

@media (max-width: 900px){
  main.home-wireframe-page{
    width:min(calc(100% - 28px), 1180px);
    margin-top:12px;
  }
}

@media (max-width: 640px){
  .home-wireframe-page .container,
  .home-wire-contact .container{
    width:min(94%, 1060px);
  }

  .home-wireframe-shell{
    padding:14px 0 12px;
  }

  .home-wire-hero{
    min-height:150px;
    margin-bottom:14px;
    border-radius:16px;
  }

  .home-wire-hero-content{
    padding:18px 16px 14px;
  }

  .home-wire-kicker{
    font-size:12px;
  }

  .home-wire-hero h1{
    font-size:18px;
  }

  .home-wire-hero p{
    font-size:12px;
  }

  .home-wire-hotline{
    font-size:11px;
    margin-top:10px;
  }

  .home-wire-choice-card{
    min-height:108px;
  }

  .home-wire-choice-card span{
    min-width:90px;
    min-height:30px;
    font-size:10px;
  }

  .home-wire-project-grid{
    gap:10px;
  }

  .home-wire-project-card{
    max-width:185px;
  }

  .home-wire-project-card span{
    font-size:12px;
    padding:8px 6px 10px;
  }
}

.home-wire-choice{
  margin-bottom:24px;
}

@media (max-width:640px){
  .home-wire-pill{
    padding:11px 20px;
    font-size:18px;
    letter-spacing:.8px;
  }
  .home-wire-box-title{
    font-size:13px;
    margin-bottom:12px;
  }
  .home-wire-choice-grid{
    gap:10px;
  }
  .home-wire-choice-card{
    min-height:165px;
    padding:14px;
    border-radius:16px;
  }
  .home-wire-choice-card span{
    min-width:105px;
    min-height:38px;
    padding:8px 12px;
    font-size:11px;
  }
}


/* Homepage top refined by request */
.home-wire-hero{
  min-height:255px;
  margin-bottom:22px;
  border-radius:24px;
  background:url('../images/noi-that/phong-khach-tong-the.jpg') center/cover no-repeat;
}
.home-wire-hero-overlay{
  background:linear-gradient(90deg, rgba(12,14,18,.86) 0%, rgba(12,14,18,.62) 52%, rgba(12,14,18,.36) 100%);
}
.home-wire-hero-content{
  padding:28px 28px 22px;
  max-width:760px;
}
.home-wire-kicker{
  font-size:10px;
  font-weight:900;
  letter-spacing:1.4px;
  color:#d6b26f;
}
.home-wire-hero h1{
  margin:8px 0 10px;
  font-size:28px;
  line-height:1.06;
  letter-spacing:-.8px;
  max-width:560px;
}
.home-wire-hero p{
  max-width:520px;
  font-size:13px;
  line-height:1.7;
  color:rgba(255,255,255,.92);
}
.home-wire-hotline{
  margin-top:16px;
  text-align:left;
  font-size:12px;
}
.home-wire-hotline a{color:#fff;text-decoration:none;font-weight:800}
.home-wire-choice{margin-top:2px}
.home-wire-intro{
  margin:0 auto 22px;
  width:100%;
  display:flex;
  justify-content:center;
}
.home-wire-intro-single h2{
  margin:0;
  /* Kéo dài thanh “CHỌN LĨNH VỰC BẠN QUAN TÂM” sang hai bên */
  width:calc(100% + 48px);
  max-width:calc(100vw - 40px);
  min-height:122px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:20px 42px;
  border-radius:999px;
  background:linear-gradient(180deg, #f7f3ea 0%, #f1ebdf 100%);
  color:#16233a;
  font-size:clamp(20px, 3vw, 30px);
  font-weight:900;
  line-height:1.15;
  letter-spacing:-.6px;
  border:1px solid rgba(185,148,87,.18);
  box-shadow:0 16px 34px rgba(16, 24, 35, .10), inset 0 1px 0 rgba(255,255,255,.75);
  transition:transform .28s ease, box-shadow .28s ease, background .28s ease;
}
.home-wire-intro-single h2:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 44px rgba(16, 24, 35, .14), inset 0 1px 0 rgba(255,255,255,.85);
  background:linear-gradient(180deg, #faf6ee 0%, #f4eee3 100%);
}
.home-wire-intro-kicker{display:none}
.home-wire-intro p{display:none}
.home-wire-choice-card{
  min-height:320px;
  border-radius:24px;
}
.home-wire-project-card{
  border-radius:18px;
}
.home-wire-project-card img{
  border-radius:18px 18px 0 0;
}
@media (max-width:640px){
  .home-wire-hero{
    min-height:220px;
    border-radius:22px;
  }
  .home-wire-hero-content{
    padding:22px 18px 18px;
  }
  .home-wire-kicker{
    font-size:9px;
  }
  .home-wire-hero h1{
    font-size:18px;
    line-height:1.1;
  }
  .home-wire-hero p{
    font-size:12px;
    max-width:none;
  }
  .home-wire-intro-single h2{
    width:100%;
    max-width:100%;
    min-height:96px;
    padding:16px 18px;
    font-size:18px;
    border-radius:24px;
  }
  .home-wire-choice-card{
    min-height:220px;
    border-radius:18px;
  }
  .home-wire-project-card{
    border-radius:14px;
  }
  .home-wire-project-card img{
    border-radius:14px 14px 0 0;
  }
}

/* ===== HERO KINH MO TRANG CHU ===== */
.home-wire-hero-glass{min-height:290px;border-radius:24px;overflow:hidden;display:flex;align-items:center;padding:28px;background-position:center 48%;}
.home-wire-hero-glass .home-wire-hero-overlay{background:linear-gradient(90deg,rgba(11,14,17,.50),rgba(11,14,17,.22) 52%,rgba(11,14,17,.38));}
.home-wire-hero-glass:after{display:none;}
.home-wire-hero-glass-card{position:relative;z-index:2;width:min(58%,560px);min-height:170px;padding:24px 28px;border-radius:20px;display:flex;flex-direction:column;justify-content:center;color:#fff;background:linear-gradient(135deg,rgba(82,86,90,.62),rgba(103,106,108,.40));border:1px solid rgba(255,255,255,.16);box-shadow:0 16px 34px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .3s ease,box-shadow .3s ease,background .3s ease;}
.home-wire-hero-glass-card:hover{transform:translateY(-5px);box-shadow:0 24px 44px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.18);background:linear-gradient(135deg,rgba(88,91,94,.68),rgba(111,113,114,.46));}
.home-wire-brandline{font-size:clamp(18px,2vw,26px);line-height:1.3;font-weight:800;letter-spacing:.2px;text-transform:uppercase;text-shadow:0 2px 8px rgba(0,0,0,.22);}
.home-wire-brandline span{color:#d39a52;}
.home-wire-slogan{margin-top:12px;color:rgba(255,255,255,.94);font-family:Georgia,"Times New Roman",serif;font-size:clamp(16px,1.65vw,22px);line-height:1.5;font-style:italic;letter-spacing:.1px;text-shadow:0 2px 7px rgba(0,0,0,.25);}
.home-wire-hero-glass-card .home-wire-hotline{margin-top:22px;text-align:right;font-size:13px;font-weight:700;color:#fff;}
.home-wire-hero-glass-card .home-wire-hotline a{color:#fff;font-weight:900;}
@media(max-width:760px){.home-wire-hero-glass{min-height:240px;padding:18px;border-radius:20px}.home-wire-hero-glass-card{width:min(86%,480px);min-height:150px;padding:20px;border-radius:18px}.home-wire-brandline{font-size:17px}.home-wire-slogan{margin-top:9px;font-size:15px}.home-wire-hero-glass-card .home-wire-hotline{margin-top:16px;font-size:12px}}
@media(max-width:480px){.home-wire-hero-glass{min-height:220px;justify-content:center;padding:14px}.home-wire-hero-glass-card{width:94%;min-height:142px;padding:18px 16px}.home-wire-brandline{font-size:15px;line-height:1.35}.home-wire-slogan{font-size:13px}.home-wire-hero-glass-card .home-wire-hotline{font-size:11px}}


/* ===== HERO TRUNG NGHIA - ANH MOI / KHUNG GIUA ===== */

/* Hero lớn hơn, dùng ảnh TV + bình hoa và làm mờ nền mạnh */
.home-wire-hero.home-wire-hero-glass{
  position:relative;
  isolation:isolate;
  min-height:520px;
  border-radius:30px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:42px;
  background:none!important;
  box-shadow:0 20px 44px rgba(0,0,0,.16);
}

.home-wire-hero.home-wire-hero-glass::before{
  content:"";
  position:absolute;
  z-index:-2;
  inset:-26px;
  background:
    linear-gradient(rgba(10,12,15,.08),rgba(10,12,15,.08)),
    url("../images/hero-noi-that-tv-hoa.png") center/cover no-repeat;
  filter:blur(1px);
  transform:scale(1.03);
}

/* Lớp tối nhẹ giúp chữ rõ hơn nhưng vẫn nhìn được ảnh */
.home-wire-hero.home-wire-hero-glass .home-wire-hero-overlay{
  position:absolute;
  z-index:-1;
  inset:0;
  background:
    linear-gradient(90deg,rgba(11,13,16,.10),rgba(11,13,16,.03) 50%,rgba(11,13,16,.09)),
    rgba(17,19,22,.06);
}

/* Khung kính đưa chính giữa và tăng kích thước */
.home-wire-hero-glass-card{
  position:relative;
  z-index:2;
  width:min(78%,860px);
  min-height:250px;
  margin:auto;
  padding:38px 48px;
  border-radius:28px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff;
  background:linear-gradient(
    135deg,
    rgba(53,57,61,.69),
    rgba(89,91,93,.50)
  );
  border:1px solid rgba(255,255,255,.24);
  box-shadow:
    0 22px 52px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter:blur(14px) saturate(110%);
  -webkit-backdrop-filter:blur(14px) saturate(110%);
  transition:
    transform .32s cubic-bezier(.2,.7,.2,1),
    box-shadow .32s ease,
    background .32s ease;
}

.home-wire-hero-glass-card:hover{
  transform:translateY(-7px) scale(1.012);
  box-shadow:
    0 30px 64px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.22);
  background:linear-gradient(
    135deg,
    rgba(58,62,66,.75),
    rgba(93,95,97,.56)
  );
}

/* Fix font tiếng Việt: dùng font hệ thống có hỗ trợ dấu đầy đủ */
.home-wire-brandline{
  margin:0;
  font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(26px,3.2vw,46px);
  line-height:1.18;
  font-weight:800;
  letter-spacing:-.35px;
  text-transform:uppercase;
  text-shadow:0 2px 10px rgba(0,0,0,.30);
}

.home-wire-brandline span{
  color:#d7a254;
}

.home-wire-slogan{
  margin-top:24px;
  font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(18px,2.1vw,30px);
  line-height:1.45;
  font-style:italic;
  font-weight:400;
  letter-spacing:0;
  color:rgba(255,255,255,.96);
  text-shadow:0 2px 9px rgba(0,0,0,.28);
}

.home-wire-hero-glass-card .home-wire-hotline{
  width:100%;
  margin-top:30px;
  text-align:center;
  font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:15px;
  font-weight:700;
  color:#fff;
}

.home-wire-hero-glass-card .home-wire-hotline a{
  color:#fff;
  font-weight:800;
}

@media(max-width:760px){
  .home-wire-hero.home-wire-hero-glass{
    min-height:390px;
    padding:24px;
    border-radius:24px;
  }

  .home-wire-hero.home-wire-hero-glass::before{
    filter:blur(3px);
  }

  .home-wire-hero-glass-card{
    width:min(92%,650px);
    min-height:210px;
    padding:30px 24px;
    border-radius:24px;
  }

  .home-wire-brandline{
    font-size:clamp(22px,6vw,34px);
  }

  .home-wire-slogan{
    margin-top:18px;
    font-size:clamp(16px,4vw,22px);
  }

  .home-wire-hero-glass-card .home-wire-hotline{
    margin-top:22px;
    font-size:13px;
  }
}

@media(max-width:480px){
  .home-wire-hero.home-wire-hero-glass{
    min-height:340px;
    padding:16px;
  }

  .home-wire-hero-glass-card{
    width:96%;
    min-height:195px;
    padding:24px 16px;
    border-radius:20px;
  }

  .home-wire-brandline{
    font-size:20px;
    line-height:1.25;
  }

  .home-wire-slogan{
    font-size:15px;
    line-height:1.45;
  }

  .home-wire-hero-glass-card .home-wire-hotline{
    font-size:12px;
  }
}

@media(prefers-reduced-motion:reduce){
  .home-wire-hero-glass-card{
    transition:none!important;
  }
}

/* ===== GIẢM CHIỀU CAO ẢNH CÔNG TRÌNH ===== */
.home-wire-project-card img{
  width:100%;
  height:120px;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center;
}

@media(max-width:640px){
  .home-wire-project-card img{
    height:105px;
  }
}

/* ===== PHÓNG TO ẢNH VÀ CHỮ PHẦN CÔNG TRÌNH THEO YÊU CẦU ===== */
.home-wire-project-card{
  max-width:230px;
}

.home-wire-project-card img{
  width:100%;
  height:150px;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center;
}

.home-wire-project-card span{
  padding:12px 10px 14px;
  font-size:16px;
  line-height:1.35;
  font-weight:800;
}

@media(max-width:768px){
  .home-wire-project-card{
    max-width:210px;
  }
  .home-wire-project-card img{
    height:138px;
  }
  .home-wire-project-card span{
    font-size:14px;
    padding:10px 8px 12px;
  }
}

@media(max-width:640px){
  .home-wire-project-card{
    max-width:100%;
  }
  .home-wire-project-card img{
    height:130px;
  }
  .home-wire-project-card span{
    font-size:13px;
    padding:9px 8px 11px;
  }
}

/* ===== TANG CHIEU RONG + CHIEU CAO ANH CONG TRINH TRANG CHU ===== */
.home-wire-project-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

.home-wire-project-card{
  width:100%;
  max-width:none;
}

.home-wire-project-card img{
  width:100%;
  height:230px;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center;
}

@media(max-width:768px){
  .home-wire-project-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
  }
  .home-wire-project-card{
    max-width:none;
  }
  .home-wire-project-card img{
    height:210px;
  }
}

@media(max-width:520px){
  .home-wire-project-grid{
    grid-template-columns:1fr;
    gap:16px;
  }
  .home-wire-project-card img{
    height:220px;
  }
  .home-wire-project-card span{
    font-size:15px;
    padding:11px 10px 13px;
  }
}


/* ===== HE NHOM - IMAGES FROM USER ARCHIVE ===== */
.aluminum-systems-section{padding-top:72px}
.aluminum-systems-grid{grid-template-columns:repeat(3,1fr);align-items:stretch}
.aluminum-system-card{display:flex;flex-direction:column;min-height:100%;box-shadow:0 9px 24px rgba(0,0,0,.18);transition:transform .25s ease,box-shadow .25s ease}
.aluminum-system-card:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(0,0,0,.28)}
.aluminum-system-image{height:auto;aspect-ratio:1/1;background-size:contain;background-position:center;background-repeat:no-repeat;background-color:#f7f7f7;border-bottom:1px solid #ececec}
.aluminum-system-card .product-body{display:flex;flex:1;flex-direction:column}
.aluminum-system-card .product-body h3{font-size:19px;line-height:1.3}
.aluminum-system-card .product-body p{flex:1}
.aluminum-system-card .btn{align-self:flex-start}
@media(max-width:950px){.aluminum-systems-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.aluminum-systems-grid{grid-template-columns:1fr}.aluminum-system-image{aspect-ratio:1/1}}


/* ===== TĂNG ĐỘ RÕ CHO CÁC TRANG PHỤ ===== */
.page-hero .crumb{color:rgba(255,255,255,.9);text-shadow:0 2px 10px rgba(0,0,0,.35)}
.page-hero h1{color:#fff;text-shadow:0 3px 16px rgba(0,0,0,.45)}
.quote-page-hero .quote-hero-text{color:rgba(255,255,255,.94);text-shadow:0 2px 10px rgba(0,0,0,.35)}
.about-hero .eyebrow{color:#d9b977;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.about-hero h1{text-shadow:0 3px 16px rgba(0,0,0,.45)}
.about-hero-lead{color:rgba(255,255,255,.92);text-shadow:0 2px 10px rgba(0,0,0,.35)}
.projects-intro-clarity .eyebrow{color:#d9b977;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.projects-intro-clarity h2{color:#fff;text-shadow:0 3px 16px rgba(0,0,0,.45)}
.projects-intro-clarity .real-photo-note{color:rgba(255,255,255,.92);font-size:16px;line-height:1.8;max-width:980px;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.product-interior-clarity .section-head h2{color:#11161c}
.product-interior-clarity .section-head p{color:#555d66;font-size:16px;line-height:1.8;max-width:860px}
.product-interior-clarity .section-head .eyebrow{color:#9a7434}
.quote-clarity .quote-toolbar h2{color:#11161c}
.quote-clarity .quote-toolbar p{color:#555d66;font-size:16px;line-height:1.8;max-width:860px}
.quote-clarity .quote-toolbar .eyebrow{color:#9a7434}
@media(max-width:650px){
  .quote-page-hero .quote-hero-text,.projects-intro-clarity .real-photo-note,.about-hero-lead,.product-interior-clarity .section-head p,.quote-clarity .quote-toolbar p{font-size:14px;line-height:1.7}
}


/* ===== KHUNG TRẮNG BO TRÒN BAO QUÁT NỘI DUNG HÌNH ẢNH ===== */
.content-white-frame{background:#fff;border:1px solid #e6e0d5;border-radius:26px;padding:22px;box-shadow:0 18px 42px rgba(0,0,0,.16)}
.content-white-frame .gallery,.content-white-frame .quote-grid{margin:0}
.content-white-frame .project{border-radius:16px;overflow:hidden}
.content-white-frame .quote-card{border-radius:16px;overflow:hidden}
@media(max-width:650px){.content-white-frame{padding:14px;border-radius:18px}}


/* ===== FIX PHẦN LIÊN HỆ ===== */
.contact-page-section{padding-top:74px}
.contact-page-shell{background:#fff;border:1px solid #e6dfd2;border-radius:28px;padding:34px;box-shadow:0 20px 48px rgba(0,0,0,.16)}
.contact-page-shell .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.contact-page-shell .eyebrow{color:#9a7434;letter-spacing:2px}
.contact-page-shell h2{color:#17191c;margin:10px 0 22px;font-size:clamp(33px,4.1vw,62px);line-height:1.05;max-width:620px}
.contact-page-shell .contact-box{background:#fff;border:1px solid #e5dece;border-radius:22px;padding:28px;box-shadow:none}
.contact-page-shell .contact-line{color:#30343a;border-bottom:1px solid #e8e1d4;font-size:18px;line-height:1.65}
.contact-page-shell .contact-line b{color:#17191c}
.contact-page-shell .contact-line a{color:#9a7434;font-weight:700}
.contact-page-shell h3{margin:0 0 18px;color:#17191c;font-size:30px;line-height:1.15}
.contact-page-shell .form input,.contact-page-shell .form textarea{background:#fff;border:1px solid #d9d4ca;border-radius:14px;padding:16px 16px;color:#17191c}
.contact-page-shell .form input::placeholder,.contact-page-shell .form textarea::placeholder{color:#6c7279}
.contact-page-shell .form textarea{min-height:160px}
.contact-page-shell .btn{width:100%;min-height:54px;border-radius:14px;font-size:15px}
@media(max-width:950px){.contact-page-shell .contact-grid{grid-template-columns:1fr}.contact-page-shell h2{max-width:none}}
@media(max-width:650px){.contact-page-shell{padding:18px;border-radius:20px}.contact-page-shell .contact-box{padding:18px;border-radius:16px}.contact-page-shell h2{font-size:34px}.contact-page-shell .contact-line{font-size:15px}}
