.qhp{
  --qh-font-head:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  --qh-font-body:'Be Vietnam Pro',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  --sv-font-head:var(--qh-font-head);
  --sv-font-body:var(--qh-font-body);
  font-family:var(--qh-font-body);
}
.qhp :where(p,li,a,span,div,label,small,strong,em,time,figcaption,td,th,summary,blockquote,code){font-family:inherit}
.qhp :where(button,input,select,textarea,.button){font-family:var(--qh-font-body)}

.qhp h1,.qhp h2{font-family:var(--qh-font-head)}
.qhp h4,.qhp h5,.qhp h6{font-family:var(--qh-font-body)}

.qhp .qhp-title,.qhp-sv .qsv-title{
  font-family:var(--qh-font-head)!important;font-size:42px!important;line-height:56px!important;
  font-weight:700!important;letter-spacing:0!important;text-transform:uppercase}

.qhp .qhp-body > h2,.qhp .qsv-body > h2,.qhp .qhp-faq .qhp-h2,.qhp-sv .qsv-h2{
  font-family:var(--qh-font-head)!important;font-size:36px!important;line-height:44px!important;
  font-weight:700!important;letter-spacing:0!important;text-transform:uppercase}

.qhp-sv .qsv-h3{
  font-family:var(--qh-font-head)!important;font-size:28px!important;line-height:32px!important;
  font-weight:600!important;letter-spacing:0!important;text-transform:none}

.qhp div.qhb-qt h2.qhb-qt-h{font-family:var(--qh-font-head);text-transform:none}

.qhp .qhp-body > h3,.qhp .qsv-body > h3,
.qhp div.qhb-ulli2 > ul > li > strong:first-child,.qhp div.qhb-ulli2 > ol > li > strong:first-child,
.qhp div.qhb-ulli2 > ul > li > b:first-child,.qhp div.qhb-ulli2 > ol > li > b:first-child,
.qhp div.qhb-ulli2 > ul > li > p:first-child > strong:only-child,.qhp div.qhb-ulli2 > ol > li > p:first-child > strong:only-child,
.qhp div.qhb-ulli2 > ul > li h3,.qhp div.qhb-ulli2 > ul > li h4,
.qhp .qhp-faq summary,.qhp-sv .qsv-faq summary,
.qhp .qhp-cta .ttl,.qhp .qhp-rel .qhp-rel-t,
.qhp div.qhb-rv h3.qhb-rv-t,.qhp div.qhb-kd h3.qhb-kd-n{
  font-family:var(--qh-font-body)!important;font-size:24px!important;line-height:26px!important;
  font-weight:600!important;letter-spacing:0!important;text-transform:none!important}

.qhp .qhp-faq summary,.qhp-sv .qsv-faq summary{font-family:var(--qh-font-body)!important;font-size:18px!important;line-height:26px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important}
.qhp .qhp-faq summary > span,.qhp-sv .qsv-faq summary > span{font:inherit}
.qhp div.qhb-ulli2 > ul > li:before,.qhp div.qhb-ulli2 > ol > li:before{top:21px;line-height:28.5px;font-family:var(--qh-font-body)}

.qhp-sv .qsv-faq summary i{font-family:var(--qh-font-head);font-size:17px;line-height:26.35px;font-weight:600}

.qhp div.qhb-qt h3.qhb-qt-t,.qhp div.qhb-hl .qhb-hl-t,
.qhp div.qhb-2c .qhb-2c-c h2,.qhp div.qhb-2c .qhb-2c-c h3,.qhp div.qhb-2c .qhb-2c-c h4{font-family:var(--qh-font-head)}

.qhp-sv .qsv-form-t{font-family:var(--qh-font-head);font-size:26px;line-height:32px;font-weight:600;white-space:nowrap}

.qhp div.qhb-rv h3.qhb-rv-t{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.qhp div.qhb-rv h3.qhb-rv-t a{display:inline}

.qhp .qhb-luuy .qhb-luuy-t{line-height:24.5px}
.qhp .qhb-luuy .qhb-luuy-c{line-height:26.4px}

.qhp .qhb-info .qhb-info-t{font-size:15px;line-height:24px;font-weight:600}
.qhp .qhb-info .qhb-info-c{line-height:24px}

.qhp div.qhb-qt .qhb-qt-lb{font-size:12px;line-height:17px}
.qhp div.qhb-rv .qhb-rv-lb{font-size:12px;line-height:17.83px}

.qhp-sv .qsv-rv .sm{font-size:12px;line-height:17px}
.qhp-sv .qsv-rv .thumb.empty{font-size:12px}

.qhp .qhb-rv-all{text-transform:uppercase;letter-spacing:.6px}

.qhp-sv .qsv-form-note{font-weight:400}

.qhp .qhp-btn,.qhp-sv .qsv-btn,.qhp div.qhb-2c .qhb-btn,.qhp .qhb-2c .qhb-btn{
  font-family:var(--qh-font-body);font-size:15px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}
.qhp .qhp-form .qh-tvf-submit{font-family:var(--qh-font-body);font-size:14px;font-weight:600;letter-spacing:.56px;text-transform:uppercase}
.qhp-sv .qsv-form .qsv-submit{font-family:var(--qh-font-body);font-size:15px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}

@media (max-width:767px){
  .qhp .qhp-title,.qhp-sv .qsv-title{font-size:26px!important;line-height:34px!important}
  .qhp .qhp-body > h2,.qhp .qsv-body > h2,.qhp .qhp-faq .qhp-h2,.qhp-sv .qsv-h2{font-size:22px!important;line-height:30px!important}
  .qhp-sv .qsv-h3,.qhp div.qhb-qt h2.qhb-qt-h{font-size:18px!important;line-height:26px!important;letter-spacing:0!important}
  .qhp .qhp-body > h3,.qhp .qsv-body > h3,
  .qhp div.qhb-ulli2 > ul > li > strong:first-child,.qhp div.qhb-ulli2 > ol > li > strong:first-child,
  .qhp div.qhb-ulli2 > ul > li > b:first-child,.qhp div.qhb-ulli2 > ol > li > b:first-child,
  .qhp div.qhb-ulli2 > ul > li > p:first-child > strong:only-child,.qhp div.qhb-ulli2 > ol > li > p:first-child > strong:only-child,
  .qhp div.qhb-ulli2 > ul > li h3,.qhp div.qhb-ulli2 > ul > li h4,
  .qhp .qhp-cta .ttl,.qhp .qhp-rel .qhp-rel-t,
  .qhp div.qhb-rv h3.qhb-rv-t,.qhp div.qhb-kd h3.qhb-kd-n{font-size:18px!important;line-height:26px!important}
  .qhp .qhp-faq summary,.qhp-sv .qsv-faq summary{font-size:16px!important;line-height:24px!important}
  .qhp div.qhb-ulli2 > ul > li:before,.qhp div.qhb-ulli2 > ol > li:before{top:21px;line-height:26px}
  .qhp .qhp-sapo,.qhp-sv .qsv-desc{font-size:16px;line-height:26px}
  .qhp .qhp-body,.qhp .qsv-body,
  .qhp div.qhb-ulli > ul > li,.qhp div.qhb-ulli2 > ul > li,.qhp div.qhb-ulli2 li li{font-size:15px;line-height:24px}
  .qhp .qhp-faq .ans,.qhp-sv .qsv-faq .ans,.qhp .qhb-luuy .qhb-luuy-c{font-size:15px;line-height:24px}
  .qhp-sv .qsv-form-t{font-size:22px;line-height:28px}
  .qhp .qhp-btn,.qhp-sv .qsv-btn,.qhp div.qhb-2c .qhb-btn,
  .qhp .qhp-form .qh-tvf-submit,.qhp-sv .qsv-form .qsv-submit{font-size:14px;letter-spacing:.56px}
}

/* ============================================================
   MÀU V2 — BÀI DỊCH VỤ (Style Guide 3655:10163, tokens in css/ohio-tokens.css). Added 2026-10-10, item 11.
   Headings Tím 700, text Trung tính 900/700/500, borders Trung tính 100, soft Tím 50.
   Primary booking buttons = level 1 orange (r12, uppercase); secondary = level 3 outline.
   ============================================================ */
.qhp-sv{
  --sv-ink:var(--ohio-purple-700);--sv-text:var(--ohio-neutral-900);--sv-text-2:var(--ohio-neutral-700);
  --sv-muted:var(--ohio-neutral-500);--sv-meta:var(--ohio-neutral-500);--sv-meta-strong:var(--ohio-neutral-800);
  --sv-purple:var(--ohio-purple-700);--sv-divider:var(--ohio-neutral-100);--sv-border:var(--ohio-neutral-100);
  --sv-soft:var(--ohio-purple-50);--sv-soft-2:var(--ohio-purple-100);--sv-soft-3:var(--ohio-purple-50);--sv-dash:var(--ohio-purple-300);
  --sv-form-bg:var(--ohio-purple-50);--sv-form-text:var(--ohio-neutral-900);
}
.qhp-sv .qsv-btn{height:48px;border-radius:var(--ohio-radius-m);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.qhp-sv .qsv-btn.solid{background:var(--ohio-grad-cta);border-color:transparent;color:#fff!important}
.qhp-sv .qsv-btn.solid:hover{background:var(--ohio-cta-bg-hover);filter:none}
.qhp-sv .qsv-btn.line{border:0;box-shadow:inset 0 0 0 1.5px var(--ohio-purple-700);color:var(--ohio-purple-700)}
.qhp-sv .qsv-btn.line:hover{background:var(--ohio-purple-50);color:var(--ohio-purple-700)}
.qhp-sv .qsv-form .qsv-submit{border-radius:var(--ohio-radius-m);background:var(--ohio-grad-cta);font-size:16px;letter-spacing:.04em}
.qhp-sv .qsv-form .qsv-submit:hover{background:var(--ohio-cta-bg-hover);filter:none}

/* ============================================================
   MÀU V2 — BÀI TIN TỨC (.qhp without .qhp-sv). Added 2026-10-10, item 18. Legacy posts (.qhp-off) untouched.
   Headings Tím 700, text Trung tính 900, muted Trung tính 500, lines Trung tính 100, soft Tím 50;
   form submit + contact block primary = level 1 orange; other buttons level 3 outline.
   ============================================================ */
.qhp:not(.qhp-sv){
  --qhp-ink:var(--ohio-neutral-900);--qhp-sub:var(--ohio-purple-900);--qhp-text:var(--ohio-neutral-900);--qhp-muted:var(--ohio-neutral-500);
  --qhp-purple:var(--ohio-purple-700);--qhp-line:var(--ohio-neutral-100);--qhp-line-btn:var(--ohio-purple-200);
  --qhp-line-input:var(--ohio-neutral-200);--qhp-underline:var(--ohio-purple-200);
  --qhp-soft:var(--ohio-purple-50);--qhp-soft-2:var(--ohio-purple-50);--qhp-soft-3:var(--ohio-neutral-50);
  --qhp-active:var(--ohio-purple-100);--qhp-thumb:var(--ohio-purple-50);
}
.qhp:not(.qhp-sv) .qhp-btn{border-radius:var(--ohio-radius-m);font-weight:600;letter-spacing:.04em;text-transform:uppercase;
  border:0;box-shadow:inset 0 0 0 1.5px var(--ohio-purple-700)}
.qhp:not(.qhp-sv) .qhp-btn:hover{background:var(--ohio-purple-50);color:var(--ohio-purple-700)}
.qhp:not(.qhp-sv) .qhp-btn.solid,.qhp:not(.qhp-sv) .qh-tvf-submit.qhp-btn{background:var(--ohio-grad-cta);color:#fff;box-shadow:none}
.qhp:not(.qhp-sv) .qhp-btn.solid:hover,.qhp:not(.qhp-sv) .qh-tvf-submit.qhp-btn:hover{background:var(--ohio-cta-bg-hover);color:#fff;filter:none}

/* ============================================================
   BÀI DỊCH VỤ — khớp Figma 3533:6181 / mobile 3641:12697. Added 2026-10-10, item 32.
   PC: "Bài viết liên quan" = tiêu đề HOA có vạch cam + danh sách 1 cột.
   ≤1024: lưới 2 cột thành 1 luồng flex (article/aside/hero = display:contents) để xếp đúng thứ tự Figma mobile:
   crumb → H1 → mô tả → ảnh → nút → tác giả → mục lục → nội dung → form → FAQ → nguồn → liên quan → review.
   ============================================================ */
.qhp-sv .qsv-rel .qsv-h3{font-size:18px!important;line-height:26px!important;font-weight:700!important;text-transform:uppercase}
.qhp-sv .qsv-rel .qsv-h3::before{content:"";display:block;width:32px;height:3px;margin:0 0 12px;background:var(--ohio-cta)}
.qhp-sv .qsv-rel .grid{grid-template-columns:1fr;gap:8px}
.qhp-sv .qsv-faq .list{gap:8px}
.qhp-sv .qsv-faq summary{padding:10px 16px;font-size:16px!important;line-height:24px!important}
.qhp-sv .qsv-faq summary i{font-size:16px;line-height:24px}
.qhp-sv .qsv-faq .ans{padding:0 16px 12px;font-size:15px;line-height:24px}
.qhp-sv .qsv-body > p:not([style*="center"]){text-align:left!important}
.qhp-sv .qsv-rel .card{gap:2px;padding:12px 16px}
.qhp-sv .qsv-rel .t{font-size:14px;line-height:20px;-webkit-line-clamp:1}
.qhp-sv .qsv-rel .s{font-size:12px;line-height:18px}
@media (max-width:1024px){
  .qhp-sv .qhp-grid{display:flex;flex-direction:column;align-items:stretch;gap:0}
  .qhp-sv .qsv-body{min-width:0;max-width:100%}
  .qhp-sv .qhp-main,.qhp-sv .qsv-aside,.qhp-sv .qsv-hero,.qhp-sv .qsv-hero-txt{display:contents}
  .qhp-sv .qsv-crumb{order:1;margin-bottom:16px}
  .qhp-sv .qsv-title{order:2;margin:0 0 16px!important}
  .qhp-sv .qsv-desc{order:3;margin:0 0 16px;padding:0}
  .qhp-sv .qsv-gal{order:4;margin:0 0 16px}
  .qhp-sv .qsv-acts{order:5;margin:0 0 16px;padding:0}
  .qhp-sv .qsv-by{order:6;margin:0 0 16px}
  .qhp-sv .qsv-toc{order:7;display:flex;margin:0 0 24px}
  .qhp-sv .qsv-body{order:8}
  .qhp-sv .qsv-form{order:9;margin-top:40px}
  .qhp-sv .qsv-faq{order:10}
  .qhp-sv .qsv-src{order:11}
  .qhp-sv .qsv-rel{order:12}
  .qhp-sv .qsv-rv{order:13;margin:40px 0 24px}
  .qhp-sv .qsv-toc ul{max-height:none;counter-reset:qsv-toc}
  .qhp-sv .qsv-toc li{counter-increment:qsv-toc}
  .qhp-sv .qsv-toc a::before{content:counter(qsv-toc) ". "}
  .qhp-sv .qsv-toc .ttl{font:600 16px/24px var(--ohio-font-head);letter-spacing:0;text-transform:none;color:var(--ohio-purple-700)}
  .qhp-sv .qsv-toc a{padding:2px 0}
}
@media (max-width:767px){
  .qhp-sv .qsv-title::before,.qhp-sv .qsv-body > h2::before,.qhp-sv .qsv-h2::before,.qhp-sv .qsv-h3::before,.qhp-sv .qsv-form-t::before{content:"";display:block;width:32px;height:3px;margin:0 0 16px;background:var(--ohio-cta)}
  .qhp-sv .qsv-body > h2{margin-top:40px;padding-top:0;border-top:0}
  .qhp-sv .qsv-sec{margin-top:40px;padding-top:0;border-top:0}
  .qhp-sv .qsv-h3{font-size:22px!important;line-height:30px!important;font-weight:700!important;text-transform:uppercase}
  .qhp-sv .qsv-faq{padding:40px 0;background:var(--ohio-purple-50);box-shadow:0 0 0 100vmax var(--ohio-purple-50);clip-path:inset(0 -100vmax)}
  .qhp-sv .qsv-faq .item[open]{background:var(--ohio-purple-100);border-color:var(--ohio-purple-200)}
  .qhp-sv .qsv-faq summary{padding:14px 16px;color:var(--ohio-purple-900)}
  .qhp-sv .qsv-form .qsv-in{border-color:var(--ohio-neutral-200);border-radius:var(--ohio-radius-m)}
  .qhp-sv .qsv-form .qsv-in .ico{display:none}
  .qhp-sv .qsv-form .qsv-in input,.qhp-sv .qsv-sel-btn{padding-left:16px!important}
  .qhp-sv .qsv-faq summary i{color:var(--ohio-neutral-500)}
  .qhp-sv .qsv-src .card:first-child{padding:0;border:0}
  .qhp-sv .qsv-src .card + .card{background:var(--ohio-purple-50);border:0;border-radius:var(--ohio-radius-l)}
  .qhp-sv .qsv-form{background:#fff;border-color:var(--ohio-border)}
  .qhp-sv .qsv-form-t{font-family:var(--ohio-font-head);font-weight:700;text-transform:uppercase;color:var(--ohio-purple-700)}
.qhp-body figure.wp-block-table,.qsv-body figure.wp-block-table{margin:10px 0 18px;overflow:visible}
.qhp-body table,.qsv-body table{width:100%!important;max-width:100%;height:auto!important;margin:10px 0 18px;border:1px solid #ded0ee!important;border-radius:14px;border-collapse:separate!important;border-spacing:0;overflow:hidden;background:#fff;font-size:14.5px;line-height:22.48px}
.qhp-body figure.wp-block-table table,.qsv-body figure.wp-block-table table{margin:0}
.qhp-body table th,.qhp-body table td,.qsv-body table th,.qsv-body table td{width:auto!important;height:auto!important;padding:14px 16px!important;border:0!important;border-bottom:1px solid #ded0ee!important;background:none!important;text-align:left;vertical-align:middle;font-size:14.5px;line-height:22.48px;font-weight:400;letter-spacing:0;text-transform:none;color:#1b1822}
.qhp-body table tr > :first-child,.qsv-body table tr > :first-child{font-weight:600;color:#24133a}
.qhp-body table th,.qhp-body table thead td,.qhp-body table:not(:has(th)):not(:has(thead)) tr:first-child td,.qsv-body table th,.qsv-body table thead td,.qsv-body table:not(:has(th)):not(:has(thead)) tr:first-child td{padding:13px 16px 14px!important;background:#f7f3fb!important;font-weight:600;color:#24133a}
.qhp-body table tbody tr:last-child > *,.qhp-body table:not(:has(tbody)) tr:last-child > *,.qsv-body table tbody tr:last-child > *,.qsv-body table:not(:has(tbody)) tr:last-child > *{border-bottom:0!important}
.qhp-body table thead + tbody tr:last-child > *,.qsv-body table thead + tbody tr:last-child > *{border-bottom:0!important}
.qhp-body table p,.qsv-body table p{margin:0}
@media (max-width:767px){
  .qhp-body table,.qsv-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .qhp-body table th,.qhp-body table td,.qsv-body table th,.qsv-body table td{min-width:140px}
}
.qhp .qhp-aside{align-self:stretch}
.qhp .qhp-aside-in{height:100%}
.qhp .qhp-stick{position:sticky;top:var(--qhp-stick,20px);z-index:2}
.qhp-sv .qsv-stick{display:flex;flex-direction:column;gap:14px;margin-bottom:-14px;padding-bottom:14px;background:#fff}
@media (max-width:1024px){
  .qhp .qhp-aside{align-self:auto}
  .qhp .qhp-aside-in{height:auto}
  .qhp .qhp-stick{position:static}
  .qhp-sv .qsv-stick{margin-bottom:0;padding-bottom:0;display:contents}   /* v2 ≤1024 orders review/form one by one (flex order) */
}
