/*
Theme Name: TOP ONE HIV
Theme URI: https://top1hiv.com/
Description: Giao diện WordPress TOP ONE HIV - phòng ngừa, xét nghiệm và điều trị HIV.
Version: 1.0.7
Author: TOP ONE HIV
Text Domain: top-one-hiv
*/

@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&display=swap');
:root{--g:#079447;--gd:#056c37;--r:#e9272f;--b:#0068ff;--ink:#12352a;--muted:#64766f;--line:#dcebe4;--soft:#f1faf5;--gold:#f2b100}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Be Vietnam Pro",Arial,sans-serif;color:var(--ink);line-height:1.6;background:#fff}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 32px));margin:auto}
.topbar{background:#063f27;color:#fff;font-size:.88rem}.topbar-inner{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:18px}.top-hotline{font-weight:800;color:#fff}.top-hotline strong{color:#ffe96b}.top-hotline .phone-shake{font-size:1.15em}
header{position:sticky;top:0;z-index:20;background:#fffffff5;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{min-height:78px;display:flex;align-items:center;gap:15px}.brand{flex:0 0 auto}.brand img{display:block;width:150px;height:68px;object-fit:contain}.nav nav{margin-left:auto;display:flex;gap:12px;font-weight:700;font-size:.81rem;white-space:nowrap;overflow-x:auto;scrollbar-width:none}.nav nav::-webkit-scrollbar{display:none}.actions{display:flex;gap:9px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:10px 17px;font-weight:800;border:1px solid transparent;white-space:nowrap;cursor:pointer}.red{background:var(--r);color:white}.zalo{background:#0068ff;color:white}.zalo img{width:23px;height:23px}.white{background:white;color:var(--gd)}.big{padding:13px 20px}.phone-shake{display:inline-block;font-size:1.25em;transform-origin:60% 60%;animation:shake 1.1s infinite}@keyframes shake{0%,65%,100%{transform:rotate(0)}70%{transform:rotate(-14deg)}75%{transform:rotate(14deg)}80%{transform:rotate(-12deg)}85%{transform:rotate(10deg)}90%{transform:rotate(-6deg)}}
.hero-banners{background:#f6faf8;padding:18px 0 12px}.banner-slider{position:relative;width:min(1500px,100%);margin:auto;overflow:hidden;background:#fff}.slide{display:none}.slide.active{display:block}.slide img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}.slider-btn{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;background:#063f27cc;color:#fff;font-size:35px;line-height:1;cursor:pointer;z-index:2}.slider-btn.prev{left:18px}.slider-btn.next{right:18px}.dots{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);display:flex;gap:7px}.dot{width:11px;height:11px;border-radius:50%;border:2px solid #fff;background:#ffffff80;padding:0;cursor:pointer;box-shadow:0 2px 7px #0004}.dot.active{background:var(--r)}
.quick-contact{background:#fff;padding:13px 0;border-bottom:1px solid var(--line);box-shadow:0 8px 24px #0f3c2810}.quick-contact-inner{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}.quick-contact-inner>div{display:flex;align-items:center;gap:10px;color:var(--gd)}.quick-contact-inner small,.quick-contact-inner strong{display:block;line-height:1.1}.quick-contact-inner small{font-weight:800;font-size:.7rem}.quick-contact-inner strong{font-size:1.35rem}.quick-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#e8f7ef;color:var(--gd);font-size:1.7rem}
.section{padding:78px 0}.soft{background:var(--soft)}.head{text-align:center;max-width:800px;margin:0 auto 38px}.eyebrow{font-size:.78rem;letter-spacing:.12em;font-weight:800;color:var(--g)}h2{font-size:clamp(2rem,4vw,3rem);line-height:1.15;margin:10px 0}.one-line-title{font-size:clamp(1.7rem,3vw,2.45rem);white-space:nowrap}.head p,p{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.grid article{padding:27px;background:white;border:1px solid var(--line);border-radius:22px;box-shadow:0 8px 30px #0f3c280d} .service-title-row{display:flex;align-items:center;gap:14px}.service-title-row .ico{flex:0 0 56px}.service-title-row h3{margin:0!important}.grid h3{font-size:1.2rem;margin:16px 0 8px}.grid article a{color:var(--g);font-weight:800}.ico{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;font-style:normal;font-weight:800}.redbg{background:#ffe8e9;color:var(--r)}.bluebg{background:#e7f5ff;color:#0068ff}.orangebg{background:#fff0e2;color:#e36b18}.greenbg{background:#e7f7ef;color:var(--g)}
.product-section{background:#fbfefd}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 14px 40px #0f3c2810}.product-visual{height:230px;display:flex;align-items:center;justify-content:center;gap:18px;padding:25px;position:relative;overflow:hidden}.product-visual:before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:#ffffff55;top:-110px;right:-70px}.product-visual.arv{background:linear-gradient(135deg,#e9f8ef,#d7f2e5)}.product-visual.pep-product{background:linear-gradient(135deg,#fff3df,#ffe5c5)}.product-visual.prep-product{background:linear-gradient(135deg,#eaf6ff,#d7ecff)}.rx{position:absolute;left:16px;top:14px;font-weight:900;font-size:.78rem;background:#fff;border-radius:8px;padding:5px 8px;box-shadow:0 4px 10px #0001}.pack{position:relative;z-index:1;background:#fff;border-radius:12px;padding:20px 18px;width:min(285px,80%);min-height:150px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;box-shadow:0 14px 28px #0f3c2818;border:1px solid #d9e8e0}.pack strong{font-size:1.3rem;color:var(--gd);line-height:1.1}.pack span{font-weight:800;margin-top:7px;color:#1d6e50}.pack small{margin-top:10px;color:#6d7d76}.product-body{padding:22px}.product-body h3{font-size:1.45rem;margin:8px 0}.product-body p{min-height:82px}.tag{display:inline-block;background:#e7f7ef;color:var(--gd);border-radius:999px;padding:5px 10px;font-size:.72rem;font-weight:900}.tag.orange{background:#fff0e2;color:#d96a10}.tag.blue{background:#e7f5ff;color:#0068ff}.product-alert{margin:12px 0;padding:10px 12px;border-radius:10px;background:#fff5f5;border:1px solid #ffd4d6;color:#a1262b;font-size:.8rem;line-height:1.45}.medical-note{margin-top:24px;padding:14px 18px;border-radius:15px;background:#fff9e8;border:1px solid #f3df9b;color:#715600;font-size:.9rem}
.why{background:linear-gradient(180deg,#f8fcfa,#fff)}.why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.why-card{padding:23px 18px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 8px 28px #0f3c280b}.why-card>b{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#e7f7ef;color:var(--g);font-weight:900}.why-card h3{font-size:1.05rem;line-height:1.25;margin:14px 0 8px}.why-card p{font-size:.92rem}
.risk{background:#eef9f4}.risk-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;align-items:center}.risk-box{background:#fff;border:1px solid var(--line);border-radius:25px;padding:24px;box-shadow:0 18px 50px #0f3c2812}.risk-box>div{display:grid;grid-template-columns:42px 1fr;column-gap:10px;margin-bottom:16px}.risk-box>div strong,.risk-box>div span{grid-column:2}.risk-box>div strong{font-size:1rem}.risk-box>div span{font-size:.86rem;color:var(--muted)}
.testimonials{background:#fff}.review-note{font-size:.84rem!important}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.reviews article{padding:27px;background:#f7fbf9;border:1px solid var(--line);border-radius:22px}.stars{color:var(--gold);letter-spacing:2px;font-size:1.05rem}.reviews p{color:#3f5a50;font-style:italic}.reviews strong,.reviews span{display:block}.reviews span{font-size:.82rem;color:#789087;margin-top:3px}
.about{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.points div{background:white;border:1px solid var(--line);border-radius:15px;padding:17px;font-weight:700}.points b{display:block;color:var(--g);font-size:1.45rem}.location{background:white;border:1px solid var(--line);border-radius:25px;padding:32px;box-shadow:0 18px 50px #0f3c2818}.location>span{color:var(--r);font-size:1.5rem}
.contact{padding:68px 0;background:linear-gradient(135deg,var(--gd),var(--g));color:white}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.contact p{color:#d9f6e7}.light{color:#bff3d5!important}
.floating-contact{position:fixed;right:18px;bottom:18px;z-index:30;display:flex;flex-direction:column;gap:8px}.floating-phone{display:flex;align-items:center;gap:10px;background:#e9272f;color:#fff;border-radius:999px;padding:9px 18px 9px 11px;box-shadow:0 12px 30px #0003;border:3px solid #fff}.floating-phone .phone-shake{width:44px;height:44px;display:grid;place-items:center;background:#fff;color:#e9272f;border-radius:50%;font-size:28px}.floating-phone small,.floating-phone strong,.floating-zalo small,.floating-zalo strong{display:block;line-height:1.2}.floating-phone small,.floating-zalo small{font-size:.68rem}.floating-phone strong,.floating-zalo strong{font-size:1.05rem}.floating-zalo{display:flex;align-items:center;gap:10px;background:#0068ff;color:#fff;border-radius:999px;padding:9px 18px 9px 11px;box-shadow:0 12px 30px #0003;border:3px solid #fff}.floating-zalo img{width:44px;height:44px}
footer{padding:30px 0;background:#0c2119;color:#cfe7dc}.foot{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center}.foot img{width:140px;height:70px;object-fit:contain}.foot p{margin:5px 0;color:#9fc1b2;font-size:.9rem}
@media(max-width:1180px){.nav{flex-wrap:wrap;padding:8px 0}.nav nav{order:3;width:100%;margin-left:0;padding:2px 0 4px}.nav .actions{margin-left:auto}.grid{grid-template-columns:repeat(2,1fr)}.products{grid-template-columns:repeat(2,1fr)}.why-grid{grid-template-columns:repeat(3,1fr)}.risk-inner,.about{grid-template-columns:1fr}.reviews{grid-template-columns:repeat(3,1fr)}.topbar-inner{flex-wrap:wrap;padding:7px 0}}
@media(max-width:700px){.topbar{font-size:.75rem}.topbar-inner{display:grid;grid-template-columns:1fr;gap:3px}.nav{min-height:64px}.brand img{width:120px;height:55px}.nav .actions .contact-top{display:none}.nav nav{font-size:.78rem;gap:12px}.hero-banners{padding:8px 0}.slider-btn{width:34px;height:34px;font-size:27px}.slider-btn.prev{left:8px}.slider-btn.next{right:8px}.dots{bottom:7px}.dot{width:8px;height:8px}.quick-contact-inner{gap:9px}.quick-contact-inner>div{width:100%;justify-content:center}.quick-contact-inner .btn{padding:9px 13px;font-size:.83rem}.section{padding:58px 0}.grid,.products,.reviews{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr 1fr}.product-visual{height:210px}.product-body p{min-height:auto}.points{grid-template-columns:1fr}.contact-inner{flex-direction:column;align-items:flex-start}.foot{grid-template-columns:1fr}.floating-contact{right:8px;bottom:8px}.floating-phone,.floating-zalo{padding-right:12px}.floating-phone small,.floating-zalo small{font-size:.56rem}.floating-phone strong,.floating-zalo strong{font-size:.9rem}.floating-zalo img,.floating-phone .phone-shake{width:39px;height:39px}.why-card{padding:18px 15px}.one-line-title{white-space:normal;font-size:clamp(1.55rem,7vw,2rem)}}

/* Contact icons: biểu tượng là nút liên hệ trực tiếp */
.top-hotline{display:inline-flex;align-items:center;gap:7px}
.phone-icon{width:27px;height:27px;object-fit:contain;display:inline-block}
.mini-phone{width:23px;height:23px;object-fit:contain;display:inline-block}
.zalo-icon-only{width:46px;height:42px;padding:7px;border-radius:12px}
.zalo-icon-only img{width:28px;height:28px}
.quick-call>a{display:flex;align-items:center;gap:10px;color:var(--gd)}
.quick-icon-img{width:52px;height:52px;object-fit:contain;display:block}
.quick-contact-inner{gap:14px}
.contact-pill{display:inline-flex;align-items:center;gap:9px;border-radius:999px;padding:8px 18px 8px 10px;color:#fff;box-shadow:0 10px 24px #0002;border:2px solid #fff;line-height:1.08}
.contact-pill b{font-size:1.05rem}
.phone-pill{background:#e9272f}
.zalo-pill{background:#0068ff}
.pill-icon{width:43px;height:43px;object-fit:contain;flex:none}
.contact-pill span{font-size:.72rem;font-weight:900}
.floating-contact{gap:9px}
.floating-phone,.floating-zalo{min-width:218px}
.floating-icon{width:46px;height:46px;object-fit:contain;flex:none}
.floating-phone .phone-shake{display:block;width:46px;height:46px;background:transparent;color:inherit;border-radius:0;font-size:inherit}
@media(max-width:700px){
  .quick-call{width:100%;display:flex;justify-content:center}
  .quick-contact-inner{gap:7px}
  .contact-pill{padding:7px 12px 7px 8px;font-size:.72rem}
  .pill-icon{width:39px;height:39px}
  .contact-pill b{font-size:.9rem}
  .floating-phone,.floating-zalo{min-width:0;padding:7px 10px 7px 8px}
  .floating-icon,.floating-phone .phone-shake{width:39px;height:39px}
}

/* Contact icon emphasis */
.quick-contact .pill-icon{width:48px;height:48px;flex:none}
.contact-pill{min-height:64px}
.floating-contact .floating-icon{width:54px;height:54px}
.floating-phone,.floating-zalo{min-height:70px}
.floating-phone .phone-shake{width:54px;height:54px}
@media(max-width:700px){.quick-contact .pill-icon{width:46px;height:46px}.floating-contact .floating-icon,.floating-phone .phone-shake{width:48px;height:48px}.floating-phone,.floating-zalo{min-height:62px}}

/* === TOP ONE HIV V7: sản phẩm + liên hệ cố định === */
.product-photo{
  height:250px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#f7fbf9,#edf8f3);
  padding:16px;overflow:hidden;
}
.product-photo img{width:100%;height:100%;object-fit:contain;display:block;border-radius:12px}
.product-card .product-body{padding:22px}
.product-card .product-body p{min-height:0}
.product-card .product-body .btn img{width:23px;height:23px}

.quick-contact-inner{gap:18px;padding:4px 0}
.contact-pill{min-height:64px;padding:8px 20px 8px 12px}
.contact-pill .pill-icon{width:48px;height:48px;object-fit:contain;flex:0 0 48px}
.zalo-pulse{animation:zaloPulse 1.25s infinite}
@keyframes zaloPulse{
  0%,100%{transform:scale(1)}
  8%{transform:scale(1.12)}
  16%{transform:scale(1)}
  24%{transform:scale(1.08)}
  32%{transform:scale(1)}
}
.floating-contact{
  position:fixed;right:18px;bottom:18px;z-index:9999;
  display:flex;flex-direction:column;gap:12px;
}
.floating-phone,.floating-zalo{
  min-width:218px;min-height:70px;border-radius:38px;
  padding:7px 18px 7px 9px;border:3px solid #fff;
  box-shadow:0 10px 28px rgba(0,0,0,.25);
  display:flex;align-items:center;gap:11px;
}
.floating-phone .phone-shake,.floating-zalo img{
  width:54px;height:54px;flex:0 0 54px;object-fit:contain;
}
.floating-phone small,.floating-zalo small{font-size:.7rem;font-weight:800;letter-spacing:.02em}
.floating-phone strong,.floating-zalo strong{font-size:1.12rem}
.floating-zalo img{animation:zaloPulse 1.25s infinite}
.floating-phone .phone-shake{animation:shake .9s infinite}
@media(max-width:700px){
  .product-photo{height:220px}
  .quick-contact-inner{gap:9px}
  .contact-pill{min-height:58px;padding:7px 13px 7px 9px}
  .contact-pill .pill-icon{width:43px;height:43px;flex-basis:43px}
  .floating-contact{right:8px;bottom:10px;gap:9px}
  .floating-phone,.floating-zalo{min-width:178px;min-height:60px;padding:5px 12px 5px 7px}
  .floating-phone .phone-shake,.floating-zalo img{width:46px;height:46px;flex-basis:46px}
  .floating-phone strong,.floating-zalo strong{font-size:.95rem}
  .floating-phone small,.floating-zalo small{font-size:.58rem}
}

/* === TOP ONE HIV V10: nút nổi tròn sát icon, hạn chế tối đa nền trắng === */
.floating-contact{
  position:fixed !important;
  right:24px !important;
  bottom:24px !important;
  z-index:99999 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:10px !important;
  pointer-events:none;
}
.floating-action{
  pointer-events:auto;
  width:66px;
  height:66px;
  aspect-ratio:1 / 1;
  box-sizing:border-box;
  border-radius:50% !important;
  overflow:visible;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  flex:0 0 66px;
  text-decoration:none;
  background:#fff !important;
  border:2px solid #fff !important;
  padding:0 !important;
  box-shadow:0 6px 16px rgba(0,0,0,.20);
  transition:transform .2s ease, box-shadow .2s ease;
}
.floating-action:hover{
  transform:scale(1.06);
  box-shadow:0 8px 20px rgba(0,0,0,.25);
}
.floating-action img{
  width:60px !important;
  height:60px !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain;
  display:block;
  flex:0 0 60px;
  border-radius:50%;
}
/* Zalo giữ đúng ô vuông bo góc của biểu tượng; vòng trắng chỉ còn 2px sát mép. */
.floating-zalo img{
  border-radius:15px;
}
.floating-zalo{
  background:#fff !important;
  animation:floatZaloPulse 1.8s infinite;
}
.floating-phone{
  background:#fff !important;
}
.floating-phone .phone-shake{
  animation:floatPhoneShake 1s infinite !important;
  transform-origin:50% 55%;
}
.floating-label{
  position:absolute;
  right:76px;
  top:50%;
  transform:translateY(-50%);
  background:#fff;
  color:#174a38;
  border-radius:16px;
  padding:8px 13px;
  min-width:150px;
  text-align:center;
  box-shadow:0 7px 22px rgba(0,0,0,.18);
  border:1px solid #dcebe4;
  opacity:0;
  visibility:hidden;
  transition:opacity .2s ease, visibility .2s ease;
}
.floating-label small,.floating-label strong{
  display:block;
  line-height:1.15;
}
.floating-label small{
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.03em;
}
.floating-label strong{
  font-size:1rem;
}
.floating-action:hover .floating-label,
.floating-action:focus-visible .floating-label{
  opacity:1;
  visibility:visible;
}
@keyframes floatPhoneShake{
  0%,58%,100%{transform:rotate(0)}
  62%{transform:rotate(-14deg)}
  66%{transform:rotate(14deg)}
  70%{transform:rotate(-12deg)}
  74%{transform:rotate(10deg)}
  78%{transform:rotate(-6deg)}
  82%{transform:rotate(4deg)}
  86%{transform:rotate(0)}
}
@keyframes floatZaloPulse{
  0%,100%{transform:scale(1)}
  8%{transform:scale(1.04)}
  16%{transform:scale(1)}
  25%{box-shadow:0 6px 16px rgba(0,0,0,.20),0 0 0 4px rgba(0,104,255,.10)}
  40%{box-shadow:0 6px 16px rgba(0,0,0,.20)}
}
@media(max-width:700px){
  .floating-contact{
    right:9px !important;
    bottom:9px !important;
    gap:8px !important;
  }
  .floating-action{
    width:56px;
    height:56px;
    flex-basis:56px;
    border-width:2px !important;
  }
  .floating-action img{
    width:52px !important;
    height:52px !important;
    flex-basis:52px;
  }
  .floating-zalo img{border-radius:13px}
  .floating-label{
    right:64px;
    min-width:138px;
    padding:7px 10px;
  }
  .floating-label small{font-size:.55rem}
  .floating-label strong{font-size:.9rem}
}

/* === V11: Hệ thống chuyên mục + bài viết, sẵn sàng mở rộng thành CMS === */
.article-hub{padding:72px 0 84px;background:#f7fbf9}
.article-hub .section-heading{text-align:center;max-width:780px;margin:0 auto 30px}
.article-hub .section-heading h2{margin:8px 0 10px}
.article-hub .section-heading p{margin:0;color:#64736d}
.eyebrow{display:inline-block;font-size:.72rem;font-weight:900;letter-spacing:.12em;color:#168a58}
.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.category-card{display:flex;flex-direction:column;gap:8px;min-height:138px;padding:20px;border-radius:18px;background:#fff;border:1px solid #e1eee8;box-shadow:0 8px 24px rgba(20,70,50,.07);text-decoration:none;color:#153c2c;transition:.2s}
.category-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(20,70,50,.12);border-color:#b9dfcf}
.category-card span{font-size:.7rem;font-weight:900;color:#0c8a55}
.category-card strong{font-size:1rem;line-height:1.35}
.category-card small{margin-top:auto;color:#6c7e76;font-weight:700}
.article-panel{display:none;margin-top:22px;background:#fff;border:1px solid #dcebe4;border-radius:22px;padding:26px;box-shadow:0 12px 35px rgba(20,70,50,.08)}
.article-panel.is-open{display:block}
.article-panel-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid #e6f0eb;padding-bottom:18px;margin-bottom:8px}
.article-panel-head h3{font-size:1.6rem;margin:5px 0}
.article-panel-head p{margin:0;color:#687a72}
.article-close,.article-modal-close{border:0;background:#edf6f1;color:#14533a;border-radius:50%;width:36px;height:36px;font-size:24px;line-height:1;cursor:pointer}
.article-item{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid #edf3f0}
.article-item:last-child{border-bottom:0}
.article-number{font-size:1rem;font-weight:900;color:#15925b}
.article-copy h4{margin:0 0 5px;font-size:1.05rem}
.article-copy p{margin:0;color:#687a72;line-height:1.55}
.article-read{border:1px solid #15925b;background:#fff;color:#087a4a;border-radius:10px;padding:9px 13px;font-weight:800;cursor:pointer}
.article-read:hover{background:#15925b;color:#fff}
.article-modal{position:fixed;inset:0;background:rgba(10,35,25,.52);z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px}
.article-modal-box{position:relative;max-width:700px;width:100%;background:#fff;border-radius:22px;padding:34px;box-shadow:0 25px 70px rgba(0,0,0,.25)}
.article-modal-box h3{font-size:1.8rem;margin:8px 0 14px}
.article-modal-box p{color:#53665e;line-height:1.75}
.article-modal-close{position:absolute;right:18px;top:18px}
.article-editor-note{background:#f3faf6;border-left:4px solid #19a463;padding:12px 14px;border-radius:8px;font-size:.9rem}
.admin-entry{display:inline-block;margin-top:12px;color:#6b7c74;font-size:.85rem}
@media(max-width:900px){.category-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){
  .article-hub{padding:52px 0 60px}
  .category-grid{grid-template-columns:1fr}
  .article-panel{padding:18px}
  .article-item{grid-template-columns:36px 1fr}
  .article-read{grid-column:2;justify-self:start}
  .article-modal-box{padding:26px 20px}
}

/* === WordPress V6: đồng bộ giao diện TOP ONE HIV + menu ngang + mobile === */
.site-header{position:sticky!important;top:0!important;z-index:1000!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)!important}
.nav-wrap{min-height:78px!important;display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:nowrap!important;padding:0!important}
.brand-link{display:flex!important;align-items:center!important;flex:0 0 158px!important}
.brand-link .logo{width:158px!important;height:68px!important;max-height:68px!important;object-fit:contain!important;display:block!important}
.main-nav{display:flex!important;align-items:center!important;justify-content:center!important;flex:1 1 auto!important;min-width:0!important;margin:0!important;overflow:hidden!important;white-space:nowrap!important}
.main-nav ul.primary-menu,.main-nav > ul,.main-nav > div > ul{display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:nowrap!important;gap:0!important;list-style:none!important;margin:0!important;padding:0!important;width:auto!important;white-space:nowrap!important}
.main-nav ul.primary-menu li,.main-nav > ul > li,.main-nav > div > ul > li{display:flex!important;align-items:center!important;flex:0 0 auto!important;list-style:none!important;margin:0!important;padding:0!important;white-space:nowrap!important}
.main-nav ul.primary-menu li::before,.main-nav ul.primary-menu li::marker{content:none!important;display:none!important}
.main-nav ul.primary-menu a,.main-nav > ul > li > a,.main-nav > div > ul > li > a{display:block!important;padding:10px 6px!important;font-size:12.2px!important;line-height:1.15!important;font-weight:800!important;text-decoration:none!important;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;border-radius:9px!important}
.main-nav ul.primary-menu a:hover,.main-nav ul.primary-menu .current-menu-item>a{background:#eaf7f0!important;color:var(--g)!important}
.header-cta{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;background:var(--g)!important;color:#fff!important;border-radius:12px!important;padding:11px 14px!important;font-size:13px!important;font-weight:900!important;white-space:nowrap!important}
.mobile-menu-toggle{display:none!important}
.mobile-menu{display:none!important}

/* Banner luôn giữ nguyên tỷ lệ, không bị crop */
.hero-banners{padding:0 0 12px!important;background:#f6faf8!important}
.banner-slider{width:min(1180px,100%)!important;overflow:hidden!important;background:#fff!important}
.banner-slider .slide{display:none!important}
.banner-slider .slide.active{display:block!important}
.banner-slider .slide img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;display:block!important}

/* Trang chủ nhiều khối như bản thiết kế trước */
.section{padding:72px 0!important}
.about p{margin-top:0}
.latest-articles{margin-top:52px}
.section-heading.small{margin-bottom:22px}
.section-heading.small h3{font-size:1.7rem;margin:7px 0}
.empty-article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px}

/* Nút nổi tròn sát icon */
.floating-contact{position:fixed!important;right:24px!important;bottom:24px!important;z-index:99999!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:10px!important;pointer-events:none!important}
.floating-action{pointer-events:auto!important;width:66px!important;height:66px!important;flex:0 0 66px!important;border-radius:50%!important;background:#fff!important;border:2px solid #fff!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;position:relative!important;box-shadow:0 6px 16px rgba(0,0,0,.20)!important}
.floating-action img{width:60px!important;height:60px!important;max-width:none!important;max-height:none!important;object-fit:contain!important;display:block!important;margin:0!important}
.floating-zalo img{border-radius:15px!important}.floating-phone img{border-radius:50%!important}
.floating-zalo{animation:floatZaloPulse 1.8s infinite!important}.floating-phone .phone-shake{animation:floatPhoneShake 1s infinite!important;transform-origin:50% 55%!important}
.floating-label{position:absolute!important;right:76px!important;top:50%!important;transform:translateY(-50%)!important;background:#fff!important;color:#174a38!important;border-radius:16px!important;padding:8px 13px!important;min-width:150px!important;text-align:center!important;box-shadow:0 7px 22px rgba(0,0,0,.18)!important;border:1px solid #dcebe4!important;opacity:0!important;visibility:hidden!important;transition:opacity .2s ease,visibility .2s ease!important}
.floating-label small,.floating-label strong{display:block!important;line-height:1.15!important}.floating-label small{font-size:.62rem!important;font-weight:900!important}.floating-label strong{font-size:1rem!important}
.floating-action:hover .floating-label,.floating-action:focus-visible .floating-label{opacity:1!important;visibility:visible!important}
@keyframes floatPhoneShake{0%,58%,100%{transform:rotate(0)}62%{transform:rotate(-14deg)}66%{transform:rotate(14deg)}70%{transform:rotate(-12deg)}74%{transform:rotate(10deg)}78%{transform:rotate(-6deg)}82%{transform:rotate(4deg)}86%{transform:rotate(0)}}
@keyframes floatZaloPulse{0%,100%{transform:scale(1)}8%{transform:scale(1.04)}16%{transform:scale(1)}25%{box-shadow:0 6px 16px rgba(0,0,0,.20),0 0 0 4px rgba(0,104,255,.10)}40%{box-shadow:0 6px 16px rgba(0,0,0,.20)}}

@media(max-width:1220px) and (min-width:901px){
  .brand-link{flex-basis:138px!important}.brand-link .logo{width:138px!important}
  .nav-wrap{gap:5px!important}.main-nav ul.primary-menu a,.main-nav > ul > li > a,.main-nav > div > ul > li > a{font-size:10.6px!important;padding:9px 4px!important}.header-cta{font-size:11px!important;padding:9px 9px!important}
}
@media(max-width:900px){
  .nav-wrap{min-height:68px!important;gap:8px!important;padding:0!important}.brand-link{flex:0 0 auto!important}.brand-link .logo{width:145px!important;height:58px!important;max-height:58px!important}
  .main-nav{display:none!important}.header-cta{display:none!important}
  .mobile-menu-toggle{display:flex!important;margin-left:auto;width:44px;height:44px;border:1px solid #dce9e3;border-radius:10px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;box-shadow:0 3px 10px rgba(20,70,50,.08)}
  .mobile-menu-toggle span{display:block!important;width:21px!important;height:2.5px!important;background:#006b4f!important;border-radius:4px!important}
  .mobile-menu[hidden]{display:none!important}.mobile-menu{display:block!important;background:#fff;border-top:1px solid #e7eee9;box-shadow:0 10px 22px rgba(20,70,50,.10)}
  .mobile-primary-menu{display:block!important;list-style:none!important;margin:0!important;padding:8px 0 6px!important}.mobile-primary-menu li{display:block!important;list-style:none!important;margin:0!important;padding:0!important}.mobile-primary-menu li::marker{content:none!important}
  .mobile-primary-menu a{display:block!important;padding:13px 6px!important;border-bottom:1px solid #edf2ef;color:#173d32!important;text-decoration:none!important;font-size:15px!important;font-weight:800!important;line-height:1.3!important}
  .mobile-primary-menu a:hover,.mobile-primary-menu .current-menu-item>a{background:#eef8f3!important;color:#006b4f!important}
  .mobile-menu-contact{display:block!important;margin:8px 0 14px!important;padding:12px 14px!important;border-radius:10px!important;background:#00865f!important;color:#fff!important;text-align:center!important;text-decoration:none!important;font-weight:900!important}
  .topbar-inner{font-size:11px!important}.topbar-inner{padding:7px 0!important}
  .section{padding:54px 0!important}.one-line-title{white-space:normal!important}.grid,.products,.reviews{grid-template-columns:1fr 1fr!important}.why-grid{grid-template-columns:1fr 1fr!important}.risk-inner,.about{grid-template-columns:1fr!important}.category-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:600px){
  .brand-link .logo{width:135px!important;height:54px!important}.topbar-inner{display:grid!important;grid-template-columns:1fr!important;gap:0!important}.grid,.products,.reviews,.why-grid,.category-grid{grid-template-columns:1fr!important}.section{padding:48px 0!important}.floating-contact{right:9px!important;bottom:9px!important;gap:8px!important}.floating-action{width:56px!important;height:56px!important;flex-basis:56px!important}.floating-action img{width:52px!important;height:52px!important}.floating-zalo img{border-radius:13px!important}.floating-label{right:64px!important;min-width:138px!important;padding:7px 10px!important}.floating-label small{font-size:.55rem!important}.floating-label strong{font-size:.9rem!important}
}

/* Zalo contact image inside product cards */
.product-zalo{display:block;margin-top:12px;line-height:0;text-decoration:none}.product-zalo img{display:block;width:100%;max-width:270px;height:auto;border-radius:18px}.product-zalo:hover{opacity:.92}


/* === TOP ONE HIV V9: mobile menu dạng thanh ngang === */
@media(max-width:900px){
  .site-header{position:sticky!important;top:0!important;}
  .nav-wrap{min-height:68px!important;display:flex!important;flex-wrap:wrap!important;gap:0!important;padding:0!important;}
  .brand-link{flex:1 1 auto!important;min-width:0!important;}
  .brand-link .logo{width:145px!important;height:58px!important;max-height:58px!important;}
  .mobile-menu-toggle{display:none!important;}
  .header-cta{display:none!important;}
  .main-nav{display:block!important;order:3!important;flex:0 0 100%!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;overflow-x:auto!important;overflow-y:hidden!important;justify-content:flex-start!important;white-space:nowrap!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;border-top:1px solid #e7eee9!important;border-bottom:1px solid #e7eee9!important;background:#fff!important;}
  .main-nav::-webkit-scrollbar{display:none!important;}
  .main-nav ul.primary-menu,.main-nav > ul,.main-nav > div > ul{display:flex!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:nowrap!important;width:max-content!important;min-width:100%!important;gap:0!important;list-style:none!important;margin:0!important;padding:0 8px!important;white-space:nowrap!important;}
  .main-nav ul.primary-menu li,.main-nav > ul > li,.main-nav > div > ul > li{display:flex!important;flex:0 0 auto!important;list-style:none!important;margin:0!important;padding:0!important;}
  .main-nav ul.primary-menu li::before,.main-nav ul.primary-menu li::marker{content:none!important;display:none!important;}
  .main-nav ul.primary-menu a,.main-nav > ul > li > a,.main-nav > div > ul > li > a{display:block!important;padding:12px 10px!important;font-size:13px!important;line-height:1.2!important;font-weight:800!important;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;border-radius:0!important;color:#173d32!important;text-decoration:none!important;}
  .main-nav ul.primary-menu a:hover,.main-nav ul.primary-menu .current-menu-item>a{background:#eaf7f0!important;color:var(--g)!important;border-radius:8px!important;}
  .mobile-menu{display:none!important;}
}
@media(max-width:600px){
  .brand-link .logo{width:135px!important;height:54px!important;}
  .main-nav ul.primary-menu,.main-nav > ul,.main-nav > div > ul{padding:0 6px!important;}
  .main-nav ul.primary-menu a,.main-nav > ul > li > a,.main-nav > div > ul > li > a{font-size:12.5px!important;padding:11px 9px!important;}
}


/* === TOP ONE HIV - refined content layout === */
.service-title{font-size:.9rem!important}
#dich-vu .head h2{font-size:clamp(2.35rem,4.5vw,3.4rem)!important;font-weight:900!important;color:var(--gd)!important;margin-top:8px!important}
#dich-vu .head p{margin-top:8px!important}
#san-pham .head h2{font-size:clamp(2rem,4vw,3rem)!important;font-weight:900!important;color:var(--gd)!important}
#san-pham .product-body{display:flex!important;flex-direction:column!important;align-items:flex-start!important}
#san-pham .product-body h3{margin-bottom:10px!important}
#san-pham .product-zalo{width:100%!important}
.why-card{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;min-height:150px!important}
.why-card h3{margin-bottom:0!important}
.review-card{position:relative!important;min-height:235px!important;padding-left:118px!important}
.review-avatar{position:absolute!important;left:24px!important;top:24px!important;width:76px!important;height:76px!important;border-radius:50%!important;overflow:hidden!important;border:3px solid #fff!important;box-shadow:0 5px 16px #0f3c2820!important;background:#eaf5ef!important}
.review-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.review-card .stars{margin-bottom:8px!important}
.review-card p{margin:8px 0 14px!important}
.review-card strong{font-size:1.02rem!important;color:var(--ink)!important}
.review-card span{font-size:.82rem!important;color:var(--muted)!important}
#bai-viet{padding-top:68px!important;padding-bottom:68px!important}
#bai-viet .section-heading{text-align:center!important;max-width:800px!important;margin:0 auto 34px!important}
#bai-viet .section-heading h2{margin-top:8px!important}

@media(max-width:900px){
  .review-card{padding-left:105px!important}
  .review-avatar{left:20px!important;width:68px!important;height:68px!important}
}
@media(max-width:600px){
  .review-card{padding:98px 20px 22px!important;min-height:0!important}
  .review-avatar{left:20px!important;top:18px!important;width:66px!important;height:66px!important}
}

/* Final content refinements */
.why-card{display:flex;align-items:center;gap:14px;text-align:left;}
.why-card>b{flex:0 0 auto;font-size:16px;}
.why-card h3{margin:0;font-size:16px;}
.product-section .head h2{font-size:clamp(28px,3vw,40px);}
#dich-vu .head h2{font-size:clamp(32px,4vw,48px);}
#gioi-thieu .about p{max-width:780px;}
/* Final override: reason number and text stay on the same row */
.why-card{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;min-height:0!important;}
.why-card>b{display:block!important;width:auto!important;height:auto!important;background:none!important;padding:0!important;font-size:16px!important;line-height:1!important;}
.why-card h3{margin:0!important;font-size:16px!important;line-height:1.3!important;}

/* === Final mobile navigation: horizontal, no sideways scrolling === */
@media(max-width:900px){
  .main-nav{display:block!important;overflow:visible!important;white-space:normal!important;height:auto!important;max-height:none!important;}
  .main-nav ul.primary-menu,.main-nav > ul,.main-nav > div > ul{
    display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;
    width:100%!important;min-width:0!important;white-space:normal!important;overflow:visible!important;
    padding:4px 4px!important;gap:0!important;
  }
  .main-nav ul.primary-menu li,.main-nav > ul > li,.main-nav > div > ul > li{display:flex!important;flex:0 0 auto!important;}
  .main-nav ul.primary-menu a,.main-nav > ul > li > a,.main-nav > div > ul > li > a{
    font-size:10.5px!important;padding:8px 6px!important;line-height:1.15!important;white-space:nowrap!important;
  }
}
@media(max-width:600px){
  .main-nav ul.primary-menu,.main-nav > ul,.main-nav > div > ul{justify-content:center!important;padding:3px 2px!important;}
  .main-nav ul.primary-menu a,.main-nav > ul > li > a,.main-nav > div > ul > li > a{font-size:9.6px!important;padding:7px 4px!important;}
}

/* Knowledge cards: number and title on the same line */
#bai-viet .category-card{display:flex!important;flex-direction:column!important;align-items:flex-start!important;}
#bai-viet .category-card > span,
#bai-viet .category-card > strong{display:inline!important;}
#bai-viet .category-card > span{margin-right:8px!important;}
#bai-viet .category-card > strong{margin-top:-18px!important;margin-left:28px!important;line-height:1.3!important;}
#bai-viet .category-card .category-title{display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;}
#bai-viet .category-card .category-title > span{display:inline-block!important;margin:0!important;flex:0 0 auto!important;}
#bai-viet .category-card .category-title > strong{display:inline-block!important;margin:0!important;line-height:1.25!important;}
