/* Thành phần dùng chung: nút, nhãn, thẻ, form, bảng giá, FAQ, quy trình, đánh giá. */

/* Nút: chính đỏ đặc, phụ viền navy, Zalo xanh. Cao tối thiểu 48px (bấm ngón cái) */
.smt-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--smt-space-2);min-height:var(--smt-tap);padding:0 20px;border:1.5px solid transparent;border-radius:var(--smt-radius);font-size:var(--smt-fs-base);font-weight:var(--smt-fw-600);line-height:1.2;text-align:center;text-decoration:none;cursor:pointer;transition:background-color var(--smt-dur-fast),border-color var(--smt-dur-fast),color var(--smt-dur-fast);white-space:nowrap}
.smt-btn--sm{min-height:40px;padding:0 14px;font-size:var(--smt-fs-sm)}
.smt-btn--call{background:var(--smt-red);color:var(--smt-on-fill)}
.smt-btn--call:hover{background:var(--smt-red-hover)}
.smt-btn--line{border-color:var(--smt-navy);color:var(--smt-navy);background:transparent}
.smt-btn--line:hover{background:var(--smt-navy-soft)}
.smt-btn--zalo{background:var(--smt-zalo);color:var(--smt-on-fill)}
.smt-btn--zalo:hover{background:var(--smt-zalo-hover)}
.smt-btn--block{display:flex;width:100%}
.smt-btn[disabled]{opacity:.6;cursor:progress}
.smt-btns{display:flex;flex-wrap:wrap;gap:var(--smt-space-3)}
@media (max-width:399px){.smt-btns--stack > .smt-btn{flex:1 1 100%}}

/* Nhãn nhỏ */
.smt-badge{display:inline-block;padding:2px 6px;border-radius:var(--smt-radius-xs);background:var(--smt-navy-soft);color:var(--smt-navy);font-size:var(--smt-fs-2xs);font-weight:var(--smt-fw-600);line-height:1.5;vertical-align:middle;white-space:nowrap}
.smt-badge--draft{background:var(--smt-warn-bg);color:var(--smt-warn)}
.smt-price{color:var(--smt-red);font-weight:var(--smt-fw-700);white-space:nowrap}

/* Thẻ: viền mảnh, rê chuột nền tối đi */
.smt-card{position:relative;display:flex;flex-direction:column;background:var(--smt-surface);border:1px solid var(--smt-divider);border-radius:var(--smt-radius);padding:var(--smt-space-5);text-decoration:none;transition:background-color var(--smt-dur-fast)}
a.smt-card:hover,.smt-card--link:hover{background:var(--smt-card-hover)}
.smt-card__head{display:flex;align-items:center;gap:var(--smt-space-3);margin-bottom:var(--smt-space-3)}
.smt-card__head .smt-card__ico{flex:none;width:44px;height:44px;margin:0}
.smt-card .smt-card__head h3{margin:0;font-size:var(--smt-fs-md);line-height:1.3}   /* chọn kép: .smt-card h3 ở dưới có margin-bottom, không có dòng này tên lệch lên so với icon */
.smt-card h3{font-size:var(--smt-fs-md);margin-bottom:var(--smt-space-2)}
.smt-card :is(h2,h3) a{text-decoration:none}
.smt-card :is(h2,h3) a::after{content:"";position:absolute;inset:0}   /* cả thẻ bấm được, vẫn 1 link duy nhất cho máy đọc màn hình */
.smt-card p{font-size:var(--smt-fs-sm);color:var(--smt-muted);margin:0}
.smt-card__ico{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:var(--smt-space-4);border-radius:var(--smt-radius);background:var(--smt-navy-soft);color:var(--smt-navy)}
.smt-card__list{list-style:none;margin:0 0 var(--smt-space-3);padding:0;font-size:var(--smt-fs-sm);color:var(--smt-muted)}
.smt-card__list li{position:relative;padding-block:2px;padding-inline-start:var(--smt-space-3)}
.smt-card__list li::before{content:"";position:absolute;inset-inline-start:0;top:.75em;width:5px;height:5px;border-radius:50%;background:var(--smt-red)}
.smt-card__foot{display:flex;align-items:center;justify-content:space-between;gap:var(--smt-space-2);margin-top:auto;padding-top:var(--smt-space-3);border-top:1px solid var(--smt-divider);font-size:var(--smt-fs-sm)}
.smt-card__foot .smt-i{color:var(--smt-muted);transition:transform var(--smt-dur-fast)}
.smt-card--link:hover .smt-card__foot .smt-i{transform:translateX(3px);color:var(--smt-red)}
.smt-grid--2up{display:grid;gap:var(--smt-space-3);grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:981px){.smt-grid--2up{gap:var(--smt-space-4);grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Mobile 2 cột (~160px mỗi thẻ): icon trên, tên dưới, chữ nhỏ lại */
@media (max-width:599px){
	.smt-grid--2up .smt-card{padding:var(--smt-space-3)}
	.smt-grid--2up .smt-card__head{gap:var(--smt-space-2)}
	.smt-grid--2up .smt-card__head .smt-card__ico{width:36px;height:36px}
	.smt-grid--2up .smt-card__head .smt-i--lg{width:22px;height:22px}
	.smt-grid--2up .smt-card__head h3{font-size:var(--smt-fs-sm);line-height:1.3}
	.smt-grid--2up .smt-card__list{font-size:var(--smt-fs-xs)}
	.smt-grid--2up .smt-card__foot{font-size:var(--smt-fs-xs)}
}
.smt-card__img{display:block;aspect-ratio:16/9;margin:calc(-1 * var(--smt-space-5)) calc(-1 * var(--smt-space-5)) var(--smt-space-4);border-radius:var(--smt-radius) var(--smt-radius) 0 0;overflow:hidden;background:var(--smt-bg)}
.smt-card__img img,.smt-card__img svg{display:block;width:100%;height:100%;object-fit:cover}
.smt-card__tag{display:flex;align-items:center;gap:var(--smt-space-2);font-size:var(--smt-fs-xs);font-weight:var(--smt-fw-600);text-transform:uppercase;letter-spacing:.04em;color:var(--smt-muted);margin-bottom:var(--smt-space-2)}
.smt-card__tag::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--smt-red);flex:none}
.smt-card__meta{font-size:var(--smt-fs-xs);color:var(--smt-muted);margin-top:auto;padding-top:var(--smt-space-2)}

/* Form */
.smt-form{display:grid;gap:var(--smt-space-4)}
.smt-form label,.smt-field{display:grid;gap:6px;font-size:var(--smt-fs-sm);font-weight:var(--smt-fw-600);color:var(--smt-heading)}
.smt-input,.smt-form input:not([type=checkbox]):not([type=radio]),.smt-form select,.smt-form textarea{width:100%;min-height:var(--smt-tap);padding:10px 12px;border:1px solid var(--smt-divider);border-radius:var(--smt-radius);background:var(--smt-surface);color:var(--smt-ink);font-size:var(--smt-fs-base);font-weight:var(--smt-fw-400);transition:border-color var(--smt-dur-fast),box-shadow var(--smt-dur-fast)}
.smt-form select{appearance:none;padding-inline-end:36px;background-image:linear-gradient(45deg,transparent 50%,var(--smt-muted) 50%),linear-gradient(135deg,var(--smt-muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat}
/* Ô chọn vẽ lại (site.js enhanceSelect): <select> thật ẩn đi, nút + danh sách theo kiểu của site */
.smt-sel{position:relative}
.smt-form .smt-sel__native{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}
.smt-sel__btn{position:relative;display:block;width:100%;min-height:var(--smt-tap);padding:10px 36px 10px 12px;border:1px solid var(--smt-divider);border-radius:var(--smt-radius);background:var(--smt-surface);color:var(--smt-ink);font:inherit;font-size:var(--smt-fs-base);font-weight:var(--smt-fw-400);text-align:start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:border-color var(--smt-dur-fast),box-shadow var(--smt-dur-fast)}
.smt-sel__btn::after{content:"";position:absolute;inset-inline-end:14px;top:50%;width:7px;height:7px;margin-top:-6px;border-inline-end:2px solid var(--smt-muted);border-bottom:2px solid var(--smt-muted);transform:rotate(45deg);transition:transform var(--smt-dur-fast)}
.smt-sel.is-open .smt-sel__btn::after{margin-top:-2px;transform:rotate(225deg)}
.smt-sel__btn:focus-visible,.smt-sel.is-open .smt-sel__btn{outline:0;border-color:var(--smt-navy);box-shadow:0 0 0 3px var(--smt-focus)}
.smt-sel__list{position:absolute;z-index:30;inset-inline:0;top:calc(100% + 4px);max-height:min(300px,50vh);margin:0;padding:var(--smt-space-1);overflow-y:auto;overscroll-behavior:contain;list-style:none;border:1px solid var(--smt-divider);border-radius:var(--smt-radius-panel);background:var(--smt-surface);box-shadow:var(--smt-shadow-pop);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--smt-dur-fast),transform var(--smt-dur-fast),visibility 0s var(--smt-dur-fast)}
.smt-sel.is-open .smt-sel__list{opacity:1;visibility:visible;transform:none;transition:opacity var(--smt-dur-fast),transform var(--smt-dur-fast)}
.smt-sel__list li{display:flex;align-items:center;min-height:44px;padding:var(--smt-space-2) var(--smt-space-3);border-radius:var(--smt-radius);font-size:var(--smt-fs-sm);font-weight:var(--smt-fw-400);color:var(--smt-ink);cursor:pointer}
.smt-sel__list li.is-act,.smt-sel__list li:hover{background:var(--smt-hover)}
.smt-sel__list li[aria-selected="true"]{background:var(--smt-navy-soft);color:var(--smt-heading);font-weight:var(--smt-fw-600)}
.smt-form textarea{min-height:96px;resize:vertical}
.smt-form :is(input,select,textarea):focus{outline:0;border-color:var(--smt-navy);box-shadow:0 0 0 3px var(--smt-focus)}
.smt-form__row{display:grid;gap:var(--smt-space-4)}
@media (min-width:600px){.smt-form__row{grid-template-columns:1fr 1fr}}
.smt-form__trap{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.smt-form__msg{margin:0;font-size:var(--smt-fs-sm);font-weight:var(--smt-fw-600)}
.smt-form__msg[data-ok="1"]{color:var(--smt-ok)}
.smt-form__msg[data-ok="0"]{color:var(--smt-danger)}
.smt-form__note{margin:0;font-size:var(--smt-fs-xs);color:var(--smt-muted);font-weight:var(--smt-fw-400)}

/* Bảng giá */
.smt-tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.smt-ptable{width:100%;border-collapse:collapse;font-size:var(--smt-fs-sm)}
.smt-ptable th,.smt-ptable td{padding:12px 10px;border-bottom:1px solid var(--smt-divider);text-align:start;vertical-align:top}
.smt-ptable th{background:var(--smt-bg);color:var(--smt-muted);font-size:var(--smt-fs-xs);font-weight:var(--smt-fw-600);text-transform:uppercase;letter-spacing:.03em}
.smt-ptable td:first-child{color:var(--smt-ink);font-weight:var(--smt-fw-500)}
.smt-ptable .smt-ptable__p{white-space:nowrap;color:var(--smt-red);font-weight:var(--smt-fw-700);text-align:end}
.smt-ptable th.smt-ptable__p{color:var(--smt-muted)}
.smt-ptable .smt-ptable__n{color:var(--smt-muted);font-size:var(--smt-fs-xs)}
@media (max-width:599px){.smt-ptable .smt-ptable__note{display:none}}

/* Câu hỏi thường gặp */
.smt-faq details{border-bottom:1px solid var(--smt-divider)}
.smt-faq details:first-of-type{border-top:1px solid var(--smt-divider)}
.smt-faq summary{display:flex;align-items:center;justify-content:space-between;gap:var(--smt-space-4);min-height:var(--smt-tap);padding-block:var(--smt-space-4);color:var(--smt-heading);font-weight:var(--smt-fw-600);cursor:pointer;list-style:none}
.smt-faq summary::-webkit-details-marker{display:none}
.smt-faq summary .smt-i{color:var(--smt-muted);transition:transform var(--smt-dur-fast) var(--smt-ease)}
.smt-faq details[open] summary .smt-i{transform:rotate(180deg)}
.smt-faq summary:hover{color:var(--smt-red)}
.smt-faq__a{padding-bottom:var(--smt-space-4);color:var(--smt-ink)}
.smt-faq__a p:last-child{margin:0}

/* Quy trình: nền navy, 4 thẻ kính mờ viền sáng, icon ô đỏ, số viền mờ. Trang chủ: cả section navy (--flush); trang khác: khối navy bo góc bọc quanh */
.smt-steps-wrap{padding:var(--smt-space-4);border-radius:var(--smt-radius-panel);background:var(--smt-ftr-bg)}
.smt-steps-wrap--flush{padding:0;border-radius:0;background:none}
.smt-sec--navy{background:var(--smt-ftr-bg)}
.smt-sec--navy .smt-sec__title{color:var(--smt-on-fill)}
.smt-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--smt-space-3);margin:0;padding:0;list-style:none;counter-reset:s}   /* 2 cột cả mobile */
@media (min-width:981px){.smt-steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* Mobile (~150px mỗi thẻ): thẻ gọn lại, chữ nhỏ lại */
@media (max-width:599px){.smt-steps li{padding:var(--smt-space-4) var(--smt-space-3) var(--smt-space-3)}.smt-steps li::after{font-size:44px}.smt-steps .smt-steps__ico{width:36px;height:36px;margin-bottom:var(--smt-space-2)}.smt-steps b{font-size:var(--smt-fs-sm)}.smt-steps li > span:not(.smt-steps__ico){font-size:var(--smt-fs-xs)}}
.smt-steps li{position:relative;counter-increment:s;overflow:hidden;padding:var(--smt-space-5) var(--smt-space-4) var(--smt-space-4);border:1px solid rgb(255 255 255 / .22);border-radius:var(--smt-radius);background:rgb(255 255 255 / .07)}
.smt-steps li::after{content:"0" counter(s);position:absolute;inset-inline-end:var(--smt-space-3);top:2px;color:transparent;-webkit-text-stroke:1.5px rgb(255 255 255 / .28);font-size:64px;font-weight:var(--smt-fw-700);line-height:1;pointer-events:none}
.smt-steps .smt-steps__ico{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:var(--smt-space-3);border-radius:var(--smt-radius);background:var(--smt-red);color:var(--smt-on-fill)}
.smt-steps b{position:relative;z-index:1;display:block;color:var(--smt-on-fill);font-size:var(--smt-fs-md);line-height:1.3}
.smt-steps li > span:not(.smt-steps__ico){position:relative;z-index:1;display:block;margin-top:2px;color:var(--smt-ftr-ink);font-size:var(--smt-fs-sm)}

/* Đánh giá */
.smt-stars{display:inline-flex;gap:2px;color:var(--smt-star)}
.smt-stars .smt-i{width:16px;height:16px}
.smt-review p{color:var(--smt-ink);font-size:var(--smt-fs-sm);margin:var(--smt-space-3) 0 0}
.smt-review__who{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:var(--smt-space-4);font-size:var(--smt-fs-sm);font-weight:var(--smt-fw-600);color:var(--smt-heading)}
.smt-avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--smt-radius-round);background:var(--smt-navy-soft);color:var(--smt-navy);font-size:var(--smt-fs-xs);font-weight:var(--smt-fw-700)}
.smt-rating{display:flex;align-items:center;gap:var(--smt-space-3);font-size:var(--smt-fs-sm);color:var(--smt-muted)}
.smt-rating b{font-size:var(--smt-fs-2xl);line-height:1;color:var(--smt-heading)}

/* Chip (khu vực, dịch vụ khác) */
.smt-chips{display:flex;flex-wrap:wrap;gap:var(--smt-space-2);margin:0;padding:0;list-style:none}
.smt-chips a,.smt-chips button{display:inline-flex;align-items:center;min-height:40px;padding:6px 14px;border:1px solid var(--smt-divider);border-radius:var(--smt-radius);background:var(--smt-surface);color:var(--smt-ink);font-size:var(--smt-fs-sm);text-decoration:none;cursor:pointer;transition:border-color var(--smt-dur-fast)}
.smt-chips a:hover,.smt-chips button:hover{border-color:var(--smt-navy)}
.smt-chips [aria-pressed="true"],.smt-chips [aria-current]{border-color:var(--smt-navy);background:var(--smt-navy-soft);font-weight:var(--smt-fw-600)}

/* Hộp CTA ngang (đầu / cuối bài, cuối bảng giá) */
.smt-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--smt-space-3) var(--smt-space-4);padding:var(--smt-space-4) var(--smt-space-5);border-radius:var(--smt-radius);background:var(--smt-bg)}
.smt-cta__t{font-weight:var(--smt-fw-600);color:var(--smt-heading)}
.smt-cta__t .smt-price{margin-inline-start:var(--smt-space-1)}

/* Hộp nhỏ ở cột phải */
.smt-box{padding:var(--smt-space-5);border:1px solid var(--smt-divider);border-radius:var(--smt-radius);background:var(--smt-surface)}
.smt-box h2,.smt-box h3{font-size:var(--smt-fs-base);margin-bottom:var(--smt-space-3)}
.smt-box ul{list-style:none;margin:0;padding:0;font-size:var(--smt-fs-sm)}
.smt-box li{border-bottom:1px solid var(--smt-divider)}
.smt-box li:last-child{border:0}
.smt-box li > a,.smt-box li > span{display:block;padding:10px 0;text-decoration:none;line-height:1.4}
.smt-box li > a:hover{color:var(--smt-red)}
.smt-box [aria-current="page"]{font-weight:var(--smt-fw-700);color:var(--smt-heading)}
.smt-box .smt-check li{display:flex;gap:var(--smt-space-2);padding:8px 0;line-height:1.45}
.smt-check .smt-i{color:var(--smt-ok);margin-top:1px}

/* Meta (giá, thời gian, bảo hành) */
.smt-meta{display:flex;flex-wrap:wrap;gap:var(--smt-space-2) var(--smt-space-5);margin:var(--smt-space-3) 0 var(--smt-space-5);padding:0;list-style:none;font-size:var(--smt-fs-sm);color:var(--smt-muted)}
.smt-meta li{display:inline-flex;align-items:center;gap:6px}
.smt-meta .smt-i{width:16px;height:16px;color:var(--smt-red)}

/* Bản đồ: chỉ tải khi khách bấm (đỡ chậm trang, không gửi gì cho Google khi chưa cần) */
.smt-map{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--smt-space-2);width:100%;aspect-ratio:4/3;padding:var(--smt-space-4);border:1px solid var(--smt-divider);border-radius:var(--smt-radius);background:var(--smt-bg);color:var(--smt-heading);text-align:center;overflow:hidden}   /* chữ địa chỉ nằm dưới, iframe bản đồ phủ lên khi tải xong */
.smt-map b{font-size:var(--smt-fs-md)}
.smt-map span{font-size:var(--smt-fs-sm);color:var(--smt-muted)}
.smt-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.smt-review{margin:0}
.smt-review blockquote{margin:0}
.smt-faq > h2{margin-bottom:var(--smt-space-5)}
.smt-box h2 a{display:flex;align-items:center;min-height:40px;text-decoration:none}
.smt-box h2 a:hover{color:var(--smt-red)}
.smt-form__msg:empty{display:none}
.smt-article__lead{margin:var(--smt-space-2) 0 0;color:var(--smt-muted);font-size:var(--smt-fs-lg);line-height:1.5}
.smt-form__err{font-size:var(--smt-fs-sm);font-weight:var(--smt-fw-500);color:var(--smt-danger)}
.smt-form [aria-invalid="true"]{border-color:var(--smt-danger)}
.smt-box .smt-check li > span{padding:0}

/* Hàng card vuốt ngang (scroll-snap, không JS): mobile thấy ~1.2 card để biết còn nữa */
.smt-swipe{display:flex;gap:var(--smt-space-4);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:2px}
.smt-swipe::-webkit-scrollbar{display:none}
.smt-swipe > .smt-card{flex:0 0 82%;scroll-snap-align:start}
@media (min-width:600px){.smt-swipe > .smt-card{flex-basis:calc((100% - 2 * var(--smt-space-4)) / 2.5)}}   /* tablet: 2.5 card, lấp ló card thứ 3 để biết vuốt tiếp */
@media (min-width:981px){.smt-swipe > .smt-card{flex-basis:calc((100% - 2 * var(--smt-space-4)) / 3)}}

/* FAQ 2 cột trên desktop: cột trái dính khi cuộn, cột phải là danh sách câu hỏi */
.smt-faqsec{display:grid;gap:var(--smt-space-5)}
.smt-faqsec__side h2{margin-bottom:var(--smt-space-2)}
.smt-faqsec__side p{color:var(--smt-muted);font-size:var(--smt-fs-sm);margin-bottom:var(--smt-space-4)}
@media (min-width:981px){
	.smt-faqsec{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--smt-space-7);align-items:start}
	.smt-faqsec__side{position:sticky;top:calc(var(--smt-hdr-h) + var(--smt-space-5))}
}
.smt-i--zalo{border-radius:6px;box-shadow:0 0 0 1.5px var(--smt-surface)}   /* khung trắng để logo xanh không chìm trong nút Zalo xanh */

/* Nút trước / sau của hàng vuốt: chỉ desktop (tablet vuốt tay), tự ẩn khi không đủ card để cuộn / đã tới đầu hoặc cuối */
.smt-swipewrap{position:relative}
.smt-swipe__btn{display:none}
@media (min-width:981px){
	.smt-swipe__btn{display:flex;align-items:center;justify-content:center;position:absolute;top:50%;width:44px;height:44px;margin-top:-22px;padding:0;border:1px solid var(--smt-divider);border-radius:50%;background:var(--smt-surface);color:var(--smt-heading);box-shadow:var(--smt-shadow-card);cursor:pointer;transition:opacity var(--smt-dur-fast),color var(--smt-dur-fast),border-color var(--smt-dur-fast)}
	.smt-swipe__btn:hover{color:var(--smt-red);border-color:var(--smt-red)}
	.smt-swipe__btn--prev{inset-inline-start:calc(-1 * var(--smt-space-3))}
	.smt-swipe__btn--next{inset-inline-end:calc(-1 * var(--smt-space-3))}
	.smt-swipe__btn--prev .smt-i,html[dir="rtl"] .smt-swipe__btn--next .smt-i{transform:scaleX(-1)}
	html[dir="rtl"] .smt-swipe__btn--prev .smt-i{transform:none}
	.smt-swipewrap:not(.is-scrollable) .smt-swipe__btn,.smt-swipe__btn[disabled]{opacity:0;pointer-events:none}
}

/* 2 cơ sở: bản đồ cạnh nhau (mobile xếp dọc), danh sách địa chỉ + nút Chỉ đường */
.smt-maps{display:grid;gap:var(--smt-space-4)}
@media (min-width:600px){.smt-maps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.smt-map{text-align:center}
.smt-box .smt-maps{grid-template-columns:minmax(0,1fr)}   /* cột phụ hẹp: bản đồ xếp dọc */

/* Thẻ bản đồ từng cơ sở (bản C): viền đỏ = cơ sở 1, navy = cơ sở 2 */
.smt-mapcard{display:flex;flex-direction:column;overflow:hidden;border:2px solid var(--smt-red);border-radius:var(--smt-radius);background:var(--smt-surface);--_c:var(--smt-red)}
.smt-mapcard--2{border-color:var(--smt-navy);--_c:var(--smt-navy)}
.smt-mapcard__hd{display:flex;align-items:center;gap:var(--smt-space-2);padding:var(--smt-space-3);border-bottom:1px solid var(--smt-divider)}
.smt-mapcard__hd small{display:block;font-size:var(--smt-fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--smt-muted)}
.smt-mapcard__hd b{display:block;font-size:var(--smt-fs-sm);line-height:1.3;color:var(--smt-heading)}
.smt-mapcard__n{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:var(--_c);color:var(--smt-on-fill);font-weight:var(--smt-fw-700)}
.smt-mapcard .smt-map{flex:1;aspect-ratio:auto;min-height:220px;border:0;border-radius:0}
.smt-mapcard__ft{padding:var(--smt-space-3);border-top:1px solid var(--smt-divider)}
.smt-mapcard__ft .smt-btn{width:100%}
@media (max-width:599px){.smt-mapcard .smt-map{min-height:200px}}

/* Bộ lọc trang Kinh nghiệm (guides.js): chip nhóm dịch vụ, thanh số bài + sắp xếp */
.smt-filters{display:flex;flex-direction:column;gap:var(--smt-space-4);margin-block:var(--smt-space-5) var(--smt-space-6)}
.smt-filters [hidden]{display:none}
.smt-filters__types{margin-inline:calc(var(--smt-gutter) * -1);padding:2px var(--smt-gutter);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}   /* mobile: vuốt ngang chip, tràn mép màn hình */
.smt-filters__types::-webkit-scrollbar{display:none}
.smt-filters__types a{flex:none;white-space:nowrap}
@media (min-width:981px){.smt-filters__types{flex-wrap:wrap;margin-inline:-2px;padding-inline:2px;overflow:visible}}
.smt-filters__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--smt-space-3) var(--smt-space-5);padding-top:var(--smt-space-4);border-top:1px solid var(--smt-divider)}
.smt-filters__count{margin:0;font-size:var(--smt-fs-sm);font-weight:var(--smt-fw-400);color:var(--smt-muted);font-variant-numeric:tabular-nums;letter-spacing:normal}
@media (max-width:599px){.smt-filters__count{flex-basis:100%}}   /* mobile: số bài 1 dòng riêng, không nhảy dòng theo độ rộng chữ */
.smt-filters__fields{display:flex;flex-wrap:wrap;gap:var(--smt-space-2);min-width:200px}
@media (min-width:600px){.smt-filters__fields{order:-1}}   /* order thay vì đổi HTML: điện thoại / đọc màn hình đọc số bài trước */
.smt-filters__fields .smt-sel{min-width:200px}
/* Đang chờ trang mới (guides.js gắn html.smt-filtering): card thành khung xám đúng kích thước cũ nên bố cục đứng yên */
@keyframes smt-filter-sweep{to{transform:translateX(100%)}}
.smt-filtering .smt-results{pointer-events:none}
.smt-filtering .smt-results .smt-card__img{position:relative;overflow:hidden;background:var(--smt-skeleton)}
.smt-filtering .smt-results .smt-card__img > *{visibility:hidden}
.smt-filtering .smt-results :is(.smt-card__tag,h3,.smt-card__meta){position:relative;isolation:isolate;display:block;width:80%;overflow:hidden;border-radius:var(--smt-radius);background:var(--smt-skeleton);color:transparent;-webkit-text-fill-color:transparent}   /* vo-allow: iOS Safari vẫn vẽ chữ của link dù color: transparent */
.smt-filtering .smt-results :is(.smt-card__tag,h3,.smt-card__meta) > *{visibility:hidden}
.smt-filtering .smt-results .smt-card__tag::before{content:none}
.smt-filtering .smt-results .smt-card__meta{width:45%}
.smt-filtering .smt-results :is(.smt-card__img,.smt-card__tag,h3,.smt-card__meta)::after{content:"";position:absolute;inset:0;background:var(--smt-skeleton-sweep);transform:translateX(-100%);animation:smt-filter-sweep 1.5s ease-in-out infinite;pointer-events:none}
@media (prefers-reduced-motion:reduce){.smt-filtering .smt-results :is(.smt-card__img,.smt-card__tag,h3,.smt-card__meta)::after{animation:none}}

/* Chuyên mục dịch vụ hiện như trang đơn: khối bài liên quan cách phần giới thiệu */
.smt-article__more{margin:var(--smt-space-6) 0 var(--smt-space-4)}
