:root{--bg:#F6F6F6;--ink:#0B0F14;--navy:#405174;--sand:#E7DDBB;--mist:#E7EBEC;--white:#fff; --mut:#5A6069;--line:rgba(11,15,20,.14);--maxw:1320px;--pad:24px; --f:"Helvetica Neue",Helvetica,Inter,"Segoe UI",Arial,sans-serif} *,*::before,*::after{box-sizing:border-box} body.jw-body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased} body.jw-body p,body.jw-body li{color:var(--ink)} body.jw-body img{max-width:100%;display:block} body.jw-body a{color:inherit} /* ===== 页眉 ===== */ .jw-hdr{position:sticky;top:0;z-index:90;background:rgba(246,246,246,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)} .jw-hdr-in{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);height:64px;display:flex;align-items:center;gap:32px} .jw-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)} .jw-brand .site-title{font-size:19px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap} .jw-brand .site-title em{font-style:normal;color:var(--navy)} .jw-nav{display:flex;gap:26px;margin:0 auto} .jw-nav a{font-size:12px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--ink);padding:6px 0;border-bottom:1px solid transparent;transition:border-color .18s,color .18s} .jw-nav a:hover{border-bottom-color:var(--ink)} .jw-nav a.is-live{border-bottom-color:var(--navy);color:var(--navy)} .jw-acts{display:flex;gap:18px;align-items:center;flex:0 0 auto} .jw-acts a{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center} .jw-acts svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.5} .jw-burger{display:none;background:none;border:0;padding:0;flex:0 0 auto;cursor:pointer} .jw-burger svg{width:22px;height:22px;stroke:var(--ink);stroke-width:1.6;fill:none} .jw-mnav{display:none;background:var(--white);border-bottom:1px solid var(--line);padding:8px var(--pad) 16px} .jw-mnav a{display:block;padding:11px 0;font-size:13px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:1px solid rgba(11,15,20,.06)} .jw-mnav.open{display:block} /* ===== 通用段 ===== */ .jw-sec{padding:64px 0} .jw-sec.lg{padding:96px 0} .jw-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)} .jw-kicker{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--navy);margin:0 0 12px;font-weight:600} .jw-h2{font-size:36px;line-height:1.15;font-weight:600;letter-spacing:-.01em;margin:0 0 16px} .jw-h3{font-size:22px;line-height:1.3;font-weight:600;margin:0 0 10px} .jw-lead{font-size:18px;line-height:1.6;color:var(--mut);max-width:640px;margin:0 0 8px} .jw-c{text-align:center}.jw-c .jw-lead{margin-left:auto;margin-right:auto} /* 按钮（默认蓝禁用 · 全主题化） */ .jw-btn{display:inline-block;padding:14px 30px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border:1px solid var(--ink);color:var(--ink);background:transparent;cursor:pointer;transition:background .18s,color .18s,border-color .18s;font-family:var(--f)} .jw-btn:hover{background:var(--ink);color:#fff} .jw-btn.solid{background:var(--ink);color:#fff} .jw-btn.solid:hover{background:var(--navy);border-color:var(--navy)} .jw-btn.navy{background:var(--navy);border-color:var(--navy);color:#fff} .jw-btn.navy:hover{background:#2E3D59;border-color:#2E3D59} .jw-tlink{display:inline-block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px;transition:color .18s,border-color .18s} .jw-tlink:hover{color:var(--navy);border-bottom-color:var(--navy)} /* ===== hero ===== */ .jw-hero{position:relative;min-height:86vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--mist)} .jw-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover} .jw-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,15,20,0) 42%,rgba(11,15,20,.62) 100%)} .jw-hero-in{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;padding:0 var(--pad) 72px;width:100%} .jw-hero .jw-kicker{color:var(--sand)} .jw-hero h1{font-size:64px;line-height:1.04;font-weight:600;letter-spacing:-.015em;color:#fff;margin:0 0 14px;max-width:760px} .jw-hero p{font-size:18px;color:rgba(255,255,255,.86);max-width:520px;margin:0 0 26px} /* ===== 品类双卡 ===== */ .jw-duo{display:grid;grid-template-columns:1fr 1fr;gap:16px} .jw-duo a{position:relative;display:block;overflow:hidden;text-decoration:none;aspect-ratio:4/5;background:var(--mist)} .jw-duo img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,.61,.36,1)} .jw-duo a:hover img{transform:scale(1.045)} .jw-duo span{position:absolute;left:24px;bottom:22px;z-index:2;color:#fff;font-size:13px;letter-spacing:.2em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.7);padding-bottom:4px} .jw-duo a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,15,20,0) 55%,rgba(11,15,20,.5));z-index:1} /* ===== 产品网格/卡 ===== */ .jw-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px} .jw-grid.three{grid-template-columns:repeat(3,1fr)} .jw-card{display:block;text-decoration:none;color:inherit} .jw-card .ph{aspect-ratio:3/4;overflow:hidden;background:var(--mist);margin:0 0 12px;position:relative} .jw-card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,.61,.36,1),opacity .3s} .jw-card .ph img.alt{position:absolute;inset:0;opacity:0} .jw-card:hover .ph img.alt{opacity:1} .jw-card:hover .ph img:not(.alt){opacity:0} .jw-card .nm{font-size:14px;font-weight:600;margin:0 0 3px;line-height:1.4} .jw-card .mt{font-size:12px;color:var(--mut);margin:0 0 5px} .jw-card .pr{font-size:14px;color:var(--ink)} .jw-badge{position:absolute;top:10px;left:10px;z-index:2;background:var(--navy);color:#fff;font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:5px 9px} .jw-badge.sand{background:var(--sand);color:var(--ink)} /* ===== 编辑段（黑/沙金底） ===== */ .jw-band{background:var(--ink);color:#F4F5F6;padding:96px 0} .jw-band.sand{background:var(--sand);color:var(--ink)} .jw-band .jw-kicker{color:var(--sand)} .jw-band.sand .jw-kicker{color:#8A6D3B} .jw-band .jw-h2{color:inherit} .jw-band p{color:rgba(244,245,246,.82)} .jw-band.sand p{color:rgba(11,15,20,.78)} .jw-split{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center} .jw-split img{width:100%;aspect-ratio:4/3;object-fit:cover} /* ===== 编辑网格（B1 §8 同构） ===== */ .jw-edgrid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,minmax(220px,auto));gap:16px} .jw-edgrid a{position:relative;overflow:hidden;display:block;background:var(--mist);text-decoration:none} .jw-edgrid a:first-child{grid-row:span 2} .jw-edgrid img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .6s cubic-bezier(.22,.61,.36,1)} .jw-edgrid a:hover img{transform:scale(1.045)} .jw-edgrid b{position:absolute;left:18px;bottom:16px;z-index:2;color:#fff;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600} .jw-edgrid a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,15,20,0) 55%,rgba(11,15,20,.48));z-index:1} /* ===== 轮播（scroll-snap 原生） ===== */ .jw-rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:none} .jw-rail::-webkit-scrollbar{display:none} .jw-rail>*{scroll-snap-align:start} /* ===== USP 条 ===== */ .jw-usp{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white)} .jw-usp-in{max-width:var(--maxw);margin:0 auto;padding:18px var(--pad);display:grid;grid-template-columns:repeat(4,1fr);gap:16px} .jw-usp div{font-size:12px;letter-spacing:.06em;color:var(--mut);display:flex;gap:9px;align-items:center} .jw-usp svg{width:17px;height:17px;stroke:var(--navy);fill:none;stroke-width:1.5;flex:0 0 auto} /* ===== FAQ ===== */ .jw-faq{border-top:1px solid var(--line)} .jw-faq details{border-bottom:1px solid var(--line)} .jw-faq summary{cursor:pointer;padding:18px 44px 18px 0;font-size:15px;font-weight:600;position:relative;list-style:none} .jw-faq summary::-webkit-details-marker{display:none} .jw-faq summary::after{content:"+";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:20px;font-weight:400;color:var(--navy);transition:transform .2s} .jw-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)} .jw-faq .a{padding:0 0 20px;color:var(--mut);max-width:760px} .jw-faq .a p{margin:0 0 10px} /* ===== PDP ===== */ .jw-pdp{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:start} .jw-pdp-media{display:grid;grid-template-columns:1fr;gap:12px} .jw-pdp-media img{width:100%;aspect-ratio:3/4;object-fit:cover;background:var(--mist)} .jw-pdp-info{position:sticky;top:88px} .jw-pdp-info h1{font-size:28px;line-height:1.2;font-weight:600;margin:0 0 8px} .jw-pdp-info .pr{font-size:20px;margin:0 0 6px} .jw-pdp-info .tax{font-size:12px;color:var(--mut);margin:0 0 22px} .jw-opt{margin:0 0 18px} .jw-opt .lb{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin:0 0 8px} .jw-sw{display:flex;gap:8px;flex-wrap:wrap} .jw-sw button{min-width:46px;padding:10px 12px;border:1px solid var(--line);background:var(--white);font-family:var(--f);font-size:13px;cursor:pointer;transition:border-color .15s,background .15s} .jw-sw button:hover{border-color:var(--ink)} .jw-sw button.on{border-color:var(--ink);background:var(--ink);color:#fff} .jw-buy{display:flex;gap:10px;margin:22px 0 14px} .jw-buy .jw-btn{flex:1;text-align:center;padding:16px 10px} .jw-spec{border-top:1px solid var(--line);margin-top:26px} .jw-spec details{border-bottom:1px solid var(--line)} .jw-spec summary{cursor:pointer;padding:14px 0;font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;list-style:none;position:relative} .jw-spec summary::-webkit-details-marker{display:none} .jw-spec summary::after{content:"+";position:absolute;right:2px;color:var(--navy);font-size:17px} .jw-spec details[open] summary::after{content:"\2212"} .jw-spec .a{padding:0 0 16px;color:var(--mut);font-size:14px} .jw-spec .a ul{margin:0;padding-left:18px} .jw-spec .a li{margin-bottom:6px} /* Woo 壳适配 */ .woocommerce-message,.woocommerce-info{border-top-color:var(--navy)!important;background:var(--white)!important;color:var(--ink)!important;font-family:var(--f)} .woocommerce button.button,.woocommerce a.button,.woocommerce input.button,body.woocommerce-page button.button{background:var(--ink)!important;color:#fff!important;border-radius:0!important;font-family:var(--f)!important;text-transform:uppercase;letter-spacing:.14em;font-size:12px!important;padding:14px 26px!important} .woocommerce button.button:hover,.woocommerce a.button:hover{background:var(--navy)!important} .woocommerce .quantity input[type=number]{padding:10px;border:1px solid var(--line)} /* ===== 内容页/长文 ===== */ .jw-art{max-width:760px;margin:0 auto} .jw-art h2{font-size:28px;font-weight:600;margin:40px 0 12px} .jw-art h3{font-size:19px;font-weight:600;margin:28px 0 8px} .jw-art p{margin:0 0 14px;color:#23282E} .jw-art ul,.jw-art ol{margin:0 0 14px;padding-left:22px;color:#23282E} .jw-art li{margin-bottom:7px} .jw-art table{width:100%;border-collapse:collapse;margin:18px 0;font-size:13px} .jw-art th,.jw-art td{border:1px solid var(--line);padding:9px 12px;text-align:left} .jw-art th{background:var(--mist);font-weight:600} .jw-tblwrap{overflow-x:auto} .jw-tblwrap table{min-width:560px} .jw-note{background:var(--mist);border-left:3px solid var(--navy);padding:14px 18px;margin:18px 0;font-size:14px} /* ===== 页脚 ===== */ .jw-ftr{background:var(--ink);color:#C9CDD2;margin-top:96px} .jw-ftr-in{max-width:var(--maxw);margin:0 auto;padding:56px var(--pad) 0} .jw-ftr-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:44px} .jw-ftr .fb{font-size:20px;font-weight:600;letter-spacing:.2em;color:#fff;margin:0 0 12px} .jw-ftr p{font-size:13px;line-height:1.7;color:#A7ADB5;max-width:300px} .jw-ftr h4{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8A9099;margin:0 0 14px;font-weight:600} .jw-ftr ul{list-style:none;margin:0;padding:0} .jw-ftr li{margin-bottom:9px} .jw-ftr a{color:#C9CDD2;text-decoration:none;font-size:13px;transition:color .15s} .jw-ftr a:hover{color:#fff} .jw-ftr-bot{border-top:1px solid rgba(255,255,255,.12);padding:18px 0 22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:#8A9099} .jw-pay{display:flex;gap:6px;align-items:center;flex-wrap:wrap} .jw-paychip{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#1A1F36;font-size:10px;font-weight:700;letter-spacing:.04em;height:22px;min-width:38px;padding:0 7px;border-radius:3px;font-family:Arial,sans-serif;text-transform:none} .jw-paychip:nth-child(4){font-style:italic;font-weight:800} .jw-paychip:nth-child(5){text-transform:lowercase;font-weight:800} /* ===== Cookie 条（源层 · ck-bar 约定类） ===== */ .ck-bar{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;background:var(--ink);color:#DDE1E5;padding:20px 22px;display:none;gap:18px;align-items:center;justify-content:space-between;max-width:560px;margin:0 auto;box-shadow:0 8px 32px rgba(11,15,20,.35)} .ck-bar.show{display:flex} .ck-bar p{margin:0;font-size:13px;line-height:1.55} .ck-bar a{color:var(--sand)} .ck-acts{display:flex;gap:8px;flex:0 0 auto} .ck-acts button{font-family:var(--f);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:10px 16px;cursor:pointer;border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff} .ck-acts button.ok{background:#fff;color:var(--ink);border-color:#fff} .ck-acts button:hover{border-color:#fff} /* ===== Astra 壳适配 ===== */ .entry-header{display:none!important} .entry-content>.jw-hero:first-child{margin-top:-64px} .jw-contact input:focus,.jw-contact textarea:focus{outline:2px solid var(--navy);outline-offset:-1px} .woocommerce ul.products li.product{background:transparent;border:0} .woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--f);font-size:14px!important;font-weight:600} .woocommerce ul.products li.product .price{font-family:var(--f);color:var(--ink)!important} .woocommerce span.onsale{background:var(--navy)!important;border-radius:0} body.woocommerce-page .site-main,.woocommerce .site-main{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)} .woocommerce-message .button,.woocommerce-info .button{float:none!important} /* ===== Astra 变量覆盖（防出厂色渗漏） ===== */ body.jw-body .ast-button,body.jw-body .button,body.jw-body button[type=submit]{background:var(--ink);color:#fff;border-radius:0;font-family:var(--f)} :root{--ast-global-color-0:#405174;--ast-global-color-1:#0B0F14;--ast-global-color-2:#0B0F14;--ast-global-color-3:#5A6069;--ast-global-color-4:#F6F6F6;--ast-global-color-5:#FFFFFF;--ast-global-color-6:#E7EBEC;--ast-global-color-7:#E7DDBB;--ast-global-color-8:#000000} /* ===== 滚动淡入 ===== */ .jw-rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1)} .jw-rv.in{opacity:1;transform:none} /* ===== 响应式 ===== */ @media(max-width:1024px){ .jw-grid{grid-template-columns:repeat(3,1fr)} .jw-rail{grid-auto-columns:calc((100% - 32px)/3)} .jw-edgrid{grid-template-columns:1fr 1fr} .jw-edgrid a:first-child{grid-column:span 2;grid-row:auto} .jw-ftr-grid{grid-template-columns:1fr 1fr} } @media(max-width:768px){ .jw-nav{display:none} .jw-burger{display:inline-flex;margin-left:auto} .jw-acts{gap:14px} .jw-hero{min-height:72vh} .jw-hero h1{font-size:40px} .jw-sec.lg{padding:64px 0} .jw-split{grid-template-columns:1fr;gap:28px} .jw-pdp{grid-template-columns:1fr;gap:28px} .jw-pdp-info{position:static} .jw-usp-in{grid-template-columns:1fr 1fr;gap:10px} } @media(max-width:640px){ .jw-grid,.jw-grid.three{grid-template-columns:1fr 1fr;gap:12px} .jw-duo{grid-template-columns:1fr} .jw-rail{grid-auto-columns:calc((100% - 16px)/1.6)} .jw-h2{font-size:28px} .jw-hdr-in{gap:16px} .jw-brand .site-title{font-size:16px;letter-spacing:.18em} .jw-ftr-grid{grid-template-columns:1fr;gap:28px} .ck-bar{flex-direction:column;align-items:stretch} .ck-acts{justify-content:flex-end} } /* ===== Phase3 质感修复（七查①②③⑦）===== */ /* Astra 壳 header/footer 残留摘除（legacy nav fallback 列全站页+商品 561px · below-footer 版权条 101px） */ #masthead.site-header{display:none!important} .site-below-footer-wrap{display:none!important} /* 破柱：内容页 Astra 柱全开，宽度交回 jw 容器（各页自包含已验证） */ .jw-fullbleed .ast-container{max-width:100%!important} .jw-fullbleed main.site-main,.jw-fullbleed article,.jw-fullbleed .entry-content{max-width:100%} .jw-fullbleed .entry-content>p,.jw-fullbleed .entry-content>ul,.jw-fullbleed .entry-content>ol{max-width:630px;margin-left:auto;margin-right:auto} /* 行长收敛（判据 ≤75 字符/行 · 实测 18px≈8.4px/字符→630px · 15px≈6.75px/字符→495px） */ /* 顺序敏感：窄值规则放后（同特异性按序覆盖）；footer p 已有 300px 限宽不重复声明 */ .jw-wrap>p{max-width:630px} .jw-hero p{max-width:630px} .jw-band p{max-width:495px} .jw-duo p,.jw-split p{max-width:495px} /* H1 行高 1.04→1.08（字阶判据 1.05-1.75） */ .jw-hero h1{line-height:1.08} /* hero 中段副题对比（p 位于遮罩最浅区，白字压浅建筑背景） */ .jw-hero::after{background:linear-gradient(180deg,rgba(11,15,20,.32) 0%,rgba(11,15,20,.16) 30%,rgba(11,15,20,.28) 45%,rgba(11,15,20,.66) 100%)} body.jw-body .jw-hero-in p,body.jw-body .jw-hero .jw-kicker{color:#fff;text-shadow:0 1px 3px rgba(11,15,20,.55),0 0 22px rgba(11,15,20,.35)} .jw-hero h1{text-shadow:0 2px 18px rgba(11,15,20,.4)}