:root{
  --ink:#111a33;--navy:#1c2b63;--navy-2:#2a3f8a;--blue:#3453a3;--brass:#ea6c00;--brass-2:#ff9a3c;--brass-d:#c45a00;
  --paper:#f2f4f9;--sand:#e9edf6;--white:#fff;--line:#dde2ee;--muted:#4f5a70;--ok:#21704a;
  --serif:"Noto Serif",Cambria,Georgia,"Times New Roman",serif;
  --sans:"Be Vietnam Pro",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --r:6px;--w:1200px;--hh:76px;
  --shadow:0 1px 2px rgba(15,27,45,.05),0 10px 30px -10px rgba(15,27,45,.12);
  --shadow-lg:0 24px 60px -20px rgba(15,27,45,.28);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--hh) + 16px)}
body{margin:0;font:400 16px/1.65 var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.25;letter-spacing:-.015em;color:var(--navy);margin:0 0 .5em}
h1{font-size:clamp(2rem,1.35rem + 2.6vw,3.3rem)}
h2{font-size:clamp(1.6rem,1.25rem + 1.4vw,2.3rem)}
h3{font-size:1.2rem}
p{margin:0 0 1em}
ul,ol{margin:0}
dl,dd{margin:0}
.i{width:20px;height:20px;flex:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--navy);color:#fff;padding:10px 16px;border-radius:4px}
.skip:focus{left:16px}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:4px}
.container{width:min(100% - 32px,var(--w));margin-inline:auto}
.narrow{max-width:760px}
.center{text-align:center}
.muted{color:var(--muted)}.small{font-size:.88rem}

/* Nút */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 24px;border-radius:4px;border:1.5px solid transparent;font:600 .96rem/1.2 var(--sans);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s;white-space:nowrap}
.btn .i{width:18px;height:18px}
.btn-sm{min-height:42px;padding:0 18px;font-size:.9rem}
.btn-block{width:100%}
.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{background:var(--navy-2)}
.btn-brass{background:var(--brass);color:#fff}.btn-brass:hover{background:var(--brass-d)}
.btn-outline{border-color:var(--navy);color:var(--navy)}.btn-outline:hover{background:var(--navy);color:#fff}
.btn-ghost{border-color:var(--line);color:var(--navy);background:#fff}.btn-ghost:hover{border-color:var(--navy)}
.btn:active{transform:translateY(1px)}
.link-arrow{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--navy);border-bottom:1.5px solid var(--brass);padding-bottom:2px}
.link-arrow .i{width:16px;height:16px;transition:transform .2s}
.link-arrow:hover .i{transform:translateX(3px)}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);transition:border-color .2s,box-shadow .2s}
.site-header.scrolled{border-color:var(--line);box-shadow:0 6px 24px -12px rgba(15,27,45,.15)}
.header-inner{display:flex;align-items:center;gap:20px;height:var(--hh)}
.brand{display:flex;align-items:center;gap:11px;flex:none}
.brand-mark{width:40px;height:40px}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-name{font:700 1.22rem/1 var(--serif);color:var(--navy);letter-spacing:.04em}
.brand-name span{color:var(--brass)}
.brand-sub{font-size:.64rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:6px}
.brand-light .brand-name{color:#fff}.brand-light .brand-name span{color:var(--brass-2)}.brand-light .brand-sub{color:#8d99ac}
.site-nav{margin-left:auto}
.nav-list{display:flex;align-items:center;gap:2px;list-style:none;padding:0}
.nav-list>li{position:relative}
.nav-row{display:flex;align-items:center}
.nav-link{display:flex;align-items:center;height:44px;padding:0 13px;font-size:.95rem;font-weight:500;border-radius:6px;transition:color .2s}
.nav-link:hover,.nav-link[aria-current]{color:var(--brass)}
.sub-toggle{display:grid;place-items:center;width:28px;height:44px;margin-left:-10px;border:0;background:none;cursor:pointer;color:var(--muted)}
.sub-toggle .i{width:16px;height:16px;transition:transform .2s}
.has-sub:hover .sub-toggle .i,.has-sub.open .sub-toggle .i{transform:rotate(180deg)}
.mega{position:absolute;left:50%;top:calc(100% + 10px);width:700px;transform:translate(-50%,8px);background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-lg);padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:4px 20px;opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility .18s}
.mega::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.has-sub:hover .mega,.has-sub:focus-within .mega,.has-sub.open .mega{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mega-title{font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:2px 10px 8px}
.mega a:not(.mega-foot){display:flex;gap:12px;padding:10px;border-radius:6px;transition:background-color .15s}
.mega a:not(.mega-foot):hover{background:var(--paper)}
.mega a .i{color:var(--brass);margin-top:2px}
.mega strong{display:block;font-size:.92rem;font-weight:600;color:var(--navy);line-height:1.35}
.mega small{display:block;color:var(--muted);font-size:.8rem;line-height:1.4;margin-top:2px}
.mega-foot{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:10px;padding:12px;border-top:1px solid var(--line);font-size:.88rem;font-weight:600;color:var(--navy)}
.mega-foot .i{width:16px;height:16px}
.nav-mobile-cta{display:none}
.header-cta{display:flex;align-items:center;gap:18px;flex:none}
.hotline{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--navy);font-size:1rem;line-height:1.2}
.hotline .i{width:38px;height:38px;padding:9px;border-radius:50%;background:var(--sand);color:var(--brass)}
.hotline small{display:block;font-size:.75rem;font-weight:500;color:var(--muted)}
.nav-toggle{display:none}

/* Bố cục section */
.section{padding:clamp(52px,6vw,84px) 0}
.section-white{background:#fff}
.section-navy{background:var(--navy);color:#c9d3e1}
.section-navy h2,.section-navy h3{color:#fff}
.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin:0 0 14px}
.eyebrow::before{content:"";width:28px;height:1.5px;background:currentColor}
.section-navy .eyebrow{color:var(--brass-2)}
.section-navy .section-head p:not(.eyebrow){color:#b9c3dd}
.section-head{max-width:700px;margin-bottom:34px}
.section-head h2{margin-bottom:12px}
.section-head p:not(.eyebrow){color:var(--muted);font-size:1.06rem;margin:0}
.section-head.center{margin-inline:auto;text-align:center}
.section-head.center .eyebrow::before{display:none}
.head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px}
.head-row .section-head{margin:0}
.more{margin:30px 0 0;text-align:center}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,80px);align-items:center}
.split-top{align-items:center;margin-top:24px}
.rounded{border-radius:8px}

/* Hero */
.hero{position:relative;isolation:isolate;padding:clamp(40px,6vw,72px) 0 clamp(48px,6vw,80px);overflow:hidden}
.hero::before{content:"";position:absolute;inset:0 0 0 45%;z-index:-1;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 55% 45%,#000 10%,transparent 70%);mask-image:radial-gradient(ellipse at 55% 45%,#000 10%,transparent 70%);opacity:.7}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(32px,5vw,64px);align-items:center}
.hero h1{margin-bottom:22px}
.hero h1 em{font-style:normal;color:var(--brass)}
.hero-lead{font-size:1.14rem;color:var(--muted);max-width:560px}
.checks{list-style:none;padding:0;margin:26px 0 32px;display:grid;gap:11px}
.checks li{display:flex;gap:12px;align-items:flex-start}
.checks .i{color:#fff;background:var(--ok);border-radius:50%;padding:3px;width:20px;height:20px;margin-top:2px;stroke-width:2.4}
.checks-light li{color:#e3e8f0}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-actions.center{justify-content:center}
.hero-media img{width:100%;max-width:560px;margin-left:auto}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:clamp(40px,5vw,64px);padding-top:32px;border-top:1px solid var(--line)}
.stat strong{display:block;font:700 clamp(1.8rem,1.4rem + 1.2vw,2.4rem)/1 var(--serif);color:var(--navy);margin-bottom:8px}
.stat span{display:block;color:var(--muted);font-size:.92rem;line-height:1.5}
.stat-src{display:inline-block;margin-top:8px;font-size:.78rem;font-weight:600;color:var(--navy);border-bottom:1px solid var(--brass-2)}
.stat-src:hover{color:var(--brass)}
.section-white .stats{margin-top:0;border-top:0;padding-top:0}

/* Thẻ dịch vụ */
.card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px;transition:border-color .2s,box-shadow .2s,transform .2s}
.section-white .card{background:var(--paper)}
.card:hover{border-color:var(--brass-2);box-shadow:var(--shadow);transform:translateY(-3px)}
.card-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:6px;background:var(--navy);color:var(--brass-2);margin-bottom:22px}
.card-icon .i{width:24px;height:24px}
.card h3{font-size:1.18rem;margin-bottom:10px}
.card h3 a::after{content:"";position:absolute;inset:0;border-radius:var(--r)}
.card p{color:var(--muted);font-size:.95rem;flex:1;margin-bottom:20px}
.card-meta{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--line);font-size:.9rem;color:var(--muted)}
.card-meta b{color:var(--navy);font-weight:700}
.card-go{display:flex;align-items:center;gap:4px;font-weight:600;color:var(--brass)}
.card-go .i{width:16px;height:16px;transition:transform .2s}
.card:hover .card-go .i{transform:translateX(3px)}

/* Bảng giá */
.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.plan{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:8px;padding:32px 28px}
.plan h3{font-size:1.35rem;margin-bottom:6px}
.plan-note{color:var(--muted);font-size:.92rem;min-height:2.9em;margin:0}
.price{font:700 2.4rem/1 var(--serif);color:var(--navy);margin:22px 0 4px;letter-spacing:-.02em}
.plan-list{list-style:none;padding:22px 0 0;margin:20px 0 28px;border-top:1px solid var(--line);display:grid;gap:12px;flex:1}
.plan-list li{display:flex;gap:10px;font-size:.95rem;line-height:1.5}
.plan-list .i{color:var(--ok);width:18px;height:18px;margin-top:2px;stroke-width:2.2}
.plan.featured{background:var(--navy);border-color:var(--navy);color:#c9d3e1;box-shadow:var(--shadow-lg)}
.plan.featured h3,.plan.featured .price{color:#fff}
.plan.featured .plan-note{color:#a3b3c9}
.plan.featured .plan-list{border-color:rgba(255,255,255,.12)}
.plan.featured .plan-list .i{color:var(--brass-2)}
.plan-badge{position:absolute;top:-13px;left:28px;background:var(--brass);color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.04em;padding:5px 12px;border-radius:3px}
.prose .plan h3{font:600 1.3rem/1.25 var(--serif);margin:0 0 6px}
.prose .plan-list li{color:var(--ink)}
.prose .plan.featured .plan-list li{color:#d5dce8}
.prose .pricing{gap:14px}
.prose .plan{padding:28px 22px}
.pricing-note{margin:24px auto 0;text-align:center;color:var(--muted);font-size:.88rem;max-width:760px}

/* Quy trình */
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.step{position:relative}
.step::before{content:"";position:absolute;top:24px;left:60px;right:-12px;height:1px;background:var(--line)}
.step:last-child::before{display:none}
.step-num{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1.5px solid var(--brass);color:var(--brass);background:#fff;font:600 1.02rem var(--serif);position:relative}
.step-time{display:inline-block;margin:20px 0 10px;padding:4px 10px;border-radius:3px;background:var(--sand);color:var(--navy);font:600 .76rem/1.3 var(--sans);letter-spacing:.02em}
.step h3{font-size:1.14rem;margin-bottom:8px}
.step p{color:var(--muted);font-size:.94rem;margin:0}

/* Vì sao chọn */
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(255,255,255,.12)}
.why-item{padding:32px 28px 8px 0;margin-right:28px}
.why-item+.why-item{padding-left:28px;border-left:1px solid rgba(255,255,255,.12)}
.why-item .i{width:30px;height:30px;color:var(--brass-2);margin-bottom:20px}
.why-item h3{font-size:1.14rem;margin-bottom:10px}
.why-item p{font-size:.94rem;margin:0}

/* Chuẩn bị hồ sơ */
.prep{list-style:none;padding:0;display:grid;gap:14px}
.prep li{display:flex;gap:18px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px 24px}
.prep .i{width:44px;height:44px;padding:10px;border-radius:6px;background:var(--sand);color:var(--brass)}
.prep h3{font-family:var(--sans);font-size:1.02rem;font-weight:600;margin-bottom:4px}
.prep p{color:var(--muted);font-size:.93rem;margin:0}

/* Đội ngũ */
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.member{display:flex;flex-direction:column;gap:14px;padding:26px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.avatar{display:grid;place-items:center;flex:none;width:68px;height:68px;border-radius:50%;background:var(--navy);color:var(--brass-2);font:600 1.25rem var(--serif);letter-spacing:.04em}
.avatar-sm{width:42px;height:42px;font-size:.75rem}
.member h3{font-size:1.1rem;margin-bottom:2px}
.role{font-size:.82rem;font-weight:600;color:var(--brass);margin-bottom:10px;letter-spacing:.02em}
.member p:last-child{color:var(--muted);font-size:.93rem;margin:0}

/* Hỏi đáp */
.faq{max-width:860px;margin-inline:auto;border-top:1px solid var(--line)}
.prose .faq{max-width:none}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;list-style:none;cursor:pointer;font:600 1.04rem/1.45 var(--sans);color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--sand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ea6c00' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:var(--brass)}
.faq .ans{padding:0 52px 22px 0;color:var(--muted)}
.faq .ans p{margin:0}

/* Bài viết */
.posts{display:grid;grid-template-columns:repeat(var(--post-cols,3),1fr);gap:20px}
.post-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:box-shadow .2s,transform .2s}
.section-white .post-card{background:var(--paper)}
.post-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.post-thumb{display:block;aspect-ratio:1200/630;overflow:hidden;background:var(--sand)}
.post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.post-card:hover .post-thumb img{transform:scale(1.03)}
.post-body{padding:20px 22px 24px}
.post-meta{display:flex;align-items:center;gap:12px;font-size:.8rem;color:var(--muted);margin:0 0 10px}
.pill{display:inline-block;padding:3px 10px;border-radius:3px;background:var(--sand);color:var(--brass-d);font-weight:600;font-size:.75rem}
.post-card h3{font-size:1.1rem;line-height:1.4;margin:0}
.post-card h3 a::after{content:"";position:absolute;inset:0}
.post-card h3 a:hover{color:var(--brass)}
.post-card-big{grid-column:1/-1;display:grid;grid-template-columns:1.15fr 1fr}
.post-card-big .post-thumb{aspect-ratio:auto;height:100%}
.post-card-big .post-body{padding:clamp(24px,4vw,48px);align-self:center}
.post-card-big h3{font-size:clamp(1.3rem,1.1rem + .8vw,1.8rem);margin-bottom:14px}
.post-card-big p{color:var(--muted);margin:0}
.post-card[hidden]{display:none}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.chip{border:1px solid var(--line);background:#fff;border-radius:3px;padding:8px 16px;font-size:.88rem;font-weight:500;cursor:pointer;transition:all .2s}
.chip:hover{border-color:var(--navy)}
.chip.active{background:var(--navy);border-color:var(--navy);color:#fff}

/* CTA + form */
.cta{position:relative;overflow:hidden;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,64px);align-items:center;background:var(--navy);color:#c9d3e1;border-radius:8px;padding:clamp(28px,5vw,64px)}
.cta::before{content:"";position:absolute;width:520px;height:520px;right:-180px;top:-220px;border:1px solid rgba(234,108,0,.3);border-radius:50%;pointer-events:none}
.cta::after{content:"";position:absolute;width:360px;height:360px;right:-100px;top:-140px;border:1px solid rgba(234,108,0,.2);border-radius:50%;pointer-events:none}
.cta h2{color:#fff;margin-bottom:6px}
.cta-tag{color:var(--brass-2);font-weight:700;letter-spacing:.02em;margin-bottom:14px!important}
.cta .eyebrow{color:var(--brass-2)}
.cta-copy>p:not(.eyebrow){font-size:1.04rem}
.cta-contacts{display:flex;flex-wrap:wrap;gap:28px;margin-top:8px}
.cta-contacts a{display:flex;align-items:center;gap:12px;color:#fff;font-weight:600}
.cta-contacts .i{width:42px;height:42px;padding:10px;border-radius:50%;border:1px solid rgba(255,255,255,.2);color:var(--brass-2)}
.cta-contacts small{display:block;font-size:.75rem;font-weight:400;color:#a3b3c9}
.form{position:relative;z-index:1;display:grid;gap:14px;background:#fff;color:var(--ink);border-radius:8px;padding:clamp(22px,3vw,32px)}
.field label{display:block;margin-bottom:6px;font-size:.86rem;font-weight:600;color:var(--navy)}
.opt{font-weight:400;color:var(--muted)}
.field input,.field select,.field textarea{width:100%;min-height:50px;padding:0 14px;border:1px solid var(--line);border-radius:4px;background:var(--paper);transition:border-color .2s,background-color .2s}
.field textarea{padding:12px 14px;resize:vertical;min-height:92px}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--brass);background:#fff}
.field input::placeholder,.field textarea::placeholder{color:#9aa3b2}
.form-note{display:flex;gap:8px;align-items:flex-start;font-size:.8rem;color:var(--muted);margin:0}
.form-note .i{width:15px;height:15px;margin-top:2px}
.form-ok{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:4px;background:#e8f2ec;color:var(--ok);font-weight:600;font-size:.92rem;margin:0}
.form-ok[hidden]{display:none}
.form.sent .field,.form.sent button,.form.sent .form-note{display:none}

/* Trang con */
.crumbs{padding-top:22px;font-size:.84rem;color:var(--muted)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0}
.crumbs li+li::before{content:"/";margin-right:6px;color:#b6c0cc}
.crumbs a:hover{color:var(--brass)}
.crumbs li[aria-current]{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(60vw,520px)}
.page-hero{padding-bottom:clamp(40px,5vw,64px);border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--sand),var(--paper))}
.page-hero-simple .eyebrow{margin-top:36px}
.page-hero-simple h1{max-width:860px}
.lead{font-size:1.12rem;color:var(--muted);max-width:720px}
.page-hero-grid{display:grid;grid-template-columns:1fr 380px;gap:clamp(32px,5vw,64px);align-items:start;margin-top:36px}
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin:28px 0 30px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.fact{background:#fff;padding:16px 20px}
.fact dt{font-size:.8rem;color:var(--muted)}
.fact dd{font-weight:700;color:var(--navy)}
.quote-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:26px;box-shadow:var(--shadow)}
.quote-card .form{padding:0;border-radius:0}
.quote-label{font-size:.82rem;color:var(--muted);margin:0}
.quote-price{font:700 2.2rem/1.1 var(--serif);color:var(--navy);margin:4px 0}
.quote-note{font-size:.86rem;color:var(--ok);font-weight:600;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line)}

/* Nội dung chi tiết + mục lục */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(32px,5vw,72px);align-items:start;padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(48px,6vw,80px)}
.aside{position:sticky;top:calc(var(--hh) + 20px);display:grid;gap:20px}
.toc{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px 14px 14px}
.toc-title{font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 6px 10px}
.toc ol{list-style:none;padding:0;display:grid;gap:1px;max-height:52vh;overflow:auto}
.toc a{display:block;padding:7px 10px;border-left:2px solid transparent;font-size:.88rem;line-height:1.45;color:var(--muted);transition:color .15s,border-color .15s}
.toc a:hover,.toc a.active{color:var(--navy);border-color:var(--brass);background:var(--paper)}
.help-card{background:var(--navy);color:#c9d3e1;border-radius:var(--r);padding:24px;display:grid;gap:10px}
.help-card p{margin:0;font-size:.93rem}
.help-title{font:600 1.18rem var(--serif)!important;color:#fff}
.help-icon{width:32px;height:32px;color:var(--brass-2)}
.help-price b{color:#fff}
.help-card .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.25)}
.help-card .btn-ghost:hover{border-color:#fff}

.prose{font-size:1.04rem;line-height:1.78;min-width:0}
.prose-sec+.prose-sec{margin-top:56px}
.prose h2{font-size:clamp(1.45rem,1.2rem + 1vw,1.9rem);margin:48px 0 16px}
.prose-sec>h2:first-child,.prose>h2:first-child{margin-top:0}
.prose h3{font:600 1.1rem/1.4 var(--sans);margin:28px 0 8px}
.prose p,.prose li{color:#2b3647}
.prose ul:not([class]),.prose ol:not([class]){padding-left:1.3em;margin:0 0 1.2em}
.prose ul:not([class]) li{margin:.4em 0;padding-left:.2em}
.prose ul:not([class]) li::marker{color:var(--brass)}
.prose a:not(.btn){color:var(--navy);font-weight:500;text-decoration:underline;text-decoration-color:var(--brass-2);text-decoration-thickness:1.5px;text-underline-offset:3px}
.prose a:not(.btn):hover{color:var(--brass)}
.prose strong{color:var(--ink)}
.prose figure{margin:0 0 28px}
.prose figure img{border-radius:var(--r)}
.fig{margin:32px 0}
.fig img{width:100%;border:1px solid var(--line);border-radius:var(--r)}
.fig figcaption{text-align:center;font-style:normal}
figcaption{margin-top:10px;font-size:.84rem;color:var(--muted)}
.check-list{list-style:none;padding:0;display:grid;gap:12px;margin:0 0 1em}
.check-list li{display:flex;gap:12px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:6px;line-height:1.55}
.check-list .i{color:var(--ok);margin-top:3px;stroke-width:2.2}
.table-wrap{overflow-x:auto;margin:6px 0 24px;border:1px solid var(--line);border-radius:var(--r);background:#fff;-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.55}
th,td{padding:13px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
tr:last-child>*{border-bottom:0}
thead th{background:var(--sand);color:var(--navy);font-weight:600;font-size:.88rem;white-space:nowrap}
tbody th{width:34%;color:var(--navy);font-weight:600;background:var(--paper)}
.prose table td{color:#2b3647}
.price-table td small{display:block;color:var(--muted);font-size:.82rem}
.price-table td:first-child a{font-weight:600;color:var(--navy)}
.price-table td:first-child a:hover{color:var(--brass)}
.price-table td:last-child{text-align:right;white-space:nowrap}
.info-table{max-width:860px}
.timeline{list-style:none;padding:0;margin:4px 0 0}
.timeline li{position:relative;padding:0 0 26px 68px}
.timeline li::before{content:"";position:absolute;left:23.5px;top:52px;bottom:4px;width:1px;background:var(--line)}
.timeline li:last-child{padding-bottom:0}
.timeline li:last-child::before{display:none}
.timeline .step-num{position:absolute;left:0;top:0}
.timeline h3{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0 6px}
.timeline .step-time{margin:0}
.timeline p{margin:0;color:var(--muted)}
.callout{margin:28px 0;padding:18px 22px;border-left:3px solid var(--brass);border-radius:0 6px 6px 0;background:#fff}
.callout p{margin:0}
.disclaimer{margin-top:48px;padding-top:20px;border-top:1px solid var(--line);font-size:.86rem;color:var(--muted)!important}

.article-head{padding-bottom:28px}
.article-head .post-meta{margin-top:32px}
.article-head h1{max-width:900px;font-size:clamp(1.9rem,1.35rem + 2.2vw,2.9rem)}
.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px;margin-top:24px;font-size:.88rem;color:var(--muted)}
.byline{display:flex;align-items:center;gap:12px}
.byline strong{display:block;color:var(--ink);font-size:.92rem}
.byline small{display:block}
.article-cover{margin:0;border-radius:8px;overflow:hidden}
.article-cover img{width:100%}

/* Liên hệ */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,5vw,64px);align-items:start}
.contact-cards{list-style:none;padding:0;display:grid;gap:12px}
.contact-cards li{display:flex;gap:16px;align-items:center;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:var(--r)}
.contact-cards .i{width:44px;height:44px;padding:11px;border-radius:50%;background:var(--sand);color:var(--brass)}
.contact-cards p{margin:0}
.cc-title{font-size:.8rem;color:var(--muted)}
.contact-cards a{font-weight:600;color:var(--navy)}
.contact-form{background:#fff;border:1px solid var(--line);border-radius:8px;padding:clamp(22px,3vw,36px)}
.contact-form h2{font-size:1.5rem}
.contact-form .form{padding:0}
.map iframe{display:block;width:100%;height:420px;border:0;filter:grayscale(.3)}
.notfound{min-height:50vh;display:grid;place-items:center}

/* Footer */

/* Liên hệ nhanh */
.float{position:fixed;right:20px;bottom:24px;z-index:40;display:grid;gap:10px}
.float a{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:#fff;box-shadow:0 10px 24px -8px rgba(15,27,45,.45);transition:transform .2s}
.float a:hover{transform:scale(1.06)}
.f-zalo{background:#0068ff;font:700 .78rem var(--sans);letter-spacing:.02em}
.f-call{background:var(--brass)}
.f-call .i{width:22px;height:22px}
.mbar{display:none}

/* Khối tin tức trang chủ */
.hub{display:grid;grid-template-columns:1fr 1.7fr 1fr;gap:clamp(20px,2.5vw,32px);align-items:stretch}
.hub-col{min-width:0}
.hub-title{position:relative;margin:0 0 18px;padding-bottom:12px;border-bottom:2px solid var(--line);font:700 .8rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--navy)}
.hub-title::after{content:"";position:absolute;left:0;bottom:-2px;width:56px;height:2px;background:var(--brass)}
.hub h4{font-family:var(--sans);font-weight:600;color:var(--navy);margin:0}
.hub h4 a:hover{color:var(--brass)}
.news-feature{position:relative;padding-bottom:18px}
.nf-thumb{display:block;overflow:hidden;border-radius:var(--r);border:1px solid var(--line);margin-bottom:14px}
.nf-thumb img{width:100%;transition:transform .4s}
.news-feature:hover .nf-thumb img{transform:scale(1.03)}
.news-feature h4{font:700 1.28rem/1.35 var(--serif);margin-bottom:8px}
.news-feature h4 a::after{content:"";position:absolute;inset:0}
.news-feature>p:last-child{color:var(--muted);font-size:1rem;margin:0}
.news-list{list-style:none;padding:0}
.news-list li{position:relative;display:grid;grid-template-columns:116px 1fr;gap:14px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}
.nl-thumb{display:block;overflow:hidden;border-radius:4px;border:1px solid var(--line)}
.nl-thumb img{width:100%;aspect-ratio:1200/630;object-fit:cover}
.news-list h4{font-size:1rem;line-height:1.45;margin-bottom:4px}
.news-list h4 a::after{content:"";position:absolute;inset:0}
.news-list time{font-size:.84rem;color:var(--muted)}
.law-list{list-style:none;padding:0;counter-reset:law}
.law-list li{position:relative;padding:14px 0 14px 44px;border-bottom:1px solid var(--line)}
.law-list li:first-child{padding-top:2px}
.law-list li::before{counter-increment:law;content:counter(law,decimal-leading-zero);position:absolute;left:0;top:14px;font:700 1.3rem/1 var(--serif);color:var(--brass)}
.law-list li:first-child::before{top:2px}
.law-date{display:inline-block;margin-bottom:6px;padding:2px 8px;border-radius:3px;background:var(--sand);color:var(--navy);font-size:.78rem;font-weight:600}
.law-list h4{font-size:1.04rem;line-height:1.4;margin-bottom:4px}
.law-list h4 a::after{content:"";position:absolute;inset:0}
.law-list p{font-size:.93rem;color:var(--muted);margin:0;line-height:1.55}
.law-src{display:flex;align-items:center;gap:6px;margin-top:6px!important;font-size:.84rem!important;font-weight:500;color:var(--brass-d)!important}
.law-src .i{width:14px;height:14px}
.svc-list{list-style:none;padding:0}
.svc-list a{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}
.svc-list li:first-child a{padding-top:2px}
.svc-list .i{width:38px;height:38px;padding:9px;border-radius:4px;background:var(--navy);color:var(--brass-2)}
.svc-list strong{display:block;font-size:1rem;font-weight:600;color:var(--navy);line-height:1.35}
.svc-list small{display:block;font-size:.86rem;color:var(--muted)}
.svc-list small b{color:var(--brass-d)}
.svc-list a:hover strong{color:var(--brass)}
.hub-cta{margin-top:20px;padding:20px;border-radius:var(--r);background:var(--navy);color:#c9d3e1;display:grid;gap:10px}
.hub-cta p{margin:0;font-size:.96rem}
.hub-cta .hub-cta-title{font:700 1.1rem var(--serif);color:#fff}

.hub-title-gap{margin-top:32px}
.mini-list{list-style:none;padding:0}
.mini-list li{padding:10px 0;border-bottom:1px solid var(--line)}
.mini-list li:first-child{padding-top:0}
.mini-list a{display:block;font-weight:600;font-size:1rem;line-height:1.45;color:var(--navy)}
.mini-list a:hover{color:var(--brass)}
.mini-list time{font-size:.84rem;color:var(--muted)}

/* Khung cột rõ ràng cho khối tin tức */
.section-hub{background:#e7ebf5}
.hub-col{display:flex;flex-direction:column;gap:20px}
.hub-col>.hub-panel:last-child{flex:1}
.hub-stack{display:flex}
.hub-panel{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:0 1px 2px rgba(13,27,42,.05)}
.hub .hub-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:13px 18px;border:0;background:var(--c);color:#fff}
.hub .hub-title::after{display:none}
.hub .hub-title a{font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:none;color:#fff;opacity:.85}
.hub .hub-title a:hover{opacity:1;text-decoration:underline}
.hub-body{padding:18px}
.hub-stack .hub-cta{margin:0}
.btn-ghost-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.btn-ghost-light:hover{border-color:#fff}
.mega>div+div{border-left:1px solid var(--line);padding-left:20px}
.fig-scene img{border-color:transparent}

/* Hồ sơ thủ tục – trang chủ */
.proc-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.proc-tile{display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:var(--r);background:var(--s);border-top:3px solid var(--c);transition:transform .2s,box-shadow .2s}
.proc-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.proc-ic{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:6px;background:var(--c);color:#fff}
.proc-ic .i{width:22px;height:22px}
.proc-tile strong{font-size:.95rem;line-height:1.35;color:var(--c)}
.proc-tile small{margin-top:auto;font-size:.8rem;color:var(--muted)}

/* Trang Hồ sơ thủ tục */
.proc-group{margin-bottom:56px}
.proc-group-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;padding:16px 22px;border-radius:var(--r);background:var(--c);color:#fff}
.proc-group-head h2{margin:0;color:#fff;font-size:clamp(1.2rem,1rem + .8vw,1.5rem)}
.proc-group-head span{flex:none;padding:4px 10px;border-radius:3px;background:rgba(255,255,255,.16);font-size:.82rem;font-weight:600}
.proc-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.proc-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--r);scroll-margin-top:calc(var(--hh) + 20px)}
.proc-card:target{box-shadow:0 0 0 3px var(--c)}
.proc-card header{display:flex;align-items:center;gap:14px;padding:16px 20px;background:var(--s);border-bottom:3px solid var(--c)}
.proc-card h3{margin:0;font-size:1.1rem;color:var(--c)}
.proc-meta{display:grid;gap:8px;padding:16px 20px;border-bottom:1px dashed var(--line);font-size:.9rem}
.proc-meta div{display:grid;grid-template-columns:112px 1fr;gap:10px}
.proc-meta dt{display:flex;align-items:center;gap:6px;color:var(--muted);font-weight:600}
.proc-meta dt .i{width:16px;height:16px;color:var(--c)}
.proc-docs-title{margin:16px 20px 8px;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c)}
.proc-docs{flex:1;display:grid;align-content:start;gap:6px;margin:0 20px 18px;padding-left:1.3em;font-size:.93rem;line-height:1.6}
.proc-docs li::marker{color:var(--c);font-weight:700}
.proc-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-top:1px solid var(--line);background:var(--paper)}
a.chip{display:inline-flex;align-items:center}

/* Chatbot tư vấn */
.float{justify-items:end}
.chat-launch{display:flex;align-items:center;gap:8px;height:52px;padding:0 20px 0 16px;border:0;border-radius:26px;background:var(--navy);color:#fff;font:600 .92rem var(--sans);cursor:pointer;box-shadow:0 10px 24px -8px rgba(13,27,42,.5);transition:transform .2s}
.chat-launch:hover{transform:translateY(-2px)}
.chat-launch .i{width:22px;height:22px;color:var(--brass-2)}
.chatbox{position:fixed;right:20px;bottom:24px;z-index:60;display:flex;flex-direction:column;width:min(390px,calc(100vw - 32px));height:min(620px,calc(100vh - 110px));overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg)}
.chatbox[hidden]{display:none}
.chat-head{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--navy);color:#c9d3e1}
.chat-head strong{display:block;color:#fff;font-size:.98rem}
.chat-head small{display:block;font-size:.75rem}
.chat-head .avatar{background:var(--brass);color:#fff}
.chat-close{display:grid;place-items:center;width:36px;height:36px;margin-left:auto;border:0;border-radius:4px;background:transparent;color:#fff;cursor:pointer}
.chat-close:hover{background:rgba(255,255,255,.12)}
.chat-log{flex:1;display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding:16px;background:var(--paper)}
.msg{max-width:88%;padding:10px 14px;border-radius:10px;font-size:.92rem;line-height:1.55}
.msg p{margin:0}
.msg p+p,.msg p+form{margin-top:8px}
.msg-bot{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:2px}
.msg-me{align-self:flex-end;background:var(--navy);color:#fff;border-bottom-right-radius:2px}
.msg-bot a{color:var(--navy);font-weight:600;text-decoration:underline;text-decoration-color:var(--brass-2);text-underline-offset:2px}
.chat-links{display:flex;flex-direction:column;gap:4px}
.chat-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:96px;overflow:auto;padding:10px 12px 0;background:#fff;border-top:1px solid var(--line)}
.chat-chips:empty{display:none}
.chat-chip{padding:6px 11px;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--navy);font-size:.8rem;cursor:pointer}
.chat-chip:hover{border-color:var(--navy)}
.chat-input{display:flex;gap:8px;padding:10px 12px;background:#fff}
.chat-input input{flex:1;min-width:0;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}
.chat-input input:focus{outline:none;border-color:var(--brass);background:#fff}
.chat-input button{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:6px;background:var(--brass);color:#fff;cursor:pointer}
.chat-note{margin:0;padding:0 12px 10px;background:#fff;font-size:.75rem;color:var(--muted)}
.chat-lead{display:flex;gap:6px}
.chat-lead input{flex:1;min-width:0;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:4px}
.chat-lead button{height:38px;padding:0 14px;border:0;border-radius:4px;background:var(--brass);color:#fff;font-weight:600;cursor:pointer}
.chat-ok{color:var(--ok);font-weight:600}
.typing{display:inline-flex;gap:4px;padding:4px 0}
.typing i{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.2s}
.typing i:nth-child(3){animation-delay:.4s}
@keyframes blink{50%{opacity:.25}}
body.chat-open .float{display:none}

/* ===== Nhận diện HDS ===== */
.brand-logo{height:54px;width:auto}
.login-link{display:flex;align-items:center;gap:6px;font-weight:600;font-size:.92rem;color:var(--navy)}
.login-link .i{width:18px;height:18px}
.login-link:hover{color:var(--brass)}

/* Mega menu 5 nhóm */
.has-mega{position:static}
.mega-wide{left:50%;width:min(1200px,calc(100vw - 32px));top:calc(100% - 6px);transform:translate(-50%,8px);display:block;padding:22px 24px 0}
.has-mega:hover .mega-wide,.has-mega:focus-within .mega-wide,.has-mega.open .mega-wide{transform:translate(-50%,0)}
.mega-cols{display:grid;grid-template-columns:1.25fr 1fr 1.1fr 1.1fr .9fr;gap:0}
.mega-col{padding:0 18px;border-left:1px solid var(--line)}
.mega-col:first-child{padding-left:0;border-left:0}
.mega-cat{display:flex;align-items:center;gap:8px;margin:0 0 12px;padding-bottom:10px;border-bottom:2px solid var(--c);font-weight:700;font-size:.92rem;color:var(--c)}
.mega-cat .i{width:18px;height:18px}
.mega-tier{margin:10px 0 6px;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.mega-tier-sau{color:var(--brass-d)}
.mega-col ul{list-style:none;padding:0;margin:0 0 6px}
.mega-col li a{display:block;padding:5px 0;font-size:.88rem;line-height:1.4;color:var(--ink)}
.mega-col li a:hover{color:var(--brass)}
.mega-wide .mega-foot{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px 20px;margin:16px -24px 0;padding:12px 24px;border-top:1px solid var(--line);background:var(--paper);border-radius:0 0 8px 8px}
.mega-wide .mega-foot a{display:inline-flex;align-items:center;gap:6px;font-size:.84rem;font-weight:600;color:var(--navy)}
.mega-wide .mega-foot a:hover{color:var(--brass)}
.mega-wide .mega-foot .i{width:15px;height:15px;color:var(--brass)}

/* Hero HDS */
.hero-slogan{display:flex;align-items:center;gap:8px;margin:0 0 16px;font-weight:700;font-size:1.08rem;color:var(--brass)}
.hero-slogan .i{width:20px;height:20px}
.tier-btns{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:560px;margin:26px 0 22px}
.tier-btn{display:flex;flex-direction:column;gap:4px;padding:14px 18px;border-radius:4px;transition:transform .2s,box-shadow .2s}
.tier-btn strong{font-size:.92rem;letter-spacing:.06em;text-transform:uppercase}
.tier-btn span{font-size:.85rem}
.tier-btn-chuan{background:var(--brass);color:#fff}
.tier-btn-sau{background:var(--navy);color:#fff}
.tier-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.hero-points{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px 22px;font-size:.92rem;color:var(--muted)}
.hero-points li{display:flex;align-items:center;gap:8px}
.hero-points .i{width:18px;height:18px;color:var(--brass)}

/* Điểm mạnh */
.strengths .head-row{align-items:center}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}
.pillar{position:relative;padding:28px 26px;border:1px solid rgba(255,255,255,.12);border-radius:var(--r);background:rgba(255,255,255,.04)}
.pillar-num{position:absolute;top:18px;right:22px;font:700 2.2rem/1 var(--serif);color:rgba(255,255,255,.12)}
.pillar .i{width:34px;height:34px;padding:6px;border-radius:6px;background:var(--brass);color:#fff;margin-bottom:16px}
.pillar h3{font-size:1.15rem;margin-bottom:8px}
.pillar p{margin:0;font-size:1rem}
.values{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(255,255,255,.12);border-radius:var(--r);overflow:hidden}
.value{display:flex;gap:12px;align-items:center;padding:18px 20px}
.value+.value{border-left:1px solid rgba(255,255,255,.12)}
.value .i{width:26px;height:26px;color:var(--brass-2)}
.value p{margin:0;font-size:.96rem;line-height:1.4}
.value strong{display:block;color:#fff;font-size:1.06rem}
.hds-quote{margin:28px 0 0;text-align:center}
.hds-quote p{margin:0 auto;max-width:760px;font:600 clamp(1.15rem,1rem + .6vw,1.45rem)/1.5 var(--serif);color:#fff}
.hds-quote cite{display:block;margin-top:10px;font-style:normal;font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-2)}

/* 2 nhóm dịch vụ */
.tier-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.tier-card{display:flex;flex-direction:column;padding:32px;border-radius:var(--r);border:1px solid var(--line);background:#fff;scroll-margin-top:calc(var(--hh) + 20px)}
.tier-card-chuan{border-top:4px solid var(--brass)}
.tier-card-sau{border-top:4px solid var(--navy);background:linear-gradient(180deg,#f3f5fb,#fff 40%)}
.tier-label{margin:0 0 6px;font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brass)}
.tier-card h2,.tier-card h3{font-size:1.5rem;margin-bottom:6px}
.tier-sub{color:var(--muted);margin-bottom:6px}
.tier-card .checks{margin:16px 0}
.tier-links{list-style:none;padding:16px 0 0;margin:0 0 24px;border-top:1px dashed var(--line);display:flex;flex-wrap:wrap;gap:8px;flex:1;align-content:flex-start}
.tier-links a{display:inline-block;padding:7px 13px;border:1px solid var(--line);border-radius:3px;font-size:.92rem;color:var(--navy);background:var(--paper)}
.tier-links a:hover{border-color:var(--brass);color:var(--brass)}
.tier-card .btn{align-self:flex-start}

/* Chi phí */
.cost-head{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start;margin-bottom:40px}
.cost-head .section-head{margin:0}
.cost-checks{margin:4px 0 0}

/* Vấn đề khách hàng */
.pains{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pain{display:flex;gap:14px;align-items:flex-start;padding:20px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.pain .i{flex:none;width:40px;height:40px;padding:9px;border-radius:6px;background:var(--navy);color:var(--brass-2)}
.pain p{margin:0;font-weight:500;line-height:1.5}

/* Nhãn chuẩn hóa / chuyên sâu */
.card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}
.card-top .card-icon{margin:0}
.tier{display:inline-block;padding:3px 8px;border-radius:3px;font-size:.75rem;font-weight:700;letter-spacing:.04em}
.tier-chuan{background:#fff1e6;color:var(--brass-d)}
.tier-sau{background:#e8ecf7;color:var(--navy)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.util .card-icon{background:var(--c);color:#fff}
.util{border-top:3px solid var(--c)}
.link-btn{padding:0;border:0;background:none;font:inherit;color:inherit;cursor:pointer;text-align:left}
.link-btn::after{content:"";position:absolute;inset:0}
.link-btn:hover{color:var(--brass)}

/* Trang dịch vụ tổng hợp */
.cat-head{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding:16px 22px;border-radius:var(--r);background:var(--c);color:#fff}
.cat-head .i{width:28px;height:28px}
.cat-head h2{margin:0;color:#fff;font-size:1.45rem}
.cat-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.cat-tier{padding:20px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.cat-tier .mega-tier{margin-top:0}
.svc-mini{list-style:none;padding:0;margin:0}
.svc-mini a{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}
.svc-mini li:last-child a{border-bottom:0}
.svc-mini .i{flex:none;width:36px;height:36px;padding:8px;border-radius:6px;background:var(--paper);color:var(--navy)}
.svc-mini strong{display:block;color:var(--navy);font-size:.96rem}
.svc-mini small{display:block;color:var(--muted);font-size:.82rem}
.svc-mini a:hover strong{color:var(--brass)}
.price-cat{margin:36px 0 12px;padding-left:12px;border-left:4px solid var(--c);font-size:1.3rem;color:var(--c)}
.price-cat:first-child{margin-top:0}

/* Biểu mẫu phụ */
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-err{margin:0;padding:12px 14px;border-radius:4px;background:#fdecea;color:#a1271c;font-weight:600;font-size:.9rem}
.form-err[hidden]{display:none}
.form-dark{padding:0;background:transparent;color:#fff;gap:10px}
.form-dark .field label{color:#fff}
.form-dark input{background:#fff}
.help-card .form-ok{background:#e9f4ee}
.quote-price-sm{font-size:1.5rem!important}

/* Về HDS */
.founder{align-items:start}
.founder-quote{margin:0;padding:24px 28px;border-left:4px solid var(--brass);background:#fff;border-radius:0 var(--r) var(--r) 0}
.founder-quote p{font:600 1.1rem/1.6 var(--serif);color:var(--navy)}
.founder-quote cite{display:block;font-style:normal;font-size:.86rem;color:var(--muted)}

/* Footer HDS */

.section>.layout{padding-top:0;padding-bottom:0}
/* Danh mục hồ sơ (trang chủ) */
.doc-index{columns:2;column-gap:56px;border-top:2px solid var(--navy)}
.doc-group{break-inside:avoid;padding-top:18px}
.doc-group-title{margin:0 0 4px;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.doc-list{list-style:none;padding:0;margin:0 0 10px}
.doc-list a{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:baseline;padding:13px 0;border-bottom:1px solid var(--line)}
.doc-no{font:700 .95rem var(--serif);color:var(--brass)}
.doc-name{font-weight:600;color:var(--navy)}
.doc-meta{font-size:.82rem;color:var(--muted);white-space:nowrap}
.doc-list a:hover .doc-name{color:var(--brass);text-decoration:underline;text-underline-offset:3px}

/* Trang hồ sơ thủ tục */
.dossier-group{margin:48px 0 18px;padding-bottom:10px;border-bottom:2px solid var(--navy);font-size:1.45rem}
.dossier-group:first-child{margin-top:0}
.dossier{padding:26px 0 30px;border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--hh) + 20px)}
.dossier:target{background:linear-gradient(90deg,#fff7ef,transparent 60%)}
.dossier-no{margin:0 0 4px;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brass)}
.dossier h3{margin:0 0 16px;font-size:1.25rem}
.dossier-meta{width:100%;margin:0 0 18px;border:1px solid var(--line);font-size:.93rem}
.dossier-meta th{width:30%;background:var(--paper);font-weight:600;color:var(--navy)}
.dossier-label{margin:0 0 8px;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dossier-docs{list-style:none;counter-reset:doc;padding:0;margin:0 0 16px}
.dossier-docs li{counter-increment:doc;position:relative;padding:9px 0 9px 64px;border-bottom:1px dotted var(--line);line-height:1.55}
.dossier-docs li::before{content:"";position:absolute;left:0;top:12px;width:16px;height:16px;border:1.5px solid var(--navy);border-radius:2px}
.dossier-docs li::after{content:counter(doc) ".";position:absolute;left:28px;top:9px;font-weight:700;color:var(--navy)}
.dossier footer{display:flex;gap:22px;font-size:.9rem;font-weight:600}
.dossier footer a,.dossier footer .link-btn{color:var(--navy);text-decoration:underline;text-decoration-color:var(--brass-2);text-underline-offset:3px}
.dossier footer .link-btn::after{display:none}
@media print{
  .site-header,.site-footer,.float,.mbar,.chatbox,.aside,#bao-gia,.page-hero .crumbs{display:none!important}
  .layout{display:block;padding:0}
  .section{padding:0}
  .dossier{break-inside:avoid;padding:14px 0}
  .dossier footer{display:none}
  body{background:#fff}
}

/* Đội ngũ – ảnh chân dung thật */
.people{display:grid;grid-template-columns:repeat(var(--team-cols,4),1fr);gap:32px 24px}
.person-photo{aspect-ratio:4/5;overflow:hidden;border-radius:4px;background:#e8ebf0}
.person-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.person:hover .person-photo img{transform:scale(1.03)}
.person-body{padding-top:14px;border-top:2px solid var(--navy);margin-top:14px}
.person-title{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brass)}
.person h3{margin:2px 0 4px;font-size:1.12rem}
.person-role{margin:0;font-size:.88rem;font-weight:600;color:var(--ink)}
.person-exp{margin:2px 0 0;font-size:.84rem;color:var(--muted)}
.person-bio{margin:10px 0 0;font-size:.9rem;line-height:1.55;color:var(--muted)}
.founder-photo{margin:24px 0 0;max-width:300px}
.founder-photo img{border-radius:4px;aspect-ratio:4/5;object-fit:cover}
.founder-photo figcaption{margin-top:10px;font-size:.88rem;color:var(--muted)}
.founder-photo strong{display:block;color:var(--navy);font-size:1rem}

/* Video mô phỏng hệ thống */
.hero-grid-video{grid-template-columns:1fr 1fr}
.video-fig{margin:0}
.video-fig video{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:10px;background:#e9edf6;box-shadow:0 30px 60px -28px rgba(28,43,99,.5)}
.video-fig figcaption{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;font-size:.86rem;color:var(--muted)}
.video-fig figcaption .i{width:16px;height:16px;color:var(--brass)}
.video-fig figcaption a{font-weight:700;color:var(--brass);text-decoration:underline;text-underline-offset:3px}
.prose .video-fig{margin:8px 0 28px}
.util-video{align-items:center}

/* Đặt dịch vụ trực tuyến */
.order{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start;margin-top:8px}
.order-main{display:grid;gap:22px}
.order-group{margin:0;padding:22px 24px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}
.order-group legend{padding:0 8px;margin-left:-8px;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}
.packs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-bottom:12px}
.pack{display:grid;gap:2px;text-align:left;padding:14px 16px;border:1.5px solid var(--line);border-radius:6px;background:var(--paper);cursor:pointer;transition:border-color .2s,background-color .2s}
.pack:hover{border-color:var(--blue)}
.pack[aria-pressed="true"]{border-color:var(--brass);background:#fff7ef}
.pack-name{font-weight:700;color:var(--navy)}
.pack-price{font-family:var(--serif);font-size:1.25rem;font-weight:700;color:var(--brass-d)}
.pack-meta{font-size:.8rem;color:var(--muted)}
label.opt{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:14px;align-items:start;padding:14px 0;border-top:1px solid var(--line);cursor:pointer}
.order-group legend+.opt{border-top:0}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt-box{display:grid;place-items:center;width:22px;height:22px;margin-top:1px;border:1.5px solid #b9c2d3;border-radius:4px;background:#fff;transition:background-color .15s,border-color .15s}
.opt-box .i{width:14px;height:14px;color:#fff;stroke-width:3;opacity:0}
.opt input:checked+.opt-box{background:var(--brass);border-color:var(--brass)}
.opt input:checked+.opt-box .i{opacity:1}
.opt input:focus-visible+.opt-box{outline:2px solid var(--blue);outline-offset:2px}
.opt-text strong{display:block;font-weight:600;color:var(--ink);line-height:1.4}
.opt-text small{display:block;margin-top:3px;font-size:.86rem;line-height:1.5;color:var(--muted)}
.opt-price{font-weight:700;color:var(--navy);white-space:nowrap}
.order-sum{position:sticky;top:96px;display:grid;gap:12px;padding:26px;border-radius:8px;background:var(--navy);color:#c9d3e1;box-shadow:var(--shadow-lg)}
.sum-label{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-2)}
.sum-total{margin:0;font-family:var(--serif);font-size:2.3rem;font-weight:700;line-height:1.1;color:#fff}
.sum-total small{font-family:var(--sans);font-size:.8rem;font-weight:700;color:var(--brass-2)}
.sum-list{list-style:none;margin:0;padding:12px 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);display:grid;gap:8px;font-size:.88rem}
.sum-list:empty{display:none}
.sum-list li{display:flex;justify-content:space-between;gap:12px}
.sum-list b{color:#fff;white-space:nowrap}
.sum-note{margin:0;font-size:.82rem;color:#f3c99c}
.sum-foot{display:flex;gap:8px;margin:4px 0 0;font-size:.82rem;line-height:1.5;color:#a3b3c9}
.sum-foot .i{flex:none;width:16px;height:16px;margin-top:2px;color:var(--brass-2)}
.sum-foot b{color:#fff}
.dlg{width:min(460px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:30px;border:0;border-radius:10px;box-shadow:var(--shadow-lg);color:var(--ink)}
.dlg::backdrop{background:rgba(16,24,56,.6)}
.dlg h2{font-size:1.45rem;margin:0 0 14px}
.dlg-auth,.dlg-done{display:grid;gap:14px}
.dlg-auth[hidden],.dlg-done[hidden],.dlg [data-reg][hidden]{display:none}
.dlg .eyebrow{margin:0}
.dlg-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:var(--paper);cursor:pointer}
.dlg-close .i{width:18px;height:18px}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:6px;background:var(--paper)}
.auth-tabs button{padding:10px;border:0;border-radius:4px;background:none;font-weight:600;color:var(--muted);cursor:pointer}
.auth-tabs button[aria-selected="true"]{background:#fff;color:var(--navy);box-shadow:0 1px 3px rgba(28,43,99,.15)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dlg-done .sum-list{color:var(--ink);border-color:var(--line)}
.dlg-done .sum-list b{color:var(--navy)}
.done-code{margin:0;padding:12px 14px;border-radius:4px;background:var(--paper);font-size:.92rem}
.done-code b{font-family:ui-monospace,Consolas,monospace;font-size:1.05rem;color:var(--navy);margin-left:6px}
.done-total{margin:0}
.done-total b{color:var(--brass-d)}
.done-note{margin:0;font-size:.9rem;line-height:1.6;color:var(--muted)}

/* Responsive */
@media (max-width:1240px){
  .hotline span{display:none}
}
@media (max-width:1140px){
  .hotline span{display:none}
  .nav-link{padding:0 10px}
}
/* Khách hàng tiêu biểu: dải logo */
.clients{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 36px}
.client{display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 6px;color:var(--navy);text-decoration:none;filter:grayscale(1);opacity:.72;transition:filter .2s,opacity .2s}
.client:hover{filter:none;opacity:1}
.client img{max-height:44px;width:auto;max-width:170px;object-fit:contain}
.client-name{font:600 1.05rem/1.2 var(--serif);white-space:nowrap}
.clients-sec .section-head{margin-bottom:28px}
/* Vụ việc tiêu biểu */
.more-left{text-align:left;margin-top:16px}
/* Người phụ trách trên trang dịch vụ, mã QR lưu danh bạ */
.lead-card{display:grid;grid-template-columns:150px minmax(0,1fr) 150px;gap:20px;align-items:start;margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.lead-card-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;border-radius:4px}
.prose .lead-card h3{margin:2px 0 4px;font-size:1.3rem}
.lead-card-short{margin:10px 0 14px;font-size:.92rem;line-height:1.55;color:var(--muted)}
.lead-card-actions{display:flex;flex-wrap:wrap;gap:8px}
.lead-card-qr{text-align:center}
.lead-card-qr svg{display:block;width:150px;height:150px;border:1px solid var(--line);border-radius:4px}
.lead-card-qr small{display:block;margin-top:6px;font-size:.75rem;font-weight:600;color:var(--muted)}
.profile-qr{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;align-items:center;margin-top:18px;padding:14px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.profile-qr svg{display:block;width:132px;height:132px;border-radius:4px}
.profile-qr strong{display:block;margin-bottom:4px;color:var(--navy)}
.profile-qr p{margin:0 0 10px;font-size:.86rem;line-height:1.5;color:var(--muted)}
/* Chân trang: cam kết với khách hàng */
/* Bài viết: luật sư kiểm duyệt, căn cứ pháp lý */
.byline-who{display:flex;gap:10px;align-items:center;color:inherit}
.byline-who img{width:40px;height:50px;object-fit:cover;object-position:top;border-radius:3px;flex:none}
.byline-who:hover strong{color:var(--brass)}
.basis{margin:32px 0 0;padding:18px 20px;border:1px solid var(--line);border-left:3px solid var(--navy);border-radius:var(--r);background:var(--paper)}
.prose .basis h2{margin:0 0 10px;font-size:1.05rem}
.basis ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.92rem}
.basis li{display:flex;gap:8px;align-items:flex-start}
.basis .i{width:18px;height:18px;flex:none;margin-top:2px;color:var(--navy)}
.reviewed{display:flex;gap:8px;align-items:flex-start;margin:16px 0 0;font-size:.88rem;color:var(--muted)}
.reviewed .i{width:18px;height:18px;flex:none;color:var(--ok)}
.reviewed a{color:var(--navy);font-weight:600}
/* Trang dịch vụ: khối ngang + thanh mục lục dính */
.sec-nav{position:sticky;top:var(--hh);z-index:20;background:#fff;border-bottom:1px solid var(--line)}
.sec-nav ul{list-style:none;display:flex;gap:4px;margin:0;padding:0;overflow-x:auto;scrollbar-width:none}
.sec-nav ul::-webkit-scrollbar{display:none}
.sec-nav a{display:block;padding:14px 12px;border-bottom:2px solid transparent;font-size:.86rem;font-weight:600;white-space:nowrap;color:var(--muted)}
.sec-nav a:hover{color:var(--navy);border-color:var(--brass)}
/* Mục đang đọc tô đậm (main.js); nút "Mục lục" và số thứ tự chỉ dùng trên điện thoại/máy tính bảng */
.sec-nav a[aria-current]{color:var(--navy);border-color:var(--brass)}
.sec-bar,.sec-nav li i{display:none}
@media (max-width:980px){
  .sec-bar{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:0;border:0;background:none;font:inherit;color:var(--navy);text-align:left;cursor:pointer}
  .sec-cur{flex:1;min-width:0;display:flex;align-items:center;gap:10px}
  .sec-cur em{flex:none;padding:3px 8px;border-radius:999px;background:var(--paper);font-style:normal;font-size:.76rem;font-weight:700;color:var(--blue)}
  .sec-cur b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem}
  .sec-more{flex:none;display:flex;align-items:center;gap:4px;padding:6px 10px 6px 12px;border-radius:999px;background:var(--paper);font-size:.84rem;font-weight:600;color:var(--blue)}
  .sec-more .i{width:14px;height:14px;transition:transform .2s}
  .sec-nav.is-open{box-shadow:0 10px 18px rgba(28,43,99,.1)}
  .sec-nav.is-open .sec-more .i{transform:rotate(180deg)}
  .sec-nav ul{display:none}
  .sec-nav.is-open ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:calc(100vh - var(--hh) - 140px);overflow-y:auto;padding:2px 0 14px}
  .sec-nav.is-open li:last-child:nth-child(odd){grid-column:1/-1}
  .sec-nav.is-open a{display:flex;align-items:center;gap:9px;height:100%;min-height:46px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r);white-space:normal;line-height:1.3;font-size:.88rem;color:var(--navy)}
  .sec-nav li i{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:50%;background:var(--paper);font-style:normal;font-size:.75rem;font-weight:700;color:var(--blue)}
  .sec-nav.is-open a[aria-current]{border-color:var(--brass);background:var(--paper)}
  .sec-nav.is-open a[aria-current] i{background:var(--brass);color:#fff}
}
.svc-sec{scroll-margin-top:38px}/* cộng với scroll-padding-top của html (đầu trang + 16px): đầu mục nằm ngay dưới thanh mục lục */
.svc-h2{margin:0 0 24px;font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}
.svc-h3{margin:0 0 14px;font-size:1.15rem}
.svc-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);align-items:start}
.svc-two-wide{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.svc-two .prose{font-size:1.02rem}
.svc-two .prose>:first-child{margin-top:0}
.svc-cover{margin:0 0 20px}
.svc-cover img{width:100%;height:auto;border-radius:var(--r)}
.svc-cover figcaption{margin-top:8px;font-size:.82rem;color:var(--muted)}
.note-list{margin:0;padding-left:20px;display:grid;gap:8px;line-height:1.6}
.table-wrap.narrow{max-width:760px}
/* Trang chủ: đội ngũ gọn */
/* Nút gập khách hàng tiêu biểu */
.clients-toggle{margin-top:22px}
.clients-toggle summary{display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;border:1px solid var(--line);border-radius:var(--r);background:#fff;font-weight:600;font-size:.9rem;color:var(--navy);cursor:pointer;list-style:none}
.clients-toggle summary::-webkit-details-marker{display:none}
.clients-toggle summary .i{width:18px;height:18px;color:var(--brass)}
.clients-toggle summary small{font-weight:500;color:var(--muted)}
.clients-toggle[open] summary{border-color:var(--navy)}
.clients-toggle .clients{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
/* Bản tin: thông tin HDS */
.info-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.info-list li{display:flex;gap:10px;align-items:flex-start;font-size:.88rem;line-height:1.45}
.info-list .i{width:18px;height:18px;flex:none;margin-top:2px;color:var(--brass)}
.info-list small{display:block;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.info-list a{color:var(--navy);font-weight:600}
/* Nghề nghiệp */
.jobs{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.job{position:relative;display:flex;flex-direction:column;padding:22px 22px 18px;border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:border-color .2s,box-shadow .2s}
.job:hover{border-color:var(--brass-2);box-shadow:var(--shadow)}
.job-meta{display:flex;gap:10px;align-items:center;margin:0 0 10px;font-size:.8rem;color:var(--muted)}
.job h3{margin:0 0 8px;font-size:1.15rem}
.job h3 a::after{content:"";position:absolute;inset:0}
.job>p:not(.job-meta){margin:0 0 12px;font-size:.92rem;line-height:1.55;color:var(--muted)}
.job .card-go{margin-top:auto}
/* Về HDS: HDS Framework, giá trị cốt lõi */
.frame{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.frame-step{position:relative;padding:26px 24px 22px;border:1px solid var(--line);border-top:3px solid var(--brass);border-radius:var(--r);background:var(--paper)}
.frame-letter{display:block;font:700 3rem/1 var(--serif);color:var(--navy)}
.frame-en{margin:4px 0 10px;font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brass)}
.frame-step h3{margin:0 0 10px;font-size:1.1rem}
.frame-step ul{margin:0;padding-left:18px;color:var(--muted);line-height:1.6}
.core-values{display:grid;gap:14px}
.core-value{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.core-value .i{width:36px;height:36px;padding:8px;border-radius:4px;background:var(--navy);color:var(--brass-2);flex:none}
.core-value strong{display:block;margin-bottom:2px;color:var(--navy)}
.core-value p{margin:0;font-size:.9rem;line-height:1.5;color:var(--muted)}
.vision{margin:24px 0 0;padding:20px 22px;border-left:3px solid var(--brass);background:#fff;border-radius:0 var(--r) var(--r) 0}
.vision p{margin:0 0 6px;font:500 1.08rem/1.6 var(--serif);color:var(--navy)}
.vision cite{font-style:normal;font-size:.82rem;color:var(--muted)}
@media (max-width:980px){
  .hub{grid-template-columns:1fr 1fr}
  .hub-news{grid-column:1/-1;grid-row:1}
  .frame{grid-template-columns:1fr}
  .cases{grid-template-columns:1fr 1fr}
  .lead-card{grid-template-columns:120px minmax(0,1fr)}
  .lead-card-qr{grid-column:1/-1;display:flex;gap:12px;align-items:center;text-align:left}
  .nav-toggle{display:grid;place-items:center;width:46px;height:46px;margin-left:auto;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer;color:var(--navy)}
  .nav-toggle .i-close,.nav-toggle[aria-expanded=true] .i-open{display:none}
  .nav-toggle[aria-expanded=true] .i-close{display:block}
  .header-cta{margin-left:auto}
  .header-cta .btn{display:none}
  .site-nav{position:fixed;inset:var(--hh) 0 0 0;margin:0;padding:8px 16px 120px;background:var(--paper);overflow-y:auto;transform:translateX(100%);visibility:hidden;transition:transform .25s,visibility .25s}
  .site-nav.open{transform:none;visibility:visible}
  .nav-list{flex-direction:column;align-items:stretch;gap:0}
  .nav-row{justify-content:space-between;border-bottom:1px solid var(--line)}
  .nav-list>li:not(.has-sub)>.nav-link{border-bottom:1px solid var(--line)}
  .nav-link{height:56px;padding:0 4px;font-size:1.05rem;border-radius:0}
  .sub-toggle{width:56px;height:56px;margin:0}
  .has-sub:hover .sub-toggle .i{transform:none}
  .has-sub.open .sub-toggle .i{transform:rotate(180deg)}
  .mega,.has-sub:hover .mega,.has-sub:focus-within .mega{position:static;width:auto;transform:none;opacity:1;visibility:visible;display:none;grid-template-columns:1fr;padding:8px 0 16px;border:0;border-radius:0;box-shadow:none;background:transparent}
  .has-sub.open .mega{display:grid;transform:none}
  .mega::before{display:none}
  .mega-title{margin-top:14px}
  .nav-mobile-cta{display:grid;gap:10px;margin-top:24px}
  body.nav-open{overflow:hidden}
  .hero-grid,.split,.cta,.contact-grid,.page-hero-grid{grid-template-columns:1fr}
  .hero-media img{margin:0 auto;max-width:480px}
  .grid-3,.posts,.team,.pricing{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr;row-gap:36px}
  .step:nth-child(2)::before{display:none}
  .why{grid-template-columns:1fr 1fr}
  .why-item:nth-child(3){padding-left:0;border-left:0}
  .layout{grid-template-columns:1fr}
  .aside{position:static}
  .aside .toc{display:none}
  .post-card-big{grid-template-columns:1fr}
  .hub{grid-template-columns:1fr 1fr}
  .mega-wide{display:none;padding:8px 0}
  .has-mega.open .mega-wide{display:block}
  .mega-cols{grid-template-columns:1fr}
  .mega-col{padding:10px 0;border-left:0}
  .mega-wide .mega-foot{margin:8px 0 0;padding:12px 0;background:transparent}
  .pillars,.cost-head{grid-template-columns:1fr}
  .values{grid-template-columns:1fr 1fr}
  .value:nth-child(3){border-left:0}
  .value:nth-child(n+3){border-top:1px solid rgba(255,255,255,.12)}
  .tier-cards{grid-template-columns:1fr}
  .pains{grid-template-columns:1fr 1fr}
  .team{grid-template-columns:1fr 1fr}
  .people{grid-template-columns:repeat(3,1fr)}
  .order{grid-template-columns:1fr}
  .order-sum{position:static}
  .proc-grid{grid-template-columns:repeat(3,1fr)}
  .hub-news{grid-column:1/-1}
  .post-card-big .post-thumb{aspect-ratio:1200/630}
  .pricing .plan.featured{order:-1}
}
@media (max-width:760px){
  .svc-two,.svc-two-wide,.jobs{grid-template-columns:1fr}
  .hub{grid-template-columns:1fr}
  .cases,.cases-2{grid-template-columns:1fr}
  .lead-card{grid-template-columns:1fr}
  .lead-card-photo{max-width:150px}
  .profile-qr{grid-template-columns:1fr}
  .clients{gap:8px 20px}
  .client-name{font-size:.92rem}
  :root{--hh:64px}
  body{padding-bottom:72px}
  .brand-mark{width:36px;height:36px}
  .brand-name{font-size:1.1rem}
  .hotline .i{width:42px;height:42px}
  .grid-3,.posts,.team,.pricing,.steps{grid-template-columns:1fr}
  .step::before{display:none}
  .stats{grid-template-columns:1fr 1fr;gap:28px 16px}
  .why{grid-template-columns:1fr}
  .why-item,.why-item+.why-item{padding:26px 0 0;margin:0;border-left:0}
  .head-row{flex-direction:column;align-items:flex-start}
  .facts{grid-template-columns:1fr 1fr}
  .fact{padding:14px}
  .hero-actions .btn{flex:1 1 100%}
  .float{display:none}
  .mbar{display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:45;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 24px -12px rgba(15,27,45,.18)}
  .mbar a,.mbar button{border:0;font:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;min-height:48px;border-radius:4px;font-weight:600;font-size:.88rem;color:var(--navy);background:var(--paper)}
  .mbar .i{width:18px;height:18px}
  .mbar a,.mbar button{flex-direction:column;gap:2px;font-size:.78rem!important}
  .chatbox{inset:0;width:auto;height:auto;border-radius:0;border:0}
  body.chat-open{overflow:hidden}
  body.chat-open .mbar{display:none}
  .proc-grid{grid-template-columns:1fr 1fr}
  .proc-cards{grid-template-columns:1fr}
  .proc-meta div{grid-template-columns:1fr;gap:2px}
  .mega>div+div{border-left:0;padding-left:0}
  .mbar .mbar-main{background:var(--brass);color:#fff}
  .faq .ans{padding-right:0}
  .price-table td:last-child,.price-table th:last-child{display:none}
  .member{flex-direction:column}
  .hub{grid-template-columns:1fr}
  .doc-index{columns:1}
  .doc-list a{grid-template-columns:34px 1fr}
  .doc-meta{grid-column:2}
  .dossier-meta th{width:40%}
  .tier-btns,.pains,.grid-2,.field-row,.values{grid-template-columns:1fr}
  .value+.value{border-left:0;border-top:1px solid rgba(255,255,255,.12)}
  .team{grid-template-columns:1fr 1fr}
  .brand-logo{height:44px}
  .people{grid-template-columns:1fr 1fr;gap:24px 14px}
  .packs{grid-template-columns:1fr}
  .pack{grid-template-columns:1fr auto;align-items:center}
  .pack-meta{grid-column:1}
  .pack-price{grid-row:1 / span 2;grid-column:2}
  .order-group{padding:18px 16px 6px}
  label.opt{grid-template-columns:22px minmax(0,1fr);gap:4px 12px}
  .opt-price{grid-column:2}
  .dlg{padding:24px 20px}
  .person h3{font-size:1rem}
  .person-bio{display:none}
  .news-list li{grid-template-columns:96px 1fr}
  .map iframe{height:320px}
  .cta{border-radius:8px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Đội ngũ: thẻ bấm mở hồ sơ */
.person{position:relative}
.person h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.person:hover h3 a,.person h3 a:focus-visible{color:var(--brass)}
.person-more{display:inline-flex;align-items:center;gap:4px;margin-top:8px;font-size:.82rem;font-weight:600;color:var(--brass)}
.person-more .i{width:14px;height:14px;transition:transform .2s}
.person:hover .person-more .i,.mini-person:hover .person-more .i{transform:translateX(3px)}
.people-full{grid-template-columns:repeat(var(--team-cols-full,3),1fr);gap:40px 28px}
.lead-chip{display:flex;gap:12px;align-items:center;min-width:0}
.lead-chip img{width:56px;height:70px;object-fit:cover;object-position:top;border-radius:3px;flex:none}
.lead-chip strong{display:block;font-size:1rem;line-height:1.3;color:var(--navy)}
.lead-chip small{display:block;font-size:.86rem;line-height:1.35;color:var(--muted)}
.lead-chip:hover strong{color:var(--brass)}
.people-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
.mini-person{position:relative;display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:border-color .2s,box-shadow .2s}
.mini-person:hover{border-color:var(--brass-2);box-shadow:var(--shadow)}
.mini-person img{width:84px;height:105px;object-fit:cover;object-position:top;border-radius:3px}
.prose .mini-person h3,.mini-person h3{margin:0 0 2px;font:700 1.05rem/1.3 var(--serif);color:var(--navy)}
.mini-person h3 a::after{content:"";position:absolute;inset:0}
.prose .mini-person p,.mini-person p{margin:0;font-size:.86rem;line-height:1.45;color:var(--muted)}
.prose .mini-person .person-title{color:var(--brass);font-size:.75rem}
.mini-person .person-more{margin-top:6px}

/* Hồ sơ nhân sự */
.profile-page{background:#fff;padding-bottom:clamp(48px,6vw,80px);border-bottom:1px solid var(--line)}
.profile-head{display:grid;grid-template-columns:300px minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start;margin-top:28px}
.profile-photo{margin:0}
.profile-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;border-radius:4px;background:#e8ebf0}
.profile-name{margin:2px 0 6px;font-size:clamp(1.9rem,1.4rem + 1.8vw,2.8rem)}
.profile-role{margin:0;font-size:1.05rem;font-weight:600;color:var(--ink)}
.profile-role span{display:block;font-size:.9rem;font-weight:400;color:var(--muted)}
.profile-facts{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;margin:22px 0;border-top:2px solid var(--navy);border-bottom:1px solid var(--line)}
.profile-facts div{padding:14px 16px 14px 0}
.profile-facts div+div{padding-left:16px;border-left:1px solid var(--line)}
.profile-facts dt{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.profile-facts dd{margin-top:4px;font-weight:700;line-height:1.4;color:var(--navy)}
.profile-motto{display:flex;gap:12px;align-items:flex-start;margin:0 0 22px;font:600 1.12rem/1.5 var(--serif);color:var(--navy)}
.profile-motto .i{width:28px;height:28px;color:var(--brass);flex:none}
.profile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}
.profile-contact{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;font-size:.94rem}
.profile-contact a{display:inline-flex;gap:7px;align-items:center;color:var(--navy);font-weight:600}
.profile-contact a:hover{color:var(--brass)}
.profile-contact .i{width:18px;height:18px;color:var(--brass)}
.profile-body{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(28px,4vw,56px);margin-top:clamp(36px,4vw,56px);padding-top:clamp(28px,3vw,40px);border-top:1px solid var(--line)}
.profile-main h2{font-size:1.35rem;margin-bottom:12px}
.profile-main section+section{margin-top:32px}
.profile-main p{line-height:1.78}
.profile-main .checks{margin:0}
.pf-box{padding:20px 22px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.pf-box+.pf-box{margin-top:16px}
.pf-box h2{margin:0 0 14px;font:700 .75rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{padding:5px 11px;border:1px solid var(--line);border-radius:3px;background:#fff;font-size:.86rem;font-weight:500;color:var(--navy)}
.pf-edu{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.pf-edu li{display:flex;gap:10px;align-items:flex-start;font-size:.93rem;font-weight:500;line-height:1.45}
.pf-edu .i{width:22px;height:22px;color:var(--brass);flex:none}
.pf-svcs{list-style:none;padding:0;margin:0}
.pf-svcs a{display:block;padding:8px 0;border-bottom:1px dotted #c9d0de;font-size:.92rem;color:var(--navy)}
.pf-svcs li:last-child a{border-bottom:0}
.pf-svcs a:hover{color:var(--brass)}
.pdlg{width:min(1000px,calc(100vw - 32px));max-height:calc(100vh - 40px);padding:0;border:0;border-radius:10px;background:#fff;color:var(--ink);box-shadow:var(--shadow-lg);overflow:hidden}
.pdlg[open]{display:flex;flex-direction:column}
.pdlg::backdrop{background:rgba(16,24,56,.6)}
.pdlg-body{overflow:auto;overscroll-behavior:contain;padding:clamp(22px,3vw,40px)}
.pdlg .dlg-close{position:absolute;top:12px;right:12px;z-index:2;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#fff;box-shadow:0 1px 6px rgba(15,27,45,.18);cursor:pointer}
.pdlg .dlg-close .i{width:18px;height:18px}
.pdlg .profile-head{margin-top:0;grid-template-columns:240px minmax(0,1fr)}
.pdlg .profile-name{font-size:clamp(1.6rem,1.3rem + 1.2vw,2.2rem)}
.pdlg .profile-body{grid-template-columns:minmax(0,1fr) 300px;margin-top:32px;padding-top:28px}
.pdlg-loading{padding:72px 0;text-align:center;color:var(--muted)}
body:has(.pdlg[open]){overflow:hidden}

/* Dịch vụ chuyên sâu */
.practices{border-top:2px solid var(--navy)}
.practice-no{font:700 1.6rem/1.1 var(--serif);color:var(--brass)}
.practice h3{margin-bottom:8px;font-size:1.35rem}
.practice h3 a:hover{color:var(--brass)}
.practice-svcs{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.practice-svcs a{display:inline-block;padding:5px 11px;border:1px solid var(--line);border-radius:3px;background:var(--paper);font-size:.84rem;color:var(--navy)}
.practice-svcs a:hover{border-color:var(--brass);color:var(--brass)}
.section:not(.section-white) .practice-svcs a{background:#fff}
.practice-label{margin:0 0 12px;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.practice-lead{display:grid;gap:12px;align-content:start}
.deep-lawyers{display:grid;gap:10px;margin:12px 0 0}
.deep-card .quote-note{margin-top:16px}
.split-start{align-items:start}
.signal-list{list-style:none;counter-reset:sg;padding:0;margin:0;border-top:2px solid var(--navy)}
.signal-list li{counter-increment:sg;display:grid;grid-template-columns:48px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);font-weight:500;line-height:1.55}
.signal-list li::before{content:counter(sg,decimal-leading-zero);font:700 1.05rem/1.5 var(--serif);color:var(--brass)}
.engage{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.engage-item{position:relative;padding:28px 26px;border:1px solid rgba(255,255,255,.14);border-radius:var(--r);background:rgba(255,255,255,.04)}
.engage-item h3{margin-bottom:8px;font-size:1.25rem}
.engage-item p{font-size:.95rem}
.engage-item .checks{margin:16px 0 0;font-size:.92rem}
.engage-more{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0 0}
.tier-leads{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:4px 0 24px;padding-top:16px;border-top:1px dashed var(--line)}
.help-lead-who{display:flex;gap:12px;align-items:center;color:#c9d3e1;font-size:.85rem;line-height:1.45}
.help-lead-who img{width:56px;height:70px;object-fit:cover;object-position:top;border-radius:3px;flex:none}
.help-lead-who small{display:block;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-2)}
.help-lead-who strong{display:block;font:600 1.05rem/1.3 var(--serif);color:#fff}
.help-lead-who:hover strong{color:var(--brass-2)}

/* Nhận xét khách hàng */
.reviews-slider{position:relative}
.reviews{--gap:16px;position:relative;display:flex;gap:var(--gap);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab}
.reviews::-webkit-scrollbar{display:none}
.reviews:focus-visible{outline:2px solid var(--brass);outline-offset:4px}
.reviews.is-drag{cursor:grabbing;user-select:none}
.reviews.is-drag a{pointer-events:none}
.review{position:relative;flex:0 0 calc((100% - var(--gap) * var(--review-cols,5)) / (var(--review-cols,5) + .4));aspect-ratio:9/16;display:flex;flex-direction:column;margin:0;overflow:hidden;border-radius:var(--r);background:linear-gradient(165deg,var(--navy-2),var(--navy));color:#fff;isolation:isolate}
.review:focus-visible{outline:2px solid var(--brass);outline-offset:-2px}
.review-photo,.review-video{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover}
.review-video{opacity:0;transition:opacity .35s}
.review.has-video:is(:hover,:focus-within) .review-video{opacity:1}
.review-play{position:absolute;top:10px;left:10px;display:inline-flex;align-items:center;gap:3px;padding:3px 8px 3px 6px;border-radius:3px;background:rgba(0,0,0,.45);color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.04em}
.review-play .i{width:12px;height:12px}
.review:not(.has-photo)::before{content:"\201C";position:absolute;top:8px;left:14px;font:700 3.4rem/1 var(--serif);color:var(--brass)}
/* Câu nhận xét */
.review-body{display:flex;flex-direction:column;flex:1;min-height:0;padding:48px 14px 14px;overflow:hidden}
.review.has-photo .review-body{flex:none;margin-top:auto;padding-top:70px;background:linear-gradient(to top,color-mix(in srgb,var(--navy) 94%,transparent) 0,color-mix(in srgb,var(--navy) 80%,transparent) 55%,transparent 100%)}
.review blockquote{flex:1;min-height:0;margin:0 0 10px;overflow:hidden}
.review.has-photo blockquote{flex:none}
.review blockquote p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;overflow:hidden;margin:0;font:400 .9rem/1.55 var(--serif);color:#fff}
.review.has-photo blockquote p{-webkit-line-clamp:3}
.review.has-photo blockquote p::before{content:"\201C"}
.review.has-photo blockquote p::after{content:"\201D"}
.review.has-photo .review-result{display:none}
/* Rê chuột hoặc chạm vào thẻ: hiện đủ nhận xét */
.review:is(:hover,:focus-within) blockquote{flex:none;overflow:visible}
.review:is(:hover,:focus-within) blockquote p{-webkit-line-clamp:unset}
.review.has-photo:is(:hover,:focus-within) .review-result{display:flex}
.review:is(:hover,:focus-within) .review-body{overflow-y:auto;scrollbar-width:none}
.review-result{display:flex;gap:6px;align-items:flex-start;margin:0;font-size:.76rem;font-weight:600;line-height:1.4;color:#ffcfa6}
.review-result .i{width:15px;height:15px;margin-top:1px}
/* Người nhận xét: khối riêng, nền đặc, tách khỏi câu nhận xét */
.review-foot{display:block;flex:none;margin:0;padding:11px 14px 12px;border-top:2px solid var(--brass);background:#0f1a3f}
.review-who{display:flex;gap:10px;align-items:center}
.review-who>span{min-width:0}
.review-logo{display:grid;place-items:center;flex:none;width:54px;height:36px;padding:4px;border-radius:4px;background:#fff;overflow:hidden}
.review-logo img{width:100%;height:100%;object-fit:contain}
.review-logo.is-photo{width:36px;padding:0}
.review-logo.is-photo img{object-fit:cover}
.review-avatar{width:36px;padding:0;background:rgba(255,255,255,.14);color:#fff;font:700 1rem var(--serif)}
.review-who strong{display:block;font-size:.88rem;line-height:1.3;color:#fff}
.review-who small{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:.75rem;line-height:1.35;color:rgba(255,255,255,.78)}
.review-who small a{color:inherit;text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:2px}
.review-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:8px 0 0;font-size:.75rem;line-height:1.3;color:rgba(255,255,255,.72)}
.review-meta a{color:#fff;text-decoration:underline;text-decoration-color:var(--brass-2);text-underline-offset:3px}
.review-verified{display:inline-flex;align-items:center;gap:3px;padding:2px 7px 2px 5px;border-radius:3px;background:rgba(33,112,74,.4);color:#a8ecc6;font-weight:700;letter-spacing:.02em}
.review-verified .i{width:12px;height:12px;stroke-width:2.4}
.slider-btn{position:absolute;top:50%;z-index:2;display:none;place-items:center;width:42px;height:42px;margin-top:-21px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);box-shadow:0 4px 14px rgba(17,26,51,.16);cursor:pointer}
.slider-btn:hover{border-color:var(--navy);background:var(--navy);color:#fff}
.slider-btn .i{width:18px;height:18px}
.slider-prev{left:-21px}
.slider-prev .i{transform:rotate(180deg)}
.slider-next{right:-21px}
.reviews-slider.is-loop .slider-btn{display:grid}
@media (max-width:1200px){.review{flex-basis:calc((100% - var(--gap) * min(var(--review-cols,5),4)) / (min(var(--review-cols,5),4) + .4))}}
@media (max-width:980px){.review{flex-basis:calc((100% - var(--gap) * 3) / 3.4)}}
@media (max-width:760px){.review{flex-basis:calc((100% - var(--gap)) / 1.6)}.reviews-slider.is-loop .slider-btn{display:none}}
.check-field{display:flex;gap:10px;align-items:flex-start;font-size:.88rem;line-height:1.5;color:var(--muted);cursor:pointer}
.check-field input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--navy);flex:none}
.form.sent .check-field{display:none}

@media (max-width:980px){
  .profile-head,.pdlg .profile-head{grid-template-columns:220px minmax(0,1fr)}
  .profile-body,.pdlg .profile-body{grid-template-columns:1fr}
  .engage{grid-template-columns:1fr 1fr}
  .people-full{grid-template-columns:repeat(3,1fr);gap:28px 18px}
}
@media (max-width:760px){
  .profile-head,.pdlg .profile-head{grid-template-columns:1fr;gap:20px}
  .profile-photo{max-width:240px}
  .profile-facts{grid-auto-flow:row;grid-template-columns:1fr 1fr}
  .profile-facts div:nth-child(3){grid-column:1/-1;padding-left:0;border-left:0;border-top:1px solid var(--line)}
  .profile-actions .btn{flex:1 1 100%}
  .pdlg{width:100vw;max-width:100vw;max-height:100vh;height:100vh;border-radius:0}
  .pdlg-body{padding:20px 16px 32px}
  .people-row,.practice-issues,.deep-promises,.engage,.tier-leads{grid-template-columns:1fr}
  .deep-cta{padding:24px 20px}
  .deep-cta-act,.deep-cta-act .btn{width:100%}
  .people-full{grid-template-columns:1fr 1fr;gap:24px 14px}
  .person-more{font-size:.78rem}
}

/* Khối nhiều cột tự soạn */
.cols-grid{display:grid;grid-template-columns:repeat(var(--cols,3),1fr);gap:20px}
.col-item{padding:26px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.section-white .col-item{background:var(--paper)}
.section-navy .col-item{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.04)}
.col-item h3{margin-bottom:8px;font-size:1.15rem}
.col-item p{font-size:.95rem;color:var(--muted)}
.section-navy .col-item p{color:#c9d3e1}
.section-navy .col-item .link-arrow{color:#fff}
@media (max-width:980px){.cols-grid{grid-template-columns:1fr 1fr}.cols-grid[style*="--cols:1"]{grid-template-columns:1fr}}
@media (max-width:760px){.cols-grid{grid-template-columns:1fr}}
/* Bố cục chia 2 bên (đội ngũ, hỏi đáp trang chủ) */
.split-2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,72px);align-items:center}
.split-2 .section-head{margin-bottom:24px}
.split-2 .section-head h2{font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}
.team-split{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:clamp(32px,4.5vw,56px)}
/* Đội ngũ trang chủ: lưới 3 cột thẻ nhỏ */
.team-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.team-mini{display:flex;gap:9px;align-items:center;min-width:0;padding:8px;border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:border-color .2s,box-shadow .2s}
.section-white .team-mini{background:var(--paper)}
.team-mini:hover{border-color:var(--brass-2);box-shadow:var(--shadow)}
.team-mini img{width:52px;height:65px;object-fit:cover;object-position:top;border-radius:3px;flex:none}
.team-mini>span{min-width:0}
.team-mini .person-title{display:block;margin:0 0 2px;font-size:.75rem}
.team-mini strong{display:block;font-size:.92rem;line-height:1.3;color:var(--navy)}
.team-mini small:last-child{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:.82rem;line-height:1.35;color:var(--muted)}
.team-mini:hover strong{color:var(--brass)}
/* Hỏi đáp trang chủ */
.faq-split{align-items:start}
.faq-split-head{position:sticky;top:calc(var(--hh) + 24px)}
.faq-split .faq{max-width:none;margin:0}
.faq-split .faq summary{font-size:1.08rem}
.faq-split .faq .ans{font-size:1.02rem}
/* Vụ việc: các phần của thẻ cạnh nhau thẳng hàng (subgrid) */
.cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 20px}
.cases-2{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}
.case{position:relative;display:grid;grid-template-rows:subgrid;grid-row:span 8;row-gap:0;padding:26px 24px 22px;border:1px solid var(--line);border-top:3px solid var(--brass);border-radius:var(--r);background:#fff}
.case-compact{grid-row:span 7}
.section-white .case,.prose .case,.svc-sec.section-white .case{background:var(--paper)}
.case-tag{margin:0 0 8px;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brass)}
.case-tag a{color:inherit}
.case h3{margin:0 0 8px;font-size:1.22rem;line-height:1.35}
.svc-sec .case h3{margin-top:0}
.case-client{display:flex;gap:6px;align-items:flex-start;margin:0 0 6px;font-size:.92rem;color:var(--muted)}
.case-client .i{width:17px;height:17px;margin-top:3px}
.case-part{margin:0;padding:12px 0 0}
.case-label{margin:0 0 3px;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.case-part>p:last-child{margin:0;font-size:1rem;line-height:1.6;color:var(--ink)}
.case-full .case-part>p:last-child{font-size:.97rem}
.case-result>p:last-child{display:flex;gap:7px;align-items:flex-start;font-weight:600;color:var(--ok)}
.case-result .i{width:19px;height:19px;flex:none;margin-top:3px}
.case-figs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;list-style:none;margin:16px 0 0;padding:14px 0 0;border-top:1px solid var(--line);align-content:start}
.case-figs:empty{border-top:0;padding:0}
.case-figs strong{display:block;font:700 1.4rem/1.1 var(--serif);color:var(--navy)}
.case-figs span{display:block;margin-top:4px;font-size:.82rem;line-height:1.35;color:var(--muted)}
.case-foot{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);align-self:end}
.case-foot:empty{border-top:0;padding:0;margin:0}
.case-lead{display:flex;gap:12px;align-items:center}
.case-lead img{width:44px;height:55px;object-fit:cover;object-position:top;border-radius:3px;flex:none}
.case-lead small{display:block;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.case-lead strong{display:block;font-size:1rem;line-height:1.3;color:var(--navy)}
.case-lead:hover strong{color:var(--brass)}
@supports not (grid-template-rows:subgrid){.case{display:flex;flex-direction:column}.case-foot{margin-top:auto}}
/* Chuyên sâu – trang chủ: lưới thẻ 3×2 (5 mảng + thẻ cam kết), các phần thẳng hàng */
.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.practice-card{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;padding:26px 24px 22px;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:var(--r);background:var(--paper)}
.practice-card .practice-no{margin:0 0 6px;font:700 1.5rem/1 var(--serif);color:var(--brass)}
.practice-card h3{margin:0 0 10px;font-size:1.3rem}
.practice-card h3 a:hover{color:var(--brass)}
.practice-desc{margin:0 0 16px;font-size:1rem;line-height:1.65;color:var(--muted)}
.practice-grid .practice-card .practice-svcs{display:grid;gap:0;align-content:start;margin:0 0 16px;padding:0;list-style:none;border-top:1px solid var(--line)}
.practice-grid .practice-card .practice-svcs a{display:flex;gap:8px;align-items:center;padding:9px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;font-size:.97rem;font-weight:600;color:var(--navy)}
.practice-grid .practice-card .practice-svcs .i{width:15px;height:15px;color:var(--brass);flex:none}
.practice-grid .practice-card .practice-svcs a:hover{color:var(--brass)}
.practice-card .practice-lead{align-self:end;display:block}
.practice-cta{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;padding:26px 24px 22px;border-radius:var(--r);background:var(--navy);color:#c9d3e1}
.practice-cta .practice-no{margin:0 0 6px;font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-2)}
.practice-cta h3{margin:0 0 10px;font-size:1.3rem;color:#fff}
.practice-cta .deep-promises{grid-row:span 2;display:grid;gap:12px;align-content:start;margin:0 0 16px;font-size:1rem}
.practice-cta .deep-cta-act{align-self:end;display:grid;gap:10px}
@supports not (grid-template-rows:subgrid){.practice-card,.practice-cta{display:flex;flex-direction:column}.practice-card .practice-lead,.practice-cta .deep-cta-act{margin-top:auto}}
/* Chuyên sâu – trang riêng: hàng 4 cột, không còn khoảng trống giữa */
.practices .practice{display:grid;grid-template-columns:48px minmax(0,1.15fr) minmax(0,1fr) 230px;gap:clamp(18px,2.6vw,36px);padding:32px 0;border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--hh) + 20px)}
.practices .practice-main>p{margin-bottom:16px;font-size:1.02rem;color:var(--muted)}
.practices .practice-issues{grid-template-columns:1fr;gap:9px;margin:0;font-size:.98rem}
.practice-cases .practice-label{margin-bottom:10px}
/* Bản tin: 3 cột cao bằng nhau, phần cuối mỗi cột giãn cho khớp đáy */
.hub{align-items:stretch}
.hub-col{display:flex;flex-direction:column;gap:20px}
.hub-col>:last-child{flex:1}
.hub-panel{display:flex;flex-direction:column}
.hub-body{flex:1;display:flex;flex-direction:column}
.hub-col>.hub-panel:last-child .hub-body>:last-child{flex:1;display:flex;flex-direction:column;justify-content:space-between}
.hub-col>.hub-cta:last-child{align-content:center}
@media (max-width:980px){
  .practice-grid,.cases{grid-template-columns:1fr 1fr}
  .practices .practice{grid-template-columns:44px minmax(0,1fr) 210px}
  .practices .practice-cases{grid-column:2}
  .practices .practice-lead{grid-column:3;grid-row:1}
  .split-2{grid-template-columns:1fr}
  .faq-split-head{position:static}
}
@media (max-width:760px){
  .practice-grid,.cases,.cases-2{grid-template-columns:1fr}
  .team-strip{grid-template-columns:1fr 1fr}
  .practices .practice{grid-template-columns:1fr;gap:14px}
  .practices .practice-cases,.practices .practice-lead{grid-column:auto;grid-row:auto}
}
/* 2 nhóm dịch vụ: danh sách 2 cột thẳng hàng thay cho chip */
.section-head.center{max-width:860px}
.tier-card .tier-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;align-content:start;padding-top:6px}
.tier-card .tier-links a{display:flex;gap:8px;align-items:flex-start;padding:9px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;font-size:.96rem;font-weight:600;line-height:1.4;color:var(--navy)}
.tier-card .tier-links .i{width:15px;height:15px;margin-top:4px;color:var(--brass);flex:none}
.tier-card .tier-links a:hover{color:var(--brass)}
@media (max-width:760px){.tier-card .tier-links{grid-template-columns:1fr}}
.case-figs strong.long{font-size:1.08rem;line-height:1.25}
.practices .practice-svcs a{padding:6px 12px;font-size:.92rem}


/* ---------- Tài khoản: hộp đăng nhập/xác thực, trang khách hàng & đối tác ---------- */
.must{color:var(--brass)}
.field-hint{display:block;margin-top:6px;font-size:.8rem;color:var(--muted)}
.txt-btn{justify-self:start;padding:0;border:0;background:none;font-size:.88rem;font-weight:600;color:var(--blue);cursor:pointer}
.txt-btn:hover{color:var(--brass)}.txt-btn:disabled{color:var(--muted);cursor:default}
.txt-btn[hidden]{display:none}
.dlg-lead{margin:0;color:var(--muted);font-size:.94rem}
.dlg [data-ch][hidden]{display:none}
.dlg [data-ch] b{color:var(--navy)}
.otp-input{font-size:1.5rem!important;font-weight:700;letter-spacing:.5em;text-align:center}
.otp-actions{display:flex;justify-content:space-between;gap:12px}
.form-err.form-ok{background:#e8f4ee;color:var(--ok)}
.acc-hero{padding-bottom:28px}
.acc-hero .lead{margin:0;max-width:720px}
.acc{padding-top:clamp(28px,4vw,44px)}
.acc-grid{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start}
.acc-side{position:sticky;top:calc(var(--hh) + 16px);display:grid;gap:16px}
.acc-user{display:flex;gap:12px;align-items:center;padding:16px;background:#fff;border:1px solid var(--line);border-radius:var(--r)}
.acc-user[hidden]{display:none}
.acc-user div{min-width:0}.acc-user b{display:block;color:var(--navy);line-height:1.3}
.acc-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
.acc-avatar{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:var(--navy);color:#fff;font-family:var(--serif);font-weight:700;font-size:1.15rem}
.acc-nav{display:grid;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.acc-nav a,.acc-nav button{display:flex;gap:10px;align-items:center;padding:13px 16px;border:0;border-left:3px solid transparent;background:none;font-weight:600;color:var(--ink);text-align:left;cursor:pointer}
.acc-nav a+a,.acc-nav button{border-top:1px solid var(--line)}
.acc-nav a:hover,.acc-nav button:hover{color:var(--brass)}
.acc-nav a[aria-current]{border-left-color:var(--brass);background:var(--paper);color:var(--navy)}
.acc-nav button[hidden]{display:none}
.acc-nav .i{width:18px;height:18px;color:var(--blue)}
.acc-help{padding:16px;border-radius:var(--r);background:var(--navy);color:#dfe4f3;font-size:.9rem;display:grid;gap:8px}
.acc-help p{margin:0;font-weight:600;color:#fff}
.acc-help a{display:flex;gap:8px;align-items:center}.acc-help a:hover{color:var(--brass-2)}
.acc-help .i{width:16px;height:16px}
.acc-main,.acc-body{display:grid;gap:20px;min-width:0}
.acc-body[hidden],[data-acc-gate][hidden]{display:none}
.acc-box{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:clamp(18px,2.5vw,28px)}
.acc-box h2{font-size:1.3rem;margin:0}
.acc-head{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-bottom:18px}
.acc-login h2{margin-bottom:10px}.acc-login p{color:var(--muted)}
.acc-login .checks{margin:24px 0 0}
.acc-filter{display:flex;gap:4px;padding:3px;border-radius:6px;background:var(--paper)}
.acc-filter button{padding:6px 12px;border:0;border-radius:4px;background:none;font-size:.86rem;font-weight:600;color:var(--muted);cursor:pointer}
.acc-filter button[aria-pressed="true"]{background:#fff;color:var(--navy);box-shadow:0 1px 3px rgba(28,43,99,.15)}
.acc-link{display:inline-flex;gap:6px;align-items:center;font-weight:600;font-size:.9rem;color:var(--brass)}
.acc-link .i{width:16px;height:16px}
.acc-list{display:grid;gap:12px}
.acc-more{margin-top:14px}.acc-more[hidden]{display:none}
.acc-small{margin:12px 0 0;font-size:.85rem;color:var(--muted)}
.acc-small a{color:var(--blue);font-weight:600}
.acc-empty{padding:22px;border:1px dashed var(--line);border-radius:var(--r);text-align:center;color:var(--muted)}
.acc-empty p{margin:0 0 12px}.acc-empty p:last-child{margin:0}
.acc-loading{color:var(--muted);text-align:center;padding:18px!important}
.acc-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.acc-stats:empty{display:none}
.acc-stat{padding:18px 20px;background:#fff}
.acc-stat b{display:block;font-family:var(--serif);font-size:1.7rem;line-height:1.2;color:var(--navy)}
.acc-stat span{font-size:.86rem;color:var(--muted)}
.req{padding:18px 20px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.req header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:6px}
.req-code{font-size:.8rem;font-weight:600;letter-spacing:.04em;color:var(--muted)}
.req h3{font-size:1.06rem;margin:0 0 4px}.req h3 a:hover{color:var(--brass)}
.req-meta{margin:0;font-size:.85rem;color:var(--muted)}
.req-note{margin:14px 0 0;padding:10px 14px;border-left:3px solid var(--brass);background:var(--paper);font-size:.92rem}
.req-price{margin:10px 0 0;font-size:.9rem;color:var(--muted)}.req-price b{color:var(--navy)}
.badge{flex:none;padding:3px 10px;border-radius:999px;border:1px solid currentColor;font-size:.76rem;font-weight:700;white-space:nowrap}
.b-new{color:var(--muted)}.b-doing{color:var(--blue)}.b-ok{color:var(--ok)}.b-off{color:#a1271c}
.pstep{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:0;margin:14px 0 0}
.pstep li{position:relative;padding-top:12px;font-size:.8rem;font-weight:600;color:var(--muted)}
.pstep li::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;border-radius:2px;background:var(--line)}
.pstep li.done::before{background:var(--navy)}
.pstep li.cur::before{background:linear-gradient(90deg,var(--brass) 55%,var(--line) 55%)}
.pstep li.done,.pstep li.cur{color:var(--navy)}
.ord-items{list-style:none;margin:12px 0;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:6px;font-size:.9rem}
.ord-items li{display:flex;justify-content:space-between;gap:12px}.ord-items b{white-space:nowrap;color:var(--navy)}
.ord footer{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;font-size:.92rem}
.ord footer b{color:var(--navy)}
.acc-dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 24px}
.acc-dl dt{font-size:.8rem;color:var(--muted)}.acc-dl dd{font-weight:600;color:var(--navy);overflow-wrap:anywhere}
.acc-dl a{color:var(--blue)}
.ref-grid{display:grid;grid-template-columns:1fr 200px;gap:28px;align-items:start}
.ref-form{display:grid;gap:14px}
.ref-label{margin:0;font-size:.86rem;font-weight:600;color:var(--navy)}
.ref-code{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:-8px}
.ref-code b{font-family:var(--serif);font-size:1.5rem;letter-spacing:.06em;color:var(--navy)}
.ref-link{display:flex;gap:8px}
.ref-link input{flex:1;min-width:0;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:4px;background:var(--paper);font-size:.88rem}
.ref-form .acc-small{margin:0}
.ref-qr{margin:0;padding:14px;border:1px solid var(--line);border-radius:var(--r);text-align:center}
.ref-qr svg{display:block;width:100%;height:auto}
.ref-qr figcaption{margin-top:8px;font-size:.8rem;color:var(--muted)}
.acc-table{width:100%;border-collapse:collapse;font-size:.9rem}
.acc-table th,.acc-table td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.acc-table th{background:var(--paper);font-size:.8rem;font-weight:600;color:var(--muted);white-space:nowrap}
.acc-table tr:last-child td{border-bottom:0}
.acc-table td b{color:var(--navy)}
#hoa-hong .table-wrap{margin:0}
.acc-pager{display:flex;gap:12px;justify-content:center;align-items:center;margin-top:14px;font-size:.9rem;color:var(--muted)}
.acc-pager[hidden]{display:none}
.acc-how{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:h}
.acc-how li{counter-increment:h;display:grid;gap:4px;align-content:start;font-size:.92rem;color:var(--muted)}
.acc-how li::before{content:counter(h,decimal-leading-zero);font-family:var(--serif);font-weight:700;font-size:1.3rem;color:var(--brass)}
.acc-how b{color:var(--navy)}
.reset-form{display:grid;gap:14px;max-width:460px;margin-inline:auto}
@media (max-width:900px){
  .acc-grid{grid-template-columns:1fr}
  .acc-side{position:static;order:2}
  .acc-main{order:1}
}
@media (max-width:640px){
  .ref-grid{grid-template-columns:1fr}.ref-qr{max-width:220px}
  .ref-link{flex-direction:column}
  .acc-how{grid-template-columns:1fr}
  .acc-table thead{display:none}
  .acc-table tr{display:grid;padding:10px 0;border-bottom:1px solid var(--line)}
  .acc-table td{display:flex;justify-content:space-between;gap:12px;padding:4px 14px;border:0}
  .acc-table td{text-align:right}
  .acc-table td::before{content:attr(data-th);flex:none;font-size:.8rem;color:var(--muted);text-align:left}
  .acc-table td[colspan]::before{content:none}
}
.share-ref{display:inline-flex;gap:8px;align-items:center;margin-top:16px;padding:0;border:0;background:none;font-size:.9rem;font-weight:600;color:var(--blue);cursor:pointer}
.share-ref .i{width:18px;height:18px;color:var(--brass)}
.share-ref:hover span{text-decoration:underline}
.req-links{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.ord-state:empty{display:none}
.ord-state{margin:0 0 12px;padding:12px 14px;border-radius:4px;background:var(--paper)}
.ord-state p{margin:0}.ord-state .req-links{margin-top:10px}
.ord-done b{color:var(--ok)}
.ord-prog b{color:var(--navy)}
.ord-bar{display:block;height:4px;margin-top:8px;border-radius:2px;background:var(--line);overflow:hidden}
.ord-bar i{display:block;height:100%;background:var(--brass)}
.acc-pending{display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;align-items:center;padding:16px 20px;border:1px solid var(--brass-2);border-left:4px solid var(--brass);border-radius:var(--r);background:#fff7ef}
.acc-pending b{color:var(--navy)}.acc-pending p{margin:2px 0 0}
[data-pending]:empty{display:none}

/* ===== 25/10/2026: 2 nhóm dịch vụ, trang khách hàng/vụ việc, hồ sơ nhân sự, đặt dịch vụ, chân trang ===== */
/* Nhóm dịch vụ: tên nhóm dẫn tới trang tổng quan */
.tier-card h2 a,.tier-card h3 a{color:inherit}
.tier-card h2 a:hover,.tier-card h3 a:hover{color:var(--brass)}
.tier-links{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px}
.tier-links a{display:flex;gap:8px;align-items:center;height:100%;padding:9px 12px}
.tier-links .i{width:15px;height:15px;flex:none;color:var(--brass)}
.mega-tier a{color:inherit}.mega-tier a:hover{color:var(--brass)}
.std-group+.std-group{margin-top:40px}
.std-cat{display:flex;gap:10px;align-items:center;margin:0 0 16px;font-size:1.2rem}
.std-cat .i{width:24px;height:24px;color:var(--brass)}
/* Thẻ AI + luật sư */
.ai-card{display:grid;gap:14px;align-content:start;background:var(--navy);border-color:var(--navy);color:#c9d3e1}
.ai-badge{display:inline-flex;align-items:center;gap:8px;justify-self:start;margin:0;padding:6px 12px;border-radius:3px;background:rgba(255,154,60,.14);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-2)}
.ai-badge .i{width:16px;height:16px}
.ai-title{margin:0;font:700 1.3rem/1.4 var(--serif);color:#fff}
.ai-points{list-style:none;margin:0 0 4px;padding:0;display:grid;gap:10px}
.ai-points li{display:flex;gap:10px;align-items:flex-start;font-size:.95rem;line-height:1.5}
.ai-points .i{width:19px;height:19px;flex:none;margin-top:2px;color:var(--brass-2)}
.ai-card .form{padding:18px;border-radius:var(--r);background:#fff;color:var(--ink)}
.ai-card .btn-ghost{background:transparent;border-color:rgba(255,255,255,.3);color:#fff}
/* Hồ sơ nhân sự: mã QR góc phải ngang tên; Gọi ngay, Nhắn Zalo */
.profile-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}
.profile-qr{display:grid;grid-template-columns:auto;justify-items:center;gap:6px;margin:0;padding:8px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.profile-qr svg{width:104px;height:104px}
.profile-qr a{display:inline-flex;gap:5px;align-items:center;font-size:.78rem;font-weight:600;color:var(--blue)}
.profile-qr a .i{width:14px;height:14px}
.profile-actions{gap:10px}
.profile-actions .btn{min-height:46px;padding:0 18px}
.profile-contact{width:100%;margin-top:12px}
.pf-sub{margin:18px 0 8px;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.tags a{color:inherit}.tags li:has(a){border-color:#c8d1e4}.tags li:has(a):hover{border-color:var(--brass)}
.pf-cases{margin:0;padding:0 0 0 20px;display:grid;gap:10px}
.pf-cases li{font-size:.92rem;line-height:1.45}
.pf-cases a{font-weight:600;color:var(--navy)}.pf-cases a:hover{color:var(--brass)}
.pf-cases small{display:block;margin-top:2px;font-size:.78rem;font-weight:600;color:var(--brass-d)}
/* Nút gợi tò mò dưới thanh nhận xét */
.clients-teaser{display:flex;gap:16px;align-items:center;max-width:620px;margin:26px auto 0;padding:14px 18px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);box-shadow:var(--shadow);transition:border-color .2s,transform .2s}
.clients-teaser:hover{border-color:var(--brass);transform:translateY(-2px)}
.ct-logos{display:flex;flex:none}
.ct-logos span{display:grid;place-items:center;width:38px;height:38px;margin-left:-10px;border:2px solid #fff;border-radius:50%;background:var(--navy);font:700 .9rem/1 var(--serif);color:#fff;overflow:hidden}
.ct-logos span:first-child{margin-left:0}
.ct-logos span:nth-child(2){background:var(--blue)}.ct-logos span:nth-child(3){background:var(--brass)}.ct-logos span:nth-child(4){background:#5b6680}
.ct-logos img{width:100%;height:100%;object-fit:contain;background:#fff}
.ct-text{flex:1;min-width:0}
.ct-text strong{display:block;font-size:1rem;line-height:1.35}
.ct-text small{display:block;font-size:.85rem;color:var(--muted)}
.clients-teaser>.i{width:22px;height:22px;flex:none;color:var(--brass)}
/* Thẻ khách hàng */
.client-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.client-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:box-shadow .2s,transform .2s}
.client-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.section-white .client-card{background:var(--paper)}
.client-card-img img{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover;background:var(--sand)}
.client-card-body{display:flex;flex-direction:column;flex:1;padding:20px 22px 22px}
.client-card-meta{margin:0 0 6px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brass)}
.client-card h3{margin:0 0 8px;font-size:1.18rem}
.client-card h3 a{color:var(--navy)}.client-card h3 a:hover{color:var(--brass)}
.client-card-body>p{margin:0 0 12px;font-size:.95rem;color:var(--muted)}
.client-card-body>p.client-contract{display:flex;gap:8px;align-items:flex-start;padding-top:12px;border-top:1px solid var(--line);font-size:.9rem;font-weight:600;color:var(--navy)}
.client-contract .i{width:17px;height:17px;flex:none;margin-top:3px;color:var(--brass)}
.client-card .card-go{margin-top:auto}
.client{filter:none;opacity:1}
.client:hover{color:var(--brass)}
/* Thẻ vụ việc có ảnh, tiêu đề dẫn tới bài viết */
.case{grid-row:span 9;border-top-width:1px}
.case-compact{grid-row:span 8}
.case-img{display:block;margin:-26px -24px 18px;border-radius:var(--r) var(--r) 0 0;overflow:hidden}
.case-img img{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover;background:var(--sand);transition:transform .3s}
.case:hover .case-img img{transform:scale(1.03)}
.case h3 a{color:var(--navy)}.case h3 a:hover{color:var(--brass)}
.case-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}
.case-more{display:inline-flex;gap:4px;align-items:center;font-size:.9rem;font-weight:600;color:var(--brass)}
.case-more .i{width:16px;height:16px}
/* Bài viết vụ việc, khách hàng */
.article-hero h1{max-width:900px;font-size:clamp(1.8rem,1.3rem + 1.9vw,2.7rem)}
.case-figs-hero{max-width:760px;margin-top:24px;border-top:2px solid var(--navy)}
.story-cover{margin:0 0 28px}
.story-cover img{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover;border-radius:var(--r);background:var(--sand)}
.story-cover figcaption{margin-top:8px;font-size:.86rem;color:var(--muted)}
.story h2{margin:36px 0 12px;font-size:clamp(1.3rem,1.15rem + .7vw,1.6rem)}
.case-summary{display:grid;gap:14px;margin:0 0 8px;padding:22px 24px;border:1px solid var(--line);border-left:4px solid var(--brass);border-radius:var(--r);background:var(--paper)}
.case-summary p{margin:0}
.case-summary .case-label{margin-bottom:2px}
.story .cases{margin-top:8px}
.story-quote{margin:16px 0;padding:18px 22px;border-left:3px solid var(--brass);background:var(--paper);font:500 1.05rem/1.65 var(--serif);color:var(--navy)}
.story-quote p{margin:0 0 8px}.story-quote cite{font:600 .88rem var(--sans);font-style:normal;color:var(--muted)}
.fact-box{display:grid;gap:12px;padding:22px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.section-white .fact-box{background:var(--paper)}
.fact-box-title{display:flex;gap:8px;align-items:center;margin:0;font-weight:700;color:var(--navy)}
.fact-box-title .i{width:20px;height:20px;color:var(--brass)}
.fact-box dl{margin:0;display:grid;gap:10px}
.fact-box dt{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.fact-box dd{margin:2px 0 0;font-weight:600;line-height:1.45;color:var(--ink)}
.fact-box-sub{margin:4px 0 0;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.fact-box p{margin:0}
.case-people{display:grid;gap:12px}
/* Chính sách gộp, hồ sơ năng lực */
.policy+.policy{margin-top:56px;padding-top:8px;border-top:1px solid var(--line)}
.policy h2{margin-top:24px}
.policy-file a{display:inline-flex;gap:6px;align-items:center;font-weight:600}
.policy-file .i{width:17px;height:17px}
.profile-cases{margin:0;padding-left:22px;display:grid;gap:14px;max-width:900px}
.profile-cases a{font-weight:700;color:var(--navy)}
.profile-cases span{display:block;color:var(--muted)}
@media print{
  .no-print,.hero-actions{display:none!important}
  .section{padding:18px 0!important}
  .tier-card,.person,.stat{break-inside:avoid}
}
/* Đặt dịch vụ: 3 bước, chọn gói một lần bấm */
.order-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;margin-bottom:26px}
.order-head .section-head{margin:0}
.order-steps{display:flex;gap:8px;list-style:none;margin:0;padding:0}
.order-steps li{display:flex;gap:10px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.order-steps li>span{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:var(--navy);font-weight:700;font-size:.9rem;color:#fff}
.order-steps li:first-child>span{background:var(--brass)}
.order-steps p{margin:0;line-height:1.3}
.order-steps strong{display:block;font-size:.92rem;color:var(--navy)}
.order-steps small{display:block;font-size:.78rem;color:var(--muted)}
.order-packs{padding:0;border:0;background:none}
.packs{gap:14px;padding:0}
.pack{position:relative;display:flex;flex-direction:column;gap:6px;padding:22px 20px 18px;border:2px solid var(--line);border-radius:8px;background:#fff;font:inherit;color:inherit;text-align:left}
.pack[aria-pressed="true"]{border-color:var(--brass);background:#fff;box-shadow:0 10px 30px -14px rgba(234,108,0,.55)}
.pack-badge{position:absolute;top:-12px;left:18px;padding:3px 10px;border-radius:3px;background:var(--brass);font-size:.75rem;font-weight:700;color:#fff}
.pack-name{font-size:1.05rem}
.pack-price{font-size:1.6rem}
.pack-items{display:grid;gap:5px;margin:6px 0 4px;padding-top:10px;border-top:1px solid var(--line);font-size:.86rem;line-height:1.4;color:var(--ink)}
.pack-items>span{display:flex;gap:6px;align-items:flex-start}
.pack-items .i{width:15px;height:15px;flex:none;margin-top:2px;color:var(--ok);stroke-width:2.4}
.pack-more{color:var(--muted)}
.pack-pick{display:flex;gap:6px;align-items:center;justify-content:center;margin-top:auto;padding:9px;border-radius:4px;background:var(--paper);font-size:.9rem;font-weight:600;color:var(--navy)}
.pack-pick .i,.pack-pick b{display:none}
.pack-pick .i{width:18px;height:18px}
.pack-pick i{font-style:normal}
.pack[aria-pressed="true"] .pack-pick{background:var(--brass);color:#fff}
.pack[aria-pressed="true"] .pack-pick .i,.pack[aria-pressed="true"] .pack-pick b{display:inline}
.pack[aria-pressed="true"] .pack-pick i{display:none}
.order-more{border:1px dashed #c3cbdc;border-radius:8px;background:var(--paper)}
.order-more>summary{display:flex;gap:10px;align-items:center;padding:14px 18px;font-weight:600;color:var(--navy);cursor:pointer;list-style:none}
.order-more>summary::-webkit-details-marker{display:none}
.order-more>summary .i{width:18px;height:18px;color:var(--brass);transition:transform .2s}
.order-more[open]>summary .i{transform:rotate(45deg)}
.order-more>summary small{flex:none;margin-left:auto;font-weight:500;white-space:nowrap;color:var(--muted)}
.order-more .order-group{margin:0 14px 14px}
.sum-label{font-size:.8rem}
.sum-detail summary{font-size:.86rem;color:#c9d3e1;cursor:pointer}
.sum-detail .sum-list{margin-top:10px}
.btn-lg{min-height:58px;font-size:1.05rem}
/* Đầu trang dịch vụ đặt trực tuyến: chọn gói ngay */
.quick-packs{list-style:none;margin:8px 0 12px;padding:0;display:grid;gap:8px}
.quick-packs a{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:10px;align-items:center;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--r);color:var(--navy);transition:border-color .2s,background-color .2s}
.quick-packs a:hover{border-color:var(--brass)}
.quick-packs a.is-pick{border-color:var(--brass);background:#fff7ef}
.quick-packs span{font-weight:700;line-height:1.3}
.quick-packs small{display:block;font-size:.75rem;font-weight:600;color:var(--brass-d)}
.quick-packs b{font:700 1.15rem/1 var(--serif);color:var(--navy)}
.quick-packs .i{width:18px;height:18px;color:var(--brass)}
@media (max-width:980px){
  .client-cards{grid-template-columns:1fr 1fr}
  .order-head{grid-template-columns:1fr}
}
@media (max-width:760px){
  .tier-links{grid-template-columns:1fr}
  .client-cards{grid-template-columns:1fr}
  .profile-top{grid-template-columns:minmax(0,1fr) 96px}
  .profile-qr svg{width:80px;height:80px}
  .order-steps{flex-direction:column}
  .clients-teaser{border-radius:var(--r)}
}
.print-only{display:none}
@media print{
  .print-only{display:block;margin:0 0 8px}.print-only .brand-logo{height:56px;width:auto}
  .page-hero-simple .eyebrow{margin-top:0}
  .people .person,.case,.client-card{break-inside:avoid}
  .pf-doc .split{display:grid!important;grid-template-columns:1fr 1fr!important;gap:28px!important}
  .pf-doc .tier-cards{display:grid!important;grid-template-columns:1fr 1fr!important}
  .pf-doc .people{display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:14px!important}
  .pf-doc .person-more{display:none}
  .pf-doc .stats{display:grid!important;grid-template-columns:repeat(4,1fr)!important}
  .pf-doc>section{break-inside:avoid}
  .pf-doc .section-head{break-after:avoid;break-inside:avoid;margin-bottom:16px}
  .pf-doc .tier-card .btn{display:none}
  .site-footer,.float,.mbar{display:none!important}
}
/* Đơn sắc theo màu HDS: thẻ tiện ích/tra cứu, bảng tin, tiêu đề danh mục không dùng mỗi thẻ một màu */
.card.util,.hub-panel,.cat-head,.price-cat,.mega-col{--c:var(--navy)!important;--s:#eef1f8!important}
/* Popup ở trang Về HDS: hồ sơ năng lực, đặt lịch tư vấn (nạp từ trang đích) */
.pdlg:has(.contact-form){width:min(640px,calc(100vw - 32px))}
.pdlg .contact-form{border:0;padding:0}
.pdlg .contact-form h2{padding-right:44px}
.pdlg:has(.pdf-pop){width:min(1000px,calc(100vw - 32px));height:calc(100vh - 40px)}
.pdlg:has(.pdf-pop) .pdlg-body{flex:1;display:flex;flex-direction:column;padding:18px 20px 20px}
.pdf-pop{flex:1;display:flex;flex-direction:column;gap:14px;min-height:0}
.pdf-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-right:48px}
.pdf-head h2{margin:0;font-size:clamp(1.2rem,1rem + .6vw,1.5rem)}
.pdf-acts{display:flex;gap:8px;flex-shrink:0}
.pdf-pop iframe{flex:1;width:100%;min-height:0;border:1px solid var(--line);border-radius:6px;background:#f2f3f7}
/* ===== 26/10/2026: chân trang theo bố cục hdslaw.vn, giữ màu và cỡ chữ của website ===== */
.site-footer{background:var(--ink);color:#93a0b4;padding:48px 0 22px;font-size:.93rem}
.ft-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px}
.ft-about{grid-column:span 3}
.ft-col{grid-column:span 2}
.ft-col:last-child{grid-column:span 3}
.site-footer .brand-logo{display:block;height:88px;width:auto;margin:0 0 14px}
.ft-legal{margin:0 0 16px}
.ft-legal p{margin:0 0 6px;font-size:.84rem;line-height:1.7}
.ft-legal span{font-weight:600}
.ft-legal .ft-name{font-weight:700;text-transform:uppercase;color:#fff}
.bct img{display:block;width:118px;height:auto}
.ft-title{margin:0 0 18px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.ft-links,.ft-contact{list-style:none;margin:0;padding:0;font-size:.875rem}
.ft-links li{margin:0 0 12px}
.ft-links a{display:flex;align-items:flex-start;line-height:1.45;transition:color .2s}
.ft-links .i{flex:none;width:12px;height:12px;margin:.3em 4px 0 0;transform:rotate(-90deg);color:var(--brass-2);opacity:.5;transition:opacity .2s}
.ft-links a:hover .i{opacity:1}
.ft-contact li{display:flex;gap:12px;align-items:flex-start;margin:0 0 16px;line-height:1.6}
.ft-contact li:last-child{margin-bottom:0}
.ft-contact li>a:first-child{display:flex;gap:12px;align-items:flex-start}
.ft-contact .i{flex:none;width:18px;height:18px;margin-top:2px;color:var(--brass-2)}
.site-footer a{transition:color .2s}
.site-footer a:hover{color:#fff}
.ft-bottom{margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);text-align:center}
.ft-bottom p{margin:0;font-size:.8rem;color:#8b97ab}
@media (max-width:1023px){.ft-grid{grid-template-columns:1fr 1fr;gap:40px 32px}.ft-about{grid-column:1/-1}.ft-col,.ft-col:last-child{grid-column:auto}}
@media (max-width:767px){.ft-grid{grid-template-columns:1fr;gap:32px}.site-footer .brand-logo{height:72px}}
/* ===== 26/10/2026: menu Dịch vụ – tiêu đề cột nổi bật, tiện ích trong cột Tiện ích, 1 nút xem tất cả ===== */
.mega-cols{grid-template-columns:1.2fr 1fr 1.05fr 1.05fr 1.15fr}
.mega-cat{margin:0 0 14px;padding:10px 12px;border:0;border-radius:6px;background:var(--navy);color:#fff;font-family:var(--serif);font-size:1rem;letter-spacing:0}
.mega-cat .i{color:var(--brass-2)}
.mega-tier{display:flex;align-items:center;gap:8px;margin:14px 0 4px;letter-spacing:.08em}
.mega-tier::after{content:"";flex:1;height:1px;background:var(--line)}
.mega-cat+.mega-tier{margin-top:4px}
.mega .mega-col .mega-util{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin:14px 0 0;padding:12px;border:1.5px solid var(--brass);border-radius:8px;background:#fff}
.mega .mega-col .mega-util:hover{background:var(--brass)}
.mega .mega-col .mega-util .i{width:18px;height:18px;margin:0;color:var(--brass)}
.mega .mega-col .mega-util:hover *{color:#fff}
.mega .mega-util small{margin-top:3px}
.mega-wide .mega-foot{gap:8px 22px;align-items:center}
.mega-wide .mega-foot .mega-all{padding:9px 16px;border-radius:6px;background:var(--navy);color:#fff}
.mega-wide .mega-foot .mega-all:hover{background:var(--brass);color:#fff}
.mega-wide .mega-foot .mega-all .i{color:#fff}
.mega-all-sub{display:flex;flex-wrap:wrap;gap:4px 18px}
.mega-wide .mega-all-sub a{font-weight:500;color:var(--muted)}
.mega-wide .mega-all-sub a:hover{color:var(--brass)}
@media (max-width:980px){.mega-cols{grid-template-columns:1fr!important}.mega-cat{font-size:.98rem}.mega-wide .mega-foot{padding:12px 0}}

/* Cổng khách hàng – trang Tài khoản: thanh bên theo nhóm (Dịch vụ / Tài khoản / Đối tác / Hỗ trợ), các mục chuyển bằng #hash (assets/account.js) */
.portal{padding:clamp(20px,3vw,36px) 0 clamp(44px,5vw,72px)}
.pgrid{display:grid;grid-template-columns:264px minmax(0,1fr);gap:28px;align-items:start;transition:grid-template-columns .2s}
.pside{position:sticky;top:calc(var(--hh) + 16px);display:grid;gap:10px;align-content:start;padding:14px;background:#fff;border:1px solid var(--line);border-radius:10px;max-height:calc(100vh - var(--hh) - 32px);overflow-y:auto}
.pside-user{display:flex;gap:12px;align-items:center;padding:4px 4px 14px;border-bottom:1px solid var(--line)}
.pside-user[hidden]{display:none}
.pside-bar{display:none}
.pside-menu{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-content:start}
.pside-user div{min-width:0}
.pside-user b{display:block;color:var(--navy);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pside-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.8rem}
.pside-tag{display:inline-block;margin-top:5px;padding:1px 9px;border-radius:999px;background:#fff1e5;color:var(--brass-d);font-size:.75rem;font-weight:700}
.pnav{display:grid;grid-template-columns:minmax(0,1fr);gap:2px}
.pnav-h{margin:14px 12px 4px;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--navy)}
.pnav a,.pnav button{display:flex;gap:12px;align-items:center;min-height:44px;padding:0 12px;border:0;border-radius:8px;background:none;font-size:.94rem;font-weight:500;color:var(--ink);text-align:left;cursor:pointer;transition:background-color .15s,color .15s}
.pnav a:hover,.pnav button:hover{background:var(--paper);color:var(--navy)}
.pnav a[aria-current]{background:var(--navy);color:#fff;font-weight:600}
.pnav a[aria-current] .i{color:#fff}
.pnav .i{width:19px;height:19px;color:var(--blue)}
.pnav span{flex:1;min-width:0}
.pnav-n{min-width:22px;padding:1px 7px;border-radius:999px;background:var(--brass);color:#fff;font-style:normal;font-size:.75rem;font-weight:700;text-align:center}
.pnav-n[hidden],.pnav button[hidden]{display:none}
.pnav-tel{margin-top:8px}.pnav-tel b{color:var(--navy)}
.pnav a.pnav-tel:hover{background:none}
.pside-fold{justify-self:center;display:grid;place-items:center;width:44px;height:34px;margin-top:4px;border:0;border-radius:8px;background:var(--sand);color:var(--blue);cursor:pointer}
.pside-fold .i{width:18px;height:18px;transform:rotate(90deg);transition:transform .2s}
.pside-fold:hover{background:var(--line)}
.pside-mini .pgrid{grid-template-columns:76px minmax(0,1fr)}
.pside-mini .pside{padding:12px 8px}
.pside-mini .pnav span,.pside-mini .pside-user div,.pside-mini .pnav-n{display:none}
.pside-mini .pnav-h{height:1px;margin:8px 6px;background:var(--line);font-size:0}
.pside-mini .pnav a,.pside-mini .pnav button{justify-content:center;padding:0}
.pside-mini .pside-user{justify-content:center;padding:0 0 12px}
.pside-mini .pside-fold .i{transform:rotate(-90deg)}
.portal:not(.is-in) .pgrid{grid-template-columns:minmax(0,760px);justify-content:center}
.portal:not(.is-in) .pside{display:none}
.pmain{min-width:0}
/* Trang Tài khoản giãn theo màn hình (body.is-wide – layout({ wide })): đầu trang, nội dung, chân trang cùng lề */
.is-wide{--gut:clamp(16px,3vw - 14px,48px)}
.is-wide .container{width:min(100% - 2 * var(--gut),2000px)}
@media (min-width:981px){
  .is-wide .pgrid{grid-template-columns:clamp(264px,15vw,296px) minmax(0,1fr);gap:clamp(20px,1.8vw,36px)}
  .is-wide .pside-mini .pgrid{grid-template-columns:76px minmax(0,1fr)}
}
.pbody[hidden]{display:none}
.pview{display:grid;gap:20px;min-width:0}
.pview[hidden]{display:none}
.pview-h{display:flex;flex-wrap:wrap;gap:14px 24px;justify-content:space-between;align-items:flex-end}
.pview-h h1{font-size:clamp(1.5rem,1.2rem + 1.1vw,2.05rem);margin:0 0 4px}
.pview-h p{margin:0;color:var(--muted);max-width:660px}
.acc-login h1{font-size:clamp(1.6rem,1.3rem + 1.2vw,2.2rem);margin-bottom:10px}
.pgrid-2{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:20px;align-items:start}
.pcol,.pstack{display:grid;gap:20px;min-width:0}
.pstack[hidden],.aff-off[hidden]{display:none}
.pmeter{display:flex;gap:12px;align-items:center}
.pmeter .ord-bar{flex:1;margin:0;height:8px;border-radius:4px}
.pmeter b{font-family:var(--serif);font-size:1.3rem;color:var(--navy)}
[data-completion] .acc-small{margin:10px 0 14px}
.p-teaser .acc-head{margin-bottom:8px}
.p-teaser .acc-small{margin:0}
.p-teaser .ref-link{margin:12px 0}
.p-teaser .acc-small b{color:var(--navy);letter-spacing:.04em}
[data-pending]:empty{display:none}
[data-pending],[data-drafts]{display:grid;gap:10px}
[data-drafts]:empty{display:none}
.pstep-6{grid-template-columns:repeat(6,1fr)}
.pview [data-stats]{grid-template-columns:repeat(4,minmax(0,1fr))}
.pview [data-aff-stats]{grid-template-columns:repeat(3,minmax(0,1fr))}
.ord .req-note{margin:12px 0}
.ord-sm .pstep{margin-top:10px}.ord-sm .req-meta{margin-top:10px}
.ord-prog small{font-weight:400;color:var(--muted)}
.ord-wait{margin:0 0 12px;padding:10px 14px;border-left:3px solid var(--blue);background:var(--paper);font-size:.9rem;color:var(--navy)}
.req .ord-wait:last-child{margin:12px 0 0}
.ord-docs{margin:0 0 12px;padding:12px 14px;border-radius:4px;background:#e8f2ec}
.ord-docs p{margin:0}.ord-docs b{color:var(--ok)}.ord-docs .req-links{margin-top:10px}
.ord-more{margin:0 0 12px;font-size:.9rem}
.ord-more summary{cursor:pointer;font-weight:600;color:var(--blue)}
.ord-more .ord-items{margin-bottom:0}
.ord-log{list-style:none;margin:12px 0 0;padding:0 0 0 14px;display:grid;gap:10px;border-left:2px solid var(--line)}
.ord-log time{display:block;font-size:.78rem;font-weight:600;color:var(--muted)}
.ord-log a{color:var(--blue);font-weight:600}
.ord footer .badge{margin-left:6px}
.pform{display:grid;gap:18px}
.pfs{margin:0;padding:18px 0 0;border:0;border-top:1px solid var(--line);min-width:0}
.pfs legend{float:left;width:100%;margin:0 0 12px;padding:0;font-family:var(--serif);font-weight:700;font-size:1.08rem;color:var(--navy)}
.pfields{clear:both;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px}
.pfields .field{margin:0}
.pf-wide{grid-column:1/-1}
.pfs-note{clear:both;margin:0 0 12px!important}
.pkind{clear:both;display:flex;flex-wrap:wrap;gap:10px}
.pkind label{display:flex;gap:8px;align-items:center;padding:10px 16px;border:1px solid var(--line);border-radius:6px;font-weight:600;color:var(--navy);cursor:pointer}
.pkind label:has(input:checked){border-color:var(--navy);background:var(--paper)}
.pkind input{accent-color:var(--navy)}
.pform .field input:disabled{opacity:.65;cursor:not-allowed}
.pform .form-note[hidden]{display:none}
.pform-foot{display:flex;justify-content:flex-end}
.p-contact ul{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:16px}
.p-contact li,.p-contact a{display:flex;gap:12px;align-items:flex-start}
.p-contact a:hover b{color:var(--brass)}
.p-contact .i{flex:none;color:var(--brass);margin-top:3px}
.p-contact small{display:block;font-size:.78rem;color:var(--muted)}
.p-contact b{color:var(--navy);font-weight:600}
.aff-rate{margin:0;font-size:.92rem;color:var(--muted)}
.aff-rate b{color:var(--brass-d)}
.aff-off h2{margin-bottom:10px}
.aff-off .checks{margin:18px 0 24px}
.acc-table small.d-block,.d-block{display:block}
@media (max-width:980px){
  .pgrid,.pside-mini .pgrid{grid-template-columns:minmax(0,1fr)}
  .pside,.pside-mini .pside{position:sticky;top:calc(var(--hh) + 8px);z-index:20;max-height:none;padding:0;gap:0;overflow:visible;box-shadow:0 2px 12px rgba(28,43,99,.07)}
  .pside-bar{display:flex;align-items:center;gap:10px;width:100%;min-height:50px;padding:0 10px 0 14px;border:0;background:none;font:inherit;color:var(--navy);text-align:left;cursor:pointer}
  .pside-cur{flex:1;min-width:0;display:flex;align-items:center;gap:10px;font-weight:700}
  .pside-cur span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .pside-cur .i{flex:none;width:19px;height:19px;color:var(--blue)}
  .pside-more{flex:none;display:flex;align-items:center;gap:4px;padding:6px 10px 6px 12px;border-radius:999px;background:var(--paper);font-size:.84rem;font-weight:600;color:var(--blue)}
  .pside-more .i{width:14px;height:14px;transition:transform .2s}
  .pside.is-open .pside-more .i{transform:rotate(180deg)}
  .pside-menu{display:none}
  .pside.is-open .pside-menu{display:grid;gap:0;max-height:calc(100vh - var(--hh) - 76px);overflow-y:auto;padding:10px 10px 12px;border-top:1px solid var(--line)}
  .pside-user,.pside-mini .pside-user{justify-content:flex-start;padding:2px 4px 10px}
  .pside-mini .pside-user div{display:block}
  .pnav{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 6px}
  .pnav-h,.pside-mini .pnav-h{grid-column:1/-1;height:auto;margin:10px 6px 2px;background:none;font-size:.75rem}
  .pnav a,.pnav button,.pside-mini .pnav a,.pside-mini .pnav button{min-height:42px;gap:8px;padding:4px 8px;justify-content:flex-start;font-size:.89rem;line-height:1.25}
  .pside-mini .pnav span{display:inline}
  .pside-mini .pnav-n:not([hidden]){display:inline-block}
  .pnav-tel,.pnav [data-logout]{grid-column:1/-1}
  .pside-fold{display:none}
  .pgrid-2{grid-template-columns:minmax(0,1fr)}
  .pfields{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .pfields{grid-template-columns:1fr}
  .pstep-6{grid-template-columns:repeat(3,1fr);row-gap:10px}
  .pview [data-stats],.pview [data-aff-stats]{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pview-h .btn{width:100%}
  .pform-foot .btn{width:100%}
}

/* Tiếp thị liên kết: ví hoa hồng + chỉ số + liên kết (bố cục cổng đối tác), bảng có tab, hợp đồng, hỗ trợ cộng tác viên */
.aff-top{display:grid;grid-template-columns:minmax(250px,310px) minmax(0,1fr);gap:20px;align-items:start}
.aff-wallet{display:grid;gap:2px;align-content:start}
.aff-wallet p{margin:12px 0 0;color:var(--muted);font-size:.92rem}
.aff-wallet p:first-child{margin-top:0}
.aff-wallet p small{font-size:.8rem}
.aff-wallet b{font-family:var(--serif);font-size:1.45rem;line-height:1.3;color:var(--navy)}
.aff-wallet .aff-big{font-size:2.1rem;color:var(--brass)}
.aff-wallet .btn{margin-top:18px}
.aff-wallet .btn:disabled{background:#c3c9d6;border-color:#c3c9d6;cursor:not-allowed}
.aff-wallet .aff-note{margin-top:12px;font-size:.84rem;font-style:italic;color:var(--brass-d)}
.aff-wallet .aff-proc{margin-top:14px;padding:10px 12px;border-radius:4px;background:#eef2fb;font-size:.86rem;color:var(--navy)}
.aff-wallet .aff-proc[hidden],.aff-wallet .aff-note:empty{display:none}
.aff-wallet .form-err{margin-top:12px}
.aff-right{display:grid;gap:20px;min-width:0}
.aff-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.aff-kpi{display:flex;gap:14px;align-items:center;padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:var(--r)}
.aff-kpi>.i{flex:none;width:46px;height:46px;padding:12px;border-radius:50%;background:#eef2fb;color:var(--blue)}
.aff-kpi.k2>.i{background:#fff1e5;color:var(--brass)}
.aff-kpi.k3>.i{background:#e8f2ec;color:var(--ok)}
.aff-kpi div{min-width:0}
.aff-kpi b{display:block;font-family:var(--serif);font-size:1.5rem;line-height:1.2;color:var(--navy)}
.aff-kpi span{display:block;font-size:.88rem}
.aff-kpi small{display:block;font-size:.76rem;color:var(--muted)}
.aff-link .acc-head{margin-bottom:12px}
.aff-link .ref-link input{min-height:46px;background:#fff;border-color:var(--blue);font-size:.95rem;font-weight:600;color:var(--navy)}
.aff-link>.acc-small{margin:10px 0 0}
.aff-link>.acc-small b{color:var(--navy);letter-spacing:.04em}
.aff-custom{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:24px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
.aff-custom>div{display:grid;gap:12px;align-content:start;min-width:0}
.aff-custom h3{margin:0;font-size:1.1rem}
.aff-custom .acc-small,.aff-custom .field{margin:0}
.aff-tabs-h{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-bottom:16px}
.aff-tabs{display:flex;flex-wrap:wrap;gap:4px}
.aff-tabs button{padding:8px 12px;border:0;border-bottom:2px solid transparent;background:none;font-size:1rem;color:var(--muted);cursor:pointer}
.aff-tabs button[aria-selected="true"]{border-bottom-color:var(--brass);font-weight:600;color:var(--navy)}
.aff-search{display:flex;gap:8px;align-items:center;min-width:250px;padding:0 12px;border:1px solid var(--line);border-radius:6px;background:#fff}
.aff-search:focus-within{border-color:var(--brass)}
.aff-search .i{width:18px;height:18px;color:var(--muted)}
.aff-search input{flex:1;min-width:0;min-height:42px;border:0;outline:0;background:none;font-size:.9rem}
.aff-tables .table-wrap{margin:0}
.aff-table thead th{background:#eef2fb;font-size:.84rem;color:var(--navy)}
.aff-tables [data-aff-tnote][hidden]{display:none}
.dot-st{display:inline-flex;gap:6px;align-items:center;font-size:.88rem;font-weight:600;white-space:nowrap}
.dot-st::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.st-new{color:var(--muted)}.st-doing{color:var(--blue)}.st-ok{color:var(--ok)}.st-off{color:#a1271c}
.aff-contract-h{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px dashed var(--muted)}
.aff-contract-h h2{display:flex;gap:10px;align-items:center;margin:0;font-size:1.15rem}
.aff-contract-h h2 .i{color:var(--blue)}
.aff-signed{display:inline-flex;gap:6px;align-items:center;padding:5px 12px;border-radius:999px;background:#e8f2ec;font-size:.9rem;font-weight:600;color:var(--ok)}
.aff-signed .i{width:18px;height:18px}
.aff-contract-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:14px 20px;align-items:center;margin:14px 0 0}
.aff-contract-g dt{font-size:.84rem;font-weight:700;color:var(--navy)}
.aff-contract-g dd{font-size:.92rem;color:var(--muted);overflow-wrap:anywhere}
.aff-contract-g .btn .i{width:18px;height:18px}
.aff-help h2{margin:12px 0 18px;text-align:center;font-size:1.5rem}
.aff-help-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.aff-help-c{display:grid;justify-items:center;align-content:start;gap:8px;padding:26px 20px;border:1px solid var(--line);border-radius:10px;background:#fff;font:inherit;color:inherit;text-align:center;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.aff-help-c:hover{border-color:var(--brass);box-shadow:var(--shadow)}
.aff-help-c>.i{width:56px;height:56px;padding:15px;border-radius:50%;background:var(--navy);color:#fff}
.aff-help-c:nth-child(n+2)>.i{background:var(--brass)}
.aff-help-c h3{margin:6px 0 0;font-size:1.12rem}
.aff-help-c p{margin:0;font-size:.9rem;color:var(--muted)}
.aff-help-c span{font-size:.9rem;font-weight:600;color:var(--blue)}
.aff-guide{margin-top:16px}
.aff-guide[hidden]{display:none}
/* Ký hợp đồng: thông tin → đọc hợp đồng → ký tay */
.aff-sign h2{margin-bottom:4px}
.aff-sign .aff-sign-lead{margin:0 0 18px}
.sign-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0;margin:0 0 22px;counter-reset:s}
.sign-steps li{counter-increment:s;display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:6px;background:var(--paper);font-size:.9rem;font-weight:600;color:var(--muted)}
.sign-steps li::before{content:counter(s);display:grid;place-items:center;flex:none;width:26px;height:26px;border:1.5px solid currentColor;border-radius:50%;background:#fff;font-size:.82rem}
.sign-steps li[aria-current]{background:var(--navy);color:#fff}
.sign-steps li[aria-current]::before{color:var(--navy);border-color:#fff}
.sign-steps li.done{color:var(--ok)}
.sign-steps li.done::before{content:"\2713";border-color:var(--ok);background:var(--ok);color:#fff}
.sign-step[hidden]{display:none}
.sg-same{justify-self:start;min-height:50px;text-align:left}
.contract-box{height:min(62vh,560px);overflow-y:auto;padding:28px clamp(16px,4vw,44px);border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:inset 0 -14px 16px -14px rgba(15,27,45,.25)}
.contract-box:focus-visible{outline:2px solid var(--brass)}
.aff-sign .sg-hint{margin:10px 0 0}
.aff-sign .sg-hint[hidden]{display:none}
.sign-agree{display:flex;gap:10px;align-items:flex-start;margin:14px 0 4px;font-weight:600;color:var(--navy);cursor:pointer}
.sign-agree input{flex:none;width:20px;height:20px;margin-top:2px;accent-color:var(--brass)}
.sign-agree:has(input:disabled){opacity:.5;cursor:not-allowed}
.sign-step .pform-foot{gap:10px;margin-top:16px}
.sig-wrap{position:relative;max-width:640px;margin:12px 0 6px;border:1.5px dashed var(--blue);border-radius:8px;background:#fbfcff}
.sig-pad{display:block;width:100%;height:220px;touch-action:none;cursor:crosshair}
.sig-line{position:absolute;left:24px;right:24px;bottom:30px;padding-top:6px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted);pointer-events:none}
.sig-tools{max-width:640px;text-align:right}
@media (max-width:1180px){
  .aff-top{grid-template-columns:minmax(0,1fr)}
  .aff-wallet{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:16px}
  .aff-wallet p{grid-row:1;margin:0}.aff-wallet b{grid-row:2}
  .aff-wallet .btn,.aff-wallet .aff-note,.aff-wallet .aff-proc,.aff-wallet .form-err{grid-row:auto;grid-column:1/-1}
}
@media (max-width:760px){
  .aff-kpis,.aff-help-g{grid-template-columns:minmax(0,1fr)}
  .aff-wallet{grid-template-columns:1fr}
  .aff-wallet p,.aff-wallet b{grid-row:auto}
  .aff-wallet p{margin-top:10px}
  .aff-custom{grid-template-columns:1fr}.aff-custom .ref-qr{max-width:200px}
  .aff-contract-g{grid-template-columns:1fr 1fr}.aff-contract-g .btn{grid-column:1/-1}
  .aff-search{min-width:0;width:100%}
  .sign-steps li{flex-direction:column;gap:4px;text-align:center;font-size:.8rem}
}
.pview,.pstack,.pcol{grid-template-columns:minmax(0,1fr)}
@media (max-width:1180px) and (min-width:761px){.aff-wallet p{align-self:end}}
/* ===== 27/10/2026: nhãn tầng dịch vụ cùng kiểu, cùng màu; bảng phí, gói theo bảng giá ===== */
.mega-tier,.mega-tier-sau{display:flex;width:max-content;max-width:100%;align-items:center;margin:16px 0 6px;padding:5px 10px;border-radius:4px;background:var(--brass);color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.08em;line-height:1.3}
.mega-tier::after{display:none}
.mega-cat+.mega-tier{margin-top:4px}
.mega-tier a,.mega-tier a:hover{color:#fff}
.mega-tier a:hover{text-decoration:underline}
.fee-table th:nth-child(2),.fee-table td:nth-child(2){white-space:nowrap}
.fee-table td:last-child{color:var(--muted);font-size:.9em}
.fee-table{margin-bottom:16px}
.fee-table tfoot th,.fee-table tfoot td{border-top:2px solid var(--line);font-size:1.05rem}
.fee-table tfoot strong{color:var(--brass-d);font-size:1.15em}
.plan.featured .plan-fee{color:#c9d3ee}
.plan.featured .plan-fee b{color:#fff}
.fee-packs{margin-bottom:24px}
.plan-fee{margin:0 0 6px;font-size:.88rem;color:var(--muted)}
.plan-fee b{color:var(--ink)}
.fee-brief{list-style:none;margin:6px 0 0;padding:0;font-size:.8rem;line-height:1.5;color:var(--muted)}
.fee-brief li::before{content:"· "}
/* ===== 27/10/2026: căn thẳng hàng (thẻ vụ việc, số liệu) ===== */
/* Chân thẻ vụ việc: đường kẻ trên cùng một hàng ở mọi thẻ; "Đọc chi tiết" luôn nằm dưới người phụ trách */
.case-foot{align-self:stretch;flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;align-items:flex-start;gap:12px}
/* Số liệu: giá trị dài xuống 2 dòng thì dòng cuối thẳng với giá trị bên cạnh, nhãn cùng một hàng */
.case-figs{grid-template-rows:auto auto;row-gap:0}
.case-figs li{display:grid;grid-row:span 2;grid-template-rows:subgrid}
.case-figs strong{align-self:end}
/* Đội ngũ: chức danh, tên, chức vụ, kinh nghiệm, giới thiệu, "Xem hồ sơ" cùng một hàng giữa các thẻ */
.people .person{display:grid;grid-template-rows:subgrid;grid-row:span 6;row-gap:0}
.people-full .person{grid-row:span 7}
.people .person-body{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;align-content:start}
.people-full .person-body{grid-row:span 6}
.person-body>*{min-width:0}
.person .person-more{align-self:end;justify-self:start}
/* Dải đội ngũ trang chủ: chữ bắt đầu cùng một độ cao */
.team-mini{align-items:flex-start}
/* Thẻ khách hàng */
.client-card{display:grid;grid-template-rows:subgrid;grid-row:span 6;row-gap:0}
.client-card-body{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0}
.client-card-body>p.client-summary:empty,.client-card-body>p.client-contract:empty{margin:0;padding:0;border:0}
.client-card .card-go{align-self:end;justify-self:start}
/* Thẻ tiện ích, tra cứu: đường kẻ dưới cùng một hàng */
.grid-3>.card.util{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0}
/* Gói giá theo bảng giá */
.fee-packs>.plan{display:grid;grid-template-rows:subgrid;grid-row:span 7;row-gap:0}
.fee-packs .plan-note:empty,.fee-packs .plan-fee:empty{margin:0;min-height:0}
.fee-packs .plan-list:empty{margin:0}
.fee-packs .plan>.btn{align-self:end}
/* Nhận xét: dòng dịch vụ · ngày luôn một dòng (tên dài thì "…") để khung chữ các thẻ cùng độ cao */
.review-meta{flex-wrap:nowrap;white-space:nowrap;overflow:hidden}
.review-meta>*{flex:none}
.review-meta a{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
/* Hình thức làm việc (trang chuyên sâu): số, tên, mô tả, danh sách cùng một hàng giữa các thẻ */
.engage-item{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:0;align-content:start}
/* Ít hơn 3 gói: không để trống cột */
.fee-packs-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}
.fee-packs-1{grid-template-columns:minmax(0,1fr);max-width:420px}
@media (max-width:760px){.fee-packs-2{grid-template-columns:1fr}}
/* Bảng giá: các bảng từng nhóm cùng độ rộng cột */
.price-table{table-layout:fixed;width:100%;min-width:640px}
.price-table th:nth-child(1){width:34%}
.price-table th:nth-child(2){width:13%}
.price-table th:nth-child(3){width:29%}
.price-table th:nth-child(4){width:24%}
.price-table th:last-child{text-align:right}
.price-table td:last-child{white-space:normal}
/* Menu Dịch vụ: nhãn tầng không nền, chữ cam đậm, gạch chân */
.mega-tier,.mega-tier-sau{display:block;width:auto;margin:16px 0 6px;padding:0;border-radius:0;background:none;color:var(--brass);font-size:.75rem;font-weight:800;letter-spacing:.08em}
.mega-tier a,.mega-tier a:hover{color:var(--brass);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.mega-tier a:hover{color:var(--brass-d)}
/* ===== 27/10/2026: bảng, sơ đồ trong bài và trang dịch vụ dựng bằng HTML (thay ảnh) ===== */
.infog{margin:32px 0;padding:26px 28px 22px;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:var(--r);background:#fff}
.section-white .infog{background:var(--paper)}
.prose .infog{margin:32px 0}
.infog-title{margin:0 0 20px;font:700 1.2rem/1.35 var(--serif);color:var(--navy)}
.infog-title::after{content:"";display:block;width:44px;height:3px;margin-top:10px;background:var(--brass)}
.infog figcaption{margin:20px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:.88rem;line-height:1.55;color:var(--muted);text-align:left}
.infog strong{color:var(--navy)}
.infog small{display:block;margin-top:3px;font-size:.88rem;line-height:1.5;font-weight:400;color:var(--muted)}
.infog ol,.infog ul{list-style:none;margin:0;padding:0}
.infog li{margin:0}
.infog li::before{content:none}
/* Các bước */
.ig-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ig-steps li{position:relative;padding:14px 14px 14px 56px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.section-white .ig-steps li{background:#fff}
.ig-num{position:absolute;left:14px;top:14px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;font-size:.9rem;font-weight:700}
.ig-steps strong{display:block;font-size:1rem;line-height:1.35}
/* Danh sách kiểm */
.ig-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px}
.ig-checks li{display:flex;gap:10px;align-items:flex-start}
.ig-checks .i{flex:none;width:22px;height:22px;margin-top:1px;color:var(--ok)}
.ig-checks strong{display:block;line-height:1.4}
/* Mốc thời gian */
/* .infog ol{padding:0} mạnh hơn .ig-time → phải ghi .infog .ig-time để giữ chỗ cho chấm tròn và đường nối */
.infog .ig-time{position:relative;padding-left:26px}
.infog .ig-time::before{content:"";position:absolute;left:6px;top:8px;bottom:8px;width:2px;background:var(--line)}
.infog .ig-time li{position:relative;padding:0 0 16px}
.infog .ig-time li:last-child{padding-bottom:0}
.infog .ig-time li::before{content:"";position:absolute;left:-26px;top:4px;box-sizing:border-box;width:14px;height:14px;border:3px solid var(--brass);border-radius:50%;background:#fff}
.ig-time strong{display:block;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--brass-d)}
.ig-time span{display:block;margin-top:2px;line-height:1.55}
/* Biểu đồ cột */
.ig-bars{display:grid;gap:16px}
.ig-bars li{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 110px;gap:16px;align-items:center}
.ig-bar{display:block;height:12px;border-radius:6px;background:#e3e8f2;overflow:hidden}
.ig-bar i{display:block;height:100%;border-radius:6px;background:var(--brass)}
.ig-bars b{text-align:right;font-size:1.05rem;color:var(--navy)}
/* Bảng so sánh */
.infog .table-wrap{margin:0}
.infog .ig-table{width:100%;min-width:520px;border-collapse:collapse;table-layout:fixed;font-size:.95rem}
.infog .ig-table th,.infog .ig-table td{padding:12px 14px;text-align:left;vertical-align:top;border:0;border-bottom:1px solid var(--line);line-height:1.5}
.infog .ig-table tbody tr:last-child th,.infog .ig-table tbody tr:last-child td{border-bottom:0}
.infog .ig-table thead th{background:var(--navy);color:#fff;font-weight:700}
.infog .ig-table thead th:first-child{width:26%;background:var(--paper)}
.infog .ig-table thead th.hl{background:var(--brass)}
.infog .ig-table tbody th{width:auto;background:transparent;font-weight:700;color:var(--navy)}
.infog .ig-table thead th{white-space:normal;font-size:.92rem}
.infog .ig-table tbody tr:nth-child(odd){background:var(--paper)}
.infog .ig-table td{color:var(--ink)}
.infog .ig-table td.hl{background:color-mix(in srgb,var(--brass) 9%,transparent);font-weight:600}
/* Sơ đồ chọn nhanh */
.ig-q{margin:0 0 12px;padding:12px 16px;border-radius:var(--r);background:var(--navy);color:#fff;font-weight:600;text-align:center}
.ig-flow ul{display:grid;gap:10px}
.ig-flow li{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;align-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.section-white .ig-flow li{background:#fff}
.ig-flow li .i{width:20px;height:20px;color:var(--brass)}
.ig-note{margin:14px 0 0;font-size:.9rem;color:var(--muted)}
/* Cấu trúc tên */
.ig-name{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.ig-name li{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:var(--r);background:var(--paper);text-align:center}
.section-white .ig-name li{background:#fff}
.ig-name strong{font:700 1.12rem/1.3 var(--serif)}
.ig-name span{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--brass-d)}
.ig-name small{margin:0}
/* Sơ đồ chủ sở hữu hưởng lợi */
.ig-owner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
.ig-chain{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ig-line{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}
.ig-person{display:inline-flex;gap:6px;align-items:center;font-weight:700;color:var(--navy)}
.ig-person .i{width:18px;height:18px}
.ig-pct{display:inline-flex;align-items:center;gap:2px;font-weight:700;color:var(--brass-d)}
.ig-pct .i{width:16px;height:16px;transform:rotate(90deg)}
.ig-co{padding:8px 14px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);font-weight:700;color:var(--navy)}
.ig-target{grid-column:1/-1;padding:12px 16px;border-radius:var(--r);background:var(--navy);text-align:center}
.infog .ig-target strong{display:block;font:700 1.1rem/1.3 var(--serif);color:#fff}
.infog .ig-target small{color:#c9d3ee}
.ig-results{display:grid;gap:12px}
.ig-results li{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.ig-results li.ok{border-color:#b9dcc8;background:#eef7f1}
.ig-results .i{flex:none;width:22px;height:22px;color:var(--muted)}
.ig-results li.ok .i{color:var(--ok)}
@media (max-width:980px){.ig-steps{grid-template-columns:1fr 1fr}.ig-owner{grid-template-columns:1fr}}
@media (max-width:760px){
  .infog{padding:20px 16px 16px}
  .ig-steps,.ig-checks{grid-template-columns:1fr}
  .ig-bars li{grid-template-columns:minmax(0,1fr) auto}
  .ig-bar{grid-column:1/-1;grid-row:2}
  .ig-flow li{grid-template-columns:1fr;gap:6px}
  .ig-flow li .i{transform:rotate(90deg)}
}
.infog .ig-q{color:#fff}
@media (max-width:760px){.infog .ig-table{min-width:0;font-size:.85rem}.infog .ig-table th,.infog .ig-table td{padding:10px 8px}.infog .ig-table thead th:first-child{width:28%}}

/* Chân trang: chính sách gom thành một dòng gọn ở đáy */
@media (min-width:1024px){.ft-about{grid-column:span 3}.ft-col{grid-column:span 2}.ft-col:last-child{grid-column:span 3}}
.ft-policies{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;margin:0 0 14px;font-size:.82rem}
.ft-policies a{color:#9aa8bf}
.ft-policies a:first-child{font-weight:600;color:#c9d3e1}
.ft-policies a:hover{color:#fff}
/* Nút trượt nhận xét: lề trang hẹp hơn nửa nút (dưới 1260px) thì đặt vào trong, không gây cuộn ngang */
@media (max-width:1259px){.slider-prev{left:6px}.slider-next{right:6px}}

/* Tiếp thị liên kết: trạng thái tạm khóa / từ chối, bảng mức hoa hồng theo dịch vụ */
.aff-lock{margin:0;padding:12px 16px;border-left:3px solid #a1271c;border-radius:4px;background:#fdecea;color:#7d1d15;font-size:.92rem;font-weight:600}
.aff-lock[hidden],.aff-rates[hidden]{display:none}
.aff-off .aff-lock{margin:0 0 16px}
.aff-lock-sm{color:#a1271c!important;font-weight:600}
.aff-rates{margin-top:12px}
.aff-rates summary{cursor:pointer;font-size:.92rem;font-weight:600;color:var(--blue)}
.aff-rates .table-wrap{margin:10px 0 0}
.aff-rates tr.is-own td{background:#fff7ef}
.aff-rates .acc-small{margin:8px 0 0}

/* Trang Tài khoản: mục Đối tác chỉ hiện khi HDS cho phép; thanh bên không cuộn ngang khi email dài */
[data-aff-only][hidden],.share-ref[hidden]{display:none}
.pside{grid-template-columns:minmax(0,1fr);overflow-x:hidden}


/* Trang chủ: khối nhóm dịch vụ dạng bảng giá (tên … giá, thời gian dòng dưới); dòng 2 cột thẳng hàng bằng subgrid */
.tier-sec .section-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:12px 56px;align-items:end;max-width:none;margin-bottom:34px;padding-bottom:22px;border-bottom:2px solid var(--navy)}
.tier-sec .section-head .eyebrow{grid-column:1/-1;margin:0}
.tier-sec .section-head h2{margin:0;text-wrap:balance}
.tier-sec .section-head p:not(.eyebrow){font-size:1rem}
.tier-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.tm-col{display:grid;grid-template-rows:subgrid;grid-row:span var(--span);padding-right:48px;scroll-margin-top:calc(var(--hh) + 20px)}
.tm-col+.tm-col{padding:0 0 0 48px;border-left:1px solid var(--line)}
.tm-no{display:flex;align-items:baseline;gap:10px;margin:0 0 4px;font-size:.84rem;font-weight:600;color:var(--brass-d)}
.tm-no span{font:700 1rem/1 var(--serif);color:var(--brass)}
.tm-col h2,.tm-col h3{font-size:1.6rem;margin:0 0 8px}
.tm-col h2 a,.tm-col h3 a{color:inherit}
.tm-col h2 a:hover,.tm-col h3 a:hover{color:var(--brass)}
.tm-list{display:grid;grid-template-rows:subgrid;grid-row:span var(--rows);list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.tm-list li{border-bottom:1px solid var(--line)}
.tm-list a{display:block;height:100%;padding:12px 0 11px;color:var(--ink)}
.tm-row{display:flex;align-items:baseline;align-items:last baseline;gap:10px}
.tm-name{font-weight:600;color:var(--navy);line-height:1.4}
.tm-dots{flex:1 1 24px;min-width:24px;height:0;border-bottom:1.5px dotted #aeb7cc;position:relative;top:-.28em}
.tm-price{flex:none;white-space:nowrap;font-weight:600;color:var(--navy);font-variant-numeric:tabular-nums}
.tm-time{display:block;min-height:1.4em;margin-top:2px;font-size:.86rem;line-height:1.4;color:var(--muted)}
.tm-list a:hover .tm-name,.tm-list a:hover .tm-price{color:var(--brass-d)}
.tm-list a:hover .tm-dots{border-color:var(--brass)}
.tm-more{justify-self:start;align-self:start;display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-weight:600;color:var(--navy);text-decoration:underline;text-underline-offset:4px}
.tm-more .i{width:15px;height:15px}
.tm-more:hover{color:var(--brass-d)}
.tm-note{margin:22px 0 0;font-size:.84rem;color:var(--muted)}
@media (max-width:900px){.tm-col{padding-right:28px}.tm-col+.tm-col{padding-left:28px}}
@media (max-width:760px){
  .tier-sec .section-head{grid-template-columns:1fr;padding-bottom:18px;margin-bottom:24px}
  .tier-menu{grid-template-columns:1fr;gap:36px}
  .tm-col,.tm-list{display:block;padding:0}
  .tm-col+.tm-col{padding:0;border-left:0}
  .tm-row{gap:6px}.tm-dots{flex-basis:12px;min-width:12px}
  .tm-more{display:inline-flex}
}

/* Khối nhóm dịch vụ: chỉ có tiêu đề thì một cột; link "Xem dịch vụ …" căn giữa cột */
.tier-sec .section-head:not(:has(>p:not(.eyebrow))){grid-template-columns:1fr}
.tm-more{justify-self:center}
@media (max-width:760px){.tm-more{display:flex;width:fit-content;margin-inline:auto}}

/* Nhận xét: thẻ khung ngang 4:3 – 3 thẻ (thêm một phần thẻ sau) mỗi lượt trên máy tính */
.review{aspect-ratio:4/3;flex-basis:calc((100% - var(--gap) * 3) / 3.4)}
.review blockquote p{-webkit-line-clamp:5}
.review.has-photo blockquote p{-webkit-line-clamp:2}
.review.has-photo .review-body{padding-top:44px}
@media (max-width:980px){.review{flex-basis:calc((100% - var(--gap) * 2) / 2.3)}}
@media (max-width:760px){.review{flex-basis:calc((100% - var(--gap)) / 1.15)}}

/* Đầu trang: nút tài khoản khi đã đăng nhập (chữ cái đầu + tên) và menu thả xuống */
.acc-wrap{position:relative;display:flex}
.login-link.is-in{gap:8px}
.acc-ava{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;font:700 .86rem/1 var(--serif)}
.acc-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acc-car{width:7px;height:7px;margin:0 2px 4px;border:solid currentColor;border-width:0 1.6px 1.6px 0;transform:rotate(45deg);opacity:.6;transition:transform .2s}
.login-link[aria-expanded="true"] .acc-car{transform:rotate(-135deg);margin-bottom:-3px}
.acc-menu{position:absolute;top:calc(100% + 14px);right:0;z-index:60;width:264px;padding:6px 0;border:1px solid var(--line);border-radius:var(--r);background:#fff;box-shadow:0 14px 34px -10px rgba(17,26,51,.24)}
.acc-menu[hidden]{display:none}
.acc-menu-h{padding:10px 16px 12px;margin-bottom:6px;border-bottom:1px solid var(--line)}
.acc-menu-h b{display:block;color:var(--navy);font-size:.95rem;line-height:1.35}
.acc-menu-h small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.8rem}
.acc-menu a,.acc-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 16px;border:0;background:none;color:var(--ink);font:inherit;font-size:.9rem;text-align:left;cursor:pointer}
.acc-menu a:hover,.acc-menu button:hover{background:var(--paper);color:var(--navy)}
.acc-menu .i{flex:none;width:17px;height:17px;color:var(--muted)}
.acc-menu a[hidden]{display:none}
.acc-menu [data-acc-out]{margin-top:6px;padding-top:11px;border-top:1px solid var(--line)}
@media (max-width:1259px){.acc-name,.acc-car{display:none}}
@media (max-width:980px){.acc-wrap{position:static}.acc-menu{top:calc(100% + 1px);right:12px;max-width:calc(100vw - 24px)}}

/* Ô mật khẩu có nút ẩn/hiện */
.pw{position:relative}
.pw input{width:100%;padding-right:46px}
.pw-eye{position:absolute;top:50%;right:4px;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:4px;background:none;color:var(--muted);cursor:pointer;transform:translateY(-50%)}
.pw-eye:hover{color:var(--navy)}
.pw-eye .i{width:19px;height:19px}
.pw-eye .i-hide,.pw-eye[aria-pressed="true"] .i-show{display:none}
.pw-eye[aria-pressed="true"] .i-hide{display:block}

/* Trang Tài khoản › Thông tin tài khoản: các tab như cổng khách hàng */
.ptabs{display:flex;flex-wrap:wrap;gap:0 24px;margin:0 0 16px;border-bottom:1px solid var(--line)}
.ptabs a{margin-bottom:-1px;padding:10px 2px 11px;border-bottom:2px solid transparent;color:var(--muted);font-size:.92rem;font-weight:600}
.ptabs a:hover{color:var(--navy)}
.ptabs a[aria-selected="true"]{border-bottom-color:var(--brass);color:var(--navy)}
.ptabs a[hidden],.ptab[hidden],.ppass[hidden],.pform[hidden]{display:none}
[data-basic]{margin:0 0 10px}
[data-basic] input[readonly]{background:var(--paper);color:var(--muted);cursor:default}
.pform-foot{gap:10px}
.ppass h2{margin:0 0 8px;font-size:1.25rem}
.ppass p{max-width:640px}
.ppass .btn{margin:6px 0 14px}


/* Tài khoản › Yêu cầu tư vấn: thẻ bấm mở chi tiết (assets/account.js reqDetail) */
.req-open{cursor:pointer;transition:border-color .15s,box-shadow .15s}.req-open:hover,.req-open:focus-visible{border-color:var(--brass);box-shadow:0 4px 16px rgba(28,43,99,.08);outline:none}
.req-text{margin:8px 0 0;font-size:.92rem;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.req-more{margin:10px 0 0;font-size:.85rem;font-weight:600;color:var(--brass)}
.req-dlg h2{margin:0 44px 8px 0}.req-dlg h3{margin:20px 0 8px;font-size:1rem}.req-dlg .pstep{margin-top:14px}
.req-lines{margin:0;padding-left:18px;display:grid;gap:4px;font-size:.95rem;white-space:pre-wrap}
.req-dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:.95rem}.req-dl dt{color:var(--muted)}.req-dl dd{margin:0;overflow-wrap:anywhere}
.req-links a{font-weight:600}
/* Trang dịch vụ có thẻ gói: bảng thời gian rộng bằng hàng thẻ gói (trước đây hẹp 760px, lệch mép phải) */
.fee-packs+.table-wrap.narrow{max-width:none}
/* Chính sách tiếp thị liên kết (Tài khoản › Tiếp thị liên kết, hộp thoại) */
.aff-pol{max-width:760px;font-size:.95rem;line-height:1.65}.aff-pol h3{margin:22px 0 8px;font-family:var(--serif);font-size:1.05rem;color:var(--navy)}
.aff-pol p{margin:0 0 10px}.aff-pol ul{margin:0 0 10px;padding-left:20px;display:grid;gap:6px}
.aff-link [data-aff-policy],.sign-step .acc-small .txt-btn{font-weight:600}
/* Xóa đơn / yêu cầu khỏi trang Tài khoản */
.del-box{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px 10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.del-box>span{margin-right:auto;font-weight:600;font-size:.9rem;color:var(--ink)}
.del-btn{padding:0;border:0;background:none;font:600 .88rem var(--sans);color:#a1271c;cursor:pointer}
.del-btn:hover{text-decoration:underline}
.del-box .btn{align-self:center;min-height:38px}
.del-yes{background:#a1271c;border-color:#a1271c;color:#fff}
.del-yes:hover{background:#87201a;border-color:#87201a}
.del-err{flex-basis:100%;margin:0;color:#a1271c;font-size:.88rem;text-align:right}
/* Tài khoản › Mật khẩu: ô hiện tại trải 2 cột, mật khẩu mới + nhập lại cạnh nhau */
.ppass .pfields{grid-template-columns:repeat(2,minmax(0,1fr));max-width:680px}
@media (max-width:640px){.ppass .pfields{grid-template-columns:1fr}}
/* Dịch vụ của tôi: mỗi dịch vụ một dòng đánh số, nội dung thụt vào dưới tên dịch vụ */
.req header>div{min-width:0}.req header h3{margin:0 0 2px}
.ord header{align-items:flex-start}.ord header .badge{flex:none;margin-top:2px}
.ord-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:0 16px;padding:20px 22px}
.ord-no{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--navy);background:#fff;font:700 .92rem var(--sans);color:var(--navy)}
.ord-ok .ord-no{background:var(--ok);border-color:var(--ok);color:#fff}
.ord-off .ord-no{border-color:var(--line);color:var(--muted)}
.ord-body{min-width:0}
.ord-row h3{font-size:1.14rem}
.ord-row footer{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.ord-act{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}
button.btn-outline{background:transparent}
.ord-panel{margin-top:12px;padding:14px 16px;border-radius:4px;background:var(--paper)}
.ord-panel h4{margin:0 0 8px;font:700 .8rem var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.ord-panel h4~h4{margin-top:16px}
.ord-panel .ord-items{margin:0;padding:0;border:0}
.ord-panel .ord-log{margin-top:0}
.ord-panel .del-box{margin-top:16px}
/* Thanh tiến độ: số từng bước nối bằng một đường */
.pstep{gap:0;margin:16px 0 0}
.pstep li{padding:0 4px;text-align:center;font-size:.78rem;line-height:1.3}
.pstep li::before{top:12px;left:-50%;right:50%;height:2px;border-radius:0;background:var(--line)}
.pstep li:first-child::before{display:none}
.pstep li.done::before,.pstep li.cur::before{background:var(--navy)}
.pstep li i{position:relative;z-index:1;display:grid;place-items:center;width:26px;height:26px;margin:0 auto 6px;border:2px solid var(--line);border-radius:50%;background:#fff;font:700 .78rem var(--sans);color:var(--muted)}
.pstep li.done i{background:var(--navy);border-color:var(--navy);color:#fff}
.pstep li.cur i{border-color:var(--brass);color:var(--brass);box-shadow:0 0 0 4px rgba(234,108,0,.14)}
.pstep li.cur span{color:var(--brass)}
.pstep li span{display:block}
.pstep-now{display:none}
.ord-sm .pstep{margin-top:14px}
.ord-sm .pstep-6 li span{display:none}
.ord-sm .pstep-now{display:block;margin:6px 0 0;font-size:.86rem;font-weight:600;color:var(--navy)}
@media (max-width:600px){
  .pstep-6{grid-template-columns:repeat(6,1fr);row-gap:0}
  .pstep-6 li span{display:none}
  .pstep-now{display:block;margin:6px 0 0;font-size:.86rem;font-weight:600;color:var(--navy)}
  .ord-row{grid-template-columns:28px minmax(0,1fr);gap:0 12px;padding:16px 14px}
  .ord-no{width:28px;height:28px;font-size:.84rem}
  .ord header{flex-wrap:wrap;gap:6px 10px}
  .ord-act{margin-left:0;width:100%}.ord-act .btn{flex:1 1 auto}
}
/* Nút dài trong bài ("Mở Cổng thông tin quốc gia…" ở trang tra cứu): xuống dòng thay vì làm tràn ngang trang trên điện thoại */
.prose .btn{white-space:normal;max-width:100%;text-align:left}
/* Bảng giá trên điện thoại: cột Thời gian đã ẩn → bỏ độ rộng tối thiểu 640px để không phải cuộn ngang */
@media (max-width:760px){.price-table{min-width:0}.price-table th:nth-child(1){width:37%}.price-table th:nth-child(2){width:24%}.price-table th:nth-child(3){width:39%}}
/* Gói giá sở hữu trí tuệ: phí dịch vụ theo hợp đồng + phí cố định + tổng dự kiến (6 ô: tên, phạm vi, giá, bao gồm, các khoản phí, nút) */
.fee-packs>.plan{grid-row:span 6}
.fee-packs .plan-list{margin-bottom:22px}
.fee-packs .plan-fees:empty{margin:0}
.plan-sum{list-style:none;margin:0 0 24px;padding:14px 0 0;border-top:1px solid var(--line);display:grid;gap:8px;font-size:.9rem;color:var(--muted)}
.plan-sum li{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.plan-sum b{color:var(--ink);font-weight:600;white-space:nowrap}
.plan-sum .sum-all{margin-top:4px;padding-top:10px;border-top:1px dashed var(--line);color:var(--navy);font-weight:600}
.plan-sum .sum-all b{color:var(--brass-d);font-size:1.12rem;font-weight:700}
.plan.featured .plan-sum{border-color:rgba(255,255,255,.12);color:#c9d3ee}
.plan.featured .plan-sum b{color:#fff}
.plan.featured .plan-sum .sum-all{border-color:rgba(255,255,255,.22);color:#fff}
.plan.featured .plan-sum .sum-all b{color:var(--brass-2)}
/* Trang dịch vụ: khung bên phải = giá/chọn gói + nút việc chính; hộp thoại Xem luật sư phụ trách (danh sách đội ngũ, Xem chi tiết mở hồ sơ) */
.quote-card>.btn-block{margin-top:2px}
.pdlg:has(.tpop){width:min(780px,calc(100vw - 32px))}
.tpop-title{margin:0;padding-right:44px;font-size:clamp(1.45rem,1.2rem + .8vw,1.9rem)}
.tpop-sub{margin:6px 0 22px;color:var(--muted)}
.tpop-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tpop-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 16px 12px 12px;border:1px solid var(--line);border-radius:var(--r)}
.tpop-row.is-lead{border-color:var(--brass);background:#fff7ef}
.tpop-photo img{display:block;width:64px;height:80px;object-fit:cover;border-radius:4px}
.tpop-meta{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brass)}
.tpop-badge{padding:2px 8px;border-radius:3px;background:var(--brass);color:#fff;letter-spacing:.04em;text-transform:none;font-size:.75rem}
.tpop-info h3{margin:3px 0 2px;font-size:1.1rem}
.tpop-info h3 a{color:inherit}
.tpop-info h3 a:hover{color:var(--blue)}
.tpop-role{margin:0;font-size:.88rem;color:var(--muted)}
.tpop-back{display:inline-flex;align-items:center;min-height:36px;margin:0 0 16px;padding:0 14px 0 10px;border:1px solid var(--line);border-radius:4px;background:#fff;font:600 .9rem/1 var(--sans);color:var(--navy);cursor:pointer}
.tpop-back:hover{border-color:var(--navy)}
@media (max-width:600px){
  .tpop-row{grid-template-columns:56px minmax(0,1fr);gap:12px}
  .tpop-photo img{width:56px;height:70px}
  .tpop-row>.btn{grid-column:1/-1}
}

/* Trang Tài khoản › Tài liệu của tôi: file khách đã tải lên (assets/account.js drawFiles) */
.acc-list>.req{min-width:0}
.file-list{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.file-list li{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.file-list li>div{flex:1;min-width:0}
.file-list b{display:block;color:var(--navy);font-weight:600;line-height:1.35}
.file-list small{display:block;overflow-wrap:anywhere;color:var(--muted);font-size:.8rem}
.file-ic{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:6px;background:#fff;border:1px solid var(--line);color:var(--blue);font-size:.72rem;font-weight:700}
.file-img{display:block;max-width:100%;max-height:70vh;margin:14px auto 0;border-radius:6px;border:1px solid var(--line)}
@media (max-width:600px){.file-list li{gap:10px;padding:10px}.file-ic{width:38px;height:38px}}
/* ===== 01/11/2026: Phiếu tiếp nhận (/tiep-nhan-ho-so/, hộp thoại ở trang dịch vụ) – cùng kiểu, cùng phông 2 form thành lập / thay đổi (/ai/, /fix/):
   Playfair Display (tiêu đề) + Inter (chữ thường), cỡ chữ / màu / khoảng cách theo lớp Tailwind của 2 form. Phông nạp ở <head> trang phiếu và bởi assets/intake.js khi mở hộp thoại ===== */
.tn-page,.tn-card{--tn-serif:"Playfair Display",Georgia,serif;--tn-sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--tn-orange:#ea6c00;--tn-orange-l:#ff7b0a}
.tn-page{padding:clamp(16px,2.4vw,24px) 0 clamp(40px,6vw,72px);background:var(--navy);font-family:var(--tn-sans);-webkit-font-smoothing:antialiased}
.tn-page .crumbs{padding-top:0;font-size:13px}
.tn-page .crumbs,.tn-page .crumbs a,.tn-page .crumbs li[aria-current]{color:rgba(255,255,255,.62)}
.tn-page .crumbs li+li::before{color:rgba(255,255,255,.3)}
.tn-page .crumbs a:hover{color:#fff}
.tn-intro{padding:16px 0 24px;text-align:center}
.tn-intro h1{margin:0;font:800 30px/36px var(--tn-serif);letter-spacing:-.025em;color:#fff}
.tn-intro p{max-width:720px;margin:8px auto 0;font:500 16px/24px var(--tn-sans);color:var(--tn-orange)}
.tn-wrap{max-width:1024px;margin:0 auto}
.tn-card{position:relative;overflow:hidden;border:1px solid rgba(234,108,0,.2);border-radius:16px;background:#fff;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);font:400 16px/24px var(--tn-sans);color:#111827;-webkit-font-smoothing:antialiased}
.tn-card input,.tn-card select,.tn-card textarea,.tn-card button{font-family:var(--tn-sans)}
.tn-top{position:relative;padding:32px 32px 0;background:var(--navy);color:#fff}
.tn-top::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--tn-orange)}
.tn-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.tn-brand{display:flex;align-items:center;gap:16px;min-width:0}
.tn-logo{display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:16px;background:var(--tn-orange);box-shadow:0 10px 15px -3px rgba(249,115,22,.2),0 4px 6px -4px rgba(249,115,22,.2)}
.tn-logo .i{width:32px;height:32px;color:#fff}
.tn-firm{margin:0;font:900 24px/32px var(--tn-serif);letter-spacing:-.025em;text-transform:uppercase;color:#fff}
.tn-portal{margin:2px 0 0;font:700 12px/16px var(--tn-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--tn-orange)}
.tn-state{flex:none;text-align:right}
.tn-state small{display:block;margin-bottom:4px;font:700 12px/15px var(--tn-sans);letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.tn-state span{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border:1px solid rgba(255,255,255,.1);border-radius:99px;background:rgba(255,255,255,.05);font:700 12px/15px var(--tn-sans);text-transform:uppercase;color:rgba(255,255,255,.8)}
.tn-state i{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:tn-pulse 2s cubic-bezier(.4,0,.6,1) infinite}
.tn-state b{font-weight:inherit}
@keyframes tn-pulse{50%{opacity:.5}}
.tn-steps{position:relative;display:flex;justify-content:space-between;margin:40px 0 0;padding:6px 0 16px;list-style:none;overflow-x:auto;scrollbar-width:none}
.tn-steps::-webkit-scrollbar{display:none}
.tn-steps::before{content:"";position:absolute;left:0;right:0;top:30px;height:1px;background:rgba(255,255,255,.1)}
.tn-steps[hidden],.tn-steps li[hidden]{display:none}
.tn-steps li{position:relative;z-index:1;flex:0 0 auto;min-width:80px}
.tn-steps button{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:0;border:0;background:none;color:inherit;cursor:pointer;opacity:.7;transition:opacity .5s,transform .5s}
.tn-steps button:hover{opacity:1}
.tn-ico{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(21,25,59,.5);color:rgba(255,255,255,.6);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);transition:all .15s}
.tn-ico .i{width:20px;height:20px}
.tn-ico .tn-ok{display:none}
.tn-st{max-width:80px;font:700 12px/1.25 var(--tn-sans);letter-spacing:.05em;text-align:center;text-transform:uppercase;color:rgba(255,255,255,.8)}
.tn-steps li.on button{opacity:1;transform:scale(1.1)}
.tn-steps li.on .tn-ico{transform:rotate(12deg);border-color:transparent;background:var(--tn-orange);color:#fff;box-shadow:0 10px 15px -3px rgba(249,115,22,.4),0 4px 6px -4px rgba(249,115,22,.4)}
.tn-steps li.on .tn-st{color:#fff}
.tn-steps li.done .tn-ico{border-color:transparent;background:#22c55e;color:#fff}
.tn-steps li.done .tn-ico .i:not(.tn-ok){display:none}
.tn-steps li.done .tn-ok{display:block}
.tn-form{padding:32px 32px 0}
.tn-form[hidden]{display:none}
.tn-step{max-width:896px;margin:0 auto;animation:tn-in .5s ease}
.tn-step[hidden]{display:none}
@keyframes tn-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.tn-step,.tn-state i{animation:none}.tn-steps button,.tn-ico{transition:none}}
.tn-sh{margin:0 0 24px}
.tn-sh h3{display:flex;align-items:center;gap:8px;margin:0;font:900 24px/32px var(--tn-serif);letter-spacing:-.025em;text-transform:uppercase;color:var(--tn-orange)}
.tn-sh h3 .i{flex:none;width:24px;height:24px;stroke-width:2}
.tn-sh p{margin:4px 0 0;font:400 14px/20px var(--tn-sans);color:#6b7280}
.tn-label{margin:0 0 12px;font:600 14px/20px var(--tn-sans);color:#374151}
.tn-box{min-width:0;margin:0 0 24px;padding:20px;border:1px solid #f3f4f6;border-radius:16px;background:rgba(249,250,251,.6)}
.tn-box-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;width:100%;margin:0 0 16px;padding:0 0 8px;border-bottom:1px solid #e5e7eb;float:left}
.tn-box-h+*{clear:both}
.tn-box-h h4,.tn-box-h strong{margin:0;font:700 16px/24px var(--tn-sans);letter-spacing:0;color:#1f2937}
.tn-box-h .i{width:18px;height:18px;color:var(--tn-orange)}
.tn-detail[hidden]{display:none}
.tn-badge{margin-left:auto;padding:2px 10px;border:1px solid #e5e7eb;border-radius:99px;background:#fff;color:#374151;font:700 12px/16px var(--tn-sans)}
.tn-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tn-grid .field-wide{grid-column:1/-1}
.tn-form .field{display:grid;gap:6px;margin:0}
.tn-form .field[hidden],.tn-form .tn-label[hidden]{display:none}
.tn-form .field label{margin:0;font:600 14px/20px var(--tn-sans);color:#374151}
.tn-form .field .tn-label{margin:0}
.tn-form .field input,.tn-form .field select,.tn-form .field textarea{width:100%;min-height:0;padding:10px 16px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;font:400 16px/24px var(--tn-sans);color:#111827;outline:none;box-shadow:none}
.tn-form .field textarea{resize:vertical}
.tn-form .field input:focus,.tn-form .field select:focus,.tn-form .field textarea:focus{border-color:#e5e7eb;box-shadow:0 0 0 2px #3b82f6}
.tn-form .field input::placeholder,.tn-form .field textarea::placeholder{color:#6b7280;opacity:1}
.tn-form .must{color:#ef4444}
.tn-hint{font:400 12px/16px var(--tn-sans);color:#6b7280}
.tn-choice{display:grid;gap:12px;margin:0 0 24px}
.tn-choice-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tn-services{grid-template-columns:repeat(3,minmax(0,1fr))}
.tn-services>label:last-child:nth-child(3n+1){grid-column:1/-1}
.tn-choice label{position:relative;display:block;cursor:pointer}
.tn-choice label[hidden]{display:none}
.tn-choice input{position:absolute;opacity:0;pointer-events:none}
.tn-choice label>span{display:grid;grid-template-columns:auto 1fr;align-content:start;column-gap:8px;row-gap:4px;height:100%;padding:16px;border:2px solid #e5e7eb;border-radius:12px;background:#fff;transition:all .15s}
.tn-choice label:hover>span{border-color:#bfdbfe}
.tn-choice input:checked+span{border-color:#3b82f6;background:#eff6ff}
.tn-choice input:focus-visible+span{outline:2px solid #3b82f6;outline-offset:2px}
.tn-dot{grid-row:1;align-self:center;width:16px;height:16px;border:2px solid #d1d5db;border-radius:50%}
.tn-choice input:checked+span .tn-dot{border-color:#2563eb;background:#2563eb;box-shadow:inset 0 0 0 2px #fff}
.tn-choice strong{grid-column:2;font:600 16px/24px var(--tn-sans);color:#1f2937}
.tn-choice small{grid-column:2;font:400 12px/16px var(--tn-sans);color:#6b7280}
.tn-choice small[hidden]{display:none}
.tn-services label>span{grid-template-columns:auto auto 1fr}
.tn-services .i{grid-row:1;align-self:center;width:20px;height:20px;color:var(--tn-orange)}
.tn-services strong{grid-column:3}
.tn-services small{grid-column:3}
.tn-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tn-checks label{display:flex;gap:8px;align-items:center;margin:0;padding:10px 12px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;font:500 14px/20px var(--tn-sans);color:#374151;cursor:pointer}
.tn-form .tn-checks input{width:16px;height:16px;min-height:0;padding:0;accent-color:#2563eb}
.tn-pick{margin:0 0 24px;padding:20px;border:1px dashed #d1d5db;border-radius:16px;text-align:center;font:400 14px/20px var(--tn-sans);color:#6b7280}
.tn-pick[hidden]{display:none}
.tn-pick button,.tn-miss button,.tn-sum-c button{padding:0;border:0;background:none;font:700 12px/16px var(--tn-sans);color:#1d4ed8;cursor:pointer}
.tn-pick button:hover,.tn-miss button:hover,.tn-sum-c button:hover{text-decoration:underline}
.tn-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:112px;padding:20px;border:2px dashed #d1d5db;border-radius:12px;background:#fff;text-align:center;cursor:pointer;transition:border-color .15s}
.tn-drop.over,.tn-drop:hover{border-color:var(--tn-orange)}
.tn-drop .i{width:28px;height:28px;color:var(--tn-orange)}
.tn-drop strong{font:600 14px/20px var(--tn-sans);color:#1f2937}
.tn-drop small{font:400 12px/16px var(--tn-sans);color:#6b7280}
.tn-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.tn-files{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.tn-files:empty{display:none}
.tn-files li{display:flex;gap:12px;align-items:center;padding:8px 12px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;font:400 14px/20px var(--tn-sans)}
.tn-files li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:#1f2937}
.tn-files li small{font-size:12px;color:#6b7280}
.tn-files button{border:0;background:none;font-size:20px;line-height:1;color:#6b7280;cursor:pointer}
.tn-miss{margin:0 0 24px;padding:20px;border:1px solid #fde68a;border-radius:16px;background:#fffbeb;color:#78350f}
.tn-miss[hidden],.tn-full[hidden]{display:none}
.tn-miss>p{margin:0 0 8px;font:700 16px/24px var(--tn-sans)}
.tn-miss ul{display:grid;gap:4px;margin:0;padding:0;list-style:none;font:400 14px/20px var(--tn-sans)}
.tn-miss li{display:flex;align-items:center;justify-content:space-between;gap:12px}
.tn-miss li span::before{content:"• "}
.tn-miss li button{flex:none}
.tn-full{display:flex;align-items:center;gap:8px;margin:0 0 24px;padding:16px;border:1px solid #bbf7d0;border-radius:16px;background:#f0fdf4;font:600 16px/24px var(--tn-sans);color:#166534}
.tn-full .i{width:18px;height:18px}
.tn-sum{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 24px}
.tn-sum-c{min-width:0;padding:16px;border:1px solid #f3f4f6;border-radius:12px;background:#fff}
.tn-sum-c>p{display:flex;justify-content:space-between;gap:12px;margin:0 0 8px;font:900 12px/16px var(--tn-sans);letter-spacing:.05em;text-transform:uppercase;color:var(--tn-orange)}
.tn-sum-c>p button{letter-spacing:0;text-transform:none}
.tn-sum-c dl{display:grid;grid-template-columns:144px minmax(0,1fr);gap:8px;margin:0;font:400 14px/20px var(--tn-sans)}
.tn-sum-c dt{color:#6b7280}
.tn-sum-c dd{margin:0;font-weight:600;white-space:pre-line;overflow-wrap:anywhere;color:#1f2937}
.tn-sum-c dd.no{font-weight:600;font-style:italic;color:#d1d5db}
.tn-info{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px;padding:16px;border:1px solid #fef3c7;border-radius:12px;background:#fffbeb;font:italic 400 14px/20px var(--tn-sans);color:#92400e}
.tn-info .i{flex:none;width:18px;height:18px;margin-top:1px;color:#d97706}
.tn-consent{display:flex;gap:12px;align-items:flex-start;margin:0;padding:16px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;font:400 14px/20px var(--tn-sans);color:#374151;cursor:pointer}
.tn-consent input{flex:none;width:18px;height:18px;margin:1px 0 0;accent-color:#2563eb}
.tn-consent a{color:#1d4ed8}
.tn-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.tn-error{max-width:896px;margin:16px auto 0;padding:12px 16px;border:1px solid #fecaca;border-radius:12px;background:#fef2f2;font:400 14px/20px var(--tn-sans);color:#b91c1c}
.tn-error[hidden]{display:none}
.tn-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;max-width:896px;margin:48px auto 0;padding:32px 0;border-top:1px solid #f3f4f6}
.tn-back,.tn-next,.tn-send{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:16px;text-decoration:none;text-transform:uppercase;cursor:pointer;transition:all .15s}
.tn-back{padding:12px 32px;background:none;font:700 12px/15px var(--tn-sans);letter-spacing:.1em;color:#6b7280}
.tn-back:hover{background:#f3f4f6;color:#6b7280}
.tn-back.off{visibility:hidden}
.tn-back .i,.tn-next .i,.tn-send .i{width:20px;height:20px;stroke-width:2}
.tn-next,.tn-send{padding:16px 48px;font:900 14px/20px var(--tn-sans);letter-spacing:.15em;color:#fff}
.tn-next{background:var(--tn-orange);box-shadow:0 25px 50px -12px #fed7aa}
.tn-next:hover{background:var(--tn-orange-l);color:#fff}
.tn-next .i{transition:transform .15s}
.tn-next:hover .i{transform:translateX(4px)}
.tn-send{gap:12px;background:#16a34a;box-shadow:0 25px 50px -12px #bbf7d0}
.tn-send:hover{background:#15803d}
.tn-send[hidden],.tn-next[hidden]{display:none}
.tn-send:disabled,.tn-next:disabled{opacity:.5;cursor:default}
.tn-draft{display:flex;flex-direction:column;align-items:center;gap:4px}
.tn-draft button{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid #e5e7eb;border-radius:16px;background:#fff;font:700 12px/15px var(--tn-sans);letter-spacing:.1em;text-transform:uppercase;color:#6b7280;cursor:pointer;transition:all .15s}
.tn-draft button:hover{border-color:var(--tn-orange);color:var(--tn-orange)}
.tn-draft .i{width:16px;height:16px;stroke-width:2}
.tn-draft small{font:400 12px/15px var(--tn-sans);color:#6b7280}
.tn-done{max-width:448px;margin:0 auto;padding:48px 0;text-align:center}
.tn-done[hidden]{display:none}
.tn-done-ic{display:grid;place-items:center;width:96px;height:96px;margin:0 auto 24px;border-radius:50%;background:#dcfce7;color:#16a34a;box-shadow:0 10px 15px -3px #dcfce7,0 4px 6px -4px #dcfce7}
.tn-done-ic .i{width:48px;height:48px;stroke-width:2}
.tn-done h3{margin:0 0 8px;font:900 24px/32px var(--tn-serif);color:#111827}
.tn-done p{margin:0 0 8px;font:400 16px/24px var(--tn-sans);color:#4b5563}
.tn-done p strong{color:#111827}
.tn-done-acts{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-top:24px}
.tn-done-acts .tn-next{padding:12px 24px;font:700 16px/24px var(--tn-sans);letter-spacing:0;text-transform:none;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1)}
.tn-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;padding:16px;border-top:1px solid #f3f4f6;background:#f9fafb;font:700 12px/15px var(--tn-sans);letter-spacing:.1em;text-transform:uppercase;color:#6b7280}
.tn-foot span{display:inline-flex;align-items:center;gap:6px}
.tn-foot i{width:6px;height:6px;border-radius:50%}
.tn-foot .g{background:#22c55e}.tn-foot .b{background:#3b82f6}.tn-foot .v{background:#6366f1}
/* Trong hộp thoại (trang dịch vụ): khung phiếu chiếm cả hộp thoại, đầu khung + thanh bước đứng yên, phần thân cuộn */
.pdlg:has(.tn-card){width:min(1024px,calc(100vw - 32px));height:calc(100vh - 40px);border-radius:16px}
.pdlg-body:has(.tn-card){display:flex;flex:1;min-height:0;padding:0;overflow:hidden}
.pdlg-body .tn-wrap{display:flex;flex:1;min-width:0;max-width:none}
.pdlg-body .tn-card{display:flex;flex:1;flex-direction:column;min-width:0;border:0;border-radius:0;box-shadow:none}
.pdlg-body .tn-top{flex:none;padding-right:72px}
.pdlg-body .tn-form,.pdlg-body .tn-done{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
.pdlg-body .tn-done{max-width:none;padding-inline:24px}
.pdlg-body .tn-done>*{max-width:448px;margin-inline:auto}
.pdlg-body .tn-foot{flex:none}
@media (max-width:767px){
  .tn-state{display:none}
  .tn-intro h1{font-size:24px;line-height:32px}
  .tn-intro p{font-size:14px;line-height:20px}
  .tn-top{padding:24px 16px 0}
  .tn-firm{font-size:20px;line-height:28px}
  .tn-portal{font-size:12px;letter-spacing:.14em}
  .tn-logo{width:48px;height:48px;border-radius:14px}
  .tn-logo .i{width:26px;height:26px}
  .tn-steps{margin-top:28px}
  .tn-steps li{flex:1 0 auto;min-width:54px}
  .tn-steps li.on button{transform:none}
  .tn-ico{width:42px;height:42px;border-radius:14px}
  .tn-steps::before{top:27px}
  .tn-st{max-width:62px;font-size:12px;letter-spacing:.02em}
  .tn-form{padding:24px 16px 0}
  .tn-sh h3{font-size:20px;line-height:28px}
  .tn-grid,.tn-services,.tn-checks,.tn-sum{grid-template-columns:1fr}
  .tn-choice-2{grid-template-columns:1fr 1fr}
  .tn-box{padding:16px}
  .tn-nav{gap:12px;margin-top:32px;padding:24px 0}
  .tn-back{padding:12px 16px}
  .tn-next,.tn-send{padding:16px 28px}
  .tn-draft{order:3;width:100%}
  .tn-sum-c dl{grid-template-columns:1fr;gap:0}
  .tn-sum-c dd{margin-bottom:8px}
  .pdlg:has(.tn-card){width:100vw;height:100vh;border-radius:0}
  .pdlg-body .tn-top{padding-right:60px}
  .pdlg-body .tn-foot{display:none}
}
/* Bảng trong trang Tài khoản: khung đủ rộng thì chia cột theo nội dung (mã đơn rộng vừa, ngày và số tiền một dòng, dịch vụ lấy phần còn lại); khung hẹp thì bảng nhiều cột thành thẻ, không cuộn ngang */
.table-wrap:has(>.acc-table){container-type:inline-size}
@container (min-width:780px){
  .acc-table th,.acc-table td{padding:11px 12px}
  .acc-table td[data-th="Mã đơn"]{width:13em;overflow-wrap:anywhere}
  .acc-table td:is([data-th^="Ngày"],[data-th="Số tiền"],[data-th="Tổng chi phí"],[data-th="Đã thanh toán"],[data-th="Lượt mở"]),.acc-table td[data-th="Hoa hồng"]>b{white-space:nowrap}
  .acc-table td[data-th="Dịch vụ"]{min-width:11em}
  .acc-table td small{overflow-wrap:anywhere}
  .acc-table .dot-st{white-space:normal;align-items:flex-start}
  .acc-table .dot-st::before{flex:none;margin-top:.5em}
}
@container (max-width:779.98px){
  .acc-table:has(th:nth-child(5)) thead{display:none}
  .acc-table:has(th:nth-child(5)) tr{display:grid;padding:10px 0;border-bottom:1px solid var(--line)}
  .acc-table:has(th:nth-child(5)) tr:last-child{border-bottom:0}
  .acc-table:has(th:nth-child(5)) td{display:block;padding:4px 14px;border:0;text-align:right;overflow-wrap:anywhere}
  .acc-table:has(th:nth-child(5)) td::before{content:attr(data-th);float:left;margin-right:16px;font-size:.8rem;line-height:1.9;color:var(--muted);text-align:left}
  .acc-table:has(th:nth-child(5)) td[colspan]::before{content:none}
}
/* Danh mục dịch vụ: 2 cột chuẩn hóa | chuyên sâu; nhóm chỉ có một cột và "Thủ tục thường gặp khác" trải hết hàng, danh sách chia 2 cột – không còn khung cao mà trống */
.cat-tiers{grid-template-columns:repeat(2,minmax(0,1fr))}
.cat-tier:only-child,.cat-tier-them{grid-column:1/-1}
.cat-tier:only-child .svc-mini,.cat-tier-them .svc-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
.cat-tier:only-child .svc-mini a,.cat-tier-them .svc-mini a{border-bottom:0}
@media (max-width:760px){
  .cat-tiers,.cat-tier:only-child .svc-mini,.cat-tier-them .svc-mini{grid-template-columns:minmax(0,1fr)}
  .cat-tier:only-child .svc-mini a,.cat-tier-them .svc-mini a{border-bottom:1px solid var(--line)}
  .cat-tier:only-child .svc-mini li:last-child a,.cat-tier-them .svc-mini li:last-child a{border-bottom:0}
}
/* Đầu khối Đặt dịch vụ: tiêu đề và 3 bước cùng hàng khi đủ chỗ, thiếu chỗ thì 3 bước xuống dòng (trước đây ở 1024px tiêu đề bị ép còn 106px) */
.order-head{display:flex;flex-wrap:wrap;gap:20px 24px;justify-content:space-between;align-items:flex-end}
.order-head .section-head{flex:1 1 340px}
/* Nút mở bộ hồ sơ có tên dài: xuống dòng trong khung */
.req-links .btn{max-width:100%;white-space:normal;text-align:center;padding-block:8px}
/* Bảng từ 3 cột trên điện thoại: mỗi dòng một thẻ – ô đầu là tiêu đề, các ô sau "tên cột | giá trị" (main.js gắn data-th); không còn cột hẹp chữ xuống dòng từng chữ, không cuộn ngang */
@media (max-width:600px){
  table.tbl-cards.tbl-cards{display:block;width:100%;min-width:0;table-layout:auto}
  table.tbl-cards.tbl-cards thead,table.tbl-cards.tbl-cards tr.tbl-head{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  table.tbl-cards.tbl-cards tbody,table.tbl-cards.tbl-cards tfoot{display:block}
  table.tbl-cards.tbl-cards tr{display:block;padding:12px 16px;border-bottom:1px solid var(--line)}
  table.tbl-cards.tbl-cards tbody tr:last-child{border-bottom:0}
  table.tbl-cards.tbl-cards td,table.tbl-cards.tbl-cards th{display:flow-root;width:auto;padding:3px 0 3px 8.5rem;border:0;background:none;text-align:left;white-space:normal}
  table.tbl-cards.tbl-cards td::before,table.tbl-cards.tbl-cards th::before{content:attr(data-th);float:left;width:7.75rem;margin:.1em 0 0 -8.5rem;font-size:.8rem;font-weight:500;line-height:1.45;color:var(--muted)}
  table.tbl-cards.tbl-cards{margin:0}
  table.tbl-cards.tbl-cards tr>:first-child{display:block;padding:0 0 6px;font-weight:700;color:var(--navy)}
  table.tbl-cards.tbl-cards tr>:first-child small{font-weight:400}
  table.tbl-cards.tbl-cards tr>:first-child::before,table.tbl-cards.tbl-cards td:not([data-th])::before,table.tbl-cards.tbl-cards th:not([data-th])::before{content:none}
  table.tbl-cards.tbl-cards td:not([data-th]),table.tbl-cards.tbl-cards th:not([data-th]){display:block;padding-left:0}
  table.tbl-cards.tbl-cards tfoot tr{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-top:2px solid var(--line);border-bottom:0}
  table.tbl-cards.tbl-cards tfoot td,table.tbl-cards.tbl-cards tfoot th{padding:0}
  .info-table th{width:40%}
}
/* Ô Tùy chỉnh hạng mục trên điện thoại: "Không bắt buộc" xuống dòng dưới tiêu đề */
@media (max-width:600px){
  .order-more>summary{flex-wrap:wrap;row-gap:2px}
  .order-more>summary span{flex:1 1 0}
  .order-more>summary small{flex:0 0 100%;margin-left:0;padding-left:28px}
}
/* Dải đội ngũ trang chủ trên điện thoại nhỏ: một cột, tên và chức danh đủ chữ */
@media (max-width:480px){
  .team-strip{grid-template-columns:minmax(0,1fr);gap:8px}
  .team-mini{align-items:center}
  .team-mini img{width:44px;height:55px}
}
/* Số liệu thẻ vụ việc khi thẻ hẹp (≤1180px): mỗi số liệu một dòng "số – chú thích" thay vì 3 cột 80–100px */
@media (max-width:1180px){
  .case-figs{grid-template-columns:minmax(0,1fr);grid-template-rows:none;row-gap:6px}
  .case-figs li{display:flex;grid-row:auto;gap:10px;align-items:baseline}
  .case-figs strong{flex:none;min-width:4.4em;font-size:1.15rem}
  .case-figs span{margin:0}
}
/* Phiếu tiếp nhận ở máy tính bảng (768–900px): 7 thẻ dịch vụ chia 2 cột, tên dịch vụ không bị ép 3 dòng */
@media (min-width:768px) and (max-width:900px){
  .tn-services{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tn-services>label:last-child:nth-child(3n+1){grid-column:auto}
  .tn-services>label:last-child:nth-child(2n+1){grid-column:1/-1}
}
/* ---------- Tiếp thị liên kết: 3 bảng gộp (Lịch sử nhận hoa hồng / Khách đã giới thiệu / Đối soát) – tổng quan trước, bấm dòng xem chi tiết (account.js) ---------- */
.aff-tabs button{display:inline-flex;align-items:center;gap:6px}
.aff-tabs em{min-width:20px;padding:1px 6px;border-radius:999px;background:var(--sand);color:var(--navy);font:600 .75rem/1.4 var(--sans);font-style:normal;text-align:center}
.aff-tabs em.is-alert{background:var(--brass);color:#fff}
.aff-tabs em[hidden]{display:none}
.aff-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.aff-chips:empty{display:none}
.aff-chips button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font:inherit;font-size:.84rem;color:var(--muted);cursor:pointer}
.aff-chips button b{color:var(--navy);font-weight:700}
.aff-chips button:hover{border-color:var(--navy)}
.aff-chips button[aria-pressed="true"]{border-color:var(--navy);background:var(--navy);color:#fff}
.aff-chips button[aria-pressed="true"] b{color:#fff}
.aff-sum{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0 0 12px;padding:10px 14px;border-radius:6px;background:var(--paper);font-size:.88rem;color:var(--muted)}
.aff-sum b{color:var(--navy);font-size:.98rem}
.aff-sum:empty{display:none}
.agl{border-top:1px solid var(--line)}
.agl-head,.agl-main{display:grid;grid-template-columns:var(--cols);gap:12px;align-items:center}
.agl-head{padding:9px 12px;background:#eef2fb;font-size:.8rem;font-weight:600;color:var(--navy)}
.agl-row{border-bottom:1px solid var(--line);scroll-margin-top:96px}
.agl-row.is-open{background:#fafbfe}
.agl-row.is-alert{box-shadow:inset 3px 0 0 var(--brass)}
.agl-main{width:100%;padding:12px;border:0;background:none;font:inherit;font-size:.92rem;color:var(--ink);text-align:left;cursor:pointer}
.agl-main:hover{background:var(--paper)}
.agl-main:focus-visible{outline:2px solid var(--brass);outline-offset:-2px}
.agl-main>span{min-width:0;overflow-wrap:break-word}
.agl-main b{color:var(--navy)}
.agl-main small,.agl-ord small{display:block;margin-top:2px;font-size:.8rem;color:var(--muted)}
.agl-chev::before{content:"";display:block;width:8px;height:8px;margin:0 auto;border:solid var(--navy);border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg);transition:transform .15s}
.agl-row.is-open .agl-chev::before{transform:translateY(2px) rotate(-135deg)}
.agl-rate{display:inline-block;padding:2px 9px;border-radius:5px;background:#fff1e3;color:var(--brass-d);font-weight:700;font-size:.86rem}
.agl-sub{display:grid;gap:12px;padding:2px 12px 16px 24px}
.agl-ords{display:grid;margin:0;padding:0;list-style:none}
.agl-ord{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.7fr);gap:12px;padding:10px 0;border-top:1px dashed var(--line);font-size:.88rem}
.agl-ord:first-child{border-top:0}
.agl-ord b{color:var(--navy)}
.agl-ord .dot-st{white-space:normal;align-items:flex-start}
.agl-none{margin:0;font-size:.88rem;color:var(--muted)}
.agl-dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 20px;margin:0}
.agl-dl dt{font-size:.78rem;font-weight:600;color:var(--muted)}
.agl-dl dd{margin:2px 0 0;font-size:.9rem;color:var(--ink);overflow-wrap:anywhere}
.agl-total{margin:0;font-size:.92rem;color:var(--muted)}
.agl-total b{color:var(--navy);font-size:1.02rem}
.agl .acc-loading{margin:0;padding:22px 12px}
.agl-sub .txt-btn{justify-self:start}
.aff-alert{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;padding:14px 18px;border:1px solid #f7c99d;border-left:4px solid var(--brass);border-radius:6px;background:#fff7ef}
.aff-alert[hidden]{display:none}
.aff-alert .i{flex:none;width:22px;height:22px;color:var(--brass)}
.aff-alert p{flex:1;min-width:200px;margin:0;font-size:.95rem;color:var(--ink)}
.aff-alert b{color:var(--navy)}
.ds-thread{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.ds-thread li{max-width:560px;padding:9px 12px;border-radius:8px;background:#eef2fb;font-size:.88rem}
.ds-thread li.me{justify-self:end;background:#fff1e3}
.ds-thread b{margin-right:8px;color:var(--navy)}
.ds-thread time{font-size:.78rem;color:var(--muted)}
.ds-thread p{margin:4px 0 0;white-space:pre-wrap}
.ds-act{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}
.ds-act details{flex:1;min-width:240px}
.ds-act summary{list-style:none;display:inline-flex}
.ds-act summary::-webkit-details-marker{display:none}
.ds-act details[open] summary{margin-bottom:8px}
.ds-act textarea{display:block;width:100%;margin-bottom:8px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:.9rem;resize:vertical}
.ds-act textarea:focus{outline:0;border-color:var(--brass)}
.ds-act .form-err{flex-basis:100%;margin:0}
/* Bảng gọn theo bề rộng khung (điện thoại, cột hẹp ở Trang chủ tài khoản): mỗi dòng thành thẻ – ô đầu là tiêu đề, các ô sau có nhãn cột */
.agl{container:agl/inline-size}
@container agl (max-width:640px){
  .agl-head{display:none}
  .agl-main{position:relative;grid-template-columns:var(--mcols);gap:8px 14px;padding:14px 34px 14px 12px}
  .agl-main>span:first-child{grid-column:1/-1}
  .agl-main>span[data-l]::before{content:attr(data-l);display:block;font-size:.75rem;font-weight:600;color:var(--muted)}
  .agl-main>span:nth-last-child(2):nth-child(even){grid-column:span 2}
  .agl-chev{position:absolute;top:18px;right:12px}
  .agl-sub{padding:2px 12px 16px}
  .agl-ord{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 14px}
  .agl-ord>div:first-child,.agl-ord>div:last-child{grid-column:1/-1}
  .agl-ord>div[data-l]::before{content:attr(data-l);display:block;font-size:.75rem;font-weight:600;color:var(--muted)}
}

/* Hộp đăng nhập: ô đồng ý Chính sách bảo mật (bắt buộc) */
.auth-agree{display:flex;gap:10px;align-items:flex-start;font-size:.85rem;line-height:1.5;color:var(--muted);cursor:pointer}
.auth-agree input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--brass)}
.auth-agree a{color:var(--navy);font-weight:600;text-decoration:underline;text-decoration-color:var(--brass-2);text-underline-offset:2px}

/* Thông báo cookie (main.js): thẻ góc dưới trái, điện thoại nằm trên thanh nút cuối màn hình */
.ck{position:fixed;left:24px;bottom:24px;z-index:70;width:min(420px,calc(100vw - 32px));padding:24px 30px 28px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 18px 44px -18px rgba(17,26,51,.35)}
.ck[hidden]{display:none}
.ck-t{margin:0 0 12px;font:700 1.4rem/1.3 var(--serif);color:var(--navy)}
.ck-d{margin:0 0 22px;font-size:1rem;font-style:italic;line-height:1.65;color:var(--muted)}
.ck-d a{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.ck-acts{display:flex;justify-content:space-between;gap:12px}
.ck-acts button{min-height:44px;padding:0 21px;border:0;border-radius:10px;font:700 .92rem/1 var(--sans);cursor:pointer;transition:background .15s}
.ck-no{background:var(--sand);color:var(--navy)}
.ck-no:hover{background:var(--line)}
.ck-yes{background:var(--brass);color:#fff}
.ck-yes:hover{background:var(--brass-d)}
.ft-bottom{display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:center;align-items:center}
.ft-cookie{padding:0;border:0;background:none;font:inherit;font-size:.8rem;color:#8b97ab;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.ft-cookie:hover{color:#fff}
@media (max-width:760px){
  .ck{left:16px;bottom:calc(77px + env(safe-area-inset-bottom));padding:20px 24px 24px}
}

/* ---------- Trang Tài khoản: mọi danh sách cùng một khung (account.js mkList) – tab · tìm · thời gian · nút lọc · dòng tổng · bảng gọn ---------- */
.lst-h{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;margin:0 0 14px}
.lst-h .aff-tabs{flex:1 1 auto}
.lst-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-left:auto}
.lst-tools[hidden]{display:none}
.lst .aff-search{min-width:240px}
.lst-h:not(:has(.aff-tabs)) .lst-tools{width:100%;margin-left:0}
.lst-h:not(:has(.aff-tabs)) .aff-search{flex:1}
/* Tab: cùng kiểu tab của Thông tin tài khoản (.ptabs) */
.aff-tabs{gap:0 24px;border-bottom:1px solid var(--line)}
.aff-tabs button{margin-bottom:-1px;padding:10px 2px 11px;border-bottom:2px solid transparent;font-size:.92rem;font-weight:600;color:var(--muted)}
.aff-tabs button:hover{color:var(--navy)}
.aff-tabs button[aria-selected="true"]{border-bottom-color:var(--brass);color:var(--navy)}
/* Thanh tiến độ gọn trên dòng */
.pbar{display:flex;gap:3px;max-width:190px}
.pbar i{flex:1;height:6px;border-radius:3px;background:var(--line)}
.pbar i.done{background:var(--navy)}
.pbar i.cur{background:var(--brass)}
.agl-main .pbar+small{margin-top:6px}
/* Phần chi tiết khi mở một dòng */
.agl-sub h4{margin:0 0 8px;font:700 .76rem var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.agl-sub .pstep{margin:6px 0 2px}
.agl-sub .ord-state,.agl-sub .ord-wait,.agl-sub .req-note,.agl-sub .ord-log,.agl-sub .file-list{margin:0}
.agl-sub .ord-items{margin:0;padding:0;border:0}
.agl-sub .req-lines{font-size:.9rem}
.agl-acts{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center}
.agl-acts:empty{display:none}
.agl-acts .del-box{margin:0 0 0 auto;padding:0;border:0}
.agl-dl dd b{color:var(--navy)}
/* Chọn thời gian: nút + khung chọn nhanh và lịch */
.dp{position:relative}
.dp-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:6px;background:#fff;font:inherit;font-size:.9rem;color:var(--navy);white-space:nowrap;cursor:pointer}
.dp-btn:hover,.dp-btn[aria-expanded="true"]{border-color:var(--navy)}
.dp-btn .i{width:18px;height:18px;color:var(--muted)}
.dp-btn .i:last-child{width:14px;height:14px;transition:transform .15s}
.dp-btn[aria-expanded="true"] .i:last-child{transform:rotate(180deg)}
.dp.is-on .dp-btn{border-color:var(--navy);background:#eef2fb;font-weight:600}
.dp-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:40;display:grid;grid-template-columns:148px 296px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 18px 44px -12px rgba(17,26,51,.32)}
.dp-pop[hidden]{display:none}
.dp-pre{display:grid;align-content:start;gap:2px;padding:10px;border-right:1px solid var(--line);border-radius:10px 0 0 10px;background:var(--paper)}
.dp-pre button{padding:8px 10px;border:0;border-radius:5px;background:none;font:inherit;font-size:.86rem;color:var(--ink);text-align:left;cursor:pointer}
.dp-pre button:hover{background:#fff;color:var(--navy)}
.dp-pre button[aria-pressed="true"]{background:var(--navy);color:#fff}
.dp-cal{padding:14px}
.dp-in{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 10px}
.dp-in label{display:grid;gap:3px;font-size:.75rem;font-weight:600;color:var(--muted)}
.dp-in input{width:100%;min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:.88rem;color:var(--navy)}
.dp-in input:focus{outline:0;border-color:var(--brass)}
.dp-nav{display:flex;justify-content:space-between;align-items:center;margin:0 0 6px}
.dp-nav b{font-size:.92rem;color:var(--navy)}
.dp-nav button{width:32px;height:32px;border:0;border-radius:50%;background:none;font-size:1.35rem;line-height:1;color:var(--navy);cursor:pointer}
.dp-nav button:hover{background:var(--paper)}
.dp-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px 0;text-align:center}
.dp-dow{padding:4px 0;font-size:.75rem;font-weight:700;color:var(--muted)}
.dp-grid button{height:34px;border:0;border-radius:6px;background:none;font:inherit;font-size:.86rem;color:var(--ink);cursor:pointer}
.dp-grid button:hover{background:var(--paper)}
.dp-grid button.is-today{font-weight:700;color:var(--brass-d);box-shadow:inset 0 0 0 1px var(--brass-2)}
.dp-grid button.is-in{border-radius:0;background:#eef2fb;color:var(--navy)}
.dp-grid button.is-end{background:var(--navy);color:#fff;font-weight:700;box-shadow:none}
.dp-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
/* Thông báo đầu trang (mọi mục) */
.pnotes{margin:0 0 20px;border:1px solid #f7c99d;border-radius:var(--r);background:#fff7ef;overflow:hidden}
.pnotes[hidden]{display:none}
.pnotes-h{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2px 16px;padding:6px 16px}
.pnotes-h p{display:flex;align-items:center;gap:8px;margin:0;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brass-d)}
.pnotes-h b{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--brass);color:#fff;font-size:.75rem;letter-spacing:0}
.pnotes-tools{display:flex;flex-wrap:wrap;gap:0 16px}
.pnotes-tools button{padding:4px 0;border:0;background:none;font:inherit;font-size:.82rem;font-weight:600;color:var(--navy);cursor:pointer}
.pnotes-tools button:hover,.pnote-seen:hover{text-decoration:underline}
/* Mỗi thông báo một dòng: bấm cả dòng là tới đúng việc; "Đã xem" nằm riêng bên phải */
.pnote{display:flex;align-items:stretch;border-top:1px solid #f9dcc0}
.pnote-go{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:9px 12px 9px 16px;border:0;background:none;font:inherit;text-align:left;text-decoration:none;color:inherit;cursor:pointer}
.pnote-go:hover{background:#fdeedd}
.pnote-go>.i,.pnote-go>svg{flex:none;width:18px;height:18px;color:var(--brass)}
.pnote-t{flex:1;min-width:0;display:flex;align-items:baseline;gap:10px;white-space:nowrap;overflow:hidden}
.pnote-t b{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--navy);font-size:.92rem;line-height:1.5}
.pnote-t small{flex:1 12 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:.84rem;color:var(--muted)}
.pnote-go time{flex:none;font-size:.82rem;color:var(--muted)}
.pnote-cta{flex:none;display:inline-flex;align-items:center;gap:8px;font-size:.84rem;font-weight:600;color:var(--brass-d)}
.pnote-cta i{width:7px;height:7px;border:solid currentColor;border-width:2px 2px 0 0;transform:rotate(45deg)}
.pnote-seen{flex:none;padding:0 14px;border:0;border-left:1px solid #f9dcc0;background:none;font:inherit;font-size:.82rem;font-weight:600;color:var(--navy);white-space:nowrap;cursor:pointer}
.pnote.is-err .pnote-go>svg,.pnote.is-err .pnote-t b{color:#a1271c}
.pnote.is-err .pnote-t{display:block;white-space:normal}
.pnote.is-err .pnote-t small{display:block}
.pnote.is-seen{background:#fff}
.pnote.is-seen .pnote-go>svg,.pnote.is-seen .pnote-t b,.pnote.is-seen .pnote-cta{color:var(--muted)}
.pnote.is-seen .pnote-t b{font-weight:600}
.pnotes-more{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:7px 16px;border:0;border-top:1px solid #f9dcc0;background:none;font:inherit;font-size:.84rem;font-weight:600;color:var(--navy);cursor:pointer}
.pnotes-more:hover{background:#fdeedd}
.pnotes-more i{width:7px;height:7px;margin-top:-3px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg)}
.pnotes-more.is-open i{margin:3px 0 0;transform:rotate(-135deg)}
@media (max-width:1180px){.pnote-cta span{display:none}}
.acc-ava{position:relative}
.acc-n{position:absolute;top:-6px;right:-8px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--brass);color:#fff;font:700 12px/18px var(--sans);text-align:center;box-shadow:0 0 0 2px #fff}
.acc-n[hidden]{display:none}
.acc-menu a>.pnav-n{margin-left:auto}
/* Menu tài khoản đầu trang: cùng các nhóm như thanh bên */
.acc-menu{max-height:calc(100vh - 110px);overflow:auto}
.acc-menu-g{margin:8px 16px 2px;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--navy)}
.acc-menu-g[hidden]{display:none}
/* Hộp thoại: mức hoa hồng, hướng dẫn */
.pdlg:has(.rate-dlg),.pdlg:has(.req-dlg.aff-guide){width:min(680px,calc(100vw - 32px))}
.rate-dlg h3{margin:18px 0 8px;font-size:1rem}
.rate-list{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:6px}
.rate-list li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 14px;border-top:1px solid var(--line);font-size:.92rem}
.rate-list li:first-child{border-top:0}
.req-dlg.aff-guide .acc-how{grid-template-columns:minmax(0,1fr)}
.aff-link .acc-head .btn .i{width:16px;height:16px}
@media (max-width:760px){
  .lst-tools{width:100%;margin-left:0}
  .lst .aff-search{flex:1 1 100%;min-width:0}
  .dp{flex:1 1 100%}
  .dp-btn{width:100%}
  .dp-btn span{flex:1;text-align:left}
  .dp-pop{left:0;right:0;grid-template-columns:minmax(0,1fr)}
  .dp-pre{grid-template-columns:repeat(2,minmax(0,1fr));border-right:0;border-bottom:1px solid var(--line);border-radius:10px 10px 0 0}
  .pnotes-h{padding:4px 14px}
  .pnotes-tools button{min-height:44px}
  .pnote-go{gap:10px;padding:10px 8px 10px 14px}
  .pnote-t{display:block;white-space:normal}
  .pnote-t b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.4}
  .pnote-t small{display:block;white-space:nowrap}
  .pnote-go time,.pnote-cta{display:none}
  .pnote-seen{min-width:62px;padding:0 8px}
  .pnotes-more{min-height:44px}
}
/* Trang chủ tài khoản: Dịch vụ gần đây rộng hết khung, thẻ thông tin cá nhân + đối tác chia đều bên dưới */
.pcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;align-items:start}
.pcards>[hidden]{display:none}
.agl .dot-st{white-space:normal;align-items:flex-start}
.agl .dot-st::before{flex:none;margin-top:.5em}
@media (max-width:760px){
  .dp-in input{font-size:16px}
}
/* Vùng bấm tối thiểu 44px trên điện thoại (WCAG 2.5.5), số đếm tối thiểu 12px */
.pnav-n,.pnotes-h b{font-size:.78rem}
@media (max-width:760px){
  .login-link.is-in{min-width:44px;min-height:44px;justify-content:center}
  .btn-sm,.acc-link,.aff-search input{min-height:44px}
  .aff-chips{row-gap:10px}
  .aff-chips button{position:relative}
  .aff-chips button::after{content:"";position:absolute;inset:-5px 0}
}
/* Vùng bấm 44px trên điện thoại toàn website; viền Tab trên nền xanh chàm dùng cam sáng */
:is(.section-navy,.plan.featured,.cta,.help-card,.hub-cta,.order-sum,.practice-cta,.ai-card,.site-footer,.form-dark,.acc-help) :focus-visible{outline-color:var(--brass-2)}
@media (max-width:760px){
  .link-arrow,.tm-more,.stat-src,.hub-title a,.ft-cookie,.dossier footer a,.dossier footer .link-btn{position:relative}
  .link-arrow::after,.tm-more::after,.stat-src::after,.hub-title a::after,.ft-cookie::after,.dossier footer a::after,.dossier footer .link-btn::after{content:"";display:block;position:absolute;left:-4px;right:-4px;top:50%;height:44px;transform:translateY(-50%)}
  .login-link,.chip,.tn-draft button,.profile-qr a{min-height:44px}
  .sum-detail summary{padding-block:11px}
}
@media (max-width:980px){
  .mega-col li a,.mega-tier a,.mega-all-sub a,.mega-all{min-height:44px}
}
@media (max-width:760px){
  .ft-links li{margin:0}
  .ft-links a{align-items:center;min-height:44px}
  .ft-links .i{margin-top:0}
  .ft-contact li{margin-bottom:6px}
  .ft-contact li>a:first-child{align-items:center;min-height:44px}
  .info-list a,.tm-col h3 a,.case-more{position:relative}
  .info-list a::after,.tm-col h3 a::after,.case-more::after{content:"";position:absolute;left:-4px;right:-4px;top:50%;height:44px;transform:translateY(-50%)}
}
.byline-who small{font-size:.8rem}
/* Ô bắt buộc có dấu * (mọi form có .field; phiếu tiếp nhận đã có sẵn .must) */
.field:has(>:is(input,select,textarea)[required],>.pw>input[required])>label:not(:has(.must))::after{content:" *";color:#c62828;font-weight:700}
.form-dark .field:has(>:is(input,select,textarea)[required],>.pw>input[required])>label:not(:has(.must))::after{color:var(--brass-2)}
.must{color:#c62828;font-weight:700}
/* Ký hợp đồng hợp tác: hỏi cá nhân hay tổ chức trước khi hiện các ô cần điền */
.sign-party{margin:0 0 18px;padding:0;border:0;min-width:0}
.sign-party legend{padding:0;margin-bottom:10px;font-weight:700;color:var(--navy)}
.sign-party-g{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sign-party label{display:block;cursor:pointer}
.sign-party input{position:absolute;opacity:0}
.sign-party label>span{display:block;height:100%;padding:14px 16px 14px 44px;position:relative;border:1.5px solid var(--line);border-radius:8px;background:#fff}
.sign-party label>span::before{content:"";position:absolute;left:16px;top:17px;width:16px;height:16px;border:1.5px solid #8a94a8;border-radius:50%;background:#fff}
.sign-party b{display:block;color:var(--navy)}
.sign-party small{display:block;margin-top:4px;font-size:.84rem;line-height:1.45;color:var(--muted)}
.sign-party input:checked+span{border-color:var(--navy);background:var(--paper)}
.sign-party input:checked+span::before{border-color:var(--navy);background:var(--navy);box-shadow:inset 0 0 0 3px #fff}
.sign-party input:focus-visible+span{outline:2px solid var(--brass);outline-offset:2px}
.sign-fs{margin:0 0 14px;padding:0;border:0;min-width:0}
.sign-fs[hidden]{display:none}
@media (max-width:600px){.sign-party-g{grid-template-columns:1fr}}

/* Vụ việc tiêu biểu: bộ lọc (assets/cases.js) */
.nav-link{white-space:nowrap}
@media (max-width:1120px){.header-cta .btn{display:none}}
/* Menu Dịch vụ căn giữa theo đầu trang, không theo mục menu (mục menu lệch trái thì menu xổ bị cắt) */
@media (min-width:981px){.nav-list>li.has-mega{position:static}}
.case[hidden]{display:none}
.cf{display:grid;gap:18px;padding:20px 22px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.cf .chips{margin:0}
.chip small{margin-left:3px;font-size:12px;font-weight:600;color:var(--muted)}
.chip.active small{color:#fff}
.cf-row{display:flex;flex-wrap:wrap;gap:12px 14px}
.cf-row .field{flex:1 1 170px;min-width:0;margin:0}
.cf-row .cf-q{flex:2 1 280px}
.cf-row select{cursor:pointer}
.cf-sum{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin:14px 0 12px}
.cf-sum p{margin:0;color:var(--muted)}
.cf-sum strong{color:var(--navy)}
.cf-clear{min-height:44px;padding:0 2px;border:0;background:none;font-weight:600;color:var(--blue);text-decoration:underline;text-underline-offset:3px;cursor:pointer;transition:color .2s}
.cf-clear:hover{color:var(--navy)}
.cf-clear[hidden],.cf-none[hidden],.more[hidden]{display:none}
.cf-none{display:grid;justify-items:center;gap:16px;padding:48px 20px;border:1px solid var(--line);border-radius:var(--r);background:#fff;text-align:center}
.cf-none p{margin:0;color:var(--muted)}
@media (max-width:760px){
  .cf{padding:16px}
  .cf-row .field{flex:1 1 40%}
  .cf-row .cf-q{flex:1 1 100%}
}

/* Biên bản đối soát: thanh 4 bước ký số của đối tác doanh nghiệp */
.pstep-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.agl-sub .pstep-4{margin:2px 0 14px}
.ds-act [data-err]{flex-basis:100%;margin:0}
/* Hộp thoại xem biên bản đối soát: khung cao hết hộp thoại, hiện đúng file PDF */
.pdlg:has(.bb-frame){width:min(900px,calc(100vw - 32px));height:calc(100vh - 40px)}
.pdlg:has(.bb-frame) .pdlg-body{flex:1;display:flex;flex-direction:column;min-height:0;padding:18px 20px 20px}
.bb-dlg{flex:1;display:flex;flex-direction:column;min-height:0}
.req-dlg.bb-dlg h2{font-size:clamp(1.2rem,1rem + .6vw,1.5rem)}
.bb-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:0 0 12px}
.bb-bar [data-err]{flex-basis:100%;margin:0}
.bb-frame{flex:1;display:block;width:100%;min-height:0;border:1px solid var(--line);border-radius:8px;background:#fff}
@media (max-width:760px){.pdlg:has(.bb-frame){width:100vw;height:100vh}.pdlg:has(.bb-frame) .pdlg-body{padding:16px}}
/* Hộp hỏi lại trước các nút quan trọng (hdsAsk trong main.js) */
.ask-dlg{width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 40px);padding:0;border:0;border-radius:10px;background:#fff;color:var(--ink);box-shadow:var(--shadow-lg);overflow:auto}
.ask-dlg::backdrop{background:rgba(16,24,56,.6)}
body:has(.ask-dlg[open]){overflow:hidden}
.ask-box{display:grid;gap:14px;padding:24px}
.ask-box h2{margin:0;font-size:1.2rem;line-height:1.35}
.ask-body{display:grid;gap:10px;font-size:.95rem}
.ask-body p{margin:0}
.ask-quote{max-height:180px;overflow:auto;padding:10px 12px;border-left:3px solid var(--line);border-radius:4px;background:#f4f6fb;overflow-wrap:anywhere;white-space:pre-wrap}
.ask-dl{display:grid;gap:6px;margin:0;padding:12px 14px;border-radius:6px;background:#f4f6fb}
.ask-dl>div{display:flex;justify-content:space-between;gap:16px}
.ask-dl dt{flex:none;color:var(--muted)}
.ask-dl dd{margin:0;font-weight:600;text-align:right;overflow-wrap:anywhere}
.ask-btns{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}
@media (max-width:480px){.ask-box{padding:20px 16px}.ask-btns .btn{flex:1 1 40%}}
