/* ===== Trang chủ PUB-01 theo prototype 04 ===== */
.home-hero{min-height:380px}
.hero-inner{padding:34px 50px 70px}
.hero-copy h1{font-size:62px}
.kpi-float{position:relative;z-index:3;display:grid;grid-template-columns:repeat(6,1fr);max-width:1472px;margin:-44px auto 0;background:#fff;border:1px solid #e2ebed;border-radius:14px;box-shadow:0 8px 28px #163c5518;padding:16px 8px}
.kf{display:flex;gap:12px;align-items:center;padding:4px 18px;border-right:1px solid #e3ece7}
.kf:last-child{border:0}
.kf-ic{width:42px;height:42px;display:flex;align-items:center;justify-content:center;color:#0b8a5c}
.kf-ic .icon{width:38px;height:38px}
.kf:nth-child(2) .kf-ic{color:#2478bd}
.kf:nth-child(3) .kf-ic{color:#f29715}
.kf:nth-child(4) .kf-ic{color:#8352d5}
.kf:nth-child(5) .kf-ic{color:#f2a718}
.kf:nth-child(5) .kf-ic .icon{fill:#f2a718}
.kf:nth-child(6) .kf-ic{color:#12975f}
.kf strong{display:block;font-size:24px;line-height:1.1;color:#14324a}
.kf div span{font-size:11px;color:#587468;line-height:1.3;display:block}
.home-main{padding-top:24px}
.sh-ic{display:inline-flex;width:28px;height:28px;border-radius:7px;align-items:center;justify-content:center;margin-right:8px;vertical-align:middle}
.sh-ic .icon{width:18px;height:18px;margin:0!important}
.sh-ic.gold{background:#fff1d0;color:#f2a718}
.sh-ic.gold .icon{fill:#f2a718}
.sh-ic.blue{background:#e1ecfb;color:#1b62b8}
.sh-ic.orange{background:#ffe9cf;color:#e08413}
.home-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:22px}
.feat-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.feat-card{display:flex;flex-direction:column;gap:6px;min-width:0}
.feat-photo{display:block;position:relative;aspect-ratio:1.05;border-radius:10px;overflow:hidden;background:#f4f7f5}
.feat-photo img{width:100%;height:100%;object-fit:cover}
.feat-card h3{font-size:13px;line-height:1.35;margin:4px 0 0;min-height:36px;font-weight:700}
.feat-card p{margin:0;font-size:11px;color:#587468;display:flex;gap:4px;align-items:center}
.feat-card p .icon{width:13px;color:#0b8a5c}
.feat-card .button{font-size:11px;padding:8px 6px;margin-top:auto}
.home-map-wrap{position:relative}
.home-map{height:340px;border-radius:10px;overflow:hidden;background:#e6f2f4}
.hm-layers{position:absolute;right:10px;top:10px;background:#fff;border-radius:8px;padding:8px 12px;font-size:11px;box-shadow:0 2px 8px #0003;display:flex;flex-direction:column;gap:5px}
.hm-layers label{display:flex;gap:6px;align-items:center;margin:0;font-weight:500;font-size:11px}
.hm-layers input{width:14px;height:14px;margin:0;accent-color:#0b8a5c}
.hm-base{position:absolute;right:10px;bottom:10px;display:flex;gap:4px}
.hm-base button{border:2px solid #fff;background:#fff;border-radius:6px;padding:6px 8px;font-size:10px;box-shadow:0 2px 6px #0003}
.hm-base button.on{border-color:#0b8a5c;color:#0b6a45;font-weight:700}
.mini-map-panel>p{margin:8px 0 0}
.home-bottom4{display:grid;grid-template-columns:1.35fr 1fr 1.25fr;gap:22px;margin:22px 0}
.group-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;text-align:center}
.group-row a{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px}
.gimg{width:70px;height:70px;border-radius:50%;overflow:hidden;background:#eef6f1;display:flex;align-items:center;justify-content:center;border:3px solid #fff;box-shadow:0 2px 8px #163c5520}
.gimg img{width:100%;height:100%;object-fit:cover}
.group-row small{color:#678;font-size:10px}
.trace-body{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:center}
.phone{background:#eef6f1;border-radius:12px;height:150px;display:flex;align-items:center;justify-content:center;color:#0b8a5c}
.phone .icon{width:70px;height:70px}
.trace-body p{font-size:12px;color:#587468;margin:0 0 10px}
.trace-body .button{font-size:12px;padding:9px;margin-bottom:8px}
.news3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.news-card{display:flex;flex-direction:column;gap:5px;min-width:0}
.nimg{display:block;aspect-ratio:1.4;border-radius:8px;overflow:hidden;background:#e8f1ec}
.nimg img{width:100%;height:100%;object-fit:cover}
.news-card strong{font-size:11px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.news-card small{font-size:10px;color:#789}
.feature-band{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;background:linear-gradient(90deg,#fff8ea,#eaf6ef);border-radius:14px;padding:18px 24px;margin-bottom:6px}
.feature-band>div{display:flex;gap:12px;align-items:center}
.feature-band span{width:44px;height:44px;border-radius:50%;background:#fff;color:#e08413;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #163c5518;flex-shrink:0}
.feature-band>div:nth-child(2) span{color:#12975f}
.feature-band>div:nth-child(3) span{color:#2478bd}
.feature-band>div:nth-child(4) span{color:#1b62b8}
.feature-band strong{display:block;font-size:12px}
.feature-band small{font-size:11px;color:#587468}
@media(max-width:1300px){.feat-row{grid-template-columns:repeat(3,1fr)}
.feat-row .feat-card:nth-child(n+4){display:none}
.home-bottom4{grid-template-columns:1fr 1fr}
.news-panel{grid-column:1/-1}
}
@media(max-width:1000px){.kpi-float{grid-template-columns:repeat(3,1fr);margin:-30px 14px 0;row-gap:10px}
.kf{border:0}
.home-grid,.home-bottom4{grid-template-columns:1fr}
.feature-band{grid-template-columns:1fr 1fr}
.hero-inner{padding:30px 22px 60px}
}
@media(max-width:650px){.kpi-float{grid-template-columns:repeat(2,1fr)}
.kf{padding:4px 8px}
.kf strong{font-size:18px}
.feat-row{grid-template-columns:repeat(2,1fr)}
.feat-row .feat-card:nth-child(3){display:none}
.group-row{grid-template-columns:repeat(3,1fr)}
.news3{grid-template-columns:1fr}
.feature-band{grid-template-columns:1fr}
.hero-copy h1{font-size:42px}
}
.news-card small{overflow-wrap:anywhere}
.footer-brand img{height:84px;width:auto;display:block;margin-bottom:8px}
/* Rà soát theo prototype 04 */
.home-map{height:300px}
.feat-photo{aspect-ratio:.95}
.gimg{width:92px;height:92px}
.group-row a{font-size:12.5px;font-weight:600;gap:6px}
.group-row small{font-size:12px}
.news-card strong{font-size:12.5px}
.news-card small{font-size:11.5px}
.feature-band{position:relative;overflow:hidden;min-height:120px;align-items:center;padding:26px 34px;border-radius:14px;background:linear-gradient(90deg,#fffffff0,#ffffffc8 55%,#fff8e6b0),url('/assets/banners-clean/home-footer-1536.webp') center 75%/cover}
.feature-band strong{font-size:14px}
.feature-band small{font-size:12.5px;color:#3d5a4d}
.feature-band span{width:52px;height:52px}
.feature-band span .icon{width:26px;height:26px}

