/* Trang danh mục sản phẩm: mobile-first. Mọi class bắt đầu bằng ct- để không ảnh hưởng CSS cũ. */
.ct-crumb{padding:12px 0 0;font-size:14px;color:#55605a}
.ct-crumb ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 8px}
.ct-crumb li+li:before{content:"/";margin-right:8px;color:#9aa39d}
.ct-crumb a{color:#0f4d2c;text-decoration:none}
.ct-crumb a:hover{text-decoration:underline}

.ct-head{padding:14px 0 4px}
.ct-head h1{margin:0;font-size:clamp(26px,5vw,38px);line-height:1.18;color:#0f4d2c;font-weight:700}
.ct-bar{margin-top:10px;width:64px;height:3px;border-radius:2px;background:#b98a2e}
.ct-head-grid{margin-top:16px;display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
@media (min-width:900px){.ct-head-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:32px}}
.ct-intro{margin:0;font-size:16px;line-height:1.75;color:#33403a}
.ct-chip{margin:14px 0 0;display:inline-block;padding:8px 14px;border-radius:999px;background:#f7ebc6;border:1px solid #e3c57e;color:#5e4710;font-weight:700;font-size:14px}
.ct-note{margin:10px 0 0;font-size:13px;color:#55605a;line-height:1.6}
.ct-help{padding:16px;background:#fff;border:1px solid #e8e2d2;border-radius:18px;display:grid;gap:10px}
.ct-help strong{font-size:16px}
.ct-btn{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:12px;font-weight:700;font-size:15px;text-decoration:none;font-family:inherit}
.ct-btn--zalo{background:#0068ff;color:#fff}
.ct-btn--zalo:hover{color:#fff;filter:brightness(1.06)}
.ct-btn--call{border:1.5px solid #0a7a3a;color:#0a6030;font-weight:600;background:#fff}
.ct-btn--call:hover{color:#0a6030;background:#f2faf4}

.ct-list{padding:18px 0 8px}
.ct-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (min-width:640px){.ct-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media (min-width:1000px){.ct-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}}
.ct-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e8e2d2;border-radius:16px;overflow:hidden}
.ct-card-img{display:block;background:#f0ebdd;aspect-ratio:1/1;line-height:0;overflow:hidden}
.ct-card-img img,.ct-card-img video{width:100%;height:100%;object-fit:cover;display:block}
.ct-card-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.ct-card-body h3{margin:0;font-size:15px;line-height:1.35;font-weight:700}
.ct-card-body h3 a{color:#17201a;text-decoration:none}
.ct-card-body h3 a:hover{color:#0f4d2c}
.ct-card-price{font-size:13px;color:#33403a}
.ct-ask{margin-top:auto;display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:12px;background:#0068ff;color:#fff;font-weight:600;font-size:14px;text-decoration:none}
.ct-ask:hover{color:#fff;filter:brightness(1.06)}
.ct-btn:focus-visible,.ct-ask:focus-visible,.ct-pages a:focus-visible{outline:3px solid #99c9a1;outline-offset:2px}

.ct-pages{margin:26px 0 0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.ct-pages a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 12px;border-radius:12px;border:1.5px solid #d7cfb8;background:#fff;color:#17201a;text-decoration:none;font-weight:600}
.ct-pages a.is-active{background:#0f4d2c;border-color:#0f4d2c;color:#fff}

.ct-meta{margin:30px 0 0;padding:20px;background:#fff;border:1px solid #e8e2d2;border-radius:18px;font-size:15px;line-height:1.75;color:#33403a}
.ct-meta p{margin:0}
.ct-related{margin:28px 0 8px}
.ct-related h2{margin:0 0 12px;font-size:20px;color:#0f4d2c}
.ct-related div{display:flex;flex-wrap:wrap;gap:10px}
.ct-related a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid #d7cfb8;background:#fff;color:#17201a;font-size:14px;text-decoration:none}
.ct-related a:hover{border-color:#0f4d2c;background:#edf6ee}
