
*{margin:0;padding:0;box-sizing:border-box}
body{font:16px/1.7 "Microsoft YaHei",Arial,sans-serif;color:#333}
a{color:inherit;text-decoration:none}
img{max-width:100%}
/* 导航 */
.site-nav{display:flex;justify-content:center;gap:0;padding:0;flex-wrap:wrap}
.site-nav a{display:inline-block;padding:12px 22px;color:#fff;font-size:17px}
.site-nav a.on{font-weight:bold}
.site-nav .nav-item{position:relative}
.site-nav .has-children>a:after{content:" ";font-size:13px}
.site-nav .submenu{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:140px;box-shadow:0 4px 14px rgba(0,0,0,.15);z-index:30}
.site-nav .nav-item:hover .submenu{display:block}
.site-nav .submenu a{display:block;padding:9px 16px;color:#333;font-size:15px}
.site-nav .submenu a:hover{background:var(--cf-cyan-19, #f0f4f8)}
/* 导航二级菜单：全模板生效。
   1) c20/c21/c22/c23 吸顶导航 .nl 有 overflow-x:auto，会把绝对定位的 .dsub 下拉裁剪掉——hover 时放开裁剪；
   2) n20/n22/n23 的下拉 top 用了 calc(100% + Npx)，按钮与下拉之间有空隙，鼠标移过去会先失去 hover 导致闪断——用 ::before 透明桥补上间隙。 */
.tw20 .n20-nav .nl:has(.has-d:hover),.tw21 .n21-nav .nl:has(.has-d:hover),.tw22 .n22-nav .nl:has(.has-d:hover),.tw23 .n23-nav .nl:has(.has-d:hover){overflow:visible}
.tw20 .n20-nav .nl .has-d:hover::before,.tw22 .n22-nav .nl .has-d:hover::before,.tw23 .n23-nav .nl .has-d:hover::before{content:"";position:absolute;left:-6px;right:-6px;top:100%;height:12px}
/* 布局 */
.wrap{max-width:1080px;margin:0 auto;padding:0 16px}
header.hero{text-align:center;padding:46px 16px 30px}
header.hero h1{font-size:34px;letter-spacing:2px}
header.hero .sub{color:#666;margin-top:8px;font-size:16px}
section.mod{padding:34px 0;border-bottom:1px solid #eee}
section.mod h2{font-size:24px;text-align:center;margin-bottom:18px}
section.mod .mod-body{white-space:pre-line;text-align:center;color:#555;max-width:720px;margin:0 auto}
.news-list{max-width:640px;margin:0 auto}
.news-list li{padding:10px 4px;border-bottom:1px dashed var(--cf-n-18, #e2e2e2);list-style:none;display:flex;gap:12px}
.news-list .n-time{color:#999;font-size:15px;flex:none}
.news-list a{flex:1;min-width:0;overflow-wrap:anywhere;word-break:break-word;line-height:1.7}
.timeline{max-width:560px;margin:0 auto}
.timeline li{list-style:none;padding:8px 0;border-left:3px solid var(--pc-theme,var(--cf-red-10, #d03838));padding-left:14px;margin-left:8px;white-space:pre-line}
.fast-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.fast-btns a{padding:12px 34px;border-radius:4px;color:#fff;font-size:17px;letter-spacing:1px}
.banner-slider{position:relative;overflow:hidden;border-radius:10px}
.banner-track{display:flex;transition:transform .55s ease}
.banner-slide{flex:0 0 100%;min-height:300px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--cf-cyan-09, #3657b6),var(--cf-cyan-13, #5181f1));color:#fff;font-size:26px;letter-spacing:2px}
.banner-slide img{width:100%;height:300px;object-fit:cover;display:block}
.banner-fb{width:100%;height:300px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--cf-cyan-09, #3657b6),var(--cf-cyan-13, #5181f1));color:#fff;font-size:26px;letter-spacing:2px}
.banner-dots{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:8px;z-index:3}
.banner-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.45);cursor:pointer;transition:background .2s}
.banner-dot.on{background:#fff}
.banner-arr{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.22);color:#fff;font-size:24px;line-height:34px;text-align:center;cursor:pointer;user-select:none;z-index:3}
.banner-arr:hover{background:rgba(0,0,0,.45)}
.banner-arr.prev{left:10px}.banner-arr.next{right:10px}
.sponsor-group{margin-bottom:20px}
.sponsor-group h3{text-align:center;font-size:18px;color:var(--cf-amber-08, #8a6d3b);margin-bottom:10px}
.sponsor-grid{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.sponsor-grid .sp{width:130px;height:60px;border:1px solid var(--cf-amber-16, #e2d6b8);border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--cf-amber-09, #a08850);font-size:15px;background:var(--cf-amber-20, #fffdf5)}
/* 赞助商 logo 卡片：全部 PC 模板统一复用（子栏目上传的 logo 优先，无图时首字占位） */
.spon-grid{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}
.spon-card{flex:0 1 210px;min-width:150px;max-width:240px;background:#fff;border:1px solid var(--cf-cyan-19, #e8ecf2);border-radius:10px;padding:14px 16px;text-align:center;box-shadow:0 1px 4px rgba(15,23,42,.04)}
.spon-card .lg{height:76px;display:flex;align-items:center;justify-content:center}
.spon-card .lg img{max-height:76px;max-width:100%;object-fit:contain;display:block}
.spon-card .ph{width:44px;height:44px;border-radius:50%;margin:16px auto;background:var(--cf-cyan-19, #eef1f6);color:var(--cf-cyan-13, #9aa4b2);font-size:22px;display:flex;align-items:center;justify-content:center}
.spon-card p{font-size:14.5px;color:var(--cf-cyan-09, #6b7280);margin:10px 0 0;line-height:1.6}
/* 人物头像：统一长方形（宽高比 5:7，一寸照可完整显示），比旧圆形头像放大数倍 */
.pc-ava{width:140px;height:196px;border-radius:8px;overflow:hidden;background:var(--cf-cyan-19, #eef0f3);color:var(--cf-cyan-13, #9aa4b2);font-size:44px;display:flex;align-items:center;justify-content:center;flex:none}
.pc-ava img{width:100%;height:100%;object-fit:cover;display:block}
.pcg-grid{display:flex;flex-wrap:wrap;gap:22px;justify-content:center}
.pcg-item{width:140px;text-align:center}
.pcg-item h3{font-size:16px;color:#333;margin:9px 0 2px}
.pcg-item p{font-size:14px;color:#888;margin:0}
.popup{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:999999;padding:16px}
.popup .p-box{background:#fff;border-radius:10px;max-width:92vw;max-height:92vh;position:relative;overflow:auto;box-shadow:0 12px 48px rgba(0,0,0,.25)}
.popup .p-x{position:absolute;top:10px;right:14px;cursor:pointer;font-size:24px;color:#666;line-height:1;z-index:2;background:rgba(255,255,255,.85);border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center}
.popup .p-x:hover{color:#222}
.popup .p-img img{display:block;max-width:88vw;max-height:78vh;object-fit:contain;border-radius:10px 10px 0 0}
.popup .p-img a{display:block}
.popup .p-title{font-size:20px;font-weight:700;padding:16px 22px 0;color:#222}
.popup .p-text{padding:10px 22px 20px;color:#444;line-height:1.8;font-size:16px;max-width:640px;text-align:left}
.popup .p-text img{max-width:100%;height:auto}
.news-modal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:90;padding:24px}
.news-modal .nm-box{background:#fff;border-radius:10px;max-width:720px;width:100%;max-height:86vh;display:flex;flex-direction:column;position:relative;box-shadow:0 12px 40px rgba(0,0,0,.25)}
.news-modal .nm-x{position:absolute;top:12px;right:16px;cursor:pointer;color:#999;font-size:24px;line-height:1}
.news-modal h2{font-size:21px;color:var(--pc-theme,var(--cf-cyan-07, #1e3a8a));padding:20px 24px 8px;margin:0;border-bottom:1px solid var(--cf-cyan-19, #eef0f3)}
.news-modal .nm-meta{color:#999;font-size:14px;padding:8px 24px}
.news-modal .nm-body{padding:6px 24px 18px;overflow:auto;line-height:1.9;color:#444;font-size:16px;white-space:pre-line}
.news-modal .nm-file{padding:10px 24px 18px;border-top:1px solid var(--cf-cyan-19, #eef0f3)}
.news-modal .nm-file a{color:var(--cf-cyan-09, #006ce7);text-decoration:none}
.float-win{position:fixed;right:22px;bottom:90px;background:#fff;border:1px solid var(--cf-n-18, #e0e0e0);border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,.14);padding:12px 16px;z-index:70;font-size:15px}
footer.site-footer{text-align:center;padding:26px 16px;color:#888;font-size:15px;background:var(--cf-n-20, #fafafa)}
.empty-note{color:#aaa;text-align:center;padding:30px 0}
/* ===== 模版十八 c18 ===== */
.t18{font-family:"Microsoft YaHei",Arial,sans-serif;background:var(--pc-body,#fff)}
.t18 .langbar{text-align:right;padding:8px 0;font-size:14px;color:var(--pc-nav-font,#666)}
.t18 .langbar a{color:var(--pc-nav-font,#666);margin:0 4px;padding:2px 6px}
.t18 .langbar a.on{border:1px solid var(--pc-theme,var(--t18-c,var(--cf-blue-13, #6c5ce7)));color:var(--pc-theme,var(--t18-c,var(--cf-blue-13, #6c5ce7)));border-radius:2px}
/* 头部横幅图：按原图比例整幅显示（不裁切） */
.t18 .bannerimg{display:block;width:100%;height:auto}
.t18 .affix{position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.t18 nav{display:flex;align-items:center;background:var(--pc-nav,var(--t18-c,var(--cf-blue-13, #6c5ce7)));color:var(--pc-nav-font,#fff);padding:4px 8px;min-height:50px}
/* 站名固定在导航栏最左（当站标用），其后「导航菜单 + 个人中心」整组在剩余空间内水平居中 */
.t18 nav .grow{flex:1;min-width:0;display:flex;align-items:center;flex-wrap:wrap;justify-content:center}
.t18 nav a.ml{color:var(--pc-nav-font,#fff);padding:0 14px;line-height:42px;font-size:16px;display:inline-block}
.t18 nav a.ml.on{font-weight:bold;background:var(--pc-nav-current,rgba(0,0,0,.15));color:var(--pc-nav-font-hover,#fff)}
/* 二级菜单下拉（后台「导航栏目」的子栏目） */
.t18 nav .has-d{position:relative;display:inline-flex}
.t18 nav .dsub{position:absolute;top:100%;left:0;min-width:176px;background:#fff;border-radius:0 0 10px 10px;box-shadow:0 14px 32px rgba(0,0,0,.16);display:none;z-index:300;padding:6px 0;text-align:left}
.t18 nav .has-d:hover .dsub{display:block}
.t18 nav .dsub a{display:block;padding:10px 18px;font-size:15.5px;color:#333;line-height:1.5}
.t18 nav .dsub a:hover{color:var(--pc-nav-current,var(--t18-c,var(--cf-blue-13, #6c5ce7)));background:var(--cf-cyan-19, #f5f6fa)}
.t18 .web{max-width:1200px;margin:0 auto;padding:0 16px}
.t18 .mod{margin-top:26px}
.t18 .ttl{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.t18 .ttl h2{font-size:22px;color:var(--cf-cyan-04, #1f2a44);padding-left:10px;border-left:4px solid var(--pc-theme,var(--t18-c,var(--cf-blue-13, #6c5ce7)))}
.t18 .ttl a{font-size:15px;color:#999}
.t18 .channels{display:flex;gap:14px}
.t18 .ch{flex:1;background:#fff;border:1px solid #eee;border-radius:8px;padding:22px;display:flex;align-items:center;gap:14px;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.t18 .ch .ico{width:46px;height:46px;border-radius:50%;background:var(--pc-theme,var(--t18-c,var(--cf-blue-13, #6c5ce7)));color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;flex:none}
.t18 .ch .ico i.remixicon{font-style:normal;line-height:1}
.t18 .ch .ico img{width:26px;height:26px;object-fit:contain}
.t18 .ch h3{font-size:17px;line-height:1.4}
/* 三块频道入口 / 倒计时＋重要日期行 / 各内容栏目 / 联系我们：每块都要有同样的上间距，
   以前 .row 与 .contact 不在 .mod 体系里、没有 margin，于是“板块都连一起了”。*/
.t18 .row{display:flex;gap:14px;margin-top:26px}
.t18 .row>div{flex:1;background:#fff;border:1px solid #eee;border-radius:8px;padding:18px}
.t18 .cd{text-align:center;display:flex;flex-direction:column}
.t18 .cd .nums{display:flex;justify-content:center;gap:6px;margin-top:10px}
/* 「会议正在进行」/实时倒计时：占满剩余高度并居中，卡片不再上边一条、下边空一片 */
.t18 .cd .nums.sig{flex:1;align-items:center;margin-top:6px;min-height:44px}
.t18 .cd .nums.sig span{font-size:17px;color:#888;line-height:1.7}
.t18 .cd .nums b{background:var(--t18-c,var(--cf-blue-13, #6c5ce7));color:#fff;border-radius:4px;padding:4px 8px;font-size:18px}
/* 重要日期：从“居中堆叠的一列”（标签在上、日期在下，一长条看着没重点）改成 2 列卡片网格：
   每项一张浅主题色底的小卡，左对齐、标签在上日期在下，日期用等宽数字；窄屏自动变单列。
   卡片块 flex:1 + align-content:center，跟左边的倒计时卡高度对齐、内容垂直居中。*/
.t18 .datebox{display:flex;flex-direction:column}
.t18 .datebox .dgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;flex:1;align-content:center}
.t18 .datebox .d{background:color-mix(in srgb,var(--t18-c,var(--cf-blue-13, #6c5ce7)) 5%,#fff);border:1px solid color-mix(in srgb,var(--t18-c,var(--cf-blue-13, #6c5ce7)) 15%,#fff);border-radius:8px;padding:11px 13px;text-align:left;margin:0}
.t18 .datebox .d b{color:var(--t18-c,var(--cf-blue-13, #6c5ce7));display:block;font-size:17px;line-height:1.5;margin-top:3px;font-variant-numeric:tabular-nums}
.t18 .datebox .d p{color:var(--cf-cyan-12, #8a93a6);font-size:14px;line-height:1.5}
.t18 .carousel{position:relative;height:150px;border-radius:8px;overflow:hidden;background:var(--cf-cyan-19, #f3f4f6);display:flex;align-items:center;justify-content:center;color:#aaa;font-size:16px}
.t18 .blog ul{list-style:none}
.t18 .blog li{display:flex;gap:12px;padding:10px 4px;border-bottom:1px dashed #eee;font-size:16px}
.t18 .blog .t{color:#999;flex:none}
.t18 .guests{display:flex;gap:18px;flex-wrap:wrap;justify-content:center}
.t18 .gus{flex:1;min-width:185px;background:#fff;border:1px solid #eee;border-radius:8px;text-align:center;padding:18px}
.t18 .gus .av{width:140px;height:196px;border-radius:8px;margin:0 auto 12px;background:var(--cf-cyan-19, #eef0f3);color:#999;display:flex;align-items:center;justify-content:center;font-size:44px;overflow:hidden}
.t18 .gus .av img{width:100%;height:100%;object-fit:cover;display:block}
.t18 .friends{display:flex;flex-wrap:wrap;gap:12px}
.t18 .fri{width:calc(25% - 9px);border:1px solid #eee;border-radius:6px;height:70px;display:flex;align-items:center;justify-content:center;color:#999;background:var(--cf-amber-20, #fffdf5)}
.t18 .contact{background:var(--t18-c,var(--cf-blue-13, #6c5ce7));color:#fff;border-radius:8px;padding:24px;text-align:center;margin-top:26px}
.t18 .contact h2{font-size:20px;margin-bottom:10px}
.t18 footer.t18f{background:var(--t18-c,var(--cf-blue-13, #6c5ce7));color:#fff;text-align:center;padding:22px 16px;font-size:14px;margin-top:30px}
.t18 .bg{background:var(--cf-n-20, #f9f9f9)}
/* 窄屏：三块频道入口竖排（否则 46px 图标圈 + 文字在 160px 宽里被挤成两行，且与无图标的块左右不齐） */
@media (max-width:900px){.t18 .channels{flex-direction:column}.t18 .ch{flex:none;padding:16px 18px}.t18 .datebox .dgrid{grid-template-columns:1fr}}
/* ===== 模版十四 c14 ===== */
.t14{font-family:"Microsoft YaHei",Arial,sans-serif;background:var(--pc-body,var(--cf-n-20, #f9f9f9))}
/* 顶部条（「会议正在进行」）已按用户要求移除（2026-09-20），对应样式一并清掉 */
.t14 .nav{position:sticky;top:0;z-index:50;background:var(--pc-nav,#fff);box-shadow:0 2px 10px rgba(0,0,0,.06)}
.t14 .nav .inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;padding:0 16px}
.t14 .nav .brand{font-weight:bold;font-size:17px;color:var(--pc-nav-font,var(--cf-cyan-04, #1f2a44));padding:0 14px 0 0}
.t14 .nav a.it{padding:15px 16px;color:var(--pc-nav-font,#333);font-size:16px;display:inline-block;border-bottom:2px solid transparent}
.t14 .nav a.it.on{color:var(--pc-nav-font-hover,var(--t14c,var(--cf-cyan-13, #5181f1)));font-weight:bold;border-color:var(--pc-nav-current,var(--t14c,var(--cf-cyan-13, #5181f1)))}
/* 二级菜单下拉（后台「导航栏目」的子栏目） */
.t14 .nav .has-d{position:relative;display:inline-flex}
.t14 .nav .dsub{position:absolute;top:100%;left:0;min-width:176px;background:#fff;border:1px solid var(--cf-cyan-19, #eef0f3);border-top:2px solid var(--pc-nav-current,var(--t14c,var(--cf-cyan-13, #5181f1)));border-radius:0 0 8px 8px;box-shadow:0 14px 30px rgba(0,0,0,.12);display:none;z-index:300;padding:6px 0}
.t14 .nav .has-d:hover .dsub{display:block}
.t14 .nav .dsub a{display:block;padding:10px 18px;font-size:15.5px;color:#333}
.t14 .nav .dsub a:hover{color:var(--pc-nav-current,var(--t14c,var(--cf-cyan-13, #5181f1)));background:var(--cf-cyan-20, #f7f9fc)}
/* 头部横幅图：按原图比例整幅显示（原 max-height:300px + object-fit:cover 会把 3:1 的会议海报从中间裁掉，
   海报首行标题正好被裁在导航条下沿，看起来就像导航压住了图） */
.t14 .bannerimg{display:block;width:100%;height:auto;background:linear-gradient(135deg,var(--t14c,var(--cf-cyan-13, #5181f1)),color-mix(in srgb,var(--t14c,var(--cf-cyan-13, #5181f1)) 70%,#000))}
.t14 .web{max-width:1200px;margin:0 auto;padding:22px 16px}
.t14 .mod{margin-bottom:26px}
.t14 .ttl{display:flex;align-items:baseline;gap:10px;border-bottom:1px solid #eee;padding-bottom:10px;margin-bottom:16px}
.t14 .ttl .en{font-size:13px;color:#aaa;text-transform:uppercase;letter-spacing:1px}
.t14 .ttl h2{font-size:22px;color:var(--cf-cyan-04, #1f2a44)}
.t14 .ttl .more{margin-left:auto;font-size:14px;color:#aaa}
.t14 .duo{display:flex;gap:18px}
.t14 .duo>div{flex:1}
.t14 .carousel{height:240px;border-radius:6px;overflow:hidden;background:var(--cf-cyan-19, #eef0f3);display:flex;align-items:center;justify-content:center;color:#999}
.t14 .textmod h2{font-size:22px;color:var(--cf-cyan-04, #1f2a44);margin-bottom:12px}
.t14 .textmod p{color:#555;line-height:1.9}
.t14 .channels{display:flex;gap:16px}
.t14 .ch{flex:1;background:var(--t14c,var(--cf-cyan-13, #5181f1));color:#fff;border-radius:8px;padding:20px;text-align:center;box-shadow:0 3px 10px rgba(81,129,241,.25)}
.t14 .ch .ico{font-size:30px;margin-bottom:8px}
.t14 .ch h3{font-size:17px}
.t14 .guests{display:flex;gap:18px;flex-wrap:wrap;justify-content:center}
.t14 .gus{flex:1;min-width:185px;background:#fff;border:1px solid #eee;border-radius:8px;text-align:center;padding:18px}
.t14 .gus .av{width:140px;height:196px;border-radius:8px;margin:0 auto 12px;background:var(--cf-cyan-19, #eef0f3);color:#999;display:flex;align-items:center;justify-content:center;font-size:44px;overflow:hidden}
.t14 .gus .av img{width:100%;height:100%;object-fit:cover;display:block}
.t14 .gus h3{font-size:17px;color:#333}
.t14 .gus p{font-size:14px;color:#999;margin-top:4px}
.t14 .dates{display:flex;gap:14px}
.t14 .dt{flex:1;background:#fff;border:1px solid #eee;border-top:3px solid var(--t14c,var(--cf-cyan-13, #5181f1));border-radius:6px;text-align:center;padding:18px 10px}
.t14 .dt b{display:block;font-size:17px;color:var(--cf-cyan-04, #1f2a44);margin-bottom:6px}
.t14 .dt p{font-size:14px;color:#888}
.t14 .friends{display:flex;gap:12px}
.t14 .fri{flex:1;background:#fff;border:1px solid #eee;border-radius:6px;padding:14px;text-align:center;font-size:14px;color:#999}
.t14 ul.lst{list-style:none}
.t14 ul.lst li{display:flex;gap:12px;padding:8px 0;border-bottom:1px dashed #eee;font-size:16px}
.t14 ul.lst .tm{color:#999;flex:none}
.t14 .contact{background:var(--t14c,var(--cf-cyan-13, #5181f1));color:#fff;text-align:center;padding:30px 16px}
.t14 .contact h2{font-size:22px;margin-bottom:10px}
.t14 footer.ntf{background:var(--t14c,var(--cf-cyan-13, #5181f1));color:#fff;text-align:center;padding:18px 16px;font-size:14px}
.t14 .ch .ico img{height:26px;width:auto;vertical-align:middle}
.t14 .ch .ico i.remixicon{font-style:normal;font-size:28px;line-height:1;vertical-align:middle}
.t14 .t14-cd{background:#fff;border:1px solid #eee;border-top:3px solid var(--t14c,var(--cf-cyan-13, #5181f1));border-radius:6px;text-align:center;padding:22px}
.t14 .t14-cd b{display:block;font-size:32px;font-weight:800;color:var(--t14c,var(--cf-cyan-13, #5181f1));font-variant-numeric:tabular-nums}
.t14 .t14-cd span{display:inline-block;font-size:14px;color:#888;margin-top:6px}
.t14 .t14-times{display:flex;gap:14px;flex-wrap:wrap}
.t14 .ti{flex:1;min-width:180px;background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--t14c,var(--cf-cyan-13, #5181f1)) 8%,#fff));border:1px solid color-mix(in srgb,var(--t14c,var(--cf-cyan-13, #5181f1)) 25%,#fff);border-top:4px solid var(--t14c,var(--cf-cyan-13, #5181f1));border-radius:10px;padding:16px 18px;box-shadow:0 6px 16px color-mix(in srgb,var(--t14c,var(--cf-cyan-13, #5181f1)) 15%,transparent);transition:transform .2s,box-shadow .2s}
.t14 .ti:hover{transform:translateY(-4px);box-shadow:0 12px 26px color-mix(in srgb,var(--t14c,var(--cf-cyan-13, #5181f1)) 28%,transparent)}
.t14 .ti b{display:block;font-size:22px;font-weight:800;color:var(--t14c,var(--cf-cyan-13, #5181f1));margin-bottom:6px;letter-spacing:.5px}
.t14 .ti p{font-size:15px;color:#555;line-height:1.7;margin:0;font-weight:500}
.t14 .t14-txt{background:#fff;border:1px solid #eee;border-radius:6px;padding:16px 18px;color:#555;line-height:1.9}
.t14 .t14-roll{display:flex;gap:14px;flex-wrap:wrap}
.t14 .rk{flex:1;min-width:200px;max-width:280px;background:#fff;border:1px solid #eee;border-radius:8px;overflow:hidden;text-decoration:none;color:inherit}
.t14 .rk img{width:100%;height:140px;object-fit:cover;display:block}
.t14 .rk p{font-size:15px;color:#333;padding:10px 12px;margin:0;text-align:center}

