/* ==========================================================
   擎天网络信息发布平台 — 信息列表 / 分类 / 详情页样式
   依赖 layouts/app.blade.php 中的 --qt-* 变量
   ========================================================== */

/* ==========================================================
   面包屑条（替代旧版渐变大 Banner）
   ========================================================== */
.qt_crumb {
    background: var(--qt-bg-soft);
    border-bottom: 1px solid var(--qt-bg-line);
    font-size: 12.5px;
    color: var(--qt-text-muted);
}
.qt_crumb .qt_container {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    overflow: hidden;
    white-space: nowrap;
}
.qt_crumb a { color: var(--qt-text-muted); }
.qt_crumb a:hover { color: var(--qt-primary); }
.qt_crumb i.fa-home { color: var(--qt-primary); }
.qt_crumb_sep { color: var(--qt-text-light); font-size: 9px; }
.qt_crumb_cur {
    color: var(--qt-text);
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ==========================================================
   页面标题区（白底 + 左侧橙色竖条，与首页栏目标题同语言）
   ========================================================== */
.qt_page_head {
    background: #fff;
    border-bottom: 1px solid var(--qt-bg-line);
    padding: 26px 0;
}
.qt_page_head .qt_container {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}
.qt_page_icon {
    width: 54px; height: 54px;
    flex-shrink: 0;
    border-radius: var(--qt-radius);
    background: var(--qt-primary-light);
    color: var(--qt-primary);
    display: flex; align-items: center; justify-content: center;
    font-size: 22px;
}
.qt_page_head_text { min-width: 0; flex: 1; }
.qt_page_title {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: 24px;
    font-weight: 700;
    color: var(--qt-ink);
    margin: 0 0 5px;
    line-height: 1.3;
}
.qt_page_title em { font-style: normal; color: var(--qt-primary); }
.qt_page_sub {
    font-size: 13px;
    color: var(--qt-text-muted);
    margin: 0;
    line-height: 1.7;
}
.qt_page_sub strong { color: var(--qt-accent-deep); }
.qt_page_count {
    flex-shrink: 0;
    text-align: right;
}
.qt_page_count b {
    display: block;
    font-size: 26px;
    font-weight: 700;
    color: var(--qt-primary);
    line-height: 1.1;
}
.qt_page_count span { font-size: 12px; color: var(--qt-text-light); }

/* ==========================================================
   两栏布局（侧栏在左，与旧版右侧栏相反）
   ========================================================== */
.qt_wrap { background: var(--qt-bg-soft); padding: 22px 0 46px; }
.qt_layout {
    display: grid;
    grid-template-columns: 262px 1fr;
    gap: 20px;
    align-items: start;
}
.qt_layout_main { min-width: 0; }

/* 详情页：主区在左、侧栏在右 */
.qt_layout_rev { grid-template-columns: 1fr 296px; }
.qt_layout_rev .qt_layout_main { order: 1; }
.qt_layout_rev .qt_side { order: 2; }
.qt_side { min-width: 0; display: flex; flex-direction: column; gap: 16px; }

/* ==========================================================
   侧栏挂件
   ========================================================== */
.qt_widget {
    background: #fff;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius);
    overflow: hidden;
}
.qt_widget_head {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 13px 16px;
    border-bottom: 1px solid var(--qt-bg-line);
    font-size: 14.5px;
    font-weight: 700;
    color: var(--qt-ink);
}
.qt_widget_head i { color: var(--qt-accent); font-size: 14px; }
.qt_widget_body { padding: 8px 0; }

/* 栏目导航 */
.qt_side_cat {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 16px;
    font-size: 14px;
    color: var(--qt-text);
    border-left: 3px solid transparent;
}
.qt_side_cat i:first-child { color: var(--qt-text-light); width: 16px; text-align: center; }
.qt_side_cat:hover { background: var(--qt-bg-soft); color: var(--qt-primary); }
.qt_side_cat:hover i:first-child { color: var(--qt-primary); }
.qt_side_cat.active {
    background: var(--qt-primary-light);
    border-left-color: var(--qt-primary);
    color: var(--qt-primary-dark);
    font-weight: 600;
}
.qt_side_cat.active i:first-child { color: var(--qt-primary); }
.qt_side_cat_name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qt_side_cat_num {
    font-size: 11.5px;
    color: var(--qt-text-light);
    background: var(--qt-bg-soft);
    border-radius: 10px;
    padding: 1px 8px;
    flex-shrink: 0;
}
.qt_side_cat.active .qt_side_cat_num { background: #fff; color: var(--qt-primary); }

/* 热门榜 */
.qt_side_hot {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 16px;
    min-width: 0;
}
.qt_side_hot:hover .qt_side_hot_title { color: var(--qt-primary); }
.qt_side_hot_no {
    width: 19px; height: 19px;
    flex-shrink: 0;
    margin-top: 2px;
    border-radius: var(--qt-radius-sm);
    background: var(--qt-bg-soft);
    color: var(--qt-text-light);
    font-size: 11.5px;
    font-weight: 700;
    display: flex; align-items: center; justify-content: center;
}
.qt_side_hot.top .qt_side_hot_no {
    background: linear-gradient(135deg, #FF8A1E 0%, #E06E00 100%);
    color: #fff;
}
.qt_side_hot_text { min-width: 0; flex: 1; }
.qt_side_hot_title {
    font-size: 13px;
    color: var(--qt-text);
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.qt_side_hot_meta { font-size: 11.5px; color: var(--qt-text-light); margin-top: 2px; }

/* 入驻引导卡 */
.qt_side_cta {
    background: var(--qt-ink);
    border-radius: var(--qt-radius);
    padding: 22px 18px;
    text-align: center;
    color: #fff;
}
.qt_side_cta_icon {
    width: 44px; height: 44px;
    margin: 0 auto 12px;
    border-radius: 50%;
    background: rgba(255,138,30,.16);
    color: var(--qt-accent);
    display: flex; align-items: center; justify-content: center;
    font-size: 18px;
}
.qt_side_cta h4 { font-size: 15.5px; font-weight: 700; margin: 0 0 7px; }
.qt_side_cta p {
    font-size: 12.5px;
    color: rgba(255,255,255,.65);
    line-height: 1.75;
    margin: 0 0 15px;
}
.qt_side_cta .qt_btn { width: 100%; }

/* 平台声明（侧栏版） */
.qt_side_note {
    background: #fff;
    border: 1px solid var(--qt-border);
    border-left: 3px solid var(--qt-primary);
    border-radius: var(--qt-radius-sm);
    padding: 14px 16px;
}
.qt_side_note_t {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 13.5px;
    font-weight: 700;
    color: var(--qt-ink);
    margin-bottom: 7px;
}
.qt_side_note_t i { color: var(--qt-primary); }
.qt_side_note p {
    font-size: 12px;
    color: var(--qt-text-muted);
    line-height: 1.85;
    margin: 0;
}

/* ==========================================================
   筛选条
   ========================================================== */
.qt_filter {
    background: #fff;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius);
    padding: 12px 16px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}
.qt_filter_pills {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    min-width: 0;
    flex: 1;
}
.qt_filter_label { font-size: 13px; color: var(--qt-text-light); flex-shrink: 0; }
.qt_pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius-sm);
    font-size: 13.5px;
    color: var(--qt-text);
    background: #fff;
}
.qt_pill:hover { border-color: var(--qt-primary); color: var(--qt-primary); }
.qt_pill.active {
    background: var(--qt-primary);
    border-color: var(--qt-primary);
    color: #fff;
    font-weight: 600;
}
.qt_filter_search {
    display: flex;
    height: 36px;
    width: 280px;
    min-width: 0;
    flex-shrink: 0;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius-sm);
    overflow: hidden;
}
.qt_filter_search:focus-within { border-color: var(--qt-primary); }
.qt_filter_search input {
    flex: 1;
    min-width: 0;
    border: none;
    outline: none;
    padding: 0 12px;
    font-size: 13.5px;
    color: var(--qt-text);
}
.qt_filter_search button {
    width: 62px;
    border: none;
    background: var(--qt-primary);
    color: #fff;
    font-size: 13.5px;
    cursor: pointer;
}
.qt_filter_search button:hover { background: var(--qt-primary-hover); }

/* 搜索命中提示 */
.qt_kw_tip {
    display: flex;
    align-items: center;
    gap: 9px;
    background: var(--qt-accent-light);
    border: 1px solid #FFE0BF;
    border-radius: var(--qt-radius-sm);
    padding: 10px 14px;
    margin-bottom: 16px;
    font-size: 13px;
    color: var(--qt-accent-deep);
}
.qt_kw_tip a { margin-left: auto; color: var(--qt-text-muted); font-size: 12.5px; }
.qt_kw_tip a:hover { color: var(--qt-primary); }

/* ==========================================================
   信息卡片网格（旧版为横向长条行，本版为 3 列卡片）
   ========================================================== */
.qt_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
.qt_gcard {
    min-width: 0;
    background: #fff;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all .22s;
}
.qt_gcard:hover {
    border-color: var(--qt-primary);
    box-shadow: var(--qt-shadow);
    transform: translateY(-2px);
}
.qt_gcard_img {
    height: 196px;
    background: var(--qt-bg-soft);
    padding: 12px;
    position: relative;
    border-bottom: 1px solid var(--qt-bg-line);
}
.qt_gcard_img img { width: 100%; height: 100%; object-fit: contain; }
.qt_gcard_hot {
    position: absolute;
    left: 10px; top: 10px;
    background: var(--qt-accent);
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: var(--qt-radius-sm);
}
.qt_gcard_cat {
    position: absolute;
    right: 10px; top: 10px;
    background: rgba(10,21,38,.72);
    color: #fff;
    font-size: 11px;
    padding: 2px 8px;
    border-radius: var(--qt-radius-sm);
}
.qt_gcard_body {
    padding: 13px 15px 14px;
    display: flex;
    flex-direction: column;
    flex: 1;
}
.qt_gcard_title {
    font-size: 14.5px;
    font-weight: 600;
    color: var(--qt-ink);
    line-height: 1.6;
    margin: 0 0 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 46px;
}
.qt_gcard:hover .qt_gcard_title { color: var(--qt-primary); }
.qt_gcard_desc {
    font-size: 12.5px;
    color: var(--qt-text-muted);
    line-height: 1.75;
    margin: 0 0 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.qt_gcard_foot {
    margin-top: auto;
    padding-top: 11px;
    border-top: 1px dashed var(--qt-bg-line);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    font-size: 12px;
    color: var(--qt-text-light);
    min-width: 0;
}
.qt_gcard_shop {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.qt_gcard_shop i { color: var(--qt-primary); flex-shrink: 0; }
.qt_gcard_shop .qt_verify { color: var(--qt-success); flex-shrink: 0; }
.qt_gcard_view { flex-shrink: 0; }

/* 空状态 */
.qt_empty_box {
    background: #fff;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius);
    padding: 64px 20px;
    text-align: center;
}
.qt_empty_icon {
    width: 68px; height: 68px;
    margin: 0 auto 18px;
    border-radius: 50%;
    background: var(--qt-bg-soft);
    color: var(--qt-text-light);
    display: flex; align-items: center; justify-content: center;
    font-size: 26px;
}
.qt_empty_box h3 { font-size: 17px; font-weight: 700; color: var(--qt-ink); margin: 0 0 8px; }
.qt_empty_box p { font-size: 13.5px; color: var(--qt-text-muted); margin: 0 0 20px; line-height: 1.8; }

/* ==========================================================
   详情页
   ========================================================== */
.qt_detail_head {
    background: #fff;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius);
    padding: 22px;
    margin-bottom: 16px;
    display: grid;
    grid-template-columns: 380px 1fr;
    gap: 26px;
}
.qt_detail_img {
    background: var(--qt-bg-soft);
    border: 1px solid var(--qt-bg-line);
    border-radius: var(--qt-radius-sm);
    height: 330px;
    padding: 14px;
    position: relative;
}
.qt_detail_img img { width: 100%; height: 100%; object-fit: contain; }
.qt_detail_img_ph {
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    color: var(--qt-text-light);
    font-size: 40px;
}
.qt_detail_flag {
    position: absolute;
    left: 0; top: 16px;
    background: var(--qt-accent);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 12px 4px 10px;
    border-radius: 0 var(--qt-radius-sm) var(--qt-radius-sm) 0;
}
.qt_detail_body { min-width: 0; display: flex; flex-direction: column; }
.qt_detail_tags { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 12px; }
.qt_dtag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    padding: 3px 10px;
    border-radius: var(--qt-radius-sm);
    background: var(--qt-bg-soft);
    color: var(--qt-text-muted);
}
.qt_dtag_cat { background: var(--qt-primary-light); color: var(--qt-primary-dark); font-weight: 600; }
.qt_detail_lead {
    font-size: 13.5px;
    color: var(--qt-text-muted);
    line-height: 1.95;
    margin: 0 0 16px;
    padding: 13px 15px;
    background: var(--qt-bg-soft);
    border-radius: var(--qt-radius-sm);
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.qt_detail_title {
    font-size: 22px;
    font-weight: 700;
    color: var(--qt-ink);
    line-height: 1.5;
    margin: 0 0 16px;
}

/* 参数表 */
.qt_specs {
    border: 1px solid var(--qt-bg-line);
    border-radius: var(--qt-radius-sm);
    overflow: hidden;
    margin-bottom: 16px;
}
.qt_spec {
    display: flex;
    font-size: 13px;
    border-bottom: 1px solid var(--qt-bg-line);
}
.qt_spec:last-child { border-bottom: none; }
.qt_spec_k {
    width: 108px;
    flex-shrink: 0;
    background: var(--qt-bg-soft);
    color: var(--qt-text-muted);
    padding: 9px 12px;
}
.qt_spec_v {
    flex: 1;
    min-width: 0;
    padding: 9px 12px;
    color: var(--qt-text);
    word-break: break-all;
}
.qt_spec_v a { color: var(--qt-primary); }

/* 联系区块（旧版在右侧 sticky 卡，本版嵌在头部卡内） */
.qt_contact_box {
    margin-top: auto;
    background: var(--qt-bg-soft);
    border: 1px dashed var(--qt-border);
    border-radius: var(--qt-radius-sm);
    padding: 15px 17px;
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
.qt_contact_item { min-width: 0; }
.qt_contact_k {
    display: block;
    font-size: 11.5px;
    color: var(--qt-text-light);
    margin-bottom: 2px;
}
.qt_contact_v {
    font-size: 15px;
    font-weight: 700;
    color: var(--qt-ink);
}
.qt_contact_v.phone { color: var(--qt-primary); font-size: 19px; letter-spacing: .3px; }
.qt_contact_v a { color: inherit; }
.qt_contact_box .qt_btn { margin-left: auto; }

/* 内容区块 */
.qt_block {
    background: #fff;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius);
    margin-bottom: 16px;
    overflow: hidden;
}
.qt_block_head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 20px;
    border-bottom: 1px solid var(--qt-bg-line);
}
.qt_block_head::before {
    content: '';
    width: 3px; height: 17px;
    background: var(--qt-accent);
    border-radius: 2px;
}
.qt_block_head h2 {
    font-size: 16px;
    font-weight: 700;
    color: var(--qt-ink);
    margin: 0;
}
.qt_block_more {
    margin-left: auto;
    font-size: 12.5px;
    color: var(--qt-text-muted);
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.qt_block_more:hover { color: var(--qt-primary); }
.qt_block_body { padding: 20px; }

/* 富文本正文 */
.qt_rich { font-size: 14.5px; color: var(--qt-text); line-height: 1.95; }
.qt_rich p { margin: 0 0 14px; }
.qt_rich p:last-child { margin-bottom: 0; }
.qt_rich img {
    max-width: 100%;
    height: auto;
    border-radius: var(--qt-radius-sm);
    margin: 10px 0;
}
.qt_rich h1, .qt_rich h2, .qt_rich h3, .qt_rich h4 {
    color: var(--qt-ink);
    font-weight: 700;
    margin: 22px 0 12px;
    line-height: 1.5;
}
.qt_rich h1 { font-size: 19px; }
.qt_rich h2 { font-size: 17px; }
.qt_rich h3 { font-size: 15.5px; }
.qt_rich ul, .qt_rich ol { padding-left: 22px; margin: 0 0 14px; }
.qt_rich li { margin-bottom: 7px; }
.qt_rich a { color: var(--qt-primary); text-decoration: underline; }
.qt_rich table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 14px;
    font-size: 13.5px;
}
.qt_rich table td, .qt_rich table th {
    border: 1px solid var(--qt-border);
    padding: 8px 10px;
}
.qt_rich table th { background: var(--qt-bg-soft); }
.qt_rich blockquote {
    margin: 0 0 14px;
    padding: 12px 16px;
    background: var(--qt-bg-soft);
    border-left: 3px solid var(--qt-primary);
    color: var(--qt-text-muted);
}
.qt_empty_text { color: var(--qt-text-light); font-size: 13.5px; margin: 0; }

/* 平台声明 */
.qt_declare {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    background: #fff;
    border: 1px solid var(--qt-border);
    border-left: 3px solid var(--qt-primary);
    border-radius: var(--qt-radius);
    padding: 18px 20px;
    margin-bottom: 16px;
}
.qt_declare_icon {
    width: 38px; height: 38px;
    flex-shrink: 0;
    border-radius: var(--qt-radius-sm);
    background: var(--qt-primary-light);
    color: var(--qt-primary);
    display: flex; align-items: center; justify-content: center;
    font-size: 16px;
}
.qt_declare_t { display: block; font-size: 14.5px; font-weight: 700; color: var(--qt-ink); margin-bottom: 8px; }
.qt_declare p { font-size: 12.5px; color: var(--qt-text-muted); line-height: 1.9; margin: 0 0 9px; }
.qt_declare p:last-child { margin-bottom: 0; }
.qt_declare_list { list-style: none; padding: 0; margin: 0; }
.qt_declare_list li {
    position: relative;
    padding-left: 15px;
    font-size: 12.5px;
    color: var(--qt-text-muted);
    line-height: 1.9;
    margin-bottom: 6px;
}
.qt_declare_list li:last-child { margin-bottom: 0; }
.qt_declare_list li::before {
    content: '';
    position: absolute;
    left: 0; top: 10px;
    width: 4px; height: 4px;
    border-radius: 50%;
    background: var(--qt-primary);
}
.qt_declare_list strong { color: var(--qt-text); font-weight: 600; }

/* 相关信息（横向 4 列小卡） */
.qt_rel_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}
.qt_rel_card {
    min-width: 0;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius-sm);
    overflow: hidden;
    transition: all .2s;
}
.qt_rel_card:hover { border-color: var(--qt-primary); box-shadow: var(--qt-shadow-sm); }
.qt_rel_img { height: 130px; background: var(--qt-bg-soft); padding: 9px; }
.qt_rel_img img { width: 100%; height: 100%; object-fit: contain; }
.qt_rel_body { padding: 10px 11px 11px; }
.qt_rel_title {
    font-size: 12.5px;
    color: var(--qt-text);
    line-height: 1.6;
    margin: 0 0 7px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 40px;
}
.qt_rel_card:hover .qt_rel_title { color: var(--qt-primary); }
.qt_rel_meta { font-size: 11.5px; color: var(--qt-text-light); }

/* 服务商名片（右侧栏） */
.qt_shop_card {
    background: #fff;
    border: 1px solid var(--qt-border);
    border-radius: var(--qt-radius);
    padding: 20px 18px;
    text-align: center;
}
.qt_shop_avatar {
    width: 58px; height: 58px;
    margin: 0 auto 11px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0A84E8 0%, #075CA3 100%);
    color: #fff;
    font-size: 22px;
    font-weight: 600;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
}
.qt_shop_avatar img { width: 100%; height: 100%; object-fit: cover; }
.qt_shop_name {
    font-size: 16px;
    font-weight: 700;
    color: var(--qt-ink);
    margin: 0 0 7px;
    word-break: break-all;
}
.qt_shop_badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11.5px;
    color: var(--qt-success);
    background: #E9F8F0;
    padding: 3px 10px;
    border-radius: var(--qt-radius-sm);
    margin-bottom: 14px;
}
.qt_shop_rows {
    border-top: 1px dashed var(--qt-bg-line);
    padding-top: 13px;
    margin-bottom: 14px;
    text-align: left;
}
.qt_shop_row {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 13px;
    color: var(--qt-text);
    margin-bottom: 9px;
    min-width: 0;
}
.qt_shop_row:last-child { margin-bottom: 0; }
.qt_shop_row i { color: var(--qt-primary); width: 15px; text-align: center; flex-shrink: 0; }
.qt_shop_row span { min-width: 0; word-break: break-all; }
.qt_shop_card .qt_btn { width: 100%; margin-bottom: 8px; }
.qt_shop_tip {
    font-size: 11.5px;
    color: var(--qt-text-light);
    line-height: 1.7;
    margin: 8px 0 0;
}

/* ==========================================================
   响应式
   ========================================================== */
@media (max-width: 1200px) {
    .qt_layout { grid-template-columns: 234px 1fr; }
    .qt_layout_rev { grid-template-columns: 1fr 268px; }
    .qt_grid { grid-template-columns: repeat(2, 1fr); }
    .qt_detail_head { grid-template-columns: 320px 1fr; gap: 20px; }
    .qt_rel_grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 992px) {
    .qt_layout, .qt_layout_rev { grid-template-columns: 1fr; }
    .qt_side { order: 2; }
    .qt_layout_main { order: 1; }
    .qt_page_head { padding: 20px 0; }
    .qt_page_title { font-size: 20px; }
    .qt_page_count { display: none; }
    .qt_filter_search { width: 100%; }
    .qt_detail_head { grid-template-columns: 1fr; padding: 16px; }
    .qt_detail_img { height: 280px; }
    .qt_detail_lead {
    font-size: 13.5px;
    color: var(--qt-text-muted);
    line-height: 1.95;
    margin: 0 0 16px;
    padding: 13px 15px;
    background: var(--qt-bg-soft);
    border-radius: var(--qt-radius-sm);
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.qt_detail_title { font-size: 19px; }
    .qt_contact_box { gap: 14px; }
    .qt_contact_box .qt_btn { margin-left: 0; width: 100%; }
    .qt_rel_grid { grid-template-columns: repeat(2, 1fr); }
    .qt_block_body { padding: 16px; }
}
@media (max-width: 640px) {
    .qt_grid { grid-template-columns: 1fr; }
    .qt_gcard_img { height: 210px; }
    .qt_page_icon { width: 44px; height: 44px; font-size: 18px; }
    .qt_page_head .qt_container { gap: 12px; }
    .qt_filter { padding: 12px; gap: 12px; }
    .qt_detail_img { height: 240px; }
    .qt_spec_k { width: 88px; }
}
