/* =====================================================================
   特性034：内页 1:1 还原线上「版式」的作用域样式
   - 还原对象=线上 wonderlab.top/cn 各内页布局/配色/栏数（curl 为准）
   - 每页 <main class="v1page v1page--<name>">；规则全部前缀 .v1page，
     类名为 v1 专用、与 v2 头尾(.wl-*)不冲突；不引 index.css/bootstrap 全量
   - 数据绑定/vanilla 交互沿用 v2（取数照 032/033）
   ===================================================================== */

/* 顶部小 banner（线上 .ip-small-banner，646px@1920，Catalog.logo cover）。
   作用①还原线上；②给 v2 固定透明头部(.is-at-top 白字)一个深色衬底，否则白底上 nav 隐形。
   无引导图时回退品牌蓝，确保头部仍可见。 */
.v1page .v1-banner { width: 100%; height: clamp(280px, 33.6vw, 646px); background: var(--wl-brand, #0000e1) center center / cover no-repeat; }

/* 公共容器（线上内容区约 1140px 居中） */
.v1page .v1-inner { width: 100%; max-width: 1140px; margin: 0 auto; padding: clamp(40px, 5vw, 80px) 16px; }
.v1page .v1-sec-title { font-size: clamp(26px, 3vw, 40px); font-weight: bold; color: #111; letter-spacing: 1px; }
/* 通用「继续浏览/已全部加载完成」（沿用 data-wl-loadmore） */
.v1page .v1-loadmore { display: flex; flex-direction: column; align-items: center; gap: 12px; margin-top: clamp(32px, 4vw, 56px); }
.v1page .v1-loadmore__btn { border: 1px solid #0000FF; color: #0000FF; background: #fff; padding: 10px 28px; border-radius: 999px; font-size: 14px; cursor: pointer; }
.v1page .v1-loadmore__btn:hover { background: #0000FF; color: #fff; }
.v1page .v1-loadmore__done { font-size: 14px; color: #999; }

/* ---------- news 新闻列表：单列整宽行（图左≈35% + 标题/日期/摘要右，扁平） ---------- */
.v1page--news .v1-news-title { margin-bottom: clamp(24px, 3vw, 48px); }
.v1page--news .v1-news-list { list-style: none; margin: 0; padding: 0; }
.v1page--news .v1-news-item { border-bottom: 1px solid #ececec; }
.v1page--news .v1-news-item[hidden] { display: none; }
.v1page--news .v1-news-item > a { display: flex; gap: clamp(16px, 2vw, 32px); padding: clamp(18px, 2vw, 28px) 0; color: inherit; text-decoration: none; align-items: center; }
.v1page--news .v1-news-item__img { flex: 0 0 35%; max-width: 35%; aspect-ratio: 16 / 10; overflow: hidden; background: #f4f6f8; }
.v1page--news .v1-news-item__img img { width: 100%; height: 100%; object-fit: fill; display: block; transition: transform .4s; } /* 035 撑满容器、允许变形、不裁剪不留白（原则 VIII，取代 cover） */
.v1page--news .v1-news-item > a:hover .v1-news-item__img img { transform: scale(1.04); }
.v1page--news .v1-news-item__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.v1page--news .v1-news-item__title { font-size: clamp(16px, 1.3vw, 22px); font-weight: 600; color: #111; line-height: 1.45; }
.v1page--news .v1-news-item > a:hover .v1-news-item__title { color: #0000FF; }
.v1page--news .v1-news-item__time { font-size: 13px; color: #999; }
.v1page--news .v1-news-item__desc { font-size: 14px; color: #666; line-height: 1.7; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
@media (max-width: 640px) {
  .v1page--news .v1-news-item > a { flex-direction: column; align-items: stretch; }
  .v1page--news .v1-news-item__img { flex-basis: auto; max-width: 100%; }
}

/* ---------- contact-us：大标题 + 3 横排联系卡 + 反馈表单（还原线上 inner-page-block-item） ---------- */
.v1page--contact .ip-bigtitle { font-size: clamp(28px, 2.66vw, 51px); font-weight: 600; color: #262629; letter-spacing: 1px; margin: 0 0 clamp(36px, 4.5vw, 80px); }
.v1page--contact .ip-contact-list { list-style: none; margin: 0 0 clamp(48px, 6vw, 96px); padding: 0; display: flex; flex-wrap: wrap; gap: clamp(24px, 3vw, 56px); }
.v1page--contact .ip-contact-card { flex: 1 1 200px; min-width: 0; }
.v1page--contact .ipc-icon img { width: 55px; height: 55px; object-fit: contain; display: block; }
.v1page--contact .ipc-title { display: block; margin-top: 24px; font-size: clamp(18px, 1.25vw, 24px); font-weight: 600; color: #262629; }
.v1page--contact .ip-contact-card a { text-decoration: none; }
.v1page--contact .ipc-sub { display: flex; align-items: center; gap: 5px; margin-top: 12px; flex-wrap: wrap; }
.v1page--contact .ipc-sub > font { font-size: 16px; line-height: 22px; color: #0091FF; word-break: break-all; }
.v1page--contact .ipc-sub > img { width: 17px; height: 17px; }
/* 链接/反馈触发：邮箱用 mailto <a>，反馈用 <button> 打开弹窗——两者外观一致（蓝字、无下划线） */
.v1page--contact .ipc-link { display: inline-block; text-decoration: none; background: none; border: 0; padding: 0; margin: 0; cursor: pointer; font: inherit; text-align: left; color: #0091FF; }
.v1page--contact .ipc-link:hover .ipc-sub > font { text-decoration: underline; }
/* 反馈弹窗内的表单（复用 .wl-modal + data-wl-feedback） */
#wl-feedback-modal .wl-feedback { display: flex; flex-direction: column; gap: 16px; margin-top: 20px; text-align: left; }
#wl-feedback-modal .wl-modal__dialog { max-width: 520px; }

/* ---------- news-detail：面包屑 + 标题/日期/标签 + 窄栏富文本 ---------- */
.v1page--news-detail .v1-inner { max-width: 960px; }
.v1page--news-detail .nd-crumb { display: flex; flex-wrap: wrap; gap: 6px; font-size: 13px; color: #999; margin-bottom: clamp(20px, 2vw, 36px); }
.v1page--news-detail .nd-crumb a { color: #999; text-decoration: none; }
.v1page--news-detail .nd-crumb a:hover { color: #0000FF; }
.v1page--news-detail .nd-title { font-size: clamp(24px, 2.1vw, 40px); font-weight: 600; color: #262629; line-height: 1.4; }
.v1page--news-detail .nd-date { margin-top: clamp(12px, 1.2vw, 20px); font-size: 13px; color: rgba(38,38,41,.4); }
.v1page--news-detail .nd-divider { height: 1px; background: #B7B7BC; margin: clamp(20px, 2vw, 32px) 0 clamp(28px, 3vw, 44px); }
.v1page--news-detail .wl-richtext { max-width: 900px; margin: 0 auto; color: #333; font-size: clamp(15px, 0.94vw, 16px); line-height: 1.9; }
.v1page--news-detail .wl-richtext > * + * { margin-top: 1.1em; }
.v1page--news-detail .wl-richtext img { width: 100%; height: auto; display: block; margin: 1.4em auto; border-radius: 8px; }
.v1page--news-detail .wl-richtext h2, .v1page--news-detail .wl-richtext h3 { color: #262629; font-weight: 600; }
.v1page--news-detail .nd-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: clamp(28px, 3vw, 44px); list-style: none; padding: 0; }
.v1page--news-detail .nd-tags li { height: 28px; line-height: 28px; padding: 0 14px; background: #ECECEC; border-radius: 20px; font-size: 12px; color: #666; }

/* ---------- beneficial-life：横向滚动大卡（1200×535，图/文左右交替，圆角12） ---------- */
.v1page--life .v1-inner { max-width: none; padding-inline: 0; }
.v1page--life .life-carousel { position: relative; }
/* 横向轮播：隐藏滚动条 + 鼠标拖拽(initCardRowDrag) + 前后按钮(initLifeCarousel) */
.v1page--life .life-gallery { display: flex; gap: clamp(16px, 1.56vw, 30px); overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; padding: clamp(24px, 3vw, 56px) clamp(16px, 4vw, 360px); cursor: grab; scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; }
.v1page--life .life-gallery::-webkit-scrollbar { display: none; width: 0; height: 0; }
.v1page--life .life-gallery.is-dragging { cursor: grabbing; scroll-snap-type: none; }
.v1page--life .life-gallery.is-dragging * { pointer-events: none; user-select: none; }
.v1page--life .life-nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 6; width: clamp(40px, 3.4vw, 56px); height: clamp(40px, 3.4vw, 56px); border: none; border-radius: 50%; background: rgba(255, 255, 255, .92); box-shadow: 0 6px 20px rgba(0, 0, 0, .14); color: #262629; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: opacity .2s, background .2s; }
.v1page--life .life-nav:hover { background: #fff; }
.v1page--life .life-nav:disabled { opacity: .3; cursor: default; }
.v1page--life .life-nav svg { width: 40%; height: 40%; }
.v1page--life .life-nav--prev { left: clamp(8px, 2vw, 40px); }
.v1page--life .life-nav--next { right: clamp(8px, 2vw, 40px); }
@media (max-width: 640px) { .v1page--life .life-nav { display: none; } }
.v1page--life .life-card { flex: 0 0 min(1200px, 86vw); height: clamp(380px, 27.86vw, 535px); border-radius: 12px; overflow: hidden; scroll-snap-align: center; display: flex; background: #fff; box-shadow: 0 6px 24px rgba(0,0,0,.06); }
.v1page--life .life-card__img { flex: 0 0 46.75%; height: 100%; overflow: hidden; }
.v1page--life .life-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.v1page--life .life-card__text { flex: 1 1 53.25%; min-width: 0; display: flex; flex-direction: column; padding: clamp(28px, 3vw, 56px) clamp(28px, 3.7vw, 71px) clamp(28px, 3vw, 56px) clamp(32px, 4.3vw, 83px); }
.v1page--life .life-card--alt { flex-direction: row-reverse; }
.v1page--life .lc-title { font-size: clamp(22px, 1.56vw, 30px); font-weight: 700; color: #262629; line-height: 1.3; }
.v1page--life .lc-sub { margin-top: clamp(14px, 1.35vw, 26px); font-size: clamp(18px, 1.15vw, 22px); font-weight: 600; color: #262629; }
.v1page--life .lc-desc { margin-top: clamp(14px, 1.35vw, 26px); font-size: 16px; line-height: 1.6; color: #76767F; flex: 1; overflow: auto; }
@media (max-width: 640px) {
  .v1page--life .life-card { flex-direction: column; height: auto; }
  .v1page--life .life-card--alt { flex-direction: column; }
  .v1page--life .life-card__img { flex-basis: auto; aspect-ratio: 16/10; }
}

/* ---------- join-us：Hero叠加标题/CTA + joinUsInfos左文右图 + 价值观底图块 + 职位 ---------- */
.v1page--join .join-hero { position: relative; }
.v1page--join .join-hero .v1-banner { margin: 0; }
.v1page--join .join-hero__copy { position: absolute; left: clamp(16px, 15.6vw, 300px); top: 50%; transform: translateY(-50%); z-index: 5; color: #fff; max-width: 80%; }
.v1page--join .join-hero__title { font-size: clamp(28px, 2.5vw, 48px); font-weight: 600; color: #fff; line-height: 1.2; }
.v1page--join .join-hero__cta { display: inline-block; margin-top: clamp(20px, 2vw, 36px); padding: 0 28px; height: 42px; line-height: 42px; background: var(--wl-brand, #0000e1); color: #fff; font-size: 16px; text-decoration: none; }
.v1page--join .join-sec-title { font-size: clamp(24px, 2.1vw, 40px); font-weight: 600; color: #262629; margin-bottom: clamp(28px, 3vw, 48px); }
/* 公司介绍：左文右图 */
.v1page--join .join-info { display: grid; grid-template-columns: 1fr; gap: clamp(24px, 3vw, 56px); align-items: center; }
.v1page--join .join-info + .join-info { margin-top: clamp(48px, 6vw, 100px); }
@media (min-width: 960px) { .v1page--join .join-info { grid-template-columns: 1fr 1fr; } .v1page--join .join-info--media-left .join-info__media { order: -1; } }
.v1page--join .join-info__title { font-size: clamp(28px, 2.6vw, 50px); font-weight: 600; color: var(--wl-brand, #0000e1); line-height: 1.1; }
.v1page--join .join-info__sub { margin-top: clamp(12px, 1.35vw, 26px); font-size: clamp(18px, 1.35vw, 26px); font-weight: 600; color: #262629; }
.v1page--join .join-info__desc { margin-top: clamp(16px, 2vw, 36px); font-size: clamp(15px, 1vw, 20px); line-height: 1.5; color: #76767F; }
.v1page--join .join-stats { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(20px, 2.3vw, 44px); margin-top: clamp(24px, 2.3vw, 44px); }
.v1page--join .join-stat b { display: block; font-size: clamp(24px, 1.6vw, 31px); font-weight: 600; color: #262629; }
.v1page--join .join-stat font { display: block; margin-top: 6px; font-size: clamp(14px, 0.94vw, 18px); color: #76767F; }
.v1page--join .join-info__media img { width: 100%; height: auto; display: block; }
/* 价值观「我们共同坚持并追求的」：51px 蓝标题居中 + 固定 275×279 底图 tile 居中（不拉伸） */
.v1page--join .join-pursue-wrap { background: #F8F9FC; margin-inline: calc(50% - 50vw); padding: clamp(40px, 5vw, 88px) 0; }
.v1page--join .join-pursue-wrap .join-sec-title { color: #0000E1; text-align: center; }
.v1page--join .join-pursue-grid { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: clamp(16px, 3.1vw, 60px); }
/* tile 不设底色（PNG 四角透明，设灰底会透出灰方块）；图片 contain 撑满、不裁切自带阴影 */
.v1page--join .join-pursue { position: relative; flex: 0 0 auto; width: clamp(150px, 18vw, 275px); aspect-ratio: 275 / 279; display: flex; align-items: flex-end; justify-content: center; padding-bottom: clamp(14px, 1.4vw, 24px); color: #262629; background: transparent; }
.v1page--join .join-pursue img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; z-index: 0; }
.v1page--join .join-pursue span { position: relative; z-index: 1; font-size: clamp(15px, 1.04vw, 20px); font-weight: 600; text-align: center; padding: 0 8px; }
/* 企业画廊（joinUsImages）：满屏宽横向轮播，415×335 圆角12 cell（露邻）；
   鼠标拖拽滑动（main.js initCardRowDrag 复用 .join-gallery）；隐藏滚动条；自由滑（无吸附） */
.v1page--join .join-gallery {
  width: 100%; /* 已移出 .v1-inner、直接挂 main（满视口宽），无需 100vw，避免横向溢出 */
  display: flex; gap: clamp(10px, 0.94vw, 18px);
  overflow-x: auto; overflow-y: hidden;
  padding: clamp(24px, 3vw, 49px) clamp(16px, 4vw, 80px) clamp(12px, 1vw, 17px);
  cursor: grab; -webkit-overflow-scrolling: touch;
  scrollbar-width: none; -ms-overflow-style: none; /* 隐藏滚动条 */
}
.v1page--join .join-gallery::-webkit-scrollbar { display: none; width: 0; height: 0; }
.v1page--join .join-gallery.is-dragging { cursor: grabbing; }
.v1page--join .join-gallery.is-dragging img { pointer-events: none; }
.v1page--join .join-gallery img { flex: none; width: clamp(260px, 30vw, 415px); height: clamp(210px, 24vw, 335px); min-width: 0; object-fit: cover; border-radius: 12px; user-select: none; -webkit-user-drag: none; }
/* 工作机会（joinUsWorks）：51px 标题 + 灰胶囊 tab(激活深色) + 3 列 383 白卡圆角10 */
.v1page--join .join-category-tip { font-size: clamp(28px, 2.66vw, 51px); font-weight: 600; color: #262629; margin-bottom: clamp(20px, 2vw, 30px); }
.v1page--join .wl-jobs__tabs { display: flex; flex-wrap: wrap; gap: clamp(10px, 1.25vw, 24px); margin-bottom: clamp(24px, 3vw, 50px); }
.v1page--join .wl-jobs__tab { min-width: 110px; height: 40px; line-height: 40px; padding: 0 20px; border: 0; border-radius: 20px; background: #EDEFF2; color: #262629; font-size: 16px; font-weight: 500; cursor: pointer; }
.v1page--join .wl-jobs__tab.is-active { background: #262629; color: #fff; }
.v1page--join .wl-jobs__panel { display: none; }
.v1page--join .wl-jobs__panel.is-active { display: grid; grid-template-columns: 1fr; gap: clamp(16px, 1.35vw, 26px); }
@media (min-width: 640px) { .v1page--join .wl-jobs__panel.is-active { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 960px) { .v1page--join .wl-jobs__panel.is-active { grid-template-columns: repeat(3, 1fr); } }
.v1page--join .wl-job { display: block; background: #fff; border: 1px solid #ececec; border-radius: 10px; padding: clamp(20px, 1.7vw, 32px) clamp(20px, 1.7vw, 33px); color: #262629; text-decoration: none; transition: transform .3s, box-shadow .3s; }
.v1page--join a.wl-job:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(0,0,0,.08); }
.v1page--join .wl-job[hidden] { display: none; }
.v1page--join .wl-job__title { display: block; font-size: clamp(18px, 1.25vw, 24px); font-weight: 600; }
.v1page--join .wl-job__title::after { content: none !important; }
.v1page--join .wl-job__meta { display: block; margin-top: 6px; font-size: 14px; color: #76767F; }
.v1page--join .wl-job__text { display: block; margin-top: clamp(18px, 2vw, 42px); font-size: 14px; line-height: 1.85; color: #76767F; }
.v1page--join .wl-jobs__panel .wl-loadmore-bar { grid-column: 1 / -1; }
