/* ==========================================================================
   图文橱窗 poster / mode_138
   作用域类: .deco-module-poster-tab
   主配置 CSS 变量由模板 <style th:inline="text"> 注入(--pt-* 前缀)
   每个 Poster 子项变量由 .pt-item[data-index] 内联 <style> 注入(--pt-item-* 前缀)
   ========================================================================== */

.deco-module-poster-tab { background-color: var(--pt-bg-color, #3B312B); overflow: hidden; }
.deco-module-poster-tab a { text-decoration: none; }
.deco-module-poster-tab .pt-container { margin: 0 auto; box-sizing: border-box; }
.deco-module-poster-tab .pt-container.module_width_1440 { width: 1440px; max-width: 100%; }
.deco-module-poster-tab .pt-container.module_width_full { width: 100%; }
.deco-module-poster-tab .pt-container.module_width_global { width: var(--deco-module-width, 1440px); max-width: 100%; }
.deco-module-poster-tab .pt-section { box-sizing: border-box; }

/* 标题区 */
.deco-module-poster-tab .pt-top-info { padding: 10px; text-align: center; }
.deco-module-poster-tab .pt-top-info.align_left { text-align: left; }
.deco-module-poster-tab .pt-top-info.align_right { text-align: right; }
.deco-module-poster-tab .pt-top-info .pt-subtitle { font-size: var(--pt-pc-subtitle-font-size, 18px); color: var(--pt-subtitle-color, #DBDBDB); line-height: 1.556; }
.deco-module-poster-tab .pt-top-info .pt-title { font-size: var(--pt-pc-title-font-size, 50px); color: var(--pt-title-color, #FFFFFF); line-height: 1.2; margin: 0; }
.deco-module-poster-tab .pt-top-info .pt-content { font-size: var(--pt-pc-content-font-size, 18px); color: var(--pt-content-color, #DBDBDB); margin-top: 10px; padding: 10px 0; line-height: 1.5; }

/* 切换卡 tab */
.deco-module-poster-tab .pt-menu-list { margin-top: 40px; text-align: center; }
.deco-module-poster-tab .pt-menu-list a { margin: 0 20px; padding: 0 20px 10px; display: inline-block; vertical-align: middle; color: var(--pt-tab-color, #CACACA); border-bottom: 1px solid var(--pt-tab-line-color, #60564E); font-size: var(--pt-pc-tab-font-size, 17px); cursor: pointer; }
.deco-module-poster-tab .pt-menu-list a.active { color: var(--pt-tab-active-color, #FFFFFF); border-bottom-color: var(--pt-tab-line-active-color, #BCB6AA); }

/* 卡片列表 */
.deco-module-poster-tab .pt-list-box { margin-top: 70px; }
.deco-module-poster-tab .pt-list-box .pt-item { display: none; align-items: stretch; justify-content: left; flex-wrap: wrap; border-radius: 20px; overflow: hidden; background-color: var(--pt-item-card-bg, #ffffff); }
.deco-module-poster-tab .pt-list-box .pt-item.active { display: flex; }
.deco-module-poster-tab .pt-list-box .pt-item .side { width: 50%; flex-shrink: 0; box-sizing: border-box; }

/* 图片区 */
.deco-module-poster-tab .pt-list-box .pt-item .pt-img-box { position: relative; padding-top: 69.44%; overflow: hidden; }
.deco-module-poster-tab .pt-list-box .pt-item.img_pos_top .pt-img-box { align-self: flex-start; }
.deco-module-poster-tab .pt-list-box .pt-item.img_pos_center .pt-img-box { align-self: center; }
.deco-module-poster-tab .pt-list-box .pt-item.img_pos_bottom .pt-img-box { align-self: flex-end; }
.deco-module-poster-tab .pt-list-box .pt-item .pt-img-box a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.deco-module-poster-tab .pt-list-box .pt-item .pt-img-box img { width: 100%; height: 100%; object-fit: cover; display: block; }
.deco-module-poster-tab .pt-list-box .pt-item.img_fit_contain .pt-img-box img { object-fit: contain; }

/* 内容区 */
.deco-module-poster-tab .pt-list-box .pt-item .pt-info-box { padding: 57px 40px 0; }
.deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-title { font-size: var(--pt-item-pc-title-font-size, 32px); color: var(--pt-item-title-color, #403634); line-height: 1.2; margin: 0; }
.deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-subtitle { font-size: var(--pt-item-pc-subtitle-font-size, 18px); color: var(--pt-item-subtitle-color, #535353); margin-top: 20px; line-height: 1.556; }
.deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-content { font-size: var(--pt-item-pc-content-font-size, 16px); color: var(--pt-item-content-color, #403634); margin-top: 50px; line-height: 1.5; }

/* 按钮 */
.deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-btn { margin-top: 40px; }
.deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-btn a { display: inline-block; font-family: var(--pt-item-btn-font, Poppins-Bold); color: var(--pt-item-btn-text-color, #ffffff); background-color: var(--pt-item-btn-bg-color, #71422D); border: 1px solid var(--pt-item-btn-border-color, #71422D); font-size: var(--pt-item-btn-pc-font-size, 16px); border-radius: var(--pt-item-btn-pc-radius, 45px); text-align: center; padding: 16px 30px; width: var(--pt-item-btn-pc-width, auto); height: var(--pt-item-btn-pc-height, auto); box-sizing: border-box; }
.deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-btn a:hover { color: var(--pt-item-btn-text-hover-color, #71422D); background-color: var(--pt-item-btn-bg-hover-color, transparent); border-color: var(--pt-item-btn-border-hover-color, #71422D); }

/* PC 端间距 (1001px+) */
@media screen and (min-width: 1001px) {
    .deco-module-poster-tab { padding-top: var(--pt-pc-padding-top, 120px); padding-bottom: var(--pt-pc-padding-bottom, 152px); padding-left: var(--pt-pc-padding-left, 0%); padding-right: var(--pt-pc-padding-right, 0%); }
}
/* 1480px 以下: module_width_1440/global 靠 max-width:100% 自适应缩放,不再硬设 96% */

/* 移动端 (1000px-) */
@media screen and (max-width: 1000px) {
    .deco-module-poster-tab { padding-top: var(--pt-mobile-padding-top, 30px); padding-bottom: var(--pt-mobile-padding-bottom, 40px); padding-left: var(--pt-mobile-padding-left, 3%); padding-right: var(--pt-mobile-padding-right, 3%); }
    .deco-module-poster-tab .pt-top-info .pt-subtitle { font-size: var(--pt-mobile-subtitle-font-size, 14px); }
    .deco-module-poster-tab .pt-top-info .pt-title { font-size: var(--pt-mobile-title-font-size, 32px); }
    .deco-module-poster-tab .pt-top-info .pt-content { font-size: var(--pt-mobile-content-font-size, 14px); }
    .deco-module-poster-tab .pt-menu-list { margin-top: 20px; display: flex; align-items: center; justify-content: left; flex-wrap: nowrap; gap: 15px; overflow-x: auto; max-width: 100%; -webkit-overflow-scrolling: touch; scrollbar-width: none; -ms-overflow-style: none; }
    .deco-module-poster-tab .pt-menu-list::-webkit-scrollbar { width: 0; height: 0; }
    .deco-module-poster-tab .pt-menu-list a { margin: 0; flex-shrink: 0; font-size: var(--pt-mobile-tab-font-size, 14px); }
    .deco-module-poster-tab .pt-list-box { margin-top: 30px; }
    .deco-module-poster-tab .pt-list-box .pt-item .side { width: 100%; }
    .deco-module-poster-tab .pt-list-box .pt-item .pt-img-box { border-top-left-radius: 15px; border-top-right-radius: 15px; overflow: hidden; }
    .deco-module-poster-tab .pt-list-box .pt-item .pt-info-box { padding: 20px 15px; }
    .deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-title { font-size: var(--pt-item-mobile-title-font-size, 24px); }
    .deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-subtitle { font-size: var(--pt-item-mobile-subtitle-font-size, 16px); }
    .deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-content { font-size: var(--pt-item-mobile-content-font-size, 14px); margin-top: 15px; }
    .deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-btn { margin-top: 20px; }
    .deco-module-poster-tab .pt-list-box .pt-item .pt-info-box .pt-item-btn a { font-size: var(--pt-item-btn-mobile-font-size, 14px); border-radius: var(--pt-item-btn-mobile-radius, 45px); width: var(--pt-item-btn-mobile-width, auto); height: var(--pt-item-btn-mobile-height, auto); padding: 12px 24px; }
}
