/* ============================================================================
   LAYOUT: ella （布局层 / Layout layer，区别于"皮肤"；参照 shecurve.com，Ella 主题家族）
   布局 key = "ella"（存入 t_Site.fdSetting_Layout 由站点选择）。
   由 _Layout.cshtml 按 siteConfig.Layout 条件引入。
   职责分层：
     - LAYOUT（本文件）= 版块结构 / 网格 / 卡片骨架 / 间距 / 交互 / 排版
     - SKIN（theme.css，AI 生成）= 颜色 / 字体 / 圆角 / 阴影 等 token
   兼容性铁律：
     - 所有颜色一律 var(--color-*) —— 颜色归皮肤(theme.css)，本文件不写死色值。
     - 本文件不进 fdThemeCss，AI 重新生成皮肤不会冲掉布局。
     - 字体为 shecurve 标识（Tenor Sans 标题 + Poppins 正文），如需交还皮肤控制可删字体段。
   非分层(unlayered) → 自动胜过 @layer legacy 的旧 bundle；theme.css 仍后加载，token 由它定。
   ============================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Tenor+Sans&family=Poppins:wght@300;400;500;600;700&display=swap');

/* ── 全局字体 / 排版基线 ───────────────────────────────────────────────── */
body {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 14px;
    line-height: 1.6;
    letter-spacing: 0;
    color: var(--color-text, #111);
    -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6,
.halo-block-header .title,
.banner-title,
.section-title,
.gallery__title {
    font-family: 'Tenor Sans', 'Poppins', sans-serif;
    font-weight: 400;
    letter-spacing: .02em;
}

/* ── 宽容器 (shecurve container-1770 ≈ 1800px) ──────────────────────────── */
.page-container,
.shop-section .page-container,
.section-blogs .page-container {
    max-width: 1800px !important;
    margin-inline: auto;
    padding-inline: 24px;
}
@media (max-width: 1024px) {
    .page-container, .shop-section .page-container { padding-inline: 16px; }
}
@media (max-width: 767px) {
    .page-container, .shop-section .page-container { padding-inline: 12px; }
}

/* ── Section 垂直节奏 ──────────────────────────────────────────────────── */
.shop-section { padding-top: 26px; padding-bottom: 26px; }
@media (min-width: 1025px) {
    .shop-section { padding-top: 38px; padding-bottom: 38px; }
}
/* 首个 section(hero)贴合 header，去掉顶部空隙(shecurve 同款) */
.main > .shop-section:first-child,
main > .shop-section:first-child,
.main > section.shop-section:first-of-type {
    padding-top: 0 !important;
    margin-top: 0 !important;
    scroll-margin-top: 0;   /* 锚点跳转不额外留空(移动端 sticky header) */
}
/* 非首个 section 留出 sticky header 高度(桌面≈72px, 手机≈60px) */
.shop-section { scroll-margin-top: 72px; }
@media (max-width: 767px) { .shop-section { scroll-margin-top: 60px; } }

/* ── Section 标题：居中 / 大写 / 字间距 / 无装饰横线 (shecurve 风格) ──────── */
.halo-block-header { text-align: center; margin-bottom: 36px; }
.halo-block-header .title {
    position: relative;
    display: block;
    font-size: 24px;          /* shecurve --font-heading-size */
    line-height: 24px;        /* shecurve --heading-line-height */
    font-weight: 500;         /* shecurve --font-heading-weight */
    text-transform: capitalize; /* shecurve --heading-text-transform (非全大写) */
    letter-spacing: 0;        /* shecurve --heading-letter-spacing */
    color: var(--zone-section-title-color, var(--color-text, #111));
    margin: 1px 0 5px;        /* shecurve .title margin */
}
/* 干掉旧系统标题贯穿横线 + 两端圆点 */
.halo-block-header .title::before,
.halo-block-header .title::after,
.halo-block-header .title .text::before,
.halo-block-header .title .text::after { display: none !important; }
.halo-block-header .title .text {
    background: transparent !important;
    padding: 0 !important;
}
.halo-block-header .section-block-desc {
    margin-top: 10px;
    font-size: 14px;
    color: var(--color-text-secondary, #555);
    font-family: 'Poppins', sans-serif;
}
.halo-block-header .view_all {
    display: inline-block;
    margin-top: 14px;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--color-text, #111);
    border-bottom: 1px solid currentColor;
    line-height: 1.4;
}
.halo-block-header .view_all:hover { color: var(--color-primary, #6A5ACD); }

@media (max-width: 767px) {
    .halo-block-header { margin-bottom: 22px; }
    .halo-block-header .title { font-size: 19px; letter-spacing: .06em; }
}

/* ── P3 产品区与上方满宽 banner「相交重叠」(shecurve 层叠效果) ───────────────
   紧跟在 banner 后的产品区(sc-overlap)上移，卡片压住 banner 底部；卡片抬升带阴影。
   负 margin 用固定 px(各浏览器一致)，移动端减小重叠量。 */
.halo-product-block.sc-overlap {
    margin-top: -110px !important;   /* 重叠但克制，露出更多 banner 主体(设计师调) */
    padding-top: 0 !important;
    position: relative;
    z-index: 3;
}
.halo-product-block.sc-overlap .halo-block-header { display: none; }   /* banner 已是标题 */
/* 卡片抬升为白底+阴影，浮在 banner 之上(shecurve 层叠观感) */
.halo-product-block.sc-overlap .product-card .product-card-top {
    background: var(--color-bg-card, #fff) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.14);
}
@media (max-width: 1024px) { .halo-product-block.sc-overlap { margin-top: -96px !important; } }
@media (max-width: 767px)  { .halo-product-block.sc-overlap { margin-top: -54px !important; } }

/* ── 产品区横向轮播 (shecurve: 一排4个可滑，替代换行平铺) ───────────────────
   纯 CSS scroll-snap，仅作用于 .halo-product-block 的产品行，不影响分类等其它 row。 */
.halo-product-block:not(.recently-viewed-products) .halo-block-content .halo-row {
    user-select: none; -webkit-user-select: none;
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto;
    scroll-snap-type: x proximity;    /* proximity：拖动/箭头滚动更顺，不强制吸附 */
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;            /* Firefox 隐藏滚动条 */
    gap: 0;
    padding-bottom: 6px;
    cursor: grab;                     /* 提示可拖动 */
}
.halo-product-block:not(.recently-viewed-products) .halo-block-content .halo-row.pc-dragging {
    cursor: grabbing; user-select: none; -webkit-user-select: none;
    scroll-snap-type: none;           /* 拖动时关闭吸附，跟手 */
    scroll-behavior: auto;
}
.halo-product-block:not(.recently-viewed-products) .halo-block-content .halo-row.pc-dragging a { pointer-events: none; }
.halo-product-block:not(.recently-viewed-products) .halo-block-content .halo-row.pc-dragging * { user-select: none; -webkit-user-select: none; }
.halo-product-block:not(.recently-viewed-products) .halo-block-content .halo-row::-webkit-scrollbar { display: none; }
.halo-product-block:not(.recently-viewed-products) .halo-block-content .halo-row .product-item {
    flex: 0 0 25% !important;         /* 桌面一屏 4 个 */
    max-width: 25% !important;
    width: 25% !important;
    scroll-snap-align: start;
}
@media (max-width: 1024px) {
    .halo-product-block:not(.recently-viewed-products) .halo-block-content .halo-row .product-item { flex-basis: 33.333% !important; max-width: 33.333% !important; width: 33.333% !important; }
}
@media (max-width: 767px) {
    .halo-product-block:not(.recently-viewed-products) .halo-block-content .halo-row .product-item { flex-basis: 48% !important; max-width: 48% !important; width: 48% !important; }
}

/* ── 产品轮播箭头 (product-carousel.js 注入；shecurve 同款圆形左右箭头) ──── */
.halo-product-block .pc-arrow {
    position: absolute; top: 36%; transform: translateY(-50%);
    width: 46px; height: 46px; border-radius: 50%;
    border: 1px solid rgba(0,0,0,.08);
    background: #fff; color: var(--color-text, #111);
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; z-index: 5; padding: 0;
    box-shadow: 0 3px 14px rgba(0,0,0,.20);
    transition: opacity .2s ease, background .2s ease, box-shadow .2s ease, transform .15s ease;
}
.halo-product-block .pc-arrow:hover { box-shadow: 0 6px 20px rgba(0,0,0,.28); }
.halo-product-block .pc-arrow:active { transform: translateY(-50%) scale(.94); }
/* 压在首/末卡片边缘上(有图片背景对比，shecurve 同款) */
.halo-product-block .pc-arrow--prev { left: 6px; }
.halo-product-block .pc-arrow--next { right: 6px; }
.halo-product-block .pc-arrow.pc-hide { opacity: 0; pointer-events: none; }
@media (max-width: 767px) { .halo-product-block .pc-arrow { display: none; } }  /* 手机端用手势滑动 */

/* ── 产品卡 (shecurve: 竖图 / 悬停放大 / 极简) ─────────────────────────── */
.product-card {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    transition: none !important;
}
.product-card:hover {
    box-shadow: none !important;
    transform: none !important;
}
.product-card .product-card-top {
    border-radius: 6px !important;
    overflow: hidden !important;
    background: var(--color-bg-secondary, #f5f5f5) !important;
}
/* 竖版图片 4:5，cover 裁切 + 悬停放大 1.06（shecurve 标志性交互） */
.product-card .product-card-media,
.product-card .product-card-media.img-box {
    position: relative !important;
    aspect-ratio: 4 / 5 !important;
    overflow: hidden !important;
    border-radius: 6px !important;
}
.product-card .product-card-media .image,
.product-card .product-card-media a.image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
}
.product-card .product-card-media img,
.product-card .card-media-img,
.product-card .card-media-img2 {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    transition: transform .6s cubic-bezier(.25,.46,.45,.94) !important;
}
.product-card:hover .product-card-media img,
.product-card:hover .card-media-img {
    transform: scale(1.06) !important;
}
/* 空标签徽章容器默认隐藏（补全缺失的 .cbd-hiden1 规则；有标签时由 JS 移除该类显示）*/
.cbd-hiden, .cbd-hiden1 { display: none !important; }

/* 信息区：与上方图片留出呼吸距离 */
.product-card .product-card-bottom { padding: 16px 8px 0 !important; }
.product-card .product-card-information { padding: 0 !important; margin-top: 4px; }
/* 色板两边留间隙(行布局/间距由全局 product-card-swatch.css 的 ul.swatch 负责) */
.product-card .card-swatch { padding: 0 2px; margin-top: 8px; }
.product-card .card-title,
.product-card .card-title a {
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    color: var(--color-text, #111) !important;
    margin-bottom: 6px !important;
}
.product-card .card-title a:hover { color: var(--color-primary, #6A5ACD) !important; }
.product-card .card-price,
.product-card .price-item-price .money {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--color-text, #111) !important;
}
.product-card del .money,
.product-card .price-item--regular .money {
    color: var(--color-text-muted, #999) !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
}
/* Sale 角标：薰衣草紫 (token) */
.product-card .card__badge .badge,
.product-card .badge.sale-badge {
    background: var(--color-primary, #6A5ACD) !important;
    color: var(--color-text-on-primary, #fff) !important;
    border-radius: 4px !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
    padding: 4px 8px !important;
}
/* 色板圆点：ella 专属 40px(PC/平板) / 30px(手机)；圆形 label + 圆形 img +
   3px 内边距给 active 内嵌环(环画在内部，避免被行的 overflow 裁切)。 */
.product-card .card-swatch ul.swatch li.item,
.product-card .card-swatch ul.swatch li.item .swatch-label {
    width: 40px !important; height: 40px !important;
}
.product-card .card-swatch ul.swatch li.item .swatch-label {
    display: block;
    border-radius: 50% !important;
    padding: 3px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}
.product-card .card-swatch ul.swatch li.item .swatch-label img {
    width: 100%; height: 100%;
    object-fit: cover; display: block;
    border-radius: 50% !important;
}
.product-card .card-swatch ul.swatch li.item .swatch-label.is-active {
    box-shadow: inset 0 0 0 2px var(--color-primary, #6A5ACD) !important;
}
@media (max-width: 767px) {
    .product-card .card-swatch ul.swatch li.item,
    .product-card .card-swatch ul.swatch li.item .swatch-label {
        width: 30px !important; height: 30px !important;
    }
}
/* 评分星 */
.product-card .goods_review { font-size: 12px; color: var(--color-text-muted,#999); }

/* 加入购物车：悬停浮现（shecurve 极简） */
.product-card .card-action { padding: 10px 0 0 !important; }
.product-card .card-action .shop-btn {
    width: 100% !important;
    border-radius: 4px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    background: var(--color-btn-primary-bg, var(--color-primary, #111)) !important;
    color: var(--color-btn-primary-text, #fff) !important;
    border: 1px solid var(--color-btn-primary-bg, var(--color-primary, #111)) !important;
    opacity: 0 !important;
    transform: translateY(6px) !important;
    transition: opacity .25s ease, transform .25s ease !important;
}
.product-card:hover .card-action .shop-btn { opacity: 1 !important; transform: translateY(0) !important; }
@media (max-width: 767px) {
    .product-card .card-action .shop-btn { opacity: 1 !important; transform: none !important; }
}
/* ── 触摸设备(iOS/Android)：禁用卡片 hover 视觉变化 ───────────────────────────
   根因：iOS Safari「首次点击=激活 :hover，需点第二次才跳转」的粘滞 hover 行为。
   卡片 hover 会放大图片/浮现加购/露出第二图 → iPhone/iPad 首点被当作 hover 吞掉，不跳转(实测)。
   对策：在无 hover 能力的设备上，让 :hover 态视觉 == 静止态(零变化) → 首点即跳转。
   覆盖所有触摸宽度(含 iPad 810/1194，不能只用 max-width:767)。 */
@media (hover: none) {
    .product-card:hover .product-card-media img,
    .product-card:hover .card-media-img { transform: none !important; }
    .product-card .card-action .shop-btn { opacity: 1 !important; transform: none !important; }
    .product-card .product-card-media .card-media-img2,
    .product-card .product-card-media .card-media-video,
    .product-card .product-card-media.pc-previewing .card-media-img2,
    .product-card .product-card-media.pc-previewing .card-media-video { opacity: 0 !important; }
}
/* Show More 按钮 → 细线描边风格 (shecurve) */
.product-infinite-scroll { margin-top: 46px !important; }
.product-infinite-scroll .shop-btn {
    display: inline-block !important; width: auto !important; min-width: 180px !important;
    border: 1.5px solid var(--color-text, #111) !important; background: transparent !important;
    color: var(--color-text, #111) !important; border-radius: 4px !important;
    font-family: 'Poppins', sans-serif !important; font-size: 13px !important;
    font-weight: 600 !important; letter-spacing: .08em !important; text-transform: uppercase !important;
    padding: 12px 32px !important; opacity: 1 !important; transform: none !important;
    transition: background .2s ease, color .2s ease !important;
}
.product-infinite-scroll .shop-btn:hover {
    background: var(--color-text, #111) !important; color: var(--color-bg-primary, #fff) !important;
}

/* ── 分类圆角图块 (category section) ───────────────────────────────────── */
.halo-block-brand .img-box,
.halo-block-brand .wrapper-item .img-box {
    border-radius: 8px !important;
    overflow: hidden !important;
}
.halo-block-brand .img-box img { transition: transform .6s cubic-bezier(.25,.46,.45,.94) !important; }
.halo-block-brand .wrapper-item:hover .img-box img { transform: scale(1.06) !important; }
.halo-block-brand .content-box a {
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: capitalize !important;
    color: var(--color-text, #111) !important;
}

/* ── Banner (img section) 文字叠层 + 细描边按钮 ─────────────────────────── */
.halo-banner .banner-item .image,
.halo-banner .banner-item .img-box { border-radius: 8px !important; overflow: hidden; }
.halo-banner .banner-item:hover .image img { transform: scale(1.04) !important; }
.halo-banner .banner-item .halo-banner-title {
    font-family: 'Tenor Sans', sans-serif !important;
    font-size: clamp(1.6rem, 3vw, 2.6rem) !important;
    color: var(--zone-band-text, #fff) !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.3);
}

/* ── 满宽 (full-bleed) 大图：container:"full" → .container-full ──────────── */
.halo-banner .container-full,
.shop-section .container-full,
.container-full {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
/* 满宽大图：图片直角铺满、文字靠左压图（shecurve 生活方式大图） */
.halo-banner .container-full .banner-item .image,
.halo-banner .container-full .banner-item .img-box { border-radius: 0 !important; }
.halo-banner .container-full .banner-item .halo-banner-text {
    justify-content: flex-start !important;
    text-align: left !important;
    padding-left: clamp(24px, 6vw, 120px) !important;
}
.halo-banner .container-full .banner-item .halo-banner-text-inner { width: auto !important; max-width: 520px; }
.halo-banner .container-full .banner-item .halo-banner-title { font-size: clamp(2rem, 4vw, 3.4rem) !important; }
.halo-banner .container-full .banner-item .halo-banner-content { color: var(--zone-band-text, #fff) !important; }

/* ── banners 网格各用途图片比例 (shecurve) ─────────────────────────────── */
.sc-cat     { --img-adapt-ratio: 118%; }   /* 分类条：竖图 */
.sc-cat .gallery__grid     { grid-template-columns: repeat(3,1fr); }
@media (min-width:960px){ .sc-cat .gallery__grid { grid-template-columns: repeat(6,1fr); } }
.sc-promo   { --img-adapt-ratio: 72%; }    /* MOST POPULAR：横图 2 列 */
.sc-cat .sub-item a {
    font-family: 'Poppins', sans-serif !important;
    text-transform: capitalize;
    font-size: 14px !important;
    font-weight: 500 !important;
}
/* Most Popular: 直角图(非圆角) + 标题链接样式 */
.sc-promo .gallery__blocks .image-adapt { border-radius: 0 !important; }
.sc-promo .sub-item a {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-transform: capitalize;
    color: var(--color-text, #111) !important;
    border: 0 !important;
}
.sc-promo .sub-item a:hover { color: var(--color-primary, #6A5ACD) !important; }

/* ── EXPLORE：文字压图的 overlay 横卡 + 不等宽马赛克 (shecurve 相册墙) ───── */
.sc-explore .gallery__grid { grid-template-columns: repeat(1,1fr); gap: 16px; }
/* 桌面：5 列网格，卡片跨列形成 40/60 · 60/40 不等宽马赛克 */
@media (min-width:768px){
    .sc-explore .gallery__grid { grid-template-columns: repeat(5,1fr); }
    .sc-explore .gallery__blocks:nth-child(1) { grid-column: span 2; }
    .sc-explore .gallery__blocks:nth-child(2) { grid-column: span 3; }
    .sc-explore .gallery__blocks:nth-child(3) { grid-column: span 3; }
    .sc-explore .gallery__blocks:nth-child(4) { grid-column: span 2; }
}
/* 固定行高 + 图片 100% 铺满：避免不等宽马赛克因 padding-top 比例导致窄卡留白 */
.sc-explore .gallery__blocks {
    position: relative; border-radius: 10px; overflow: hidden;
    height: clamp(210px, 23vw, 360px);
}
.sc-explore .gallery__blocks .image-adapt {
    position: absolute !important; inset: 0 !important;
    width: 100% !important; height: 100% !important;
    padding-top: 0 !important;             /* 取消比例撑高，改为铺满卡片 */
    border-radius: 10px;
}
.sc-explore .gallery__blocks .gallery__image {
    position: absolute !important; inset: 0 !important;
    width: 100% !important; height: 100% !important;
    object-fit: cover !important;
    transition: transform .6s cubic-bezier(.25,.46,.45,.94);
}
@media (max-width: 767px) {
    .sc-explore .gallery__blocks { height: clamp(150px, 42vw, 220px); }
}
.sc-explore .gallery__blocks:hover .gallery__image { transform: scale(1.06); }
/* 标题压在图上（左下），渐变遮罩保证可读 */
.sc-explore .gallery__blocks .sub-item {
    position: absolute; left: 0; right: 0; bottom: 0; margin: 0 !important;
    text-align: left !important; padding: 22px 24px;
    background: linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,0));
    z-index: 2;
}
.sc-explore .gallery__blocks .sub-item a { border: 0 !important; color: inherit !important; text-decoration: none !important; }
.sc-explore .gallery__blocks .sub-item .text {
    font-family: 'Tenor Sans', sans-serif !important;
    color: #fff !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em;
    line-height: 1.25;
}

/* ── Gallery / img-links ──────────────────────────────────────────────── */
.section-gallery .gallery__title {
    font-family: 'Tenor Sans', sans-serif !important;
    text-transform: capitalize;
    letter-spacing: 0;
    font-size: 24px;
    text-align: center;
}
.section-gallery .gallery__blocks .image-adapt { border-radius: 8px !important; }
.section-gallery .gallery__blocks:hover .gallery__image { transform: scale(1.06); }
.section-gallery .gallery__image { transition: transform .6s cubic-bezier(.25,.46,.45,.94) !important; }

/* ── 通用按钮 (shecurve: 细长 / 大写 / 字间距) ─────────────────────────── */
.shop-btn,
.banner-button.button {
    font-family: 'Poppins', sans-serif;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 600;
    border-radius: 4px;
}

/* ── P5 视频 reel (Shop The Looks)：竖视频卡，居中放大自动播 ─────────────── */
.section-video-reel .vr-wrap { position: relative; }
.section-video-reel .halo-block-header { margin-bottom: 16px; }   /* 收紧标题到卡片的空隙 */
.section-video-reel .vr-swiper { overflow: hidden; padding: 6px 0 16px; user-select: none; -webkit-user-select: none; }
/* 只缩放卡片(不缩放整 slide，避免标题行错位)；origin 底部，向上生长不顶出空隙 */
.section-video-reel .vr-slide { transition: opacity .4s ease; opacity: .72; }
.section-video-reel .vr-slide.swiper-slide-active { opacity: 1; z-index: 2; }
.section-video-reel .vr-card {
    position: relative;
    width: 100%;
    aspect-ratio: 9 / 16;
    border-radius: 12px;
    overflow: hidden;
    background: #000;
    transform: translateZ(0);              /* 独立层，scale 时圆角裁切不失效 */
    will-change: transform;
    isolation: isolate;
    transition: transform .4s ease;
    transform-origin: center bottom;
}
.section-video-reel .vr-slide.swiper-slide-active .vr-card { transform: translateZ(0) scale(1.05); }
/* aspect-ratio 回退(老浏览器)：用 padding-top 撑高 */
@supports not (aspect-ratio: 1/1) {
    .section-video-reel .vr-card { height: 0; padding-top: 177.7%; }
}
.section-video-reel .vr-video {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover; display: block;
    border-radius: 12px;                   /* video 自带圆角，双保险 */
}
/* 标题 + 购物袋图标一行 (shecurve video-slider-content) */
.section-video-reel .vr-info {
    display: flex; align-items: center; justify-content: space-between;
    gap: 8px; margin-top: 10px; padding: 0 4px;
}
.section-video-reel .vr-title {
    font-family: 'Poppins', sans-serif;
    font-size: 13px; line-height: 1.4;
    color: var(--color-text, #111); text-decoration: none;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    flex: 1 1 auto; min-width: 0;
}
.section-video-reel .vr-title:hover { color: var(--color-primary, #6A5ACD); }
.section-video-reel .vr-buy {
    flex: 0 0 auto;
    width: 34px; height: 34px; border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--color-primary, #6A5ACD); color: #fff;
    transition: opacity .2s ease;
}
.section-video-reel .vr-buy:hover { opacity: .85; }
/* 控制按钮：播放/暂停 + 静音，仅居中卡显示 */
.section-video-reel .vr-play, .section-video-reel .vr-mute {
    position: absolute; bottom: 10px;
    width: 34px; height: 34px; border: 0; border-radius: 50%;
    background: rgba(0,0,0,.45); cursor: pointer; padding: 0;
    opacity: 0; transition: opacity .25s ease;
    background-repeat: no-repeat; background-position: center; background-size: 14px;
}
.section-video-reel .vr-slide.swiper-slide-active .vr-play,
.section-video-reel .vr-slide.swiper-slide-active .vr-mute { opacity: 1; }
.section-video-reel .vr-play { right: 10px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E"); }
.section-video-reel .vr-slide.vr-playing .vr-play {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M6 5h4v14H6zM14 5h4v14h-4z'/%3E%3C/svg%3E"); }
.section-video-reel .vr-mute { left: 10px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M3 9v6h4l5 5V4L7 9H3z'/%3E%3C/svg%3E"); }
.section-video-reel .vr-mute.vr-muted {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M3 9v6h4l5 5V4L7 9H3zm13.5 3l2.5-2.5-1-1L15.5 11l-2.5-2.5-1 1L14.5 12 12 14.5l1 1 2.5-2.5 2.5 2.5 1-1z'/%3E%3C/svg%3E"); }
.section-video-reel .swiper-button-prev, .section-video-reel .swiper-button-next {
    color: var(--color-text, #111);
}
@media (max-width: 767px) {
    .section-video-reel .vr-slide.swiper-slide-active { transform: scale(1.02); }
}

/* ── 信任条 (footer 上方 advantages bar) 浅灰底 ────────────────────────── */
.footer_above_container-outer {
    background: var(--zone-trust-bg, var(--color-bg-secondary, #f0f0f0)) !important;
    padding: 40px 0;
}
.footer_above_container {
    max-width: 1800px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}
.footer_above_container li {
    flex: 1 1 200px;
    text-align: center;
    max-width: 320px;
}
.footer_above_container li img {
    height: 56px; width: auto; object-fit: contain;
    margin: 0 auto 14px;
    /* 线条紫色图标观感：薰衣草紫 token 染色 */
    filter: none;
}
.footer_above_container .footer_above_text {
    display: block;
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--zone-trust-text, var(--color-text, #111));
}

/* ── Hero 轮播 (第一个 section)：文字块靠左 + shecurve 风格 (取代统一居中) ──── */
/* 左侧暗角，提升浅色/花哨大图上的文字可读性 */
.slick-slider .banner-item .img-box::after {
    content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
    background: linear-gradient(90deg, rgba(0,0,0,.42) 0%, rgba(0,0,0,.12) 38%, transparent 60%);
}
.slick-slider .content-box.content-box--absolute,
.slick-slider .content-box {
    left: 0 !important; right: 0 !important; top: 50% !important; bottom: auto !important;
    transform: translateY(-50%) !important;
    text-align: left !important;
    width: 100% !important; max-width: 1800px !important;
    margin: 0 auto !important;
    padding: 0 clamp(20px, 6vw, 110px) !important;
    z-index: 2;
}
.slick-slider .content-box > * { margin-left: 0 !important; margin-right: auto !important; max-width: 560px; text-align: left !important; }
/* 紫色眉题 (shecurve "The Easyslide™ Shapewear" 同款) */
.slick-slider .banner-eyebrow {
    font-family: 'Tenor Sans', sans-serif;
    font-size: clamp(1rem, 1.5vw, 1.4rem);
    color: var(--color-primary, #6A5ACD);
    letter-spacing: .02em;
    margin: 0 0 6px;
    text-shadow: 0 1px 8px rgba(0,0,0,.25);
}
/* 大标题：同时作用于 h3 和内层 span（内层 span 会覆盖 h3 字号）*/
.slick-slider .banner-title,
.slick-slider .banner-title span {
    font-family: 'Tenor Sans', sans-serif !important;
    font-size: clamp(2.4rem, 5vw, 4.2rem) !important;
    font-weight: 400 !important;
    text-transform: none !important;
    line-height: 1.08 !important;
    letter-spacing: .01em !important;
    color: #fff !important;
}
.slick-slider .banner-title {
    text-shadow: 0 2px 16px rgba(0,0,0,.42);
    margin: 0 0 18px !important;
}
.slick-slider .banner-title .line { display: none !important; }   /* 去掉装饰短线 */
.slick-slider .banner-text,
.slick-slider .banner-text.desc {
    font-family: 'Poppins', sans-serif !important;
    font-size: clamp(1rem, 1.6vw, 1.35rem) !important;
    font-weight: 400 !important;
    color: #fff !important;
    text-shadow: 0 1px 12px rgba(0,0,0,.42);
    margin: 0 0 28px !important;
    line-height: 1.5 !important;
}
.slick-slider .banner-button.button {
    display: inline-flex !important; align-items: center; justify-content: center;
    background: var(--color-btn-primary-bg, var(--color-primary, #6A5ACD)) !important;
    color: var(--color-btn-primary-text, #fff) !important;
    border: 0 !important; height: auto !important; min-width: 0 !important;
    padding: 16px 44px !important; border-radius: 4px !important;
    font-family: 'Poppins', sans-serif !important; font-weight: 600 !important;
    font-size: 15px !important;
    letter-spacing: .08em !important; text-transform: uppercase !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.2);
}
.slick-slider .banner-button.button .text { font-size: 15px !important; letter-spacing: .08em !important; }
.slick-slider .banner-button.button:hover { opacity: .9; }
@media (max-width: 767px) {
    .slick-slider .content-box { padding: 0 18px !important; }
    .slick-slider .content-box > * { max-width: 90% !important; }
    .slick-slider .banner-title, .slick-slider .banner-title span { font-size: clamp(1.8rem, 7vw, 2.4rem) !important; }
}

/* ── 公告条 / 细节微调 ────────────────────────────────────────────────── */
.announcement-bar { font-family: 'Poppins', sans-serif; letter-spacing: .03em; }

/* ── 修复：ella 首页产品规则不得侵入「最近浏览」小部件(它有独立轮播/网格) ──────
   recently-viewed 容器：.recently-viewed-products / -wrap / -list / .recently-viewed-product。
   复位被 ella 改动的关键属性，交还小部件自身的 slick/grid 布局。 */
.recently-viewed-products .product-card .product-card-media,
.recently-viewed-wrap .product-card .product-card-media,
.recently-viewed-list .product-card .product-card-media,
.recently-viewed-product .product-card .product-card-media {
    aspect-ratio: auto !important;
    border-radius: 0 !important;
}
.recently-viewed-products .product-item,
.recently-viewed-wrap .product-item,
.recently-viewed-list .product-item,
.recently-viewed-product .product-item {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    scroll-snap-align: none !important;
}
.recently-viewed-products .product-card .card-action .shop-btn,
.recently-viewed-wrap .product-card .card-action .shop-btn,
.recently-viewed-list .product-card .card-action .shop-btn {
    opacity: 1 !important;
    transform: none !important;
}
