:root { --ink:#090909; --paper:#f8f8f6; --gold:#b89b6a; --line:rgba(9,9,9,.16); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
h1,h2,h3,p { margin-top:0; }
h1,h2 { font-family:inherit; font-weight:300; letter-spacing:-.04em; }
h1 em,h2 em { color:var(--gold); font-style:normal; font-weight:300; }
.nav-shell { height:92px; padding:0 4.5vw; display:flex; align-items:center; justify-content:space-between; position:absolute; z-index:20; inset:0 0 auto; color:#fff; border-bottom:1px solid rgba(255,255,255,.18); }
.wordmark { display:flex; flex-direction:column; width:max-content; }
.wordmark span { font-family:inherit; font-weight:500; font-size:21px; letter-spacing:.19em; }
.wordmark small { font-size:7px; letter-spacing:.29em; margin-top:5px; color:var(--gold); }
nav { display:flex; align-items:center; gap:2.3vw; text-transform:uppercase; font-size:10px; letter-spacing:.16em; }
nav>a { transition:color .25s; }
nav>a:not(.nav-cta):hover { color:var(--gold); }
.nav-products { position:relative; }
.nav-products>a { display:block; padding:36px 0; transition:color .25s; }
.nav-products:hover>a { color:var(--gold); }
.nav-submenu { position:absolute; top:78px; left:-25px; width:255px; padding:12px 0; background:rgba(10,10,9,.96); border-top:1px solid var(--gold); box-shadow:0 18px 35px rgba(0,0,0,.22); opacity:0; visibility:hidden; transform:translateY(10px); transition:.25s; }
.nav-products:hover .nav-submenu,.nav-products:focus-within .nav-submenu { opacity:1; visibility:visible; transform:translateY(0); }
.nav-submenu a { display:block; padding:12px 24px; color:rgba(255,255,255,.68); font-size:8px; letter-spacing:.13em; transition:.2s; }
.nav-submenu a:hover { color:var(--gold); padding-left:29px; }
.nav-cta { padding:16px 20px; border:1px solid rgba(255,255,255,.42); }
.nav-cta span,.button span { margin-left:18px; }
.menu-button { display:none; }
.hero { min-height:100svh; position:relative; background:#090909 url('../images/paifeilai-door-zoom-v2.png') center/cover no-repeat; color:#fff; display:flex; align-items:center; overflow:hidden; }
.hero-product-film,.hero-film-shot { position:absolute; inset:0; z-index:0; }
.hero-product-film { overflow:hidden; background:#090909; }
.hero-film-shot { display:block; background-repeat:no-repeat; background-size:cover; will-change:transform,opacity; }
.hero-film-wide { background-image:url('../images/paifeilai-door-zoom-v2.png'); background-position:center; animation:doorWideShot 16s ease-in-out infinite; }
.hero-film-detail { background-image:url('../images/paifeilai-door-detail.png'); background-position:64% center; opacity:0; animation:doorDetailShot 16s ease-in-out infinite; }
.hero-film-hardware { background-image:url('../images/paifeilai-door-detail.png'); background-position:76% 58%; opacity:0; animation:doorHardwareShot 16s ease-in-out infinite; }
.hero-film-smart { background-image:url('../images/paifeilai-smart-lock-banner.png'); background-position:center; opacity:0; animation:doorSmartShot 16s ease-in-out infinite; }
.hero-shade { position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(8,10,11,.88) 0%,rgba(8,10,11,.5) 43%,rgba(8,10,11,.08) 78%),linear-gradient(0deg,rgba(0,0,0,.38),transparent 40%); }
.hero-content { position:relative; margin:85px 0 0 9.5vw; width:640px; z-index:4; animation:bannerIn .85s cubic-bezier(.2,.7,.2,1) both; }
.eyebrow { text-transform:uppercase; letter-spacing:.22em; font-size:10px; display:flex; align-items:center; gap:14px; margin-bottom:32px; }
.eyebrow>span { width:35px; height:1px; background:var(--gold); display:block; }
.hero h1 { font-size:clamp(58px,7.5vw,112px); line-height:.88; margin-bottom:31px; }
.hero p { max-width:515px; font-size:14px; line-height:1.85; color:rgba(255,255,255,.7); }
.hero-actions { display:flex; align-items:center; gap:38px; margin-top:42px; }
.button { display:inline-flex; align-items:center; justify-content:space-between; text-transform:uppercase; font-size:10px; letter-spacing:.18em; padding:19px 23px; min-width:210px; transition:.25s; }
.gold { background:var(--gold); color:#111; }
.gold:hover { background:#d2b984; }
.text-link { font-size:10px; letter-spacing:.18em; text-transform:uppercase; padding:14px 0; border-bottom:1px solid rgba(255,255,255,.45); }
.text-link span { margin-left:28px; color:var(--gold); }
.smart-feature-panel { position:absolute; z-index:5; right:4.5vw; bottom:40px; width:360px; padding:20px 22px; border:1px solid rgba(255,255,255,.2); border-left:2px solid var(--gold); background:rgba(8,8,7,.78); backdrop-filter:blur(10px); opacity:0; transform:translateY(22px); animation:smartPanelReveal 16s ease-in-out infinite; }
.smart-feature-panel>small { display:block; color:var(--gold); font-size:7px; letter-spacing:.2em; margin-bottom:8px; }
.smart-feature-panel>strong { display:block; font-size:22px; font-weight:300; margin-bottom:16px; }
.smart-feature-panel ul { display:grid; grid-template-columns:1fr 1fr; gap:1px; padding:0; margin:0; list-style:none; background:rgba(255,255,255,.12); }
.smart-feature-panel li { min-height:42px; display:flex; align-items:center; gap:9px; padding:9px 10px; background:rgba(10,10,9,.92); font-size:8px; letter-spacing:.08em; }
.smart-feature-panel li i { color:var(--gold); font-size:7px; font-style:normal; }
.smart-feature-panel li span { animation:smartFeatureGlow 2.4s ease-in-out infinite; }
.smart-feature-panel li:nth-child(2) span { animation-delay:.3s; }
.smart-feature-panel li:nth-child(3) span { animation-delay:.6s; }
.smart-feature-panel li:nth-child(4) span { animation-delay:.9s; }
.scroll-cue { position:absolute; z-index:2; bottom:38px; left:4.5vw; writing-mode:vertical-rl; transform:rotate(180deg); font-size:8px; letter-spacing:.2em; display:flex; align-items:center; gap:14px; }
.scroll-cue i { display:block; width:1px; height:42px; background:var(--gold); }
@keyframes bannerIn { from { opacity:0; transform:translateY(32px); } to { opacity:1; transform:translateY(0); } }
@keyframes doorWideShot {
  0% { opacity:1; transform:scale(1.01) translate3d(0,0,0); }
  21% { opacity:1; transform:scale(1.1) translate3d(-2%,0,0); }
  29%,92% { opacity:0; transform:scale(1.14) translate3d(-3%,0,0); }
  98%,100% { opacity:1; transform:scale(1.01) translate3d(0,0,0); }
}
@keyframes doorDetailShot {
  0%,18% { opacity:0; transform:scale(1.02) translate3d(1.5%,0,0); }
  27% { opacity:1; transform:scale(1.04) translate3d(0,0,0); }
  44% { opacity:1; transform:scale(1.11) translate3d(-2%,-1%,0); }
  53%,100% { opacity:0; transform:scale(1.16) translate3d(-3%,-1.5%,0); }
}
@keyframes doorHardwareShot {
  0%,42% { opacity:0; transform:scale(1.18) translate3d(2%,1%,0); }
  51% { opacity:1; transform:scale(1.21) translate3d(0,0,0); }
  65% { opacity:1; transform:scale(1.29) translate3d(-2%,-1%,0); }
  73%,100% { opacity:0; transform:scale(1.34) translate3d(-3%,-1.5%,0); }
}
@keyframes doorSmartShot {
  0%,62% { opacity:0; transform:scale(1.01) translate3d(1.5%,0,0); }
  72% { opacity:1; transform:scale(1.03) translate3d(0,0,0); }
  91% { opacity:1; transform:scale(1.1) translate3d(-1.5%,0,0); }
  99%,100% { opacity:0; transform:scale(1.13) translate3d(-2%,0,0); }
}
@keyframes smartPanelReveal { 0%,68% { opacity:0; transform:translateY(22px); } 76%,92% { opacity:1; transform:translateY(0); } 99%,100% { opacity:0; transform:translateY(-10px); } }
@keyframes smartFeatureGlow { 0%,100% { color:rgba(255,255,255,.6); } 50% { color:#fff; } }
.section { position:relative; padding:120px 8vw; }
.section-number { position:absolute; left:3vw; top:125px; font-size:15px; font-weight:400; letter-spacing:.06em; color:#978c78; }
.intro { display:grid; grid-template-columns:1fr .72fr; gap:8vw; align-items:center; padding-bottom:145px; }
.intro-copy { padding-left:4vw; }
.eyebrow.dark { color:#7c705f; }
.intro h2,.section-head h2,.custom h2,.why h2,.contact h2 { font-size:clamp(46px,5.2vw,76px); line-height:1; }
.intro-columns { display:grid; grid-template-columns:1fr 1fr; gap:3.5vw; margin:50px 0 38px; }
.intro-columns p,.custom-copy>p,.section-head>p,.contact-copy>p { font-size:13px; line-height:1.9; color:#66645e; }
.line-link { display:inline-flex; min-width:205px; justify-content:space-between; padding-bottom:12px; border-bottom:1px solid #555; text-transform:uppercase; letter-spacing:.16em; font-size:9px; }
.intro-image { height:650px; background:url('../images/paifeilai-factory.png') 68% center/cover; position:relative; }
.image-label { position:absolute; right:-24px; bottom:55px; writing-mode:vertical-rl; text-transform:uppercase; letter-spacing:.18em; font-size:8px; }
.brand-film { background:#070707; color:#fff; padding:120px 8vw 110px; }
.film-copy { max-width:980px; margin-bottom:60px; }
.film-copy .eyebrow { margin:0 0 34px; }
.film-copy h2 { max-width:900px; font-size:clamp(48px,5.7vw,84px); line-height:.96; margin:0 0 28px; }
.film-copy p { max-width:590px; color:rgba(255,255,255,.48); font-size:12px; line-height:1.85; margin:0; }
.film-frame { position:relative; border-top:1px solid rgba(255,255,255,.18); padding-top:18px; }
.film-frame video { display:block; width:100%; aspect-ratio:16/8.1; object-fit:cover; background:#111; }
.film-preview { position:relative; width:100%; aspect-ratio:16/8.1; overflow:hidden; display:flex; align-items:flex-end; padding:30px; background:linear-gradient(0deg,rgba(0,0,0,.56),transparent 55%),url('../images/paifeilai-factory.png') center/cover; }
.film-preview::before { content:""; position:absolute; inset:-5%; background:inherit; animation:factoryFilmMotion 10s ease-in-out infinite alternate; }
.film-preview span { position:relative; z-index:1; color:#fff; font-size:9px; letter-spacing:.2em; text-transform:uppercase; }
@keyframes factoryFilmMotion { from { transform:scale(1) translate3d(0,0,0); } to { transform:scale(1.08) translate3d(-1.5%,-1%,0); } }
.film-meta { display:flex; justify-content:space-between; color:rgba(255,255,255,.42); font-size:8px; letter-spacing:.16em; padding-top:15px; }
.dark-section { background:#070707; color:#fff; }
.section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin:0 0 75px 4vw; }
.section-head.light>p { color:rgba(255,255,255,.48); }
.section-head>p { max-width:390px; margin-bottom:15px; }
.products { padding-bottom:130px; }
.product-list { border-top:1px solid rgba(255,255,255,.16); margin:0 0 45px 4vw; }
.product-row { min-height:142px; display:grid; grid-template-columns:70px minmax(250px,1.2fr) minmax(190px,.75fr) 165px 48px; gap:28px; align-items:center; border-bottom:1px solid rgba(255,255,255,.16); position:relative; overflow:hidden; }
.product-row::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent,rgba(184,155,106,.09)); transform:translateX(-100%); transition:.45s; }
.product-row:hover::before,.product-row:focus-visible::before { transform:translateX(0); }
.product-no { font-size:23px; font-weight:400; letter-spacing:.08em; color:var(--gold); }
.product-name { display:flex; flex-direction:column; gap:9px; font-family:inherit; font-weight:300; font-size:29px; }
.product-name b { font-weight:400; color:var(--gold); }
.product-name small { color:#fff; font-size:9px; font-weight:400; letter-spacing:.18em; text-transform:uppercase; }
.product-desc { font-size:10px; color:rgba(255,255,255,.44); text-transform:uppercase; letter-spacing:.12em; }
.round-arrow { width:42px; height:42px; border:1px solid rgba(255,255,255,.26); border-radius:50%; display:grid; place-items:center; transition:.25s; }
.product-row:hover .round-arrow,.product-row:focus-visible .round-arrow { background:var(--gold); color:#111; border-color:var(--gold); }
.door-demo { position:relative; z-index:1; height:116px; display:flex; align-items:center; justify-content:center; perspective:520px; }
.door-demo>small { position:absolute; right:0; bottom:5px; color:rgba(255,255,255,.25); font-size:6px; letter-spacing:.14em; transition:color .3s; }
.door-stage { width:92px; height:96px; display:grid; place-items:center; perspective:520px; }
.demo-frame { width:64px; height:88px; position:relative; display:block; border:3px solid #55534d; border-bottom-width:5px; transform-style:preserve-3d; box-shadow:0 9px 25px rgba(0,0,0,.42); }
.demo-frame::after { content:""; position:absolute; left:-13px; right:-13px; bottom:-8px; height:1px; background:rgba(184,155,106,.5); }
.demo-leaf { position:absolute; inset:0; display:block; background:linear-gradient(120deg,#111 0%,#2b2a27 58%,#171715 100%); border:1px solid rgba(184,155,106,.45); transform-style:preserve-3d; backface-visibility:visible; transition:transform 1.05s cubic-bezier(.2,.75,.2,1); }
.demo-leaf::before { content:""; position:absolute; inset:5px; border:1px solid rgba(255,255,255,.08); }
.demo-leaf em { position:absolute; right:8px; top:43%; width:2px; height:16px; background:var(--gold); box-shadow:0 0 6px rgba(184,155,106,.4); }
.door-demo.inward .demo-leaf,.door-demo.outward .demo-leaf { transform-origin:left center; }
.product-row:hover .door-demo.inward .demo-leaf,.product-row:focus-visible .door-demo.inward .demo-leaf { transform:rotateY(62deg); }
.product-row:hover .door-demo.outward .demo-leaf,.product-row:focus-visible .door-demo.outward .demo-leaf { transform:rotateY(-62deg); }
.door-demo.double-inward .leaf-a,.door-demo.double-outward .leaf-a { inset:0 50% 0 0; transform-origin:left center; }
.door-demo.double-inward .leaf-b,.door-demo.double-outward .leaf-b { inset:0 0 0 50%; transform-origin:right center; }
.door-demo.double-inward .leaf-a em,.door-demo.double-outward .leaf-a em { right:4px; }
.door-demo.double-inward .leaf-b em,.door-demo.double-outward .leaf-b em { left:4px; right:auto; }
.product-row:hover .door-demo.double-inward .leaf-a,.product-row:focus-visible .door-demo.double-inward .leaf-a { transform:rotateY(66deg); }
.product-row:hover .door-demo.double-inward .leaf-b,.product-row:focus-visible .door-demo.double-inward .leaf-b { transform:rotateY(-66deg); }
.product-row:hover .door-demo.double-outward .leaf-a,.product-row:focus-visible .door-demo.double-outward .leaf-a { transform:rotateY(-66deg); }
.product-row:hover .door-demo.double-outward .leaf-b,.product-row:focus-visible .door-demo.double-outward .leaf-b { transform:rotateY(66deg); }
.door-demo.unequal-double .leaf-a { inset:0 32% 0 0; transform-origin:left center; }
.door-demo.unequal-double .leaf-b { inset:0 0 0 68%; transform-origin:right center; }
.door-demo.unequal-double .leaf-a em { right:4px; }
.door-demo.unequal-double .leaf-b em { left:3px; right:auto; }
.product-row:hover .door-demo.unequal-double .leaf-a,.product-row:focus-visible .door-demo.unequal-double .leaf-a { transform:rotateY(64deg); }
.product-row:hover .door-demo.unequal-double .leaf-b,.product-row:focus-visible .door-demo.unequal-double .leaf-b { transform:rotateY(-58deg); }
.door-demo.rotating .demo-frame { border-left-color:transparent; border-right-color:transparent; }
.door-demo.rotating .demo-leaf { inset:3px 28px 3px 28px; transform-origin:center; }
.door-demo.rotating .rotation-wing { position:absolute; left:29px; top:3px; width:2px; bottom:3px; background:var(--gold); transform:rotateY(90deg); transition:transform 1.15s cubic-bezier(.2,.75,.2,1); }
.product-row:hover .door-demo.rotating .demo-leaf,.product-row:focus-visible .door-demo.rotating .demo-leaf { transform:rotateY(145deg); }
.product-row:hover .door-demo.rotating .rotation-wing,.product-row:focus-visible .door-demo.rotating .rotation-wing { transform:rotateY(235deg); }
.door-demo.pivot .demo-leaf { transform-origin:27% center; }
.door-demo.pivot .demo-leaf em { right:11px; height:23px; }
.product-row:hover .door-demo.pivot .demo-leaf,.product-row:focus-visible .door-demo.pivot .demo-leaf { transform:rotateY(72deg); }
.product-row:hover .door-demo>small,.product-row:focus-visible .door-demo>small { color:var(--gold); }
@keyframes demoInward { 0%,18%,88%,100% { transform:rotateY(0); } 42%,66% { transform:rotateY(62deg); } }
@keyframes demoOutward { 0%,18%,88%,100% { transform:rotateY(0); } 42%,66% { transform:rotateY(-62deg); } }
@keyframes demoDoubleLeftIn { 0%,18%,88%,100% { transform:rotateY(0); } 42%,66% { transform:rotateY(66deg); } }
@keyframes demoDoubleRightIn { 0%,18%,88%,100% { transform:rotateY(0); } 42%,66% { transform:rotateY(-66deg); } }
@keyframes demoDoubleLeftOut { 0%,18%,88%,100% { transform:rotateY(0); } 42%,66% { transform:rotateY(-66deg); } }
@keyframes demoDoubleRightOut { 0%,18%,88%,100% { transform:rotateY(0); } 42%,66% { transform:rotateY(66deg); } }
@keyframes demoUnequalMain { 0%,18%,88%,100% { transform:rotateY(0); } 42%,66% { transform:rotateY(64deg); } }
@keyframes demoUnequalSide { 0%,18%,88%,100% { transform:rotateY(0); } 42%,66% { transform:rotateY(-58deg); } }
@keyframes demoPivot { 0%,18%,88%,100% { transform:rotateY(0); } 42%,66% { transform:rotateY(72deg); } }
@keyframes demoRotateLeaf { 0%,18%,88%,100% { transform:rotateY(0); } 48%,68% { transform:rotateY(145deg); } }
@keyframes demoRotateWing { 0%,18%,88%,100% { transform:rotateY(90deg); } 48%,68% { transform:rotateY(235deg); } }
.outline { border:1px solid rgba(255,255,255,.3); margin-left:4vw; }
.outline:hover { border-color:var(--gold); }
.specifications { display:block; padding-top:145px; padding-bottom:145px; background:#f3f3ef; }
.specification-heading { max-width:1080px; margin:0 0 65px 4vw; }
.specification-heading h2 { max-width:850px; margin:0 0 30px; }
.specification-heading>p { max-width:680px; color:#66645e; font-size:13px; line-height:1.9; }
.specification-tabs { margin-left:4vw; display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.specification-tabs button { min-height:106px; padding:18px 16px; border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:transparent; color:var(--ink); display:flex; flex-direction:column; justify-content:space-between; align-items:flex-start; text-align:left; cursor:pointer; transition:background .3s,color .3s; }
.specification-tabs button small { color:var(--gold); font-size:12px; letter-spacing:.12em; }
.specification-tabs button span { font-size:13px; line-height:1.3; }
.specification-tabs button:hover,.specification-tabs button.active { background:#171816; color:#fff; }
.specification-panel { margin-left:4vw; display:grid; grid-template-columns:minmax(280px,.8fr) minmax(500px,1.4fr); background:#fff; border-bottom:1px solid var(--line); }
.specification-summary { padding:55px 55px 45px; background:#171816; color:#fff; }
.specification-summary>small { color:var(--gold); letter-spacing:.18em; font-size:8px; }
.specification-summary h3 { font-family:inherit; font-size:clamp(28px,3vw,46px); font-weight:300; line-height:1.08; margin:28px 0 24px; }
.specification-summary>p { color:rgba(255,255,255,.56); font-size:11px; line-height:1.8; max-width:440px; }
.specification-summary>div { padding-top:25px; margin-top:28px; border-top:1px solid rgba(255,255,255,.18); display:flex; flex-direction:column; gap:8px; }
.specification-summary>div span { color:var(--gold); font-size:7px; letter-spacing:.16em; }
.specification-summary>div strong { font-size:10px; line-height:1.6; font-weight:400; color:rgba(255,255,255,.8); }
.specification-summary .line-link { margin-top:34px; color:#fff; }
.technical-table { margin:0; padding:18px 48px; }
.technical-table>div { min-height:68px; display:grid; grid-template-columns:minmax(170px,.65fr) 1fr; align-items:center; gap:32px; border-bottom:1px solid var(--line); }
.technical-table>div:last-child { border-bottom:0; }
.technical-table dt { display:flex; align-items:center; gap:18px; font-size:11px; }
.technical-table dt small { color:var(--gold); font-size:12px; }
.technical-table dd { margin:0; color:#615f59; font-size:11px; line-height:1.55; }
.buyer-support { margin:55px 0 0 4vw; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.buyer-support article { min-height:190px; padding:28px 25px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.buyer-support small { color:var(--gold); font-size:12px; }
.buyer-support h3 { font-family:inherit; font-size:18px; font-weight:400; margin:42px 0 14px; }
.buyer-support p { color:#706d66; font-size:10px; line-height:1.75; max-width:250px; }
.specification-note { margin:20px 0 0 4vw; color:#8a8882; font-size:8px; line-height:1.7; max-width:900px; }
.custom { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(430px,.85fr); padding-top:150px; padding-bottom:150px; gap:5vw; align-items:center; }
.custom-visual { height:790px; background:#d8d8d4; position:relative; margin-left:0; overflow:hidden; }
.custom-scene-visual { isolation:isolate; background:#121210; box-shadow:0 30px 70px rgba(0,0,0,.14); }
.custom-scene-visual::before { content:""; position:absolute; z-index:-2; inset:-4%; background:var(--pfl-custom-scene,url("../images/paifeilai-one-door-one-scene-v2.png")) center 49%/cover no-repeat; animation:customSceneMove 13s ease-in-out infinite alternate; }
.custom-scene-visual::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(180deg,rgba(7,7,6,.25),transparent 34%,transparent 63%,rgba(7,7,6,.48)); pointer-events:none; }
.scene-label { position:absolute; z-index:3; top:28px; left:28px; display:flex; flex-direction:column; gap:7px; padding:14px 16px; color:#fff; background:rgba(11,11,9,.76); border-top:1px solid var(--gold); backdrop-filter:blur(6px); }
.scene-label small { color:var(--gold); font-size:8px; letter-spacing:.19em; }
.scene-label strong { font-size:10px; font-weight:400; letter-spacing:.08em; }
@keyframes customSceneMove { from { transform:scale(1.01) translate3d(0,0,0); } to { transform:scale(1.08) translate3d(-1%,-.8%,0); } }
.door-render { position:absolute; width:54%; height:78%; background:#151515; left:25%; bottom:0; border:12px solid #bcbcb8; box-shadow:0 30px 50px rgba(0,0,0,.18); }
.door-render:before { content:""; position:absolute; left:19%; top:0; bottom:0; width:21%; background:#aa8b59; }
.door-render:after { content:""; position:absolute; right:14%; top:13%; bottom:13%; width:1px; background:rgba(255,255,255,.35); }
.door-render b { position:absolute; inset:0; background:repeating-linear-gradient(90deg,transparent 0,transparent 10px,rgba(255,255,255,.025) 11px); }
.smart-lock-unit { position:absolute; z-index:3; right:15%; top:29%; width:34px; height:112px; border:1px solid rgba(205,170,109,.72); border-radius:4px; background:linear-gradient(150deg,#292925,#080808 70%); box-shadow:0 0 20px rgba(184,155,106,.16); overflow:visible; }
.smart-lock-unit::before { content:""; position:absolute; left:50%; top:12px; width:13px; height:13px; border:1px solid var(--gold); border-radius:50%; transform:translateX(-50%); box-shadow:0 0 0 4px rgba(184,155,106,.08); animation:lockPulse 2.4s ease-in-out infinite; }
.smart-lock-unit::after { content:""; position:absolute; left:8px; right:8px; top:39px; height:32px; background:radial-gradient(circle,#b89b6a 1.2px,transparent 1.7px) 0 0/8px 8px; opacity:.72; }
.smart-lock-unit i { position:absolute; z-index:2; left:5px; right:5px; top:34px; height:1px; background:#e6c68e; box-shadow:0 0 7px #d5ad69; animation:lockScan 2.8s ease-in-out infinite; }
.smart-lock-unit em { position:absolute; left:13px; top:78px; width:7px; height:76px; border-radius:3px; background:linear-gradient(90deg,#8f7449,#d4b170,#8c7047); box-shadow:0 5px 10px rgba(0,0,0,.35); }
.smart-access-note { position:absolute; z-index:4; right:25px; bottom:24px; display:flex; flex-direction:column; gap:6px; padding:14px 16px; background:rgba(17,17,15,.92); color:#fff; border-left:2px solid var(--gold); }
.smart-access-note small { color:var(--gold); font-size:7px; letter-spacing:.18em; }
.smart-access-note strong { font-size:9px; font-weight:400; letter-spacing:.05em; }
@keyframes lockPulse { 0%,100% { box-shadow:0 0 0 3px rgba(184,155,106,.07); opacity:.75; } 50% { box-shadow:0 0 0 7px rgba(184,155,106,.13); opacity:1; } }
@keyframes lockScan { 0%,100% { transform:translateY(0); opacity:.35; } 50% { transform:translateY(34px); opacity:1; } }
.dimension { position:absolute; z-index:2; font-size:8px; letter-spacing:.15em; color:#666662; }
.dimension i { display:block; background:#8c8c87; }
.dimension.horizontal { left:25%; right:21%; top:8%; display:flex; justify-content:space-between; align-items:center; gap:12px; }
.dimension.horizontal i { height:1px; flex:1; }
.dimension.vertical { writing-mode:vertical-rl; left:9%; top:22%; bottom:8%; display:flex; align-items:center; gap:12px; }
.dimension.vertical i { width:1px; flex:1; }
.custom-copy { max-width:600px; }
.custom-copy>p { max-width:480px; margin:35px 0 45px; }
.spec-grid { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line); margin-bottom:42px; }
.spec-grid div { padding:18px 0; border-bottom:1px solid var(--line); display:flex; align-items:center; gap:20px; }
.spec-grid div:nth-child(odd) { margin-right:28px; }
.spec-grid small { color:var(--gold); font-size:13px; }
.spec-grid span { display:flex; flex-direction:column; gap:6px; font-family:inherit; }
.spec-grid strong { font-size:17px; font-weight:400; line-height:1.3; }
.spec-grid em { color:#8b877f; font-size:8px; font-style:normal; letter-spacing:.08em; line-height:1.55; text-transform:uppercase; }
.dark-button { color:#fff; background:#171816; }
.dark-button:hover { background:var(--gold); color:#111; }
.manufacturing { padding:0; background:#070707; color:#fff; }
.factory-banner { min-height:720px; background:linear-gradient(90deg,rgba(10,10,10,.18),rgba(10,10,10,.1)),url('../images/paifeilai-factory.png') center/cover; padding:110px 10vw; position:relative; display:flex; flex-direction:column; justify-content:flex-end; }
.factory-banner h2 { font-size:clamp(58px,7.5vw,104px); line-height:.9; margin:0; }
.factory-stat { position:absolute; right:9vw; bottom:100px; border-left:1px solid rgba(255,255,255,.45); padding-left:25px; display:flex; align-items:end; gap:15px; }
.factory-stat b { font-family:inherit; font-size:55px; font-weight:300; color:var(--gold); }
.factory-stat span { font-size:9px; line-height:1.5; letter-spacing:.1em; text-transform:uppercase; }
.process-grid { display:grid; grid-template-columns:repeat(3,1fr); padding:0 8vw 105px; }
.process-grid article { min-height:265px; padding:45px 35px; border-right:1px solid rgba(255,255,255,.13); border-bottom:1px solid rgba(255,255,255,.13); position:relative; }
.process-grid article:nth-child(3n) { border-right:0; }
.process-grid small { color:var(--gold); font-size:13px; letter-spacing:.08em; }
.process-grid h3 { font-family:inherit; font-size:22px; font-weight:400; margin:45px 0 16px; }
.process-grid p { font-size:11px; line-height:1.8; color:rgba(255,255,255,.45); max-width:270px; }
.process-grid i { position:absolute; right:0; bottom:-1px; width:0; height:1px; background:var(--gold); transition:.4s; }
.process-grid article:hover i { width:100%; }
.projects { padding-bottom:150px; }
.projects .section-head { display:block; max-width:980px; }
.projects .section-head h2 { max-width:900px; }
.projects .section-head>p { max-width:590px; margin:28px 0 0; }
.project-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:70px 28px; margin-left:4vw; }
.project-photo { height:510px; background-image:linear-gradient(0deg,rgba(0,0,0,.45),transparent 40%),url('../images/paifeilai-hero.png'); background-size:cover; position:relative; overflow:hidden; }
.project-photo:after { content:""; position:absolute; inset:0; background:rgba(184,155,106,.14); opacity:0; transition:.35s; }
.project-card:hover .project-photo:after { opacity:1; }
.project-photo>span { position:absolute; z-index:2; left:20px; top:20px; border:1px solid rgba(255,255,255,.55); color:#fff; width:46px; height:46px; display:grid; place-items:center; font-size:13px; }
.project-info { display:flex; justify-content:space-between; padding-top:20px; border-top:1px solid var(--line); }
.project-info small { font-size:8px; color:var(--gold); text-transform:uppercase; letter-spacing:.19em; }
.project-info h3 { font-family:inherit; font-weight:400; font-size:24px; margin:6px 0 0; }
.project-info dl { display:flex; gap:28px; margin:0; }
.project-info dt { font-size:7px; color:#999; letter-spacing:.15em; margin-bottom:7px; }
.project-info dd { margin:0; font-size:9px; }
.why { display:block; padding-top:140px; padding-bottom:140px; }
.why-title { max-width:1050px; margin:0 0 75px 4vw; }
.why-title h2 { max-width:1000px; }
.advantages { display:grid; grid-template-columns:repeat(3,1fr); margin-left:4vw; border-top:1px solid rgba(255,255,255,.2); border-left:1px solid rgba(255,255,255,.2); }
.advantages div { min-height:180px; display:flex; flex-direction:column; align-items:flex-start; padding:28px 30px; border-right:1px solid rgba(255,255,255,.2); border-bottom:1px solid rgba(255,255,255,.2); position:relative; }
.advantages b { color:var(--gold); font-size:14px; font-weight:400; letter-spacing:.08em; }
.advantages span { max-width:240px; margin-top:auto; font-family:inherit; font-weight:400; font-size:20px; line-height:1.35; }
.advantages i { width:28px; height:28px; position:absolute; right:25px; top:24px; border:1px solid rgba(184,155,106,.6); border-radius:50%; display:grid; place-items:center; color:var(--gold); font-style:normal; font-size:9px; }
.faq { display:block; background:#eeeeea; padding-top:140px; padding-bottom:140px; }
.faq-heading { max-width:1050px; margin:0 0 72px 4vw; }
.faq-heading h2 { max-width:1000px; font-size:clamp(46px,5.2vw,76px); line-height:1; margin-bottom:30px; }
.faq-heading>p { max-width:590px; color:#66645e; font-size:13px; line-height:1.9; }
.faq-list { margin-left:4vw; border-top:1px solid rgba(9,9,9,.25); }
.faq-item { position:relative; border-bottom:1px solid rgba(9,9,9,.2); overflow:hidden; transition:background-color .35s; }
.faq-item::before { content:""; position:absolute; left:0; top:0; bottom:0; width:2px; background:var(--gold); transform:scaleY(0); transform-origin:bottom; transition:transform .4s cubic-bezier(.2,.75,.2,1); }
.faq-item:hover,.faq-item.open { background:rgba(255,255,255,.42); }
.faq-item:hover::before,.faq-item.open::before { transform:scaleY(1); }
.faq-question { width:100%; min-height:102px; display:grid; grid-template-columns:44px 1fr 30px; gap:20px; align-items:center; padding:0 14px 0 0; border:0; background:transparent; color:var(--ink); text-align:left; cursor:pointer; }
.faq-question>span { color:var(--gold); font-size:14px; letter-spacing:.08em; transition:transform .35s; }
.faq-question>b { font-size:21px; font-weight:400; line-height:1.4; transition:transform .35s,color .35s; }
.faq-question>i { width:24px; height:24px; position:relative; display:block; transition:transform .45s cubic-bezier(.2,.75,.2,1); }
.faq-question>i::before,.faq-question>i::after { content:""; position:absolute; left:50%; top:50%; width:14px; height:1px; background:#222; transform:translate(-50%,-50%); transition:transform .35s; }
.faq-question>i::after { transform:translate(-50%,-50%) rotate(90deg); }
.faq-item:hover .faq-question>span,.faq-item:hover .faq-question>b { transform:translateX(8px); }
.faq-item.open .faq-question>b { color:#8b7148; }
.faq-item.open .faq-question>i { transform:rotate(180deg); }
.faq-item.open .faq-question>i::after { transform:translate(-50%,-50%) rotate(0); }
.faq-answer { display:grid; grid-template-rows:0fr; opacity:0; transition:grid-template-rows .55s cubic-bezier(.2,.75,.2,1),opacity .35s ease; }
.faq-answer>div { overflow:hidden; }
.faq-item.open .faq-answer { grid-template-rows:1fr; opacity:1; }
.faq-answer p { max-width:820px; margin:-2px 50px 33px 64px; color:#66645e; font-size:12px; line-height:1.85; transform:translateY(-10px); transition:transform .5s cubic-bezier(.2,.75,.2,1); }
.faq-item.open .faq-answer p { transform:translateY(0); }
.contact { display:block; padding-top:140px; padding-bottom:140px; }
.contact-copy { max-width:1100px; margin:0 0 70px 4vw; }
.contact-copy h2 { max-width:1050px; margin-bottom:38px; }
.contact-meta { display:grid; grid-template-columns:1fr 1fr; gap:7vw; max-width:900px; align-items:start; }
.contact-meta>p { max-width:520px; margin:0; font-size:13px; line-height:1.9; color:#66645e; }
.contact-detail { display:flex; flex-direction:column; gap:9px; }
.contact-detail small { font-size:8px; letter-spacing:.15em; color:#999; margin-bottom:7px; }
.contact-detail a { font-family:inherit; font-size:18px; }
form { margin-left:4vw; background:#e8e8e4; padding:60px; }
.form-fields { display:grid; grid-template-columns:repeat(3,1fr); gap:0 38px; }
.lock-system-field { grid-column:span 2; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
label { display:flex; flex-direction:column; font-size:8px; letter-spacing:.15em; color:#676763; margin-bottom:28px; }
input,select,textarea { border:0; border-bottom:1px solid #9f9f9a; background:transparent; border-radius:0; padding:12px 0; color:#222; outline:none; font-size:12px; letter-spacing:normal; resize:vertical; }
input:focus,select:focus,textarea:focus { border-color:var(--gold); }
.submit { width:100%; background:#171816; color:#fff; border:0; text-transform:uppercase; letter-spacing:.18em; font-size:10px; padding:20px 24px; display:flex; justify-content:space-between; cursor:pointer; }
.privacy { font-size:8px; color:#858581; text-align:center; margin:14px 0 0; }
.success { margin-left:4vw; background:#e8e8e4; padding:70px; min-height:420px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.success>span { width:46px; height:46px; display:grid; place-items:center; border-radius:50%; border:1px solid var(--gold); color:var(--gold); }
.success h3 { font:300 42px/1.2 "Helvetica Neue",Arial,sans-serif; margin:32px 0 18px; }
.success p { color:#67635d; line-height:1.8; max-width:430px; }
.success button { border:0; border-bottom:1px solid #222; padding:8px 0; background:none; text-transform:uppercase; font-size:9px; letter-spacing:.15em; cursor:pointer; }
footer { background:#050505; color:#fff; padding:75px 8vw 30px; }
.footer-main { min-height:220px; display:grid; grid-template-columns:1.15fr .85fr .85fr 1.15fr; gap:4vw; align-items:start; }
.footer-main>p { color:rgba(255,255,255,.5); font:300 20px/1.6 "Helvetica Neue",Arial,sans-serif; }
.footer-links { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; text-transform:uppercase; font-size:10px; letter-spacing:.16em; }
.footer-contact { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.footer-contact>small { color:var(--gold); font-size:9px; letter-spacing:.2em; margin-bottom:3px; }
.footer-contact>small:nth-of-type(2) { margin-top:15px; }
.footer-contact>a { color:rgba(255,255,255,.78); font-size:14px; line-height:1.55; }
.footer-contact>a:hover { color:#fff; }
.footer-social { display:flex; gap:9px; }
.footer-social a { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.28); border-radius:50%; color:#fff; font-size:10px; letter-spacing:.08em; transition:.25s ease; }
.footer-contact .footer-social-label { margin-top:16px; margin-bottom:2px; }
.footer-social a:focus-visible { color:#080808; background:var(--gold); border-color:var(--gold); transform:translateY(-2px); outline:0; }
@media(hover:hover) { .footer-social a:hover { color:#080808; background:var(--gold); border-color:var(--gold); transform:translateY(-2px); } }
.footer-bottom { border-top:1px solid rgba(255,255,255,.14); padding-top:25px; display:flex; justify-content:space-between; color:rgba(255,255,255,.4); font-size:9px; letter-spacing:.14em; }
.footer-bottom a { color:var(--gold); }

.inner-nav { min-height:88px; padding:0 5vw; display:flex; justify-content:space-between; align-items:center; background:#090909; color:#fff; border-bottom:1px solid rgba(255,255,255,.16); }
.catalog-page { background:#f4f4f1; min-height:100vh; }
.catalog-hero { min-height:560px; padding:145px 9vw 90px; color:#fff; background:linear-gradient(90deg,rgba(5,5,5,.88),rgba(5,5,5,.28)),url("../images/paifeilai-door-zoom-v2.png") center/cover; }
.catalog-hero h1 { max-width:980px; font-size:clamp(60px,7.5vw,108px); line-height:.9; margin-bottom:34px; }
.catalog-hero p { max-width:600px; color:rgba(255,255,255,.64); font-size:13px; line-height:1.85; }
.catalog-content { display:grid; grid-template-columns:260px 1fr; gap:6vw; padding:100px 8vw 140px; }
.category-sidebar { position:sticky; top:30px; align-self:start; display:flex; flex-direction:column; border-top:1px solid var(--line); }
.category-sidebar>small { padding:18px 0 26px; color:#8a806f; font-size:8px; letter-spacing:.16em; }
.category-sidebar button { min-height:62px; display:flex; align-items:center; gap:16px; padding:0 4px; border:0; border-bottom:1px solid var(--line); background:transparent; color:#56544e; text-align:left; font-size:11px; cursor:pointer; transition:.25s; }
.category-sidebar button span { color:var(--gold); font-size:12px; }
.category-sidebar button:hover,.category-sidebar button.active { color:#090909; padding-left:12px; background:rgba(184,155,106,.1); }
.catalog-category { margin-bottom:105px; scroll-margin-top:35px; }
.catalog-category-head { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:end; padding-bottom:30px; border-bottom:1px solid var(--line); }
.catalog-category-head small { color:var(--gold); font-size:9px; letter-spacing:.15em; text-transform:uppercase; }
.catalog-category-head h2 { font-size:clamp(36px,4vw,58px); margin:10px 0 0; }
.catalog-category-head p { color:#69665f; font-size:11px; line-height:1.8; max-width:420px; margin:0; }
.catalog-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; padding-top:30px; }
.catalog-card { background:#fff; display:block; transition:transform .35s,box-shadow .35s; }
.catalog-card:hover { transform:translateY(-7px); box-shadow:0 22px 55px rgba(0,0,0,.1); }
.catalog-card-image { height:350px; padding:22px; background-position:center; background-size:cover; display:flex; align-items:flex-end; }
.catalog-card-image>span { padding:8px 10px; background:rgba(8,8,7,.8); border-left:2px solid var(--gold); color:#fff; font-size:8px; letter-spacing:.15em; }
.catalog-card-copy { padding:28px 28px 30px; }
.catalog-card-copy>small { color:var(--gold); font-size:8px; letter-spacing:.14em; text-transform:uppercase; }
.catalog-card-copy h3 { font-family:inherit; font-size:25px; font-weight:400; margin:14px 0; }
.catalog-card-copy p { min-height:55px; color:#77736c; font-size:10px; line-height:1.75; }
.catalog-card-copy b { display:flex; justify-content:space-between; margin-top:25px; padding-top:16px; border-top:1px solid var(--line); font-size:8px; font-weight:400; letter-spacing:.15em; text-transform:uppercase; }
.catalog-card-copy b span { color:var(--gold); }
.catalog-status,.catalog-empty { padding:40px; border:1px solid var(--line); color:#77736c; font-size:12px; }

.product-detail-page { background:#f4f4f1; min-height:100vh; }
.product-detail-loading { min-height:100vh; display:grid; place-items:center; background:#111; color:#fff; text-align:center; }
.product-detail-loading a { color:var(--gold); }
.product-detail-hero { min-height:720px; display:grid; grid-template-columns:1.15fr .85fr; background:#10110f; color:#fff; }
.product-detail-image { position:relative; min-height:720px; overflow:hidden; background:#080908; }
.product-detail-image::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(0deg,rgba(0,0,0,.4),transparent 48%); }
.product-detail-image img { position:absolute; inset:0; width:100%; height:100%; display:block; object-fit:cover; object-position:center; animation:pfl-product-hero-motion 14s ease-in-out infinite alternate; will-change:transform; }
@keyframes pfl-product-hero-motion { from { transform:scale(1); } to { transform:scale(1.055); } }
@media (prefers-reduced-motion:reduce) { .product-detail-image img { animation:none; } }
.product-detail-intro { padding:110px 7vw; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.product-detail-intro>small { color:var(--gold); font-size:9px; letter-spacing:.18em; }
.product-detail-intro h1 { font-size:clamp(52px,6vw,82px); line-height:.92; margin:28px 0; }
.product-detail-intro p { max-width:480px; color:rgba(255,255,255,.55); font-size:12px; line-height:1.85; margin-bottom:35px; }
.product-technical { padding:130px 9vw; display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; }
.product-technical-heading h2 { font-size:clamp(46px,5.3vw,72px); line-height:1; }
.product-technical-heading>p { max-width:500px; color:#6b6861; font-size:12px; line-height:1.85; }
.product-technical-heading>div:last-child { margin-top:34px; padding-top:24px; border-top:1px solid var(--line); display:flex; flex-direction:column; gap:9px; }
.product-technical-heading>div:last-child small { color:var(--gold); font-size:8px; letter-spacing:.15em; }
.product-technical-heading>div:last-child strong { max-width:450px; font-size:11px; line-height:1.6; font-weight:400; }
.product-technical dl { margin:0; border-top:1px solid var(--line); }
.product-technical dl>div { min-height:92px; display:grid; grid-template-columns:220px 1fr; gap:30px; align-items:center; border-bottom:1px solid var(--line); }
.product-technical dt { display:flex; align-items:center; gap:20px; font-size:12px; }
.product-technical dt small { color:var(--gold); font-size:13px; }
.product-technical dd { margin:0; color:#67645e; font-size:12px; line-height:1.6; }
.product-detail-cta { padding:80px 9vw; background:#090909; color:#fff; display:flex; align-items:center; justify-content:space-between; gap:50px; }
.product-detail-cta small { color:var(--gold); font-size:8px; letter-spacing:.17em; }
.product-detail-cta h2 { max-width:800px; font-size:clamp(32px,4vw,56px); margin:18px 0 0; }

.admin-locked { min-height:100vh; padding:55px 7vw; background:linear-gradient(90deg,rgba(5,5,5,.92),rgba(5,5,5,.48)),url("../images/paifeilai-door-detail.png") center/cover; color:#fff; }
.admin-locked>div { max-width:780px; margin:18vh 0 0 8vw; }
.admin-locked>div>small { color:var(--gold); font-size:9px; letter-spacing:.18em; }
.admin-locked h1 { font-size:clamp(58px,7vw,96px); line-height:.9; margin:30px 0; }
.admin-locked h1 em { color:var(--gold); font-style:normal; }
.admin-locked p { max-width:530px; color:rgba(255,255,255,.62); line-height:1.8; margin-bottom:35px; }
.admin-page { min-height:100vh; background:#efefeb; }
.admin-header { min-height:86px; padding:0 6vw; display:flex; align-items:center; justify-content:space-between; background:#0b0b0a; color:#fff; }
.admin-header>div { display:flex; align-items:center; gap:24px; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.admin-header>div span { color:rgba(255,255,255,.5); }
.admin-header>div a { color:var(--gold); }
.admin-intro { padding:90px 7vw 70px; display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:6vw; }
.admin-intro>div>small { color:var(--gold); font-size:9px; letter-spacing:.18em; }
.admin-intro h1 { font-size:clamp(54px,6.5vw,90px); line-height:.9; margin:25px 0 0; }
.admin-intro h1 em { color:var(--gold); font-style:normal; }
.admin-intro>p { max-width:530px; color:#68655e; font-size:12px; line-height:1.9; }
.admin-editor { padding:0 7vw 100px; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,.65fr); gap:30px; align-items:start; }
.admin-product-form,.admin-category-panel>form { margin:0; background:#fff; padding:45px; }
.admin-form-title small,.admin-category-panel form>small { color:var(--gold); font-size:8px; letter-spacing:.16em; }
.admin-form-title h2,.admin-category-panel h2 { font-family:inherit; font-size:30px; font-weight:400; margin:13px 0 35px; }
.admin-form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:0 30px; }
.admin-product-form label,.admin-category-panel label { margin-bottom:24px; }
.admin-product-form label>small { margin-top:7px; color:#999; font-size:7px; }
.parameter-editor { font-family:Consolas,monospace; line-height:1.7; }
.admin-actions { display:flex; align-items:center; gap:24px; }
.admin-actions .submit { width:auto; min-width:240px; }
.admin-actions>button:not(.submit) { border:0; border-bottom:1px solid #555; padding:8px 0; background:transparent; font-size:8px; letter-spacing:.14em; text-transform:uppercase; cursor:pointer; }
.admin-category-panel { display:flex; flex-direction:column; gap:20px; }
.admin-category-list { background:#171816; color:#fff; padding:20px; }
.admin-category-list button { width:100%; min-height:68px; display:grid; grid-template-columns:35px 1fr auto; gap:10px; align-items:center; padding:0 8px; border:0; border-bottom:1px solid rgba(255,255,255,.14); background:transparent; color:#fff; text-align:left; cursor:pointer; }
.admin-category-list button>span { color:var(--gold); font-size:12px; }
.admin-category-list button>b { font-size:11px; font-weight:400; }
.admin-category-list button>small { color:rgba(255,255,255,.4); font-size:7px; }
.admin-product-list { padding:0 7vw 120px; }
.admin-list-title { display:flex; align-items:end; gap:28px; margin-bottom:24px; }
.admin-list-title>small { color:var(--gold); font-size:8px; letter-spacing:.16em; }
.admin-list-title h2 { font-size:36px; margin:0; }
.admin-list-title>span { margin-left:auto; color:#7b775f; font-size:10px; }
.admin-product-list article { min-height:84px; display:grid; grid-template-columns:100px 1fr 90px 55px 60px; gap:20px; align-items:center; padding:0 24px; background:#fff; border-bottom:1px solid var(--line); }
.admin-product-list article>span { color:var(--gold); font-size:10px; letter-spacing:.12em; }
.admin-product-list article small { color:#8a877f; font-size:7px; letter-spacing:.14em; }
.admin-product-list article h3 { font-family:inherit; font-size:18px; font-weight:400; margin:5px 0 0; }
.admin-product-list article>b { width:max-content; padding:6px 8px; background:#ecece8; font-size:7px; font-weight:400; letter-spacing:.12em; text-transform:uppercase; }
.admin-product-list article>b.draft { color:#9a7544; }
.admin-product-list article>button { border:0; border-bottom:1px solid #777; padding:7px 0; background:transparent; font-size:8px; text-transform:uppercase; cursor:pointer; }
.admin-product-list article>button.danger { color:#9b3f35; border-color:#9b3f35; }

@media(max-width:900px) {
  .nav-shell { height:76px; padding:0 22px; }
  .menu-button { display:block; border:0; background:transparent; width:38px; height:38px; padding:9px; position:relative; z-index:3; }
  .menu-button i { display:block; height:1px; background:#fff; margin:6px 0; }
  .nav-shell nav { display:none; position:fixed; inset:0; background:#111210; padding:110px 35px 50px; flex-direction:column; align-items:flex-start; gap:27px; font-size:13px; }
  .nav-shell nav.open { display:flex; }
  .nav-products { width:100%; }
  .nav-products>a { padding:0; }
  .nav-submenu { position:static; width:100%; margin-top:18px; padding:8px 0 0 16px; border-top:1px solid rgba(255,255,255,.15); box-shadow:none; opacity:1; visibility:visible; transform:none; background:transparent; }
  .nav-submenu a { padding:9px 0; }
  .nav-cta { margin-top:auto; width:100%; }
  .hero-content { margin:90px 24px 0; width:auto; }
  .hero h1 { font-size:58px; }
  .hero-shade { background:linear-gradient(90deg,rgba(8,10,11,.88),rgba(8,10,11,.3)); }
  .smart-feature-panel { right:22px; bottom:24px; width:320px; }
  .scroll-cue { display:none; }
  .section { padding:90px 24px; }
  .section-number { display:none; }
  .intro,.custom { grid-template-columns:1fr; gap:65px; }
  .intro-copy { padding:0; margin:0; }
  .faq-heading { margin:0 0 50px; }
  .faq-list { margin-left:0; }
  .intro-columns { grid-template-columns:1fr; gap:12px; }
  .intro-image { height:480px; }
  .brand-film { padding:90px 24px 80px; }
  .film-copy { margin-bottom:42px; }
  .film-copy .eyebrow { margin-bottom:25px; }
  .film-copy p { max-width:480px; }
  .film-frame video { aspect-ratio:16/10; }
  .film-preview { aspect-ratio:16/10; }
  .section-head { margin:0 0 50px; flex-direction:column; align-items:flex-start; }
  .product-list { margin-left:0; }
  .product-row { grid-template-columns:35px minmax(180px,1fr) 130px 40px; gap:14px; min-height:126px; }
  .product-name { font-size:19px; }
  .product-desc { display:none; }
  .door-demo { height:108px; }
  .outline { margin-left:0; }
  .specification-heading,.specification-tabs,.specification-panel,.buyer-support,.specification-note { margin-left:0; }
  .specification-tabs { grid-template-columns:repeat(3,1fr); }
  .specification-panel { grid-template-columns:1fr; }
  .buyer-support { grid-template-columns:repeat(2,1fr); }
  .custom-visual { margin:0; height:620px; order:2; }
  .custom-copy { order:1; }
  .factory-banner { min-height:600px; padding:70px 24px; }
  .factory-stat { right:24px; bottom:70px; }
  .process-grid { grid-template-columns:1fr 1fr; padding:0 24px 80px; }
  .process-grid article:nth-child(3n) { border-right:1px solid rgba(255,255,255,.13); }
  .process-grid article:nth-child(2n) { border-right:0; }
  .project-grid { margin:0; grid-template-columns:1fr; }
  .project-photo { height:440px; }
  .why-title { margin:0 0 55px; }
  .advantages { grid-template-columns:1fr 1fr; margin-left:0; }
  .contact-copy { margin:0 0 55px; }
  form,.success { margin-left:0; }
  form { padding:42px 34px; }
  .form-fields { grid-template-columns:1fr 1fr; gap:0 30px; }
  .footer-main { grid-template-columns:1fr; gap:35px; }
  .inner-nav { padding:0 24px; }
  .inner-nav nav { display:flex; font-size:8px; gap:18px; }
  .inner-nav nav a:not(.nav-cta) { display:none; }
  .catalog-content { grid-template-columns:1fr; padding:70px 24px 100px; }
  .category-sidebar { position:static; display:grid; grid-template-columns:repeat(2,1fr); }
  .category-sidebar>small { grid-column:1/-1; }
  .catalog-grid { grid-template-columns:1fr; }
  .product-detail-hero { grid-template-columns:1fr; }
  .product-detail-image { min-height:550px; }
  .product-detail-intro { padding:80px 24px; }
  .product-technical { padding:90px 24px; grid-template-columns:1fr; }
  .product-detail-cta { padding:70px 24px; align-items:flex-start; flex-direction:column; }
  .admin-intro,.admin-editor { grid-template-columns:1fr; }
  .admin-editor { padding:0 24px 80px; }
  .admin-intro { padding:70px 24px 50px; }
  .admin-product-list { padding:0 24px 90px; }
}
@media(max-width:560px) {
  .wordmark span { font-size:17px; }
  .hero { min-height:850px; }
  .hero-film-wide { background-position:66% center; }
  .hero-film-detail { background-position:72% center; }
  .hero-film-hardware { background-position:80% 58%; }
  .hero-film-smart { background-position:70% center; }
  .hero h1 { font-size:48px; }
  .hero p { max-width:90%; }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:18px; }
  .smart-feature-panel { left:22px; right:22px; bottom:20px; width:auto; padding:13px 14px; }
  .smart-feature-panel>strong { font-size:17px; margin-bottom:10px; }
  .smart-feature-panel li { min-height:34px; padding:7px 8px; font-size:7px; }
  .product-row { grid-template-columns:27px minmax(125px,1fr) 102px; gap:9px; }
  .product-name { font-size:20px; gap:7px; }
  .product-name small { font-size:7px; letter-spacing:.1em; }
  .round-arrow { display:none; }
  .door-stage { transform:scale(.88); }
  .door-demo>small { display:none; }
  .intro h2,.section-head h2,.custom h2,.why h2,.contact h2 { font-size:42px; }
  .film-copy h2 { font-size:42px; }
  .film-meta { flex-direction:column; gap:8px; }
  .custom-visual { height:520px; }
  .scene-label { top:18px; left:18px; }
  .smart-access-note { right:18px; bottom:18px; }
  .specification-tabs { display:flex; overflow-x:auto; border-left:0; scroll-snap-type:x mandatory; }
  .specification-tabs button { min-width:145px; scroll-snap-align:start; border-left:1px solid var(--line); }
  .specification-summary { padding:38px 26px; }
  .technical-table { padding:10px 24px; }
  .technical-table>div { grid-template-columns:1fr; gap:7px; padding:17px 0; }
  .buyer-support { grid-template-columns:1fr; }
  .buyer-support article { min-height:150px; }
  .buyer-support h3 { margin-top:28px; }
  .spec-grid { grid-template-columns:1fr; }
  .spec-grid div:nth-child(odd) { margin-right:0; }
  .factory-banner { min-height:520px; }
  .factory-stat { position:static; margin-top:50px; align-self:flex-start; }
  .process-grid { grid-template-columns:1fr; }
  .process-grid article,.process-grid article:nth-child(3n) { border-right:0; }
  .project-photo { height:340px; }
  .project-info { flex-direction:column; gap:20px; }
  .advantages { grid-template-columns:1fr; }
  .advantages div { min-height:145px; }
  .faq-question { grid-template-columns:30px 1fr 25px; gap:12px; min-height:92px; }
  .faq-question>b { font-size:16px; }
  .faq-answer p { margin:0 37px 27px 42px; }
  .contact-meta { grid-template-columns:1fr; gap:28px; }
  .form-fields { grid-template-columns:1fr; gap:0; }
  .lock-system-field { grid-column:auto; }
  .form-row { grid-template-columns:1fr; gap:0; }
  .footer-bottom { flex-direction:column; gap:14px; }
  .catalog-hero { min-height:520px; padding:120px 24px 70px; }
  .catalog-hero h1 { font-size:50px; }
  .category-sidebar { display:flex; flex-direction:row; overflow-x:auto; }
  .category-sidebar>small { display:none; }
  .category-sidebar button { min-width:180px; padding:0 12px; }
  .catalog-category-head { grid-template-columns:1fr; gap:15px; }
  .catalog-card-image { height:300px; }
  .product-detail-image { min-height:420px; }
  .product-detail-intro h1 { font-size:48px; }
  .product-technical dl>div { grid-template-columns:1fr; gap:8px; padding:20px 0; }
  .admin-header { padding:0 20px; }
  .admin-header>div span { display:none; }
  .admin-product-form,.admin-category-panel>form { padding:30px 22px; }
  .admin-form-grid { grid-template-columns:1fr; }
  .admin-actions { align-items:flex-start; flex-direction:column; }
  .admin-product-list article { grid-template-columns:72px 1fr 50px; padding:15px; }
  .admin-product-list article>b { display:none; }
  .admin-product-list article>button { grid-row:2; }
  .admin-list-title { align-items:flex-start; flex-direction:column; gap:10px; }
  .admin-list-title>span { margin-left:0; }
}

/* WordPress integration */
html { margin-top:0!important; }
body.admin-bar .site-header { top:32px; }
.site-header nav>button { appearance:none; }
.wp-language-switch select { max-width:95px; background:transparent; color:#fff; border:1px solid rgba(255,255,255,.25); padding:8px; }
.hero .text-link { background:transparent; border:0; color:#fff; cursor:pointer; font:inherit; }
.home-value .button { border:0; cursor:pointer; }
.catalog-filter-scroll a { flex:0 0 auto; min-height:66px; min-width:165px; padding:0 18px; display:flex; align-items:center; gap:12px; border-left:1px solid rgba(0,0,0,.15); font-size:11px; }
.catalog-filter-scroll a span { color:#b18d56; font-size:13px; }
.catalog-filter-scroll a.active { background:#111; color:#fff; }
.modern-catalog .catalog-grid { padding:0; }
.navigation.pagination { margin-top:55px; }
.nav-links { display:flex; gap:10px; }.nav-links a,.nav-links span { padding:10px 14px; border:1px solid rgba(0,0,0,.14); }
.wp-page-content,.wp-product-content { max-width:1100px; margin:0 auto; padding:100px 24px; font:16px/1.8 Arial,sans-serif; }
.wp-page-content h1,.wp-page-content h2,.wp-product-content h2 { font-family:"Helvetica Neue",Arial,sans-serif; font-weight:400; }
.wp-404 { min-height:70vh; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }.wp-404>small { color:#b18d56; font-size:80px; }
.quote-status { margin-top:15px; color:#755c34; font-size:12px; letter-spacing:0; }
.quote-form-wrap.is-sent form,.quote-form-wrap.is-sent>p,.quote-form-wrap.is-sent>.eyebrow { display:none; }
.quote-form-wrap.is-sent h2 { font-size:48px; }
@media(max-width:782px) { body.admin-bar .site-header { top:46px; } }
@media(max-width:600px) { body.admin-bar .site-header { top:0; } }
@media(hover:none) and (pointer:coarse) {
  .product-row .door-demo.inward .demo-leaf { animation:demoInward 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.outward .demo-leaf { animation:demoOutward 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.double-inward .leaf-a { animation:demoDoubleLeftIn 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.double-inward .leaf-b { animation:demoDoubleRightIn 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.double-outward .leaf-a { animation:demoDoubleLeftOut 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.double-outward .leaf-b { animation:demoDoubleRightOut 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.unequal-double .leaf-a { animation:demoUnequalMain 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.unequal-double .leaf-b { animation:demoUnequalSide 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.rotating .demo-leaf { animation:demoRotateLeaf 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.rotating .rotation-wing { animation:demoRotateWing 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
  .product-row .door-demo.pivot .demo-leaf { animation:demoPivot 5.8s ease-in-out infinite; animation-delay:calc(var(--i) * .35s); }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; animation:none!important; } .hero-film-detail,.hero-film-hardware { display:none; } }

/* Shared multi-page navigation */
.site-header {
  position:fixed; inset:0 0 auto; z-index:100; height:88px; padding:0 4.5vw;
  display:flex; align-items:center; justify-content:space-between; color:#fff;
  background:linear-gradient(180deg,rgba(0,0,0,.55),transparent);
  transition:background .35s ease,border-color .35s ease,backdrop-filter .35s ease;
}
.site-header.scrolled { background:rgba(8,8,7,.82); border-bottom:1px solid rgba(255,255,255,.12); backdrop-filter:blur(16px); }
.site-header nav { display:flex; align-items:center; gap:clamp(15px,2.1vw,38px); }
.site-header nav>a,.site-header .nav-products>a,.site-header nav>button { color:inherit; font-size:11px; letter-spacing:.16em; text-transform:uppercase; white-space:nowrap; }
.site-header .nav-cta { border:1px solid rgba(255,255,255,.45); padding:13px 17px; }
.site-header button.nav-cta { background:transparent; font-family:inherit; cursor:pointer; }
.site-header .nav-products { height:88px; display:flex; align-items:center; position:relative; }
.site-header .nav-submenu { top:74px; min-width:245px; }
.site-header .language-switch { display:flex; align-items:center; gap:7px; margin-left:-10px; color:#c6a268; }
.language-switch select { width:82px; border:0; outline:0; background:transparent; color:#fff; font:inherit; font-size:10px; letter-spacing:.06em; cursor:pointer; padding:7px 3px; }
.language-switch select option { color:#111; background:#fff; }
.language-switch>span { font-size:15px; line-height:1; }
[dir="rtl"] body { text-align:right; }
[dir="rtl"] .site-header { direction:ltr; }
[dir="rtl"] .site-header nav { direction:rtl; }
[dir="rtl"] .eyebrow span { order:2; }
[dir="rtl"] .home-section-heading,[dir="rtl"] .content-split,[dir="rtl"] .custom-page-main,[dir="rtl"] .contact-page-main { direction:rtl; }
[dir="rtl"] .button span,[dir="rtl"] .line-link span,[dir="rtl"] .text-link span { transform:scaleX(-1); }

/* Focused homepage */
.home-intro { padding:145px 9vw; display:grid; grid-template-columns:1.1fr .9fr; gap:9vw; align-items:end; background:#f4f3ef; }
.home-intro h2,.home-section-heading h2,.home-value h2,.home-cta h2,.subpage-hero h1,.content-split h2,.custom-page-specs h2,.factory-page-heading h2,.contact-page-copy h2 { margin:30px 0 0; font-size:clamp(52px,6vw,96px); line-height:.92; font-weight:400; letter-spacing:-.055em; }
.home-intro h2 em,.home-section-heading h2 em,.content-split h2 em,.custom-page-specs h2 em,.factory-page-heading h2 em,.contact-page-copy h2 em { color:#b99761; font-style:normal; }
.home-intro>div:last-child p { font-size:18px; line-height:1.85; color:#67645e; max-width:630px; }
.line-link { display:inline-flex; gap:22px; margin-top:34px; padding-bottom:8px; border-bottom:1px solid #b99761; text-transform:uppercase; letter-spacing:.16em; font-size:10px; }
.home-products { padding:140px 7vw 150px; background:#fff; }
.home-section-heading { display:grid; grid-template-columns:1.35fr .65fr; gap:8vw; align-items:end; margin-bottom:70px; }
.home-section-heading>p { color:#6e6b65; font-size:17px; line-height:1.8; }
.home-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:44px 24px; }
.home-product-card { display:block; color:#111; }
.home-product-card>div { height:440px; background-size:cover; background-position:center; position:relative; overflow:hidden; transition:transform .4s ease; }
.home-product-card:hover>div { transform:translateY(-5px); }
.home-product-card>div span { position:absolute; top:22px; left:22px; color:#d1ae74; font-size:19px; }
.home-product-card>div small { position:absolute; left:22px; bottom:20px; color:#fff; letter-spacing:.14em; }
.home-product-card h3 { font-size:24px; font-weight:400; margin:22px 0 13px; }
.home-product-card b { font-size:9px; letter-spacing:.18em; text-transform:uppercase; }
.home-products-link { margin:65px auto 0; width:max-content; display:flex; }
.home-opening-systems { margin:130px -3vw -10px; padding:100px 5vw 70px; background:#090909; color:#fff; }
.opening-heading { display:grid; grid-template-columns:1.2fr .8fr; gap:8vw; align-items:end; margin-bottom:58px; }
.opening-heading h2 { margin:28px 0 0; font-size:clamp(50px,5.5vw,82px); font-weight:400; line-height:.94; letter-spacing:-.05em; }
.opening-heading h2 em { color:#c19d63; font-style:normal; }
.opening-heading>p { color:rgba(255,255,255,.5); font-size:14px; line-height:1.8; }
.home-opening-systems .product-list { margin-left:0; margin-bottom:0; }
.home-value { padding:140px 8vw; display:grid; grid-template-columns:1fr 1fr; gap:9vw; background:#090909; color:#fff; }
.home-value h2 em,.home-cta h2 em,.subpage-hero h1 em { color:#c19d63; font-style:normal; }
.home-value-copy .button { margin-top:52px; }
.home-value-grid { border-top:1px solid rgba(255,255,255,.18); }
.home-value-grid div { min-height:112px; display:grid; grid-template-columns:55px 1fr; align-items:center; border-bottom:1px solid rgba(255,255,255,.18); }
.home-value-grid small { color:#c19d63; font-size:14px; }
.home-value-grid strong { font-size:21px; font-weight:400; }
.home-cta { padding:110px 8vw; display:flex; justify-content:space-between; align-items:end; gap:50px; background:#171715; color:#fff; }
.home-cta h2 { font-size:clamp(45px,5vw,78px); }
.home-location-map { min-height:620px; display:grid; grid-template-columns:minmax(390px,.72fr) 1.28fr; overflow:hidden; background:#d7d5cf; }
.home-location-map iframe { display:block; width:100%; height:620px; border:0; filter:none; }
.map-location-card { position:relative; display:flex; flex-direction:column; justify-content:center; width:auto; padding:70px 6vw; background:#0b0b0a; color:#fff; }
.map-location-card>small { color:#c19d63; font-size:9px; letter-spacing:.2em; }
.map-location-card h2 { margin:25px 0; font-size:clamp(45px,4.5vw,70px); font-weight:400; line-height:.94; letter-spacing:-.05em; }
.map-location-card h2 em { color:#c19d63; font-style:normal; }
.map-location-card p { color:rgba(255,255,255,.55); font-size:14px; line-height:1.75; }
.map-location-card .map-view-link { align-self:flex-start; display:inline-flex; gap:25px; margin-top:30px; padding-bottom:8px; border-bottom:1px solid #c19d63; color:#fff; font-size:9px; letter-spacing:.18em; text-transform:uppercase; }
.map-contact-lines { display:flex; flex-direction:column; gap:8px; margin-top:18px; color:rgba(255,255,255,.72); font-size:12px; }

/* Standalone pages */
.subpage-hero { min-height:700px; padding:190px 9vw 105px; display:flex; align-items:end; color:#fff; background-size:cover; background-position:center; position:relative; }
.subpage-hero:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.79),rgba(0,0,0,.12)); }
.subpage-hero>div { position:relative; max-width:920px; }
.subpage-hero h1 { font-size:clamp(70px,8vw,124px); }
.subpage-hero p { max-width:650px; margin:32px 0 0; line-height:1.75; color:rgba(255,255,255,.78); font-size:17px; }
.about-hero { background-image:url("../images/paifeilai-about-hero.png"); background-position:center; }
.projects-hero { background-image:url("../images/paifeilai-projects-hero-v2.png"); background-position:center; }
.custom-hero { background-image:url("../images/paifeilai-custom-hero.png"); background-position:center; }
.factory-hero { background-image:url("../images/paifeilai-factory.png"); background-position:center; }
.contact-hero { background-image:url("../images/paifeilai-one-door-one-scene.png"); }
.faq-hero { background-image:url("../images/paifeilai-faq-hero.png"); background-position:center; }
.faq-page-content { padding-left:8vw; padding-right:8vw; }
.faq-page-content .faq-heading,.faq-page-content .faq-list { margin-left:0; }
.content-split { padding:130px 8vw; display:grid; grid-template-columns:1fr 1fr; gap:8vw; align-items:center; }
.content-image { min-height:720px; background-size:cover; background-position:center; }
.about-content-image { background-image:url("../images/paifeilai-about-team.png"); background-position:center; }
.content-split p,.custom-page-specs>p,.contact-page-copy>p { color:#67645e; line-height:1.85; font-size:17px; margin-top:38px; }
.dark-section { background:#090909; color:#fff; }
.about-values { padding:130px 8vw; }
.about-values>.home-section-heading { grid-template-columns:1fr; }
.about-values>div:last-child { display:grid; grid-template-columns:repeat(2,1fr); }
.about-values article { min-height:260px; border:1px solid rgba(255,255,255,.16); padding:35px; }
.about-values article small { color:#c19d63; }.about-values article h3 { font-size:26px; font-weight:400; margin:44px 0 18px; }.about-values article p { color:#999; line-height:1.65; }
.custom-page-main { padding:120px 7vw; display:grid; grid-template-columns:1fr 1fr; gap:8vw; align-items:center; }
.custom-page-main .custom-visual { margin:0; min-height:820px; height:78vh; max-height:940px; }
.custom-page-specs .spec-grid { margin-top:55px; }
.factory-page-process { background:#090909; color:#fff; padding:130px 7vw 0; }
.factory-page-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:80px; }
.factory-page-heading>div { display:flex; flex-direction:column; color:#c19d63; }.factory-page-heading>div small { font-size:64px; }.factory-page-heading>div span { letter-spacing:.15em; font-size:9px; text-transform:uppercase; }
.factory-page-heading h2 { text-align:right; }.factory-page-heading h2 em { color:#c19d63; }
.factory-page-process .process-grid { padding:0 0 110px; }
.subpage-projects { padding-top:120px; padding-bottom:120px; }
.contact-page-main { padding:120px 8vw; display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; align-items:start; }
.contact-page-copy>div:last-child { display:flex; flex-direction:column; margin-top:65px; gap:12px; }
.contact-page-copy>div:last-child small { color:#9a968f; letter-spacing:.16em; margin-bottom:8px; }
.contact-page-copy>div:last-child a { font-size:22px; }
.contact-page-main form { margin:0; }

@media(max-width:1100px) {
  .site-header { height:76px; padding:0 24px; }
  .site-header .menu-button { display:flex; }
  .site-header nav { display:none; position:absolute; top:76px; left:0; right:0; padding:28px 24px 36px; background:rgba(8,8,7,.97); flex-direction:column; align-items:flex-start; gap:22px; }
  .site-header nav.open { display:flex; }
  .site-header .nav-products { height:auto; display:block; }
  .site-header .nav-submenu { display:none; }
  .site-header .language-switch { margin:4px 0 0; }
  .home-product-grid { grid-template-columns:repeat(2,1fr); }
  .opening-heading { grid-template-columns:1fr; gap:25px; }
  .home-intro,.home-value,.content-split,.custom-page-main,.contact-page-main { grid-template-columns:1fr; }
  .custom-page-main .custom-visual { order:0; }
  .factory-page-heading { display:block; }.factory-page-heading h2 { text-align:left; margin-top:45px; }
}
@media(max-width:650px) {
  .home-intro,.home-products,.home-value,.about-values,.content-split,.custom-page-main,.contact-page-main { padding-left:24px; padding-right:24px; }
  .home-section-heading { grid-template-columns:1fr; gap:28px; }
  .home-product-grid,.about-values>div:last-child { grid-template-columns:1fr; }
  .home-opening-systems { margin:100px 0 -20px; padding:72px 20px 50px; }
  .home-product-card>div { height:390px; }
  .home-cta { padding:75px 24px; align-items:flex-start; flex-direction:column; }
  .home-location-map { display:flex; flex-direction:column; min-height:0; height:auto; }
  .home-location-map iframe { min-height:430px; height:430px; }
  .map-location-card { width:auto; padding:70px 24px; }
  .subpage-hero { min-height:590px; padding:150px 24px 75px; }
  .subpage-hero h1 { font-size:54px; }
  .content-image { min-height:480px; }
  .custom-page-main .custom-visual { min-height:560px; height:68vh; }
  .factory-page-process { padding:90px 24px 0; }
}

/* 1.0.9 — Editorial art direction: clearer hierarchy, quieter surfaces, stronger product rhythm */
:root { --ink:#0d0d0c; --paper:#f5f4f0; --muted:#686660; --line:rgba(13,13,12,.16); --champagne:#bd9a62; }
.hero { min-height:100svh; }
.hero:after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(4,5,5,.63),rgba(4,5,5,.13) 62%,rgba(4,5,5,.32)); }
.hero-content-editorial { position:relative; z-index:3; width:min(680px,82vw); margin-top:86px; }
.hero-content-editorial .eyebrow { margin-bottom:28px; }
.hero-content-editorial h1 { max-width:680px; font-size:clamp(60px,7.55vw,118px); line-height:.84; letter-spacing:-.072em; }
.hero-content-editorial h1 em { display:inline-block; margin-top:13px; }
.hero-intro-line { display:flex; align-items:flex-start; justify-content:space-between; gap:35px; max-width:520px; margin-top:30px; padding-top:18px; border-top:1px solid rgba(255,255,255,.42); }
.hero-intro-line p { max-width:370px; margin:0; color:rgba(255,255,255,.82); font-size:14px; line-height:1.65; }
.hero-intro-line span { color:var(--champagne); font-size:9px; letter-spacing:.16em; white-space:nowrap; }
.hero-content-editorial .hero-actions { margin-top:34px; }
.hero .smart-feature-panel { z-index:4; border-left:1px solid rgba(189,154,98,.55); border-radius:0; background:rgba(6,6,5,.68); backdrop-filter:blur(12px); }

.home-intro-editorial { grid-template-columns:.53fr 1.25fr .8fr; gap:clamp(30px,5.2vw,92px); align-items:start; padding-top:clamp(95px,10vw,160px); padding-bottom:clamp(95px,10vw,160px); }
.home-intro-editorial .eyebrow { margin:0 0 52px; }
.home-intro-mark small { color:#8e887d; font-size:9px; letter-spacing:.17em; }
.home-intro-statement h2 { margin:0; max-width:710px; font-size:clamp(48px,5.4vw,84px); line-height:.9; }
.home-intro-details { padding-top:10px; }
.home-intro-details p { max-width:365px; margin:0; font-size:15px; line-height:1.85; color:var(--muted); }
.home-intro-details .line-link { margin-top:39px; }

.brand-film { padding-top:0; background:var(--paper); }
.brand-film .film-copy { display:grid; grid-template-columns:.55fr 1.2fr; align-items:end; gap:clamp(28px,5vw,90px); max-width:none; padding:clamp(78px,8vw,122px) 0 48px; margin:0; }
.brand-film .film-copy h2 { margin:0; font-size:clamp(45px,5.4vw,78px); line-height:.9; }
.brand-film .film-copy .eyebrow { margin:0; }
.film-frame { max-width:none; }
.film-preview { min-height:clamp(380px,48vw,660px); }

.home-products-editorial { background:#fff; }
.home-products-editorial .home-section-heading { grid-template-columns:1.15fr .55fr; align-items:end; margin-bottom:64px; }
.home-products-editorial .home-section-heading h2 { font-size:clamp(48px,5.7vw,89px); }
.home-products-side { padding-bottom:5px; }
.home-products-side p { max-width:430px; margin:0; color:var(--muted); font-size:14px; line-height:1.82; }
.home-products-side .line-link { margin-top:27px; }
.home-products-editorial .home-product-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:64px 26px; align-items:start; }
.home-products-editorial .home-product-card { grid-column:span 4; }
.home-products-editorial .home-product-card:nth-child(1),.home-products-editorial .home-product-card:nth-child(4) { grid-column:span 7; }
.home-products-editorial .home-product-card:nth-child(2),.home-products-editorial .home-product-card:nth-child(5) { grid-column:span 5; padding-top:120px; }
.home-products-editorial .home-product-card:nth-child(3),.home-products-editorial .home-product-card:nth-child(6) { grid-column:span 5; }
.home-products-editorial .home-product-card:nth-child(3) { margin-left:calc(100% + 26px); }
.home-products-editorial .home-product-card>div { height:clamp(355px,42vw,650px); background-position:center; transform:none!important; }
.home-products-editorial .home-product-card:nth-child(2)>div,.home-products-editorial .home-product-card:nth-child(5)>div { height:clamp(300px,31vw,490px); }
.home-products-editorial .home-product-card:nth-child(3)>div,.home-products-editorial .home-product-card:nth-child(6)>div { height:clamp(300px,32vw,500px); }
.home-products-editorial .home-product-card>div:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.42)); opacity:0; transition:opacity .35s ease; }
.home-products-editorial .home-product-card:hover>div:after { opacity:1; }
.home-product-card-meta { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:16px; border-top:1px solid var(--line); }
.home-product-card h3 { margin:0; font-size:clamp(20px,1.9vw,30px); letter-spacing:-.035em; }
.home-product-card b { display:flex; align-items:center; gap:10px; color:#31302c; font-size:8px; letter-spacing:.16em; white-space:nowrap; }
.home-product-card b i { display:inline-grid; place-items:center; width:22px; height:22px; border:1px solid rgba(0,0,0,.25); border-radius:50%; font-style:normal; font-size:12px; }
.home-products-editorial .home-opening-systems { margin-top:clamp(100px,12vw,180px); }

.catalog-hero-refresh { min-height:680px; padding-bottom:78px; background-position:center; }
.catalog-hero-layout { grid-template-columns:minmax(0,1.1fr) minmax(300px,.46fr); min-height:430px; }
.catalog-hero-refresh h1 { max-width:900px; font-size:clamp(60px,7.1vw,112px); line-height:.85; }
.catalog-hero-refresh h1 em { margin-top:16px; }
.catalog-hero-points { max-width:380px; justify-self:end; }
.catalog-filter { grid-template-columns:230px minmax(0,1fr); gap:28px 50px; padding-top:38px; padding-bottom:38px; }
.catalog-filter-heading strong { font-size:24px!important; line-height:1.1; }
.catalog-filter-buttons { gap:8px; }
.catalog-filter-buttons :is(button,a) { min-height:42px; padding:0 14px; border-radius:100px; font-size:9px; }
.catalog-filter-buttons :is(button,a) span { font-size:10px; }
.catalog-series-link { margin-top:3px; }
.modern-catalog .catalog-results { padding-top:92px; }
.modern-catalog .catalog-grid { grid-template-columns:repeat(12,minmax(0,1fr)); gap:72px 26px; }
.modern-catalog .catalog-card { grid-column:span 6; display:grid; grid-template-columns:1fr; border:0; background:transparent; }
.modern-catalog .catalog-card:nth-child(3n+2) { margin-top:110px; }
.modern-catalog .catalog-card-image { height:clamp(390px,41vw,620px); }
.modern-catalog .catalog-card-copy { padding:17px 0 0; }
.catalog-card-copy>small { color:#9d7c49; font-size:8px; letter-spacing:.19em; }
.catalog-card h3 { margin:10px 0 8px; font-size:clamp(25px,2.3vw,36px); line-height:1; }
.catalog-card p { max-width:520px; font-size:13px; line-height:1.72; }
.catalog-card-parameters { display:grid; grid-template-columns:repeat(2,1fr); gap:0 20px; margin:24px 0; }
.catalog-card-parameters>div { display:block; padding:10px 0; }
.catalog-card-parameters dt,.catalog-card-parameters dd { text-align:left; }
.catalog-card-parameters dd { margin-top:5px; font-size:11px; }

@media(max-width:900px) {
  .home-intro-editorial { grid-template-columns:1fr; gap:28px; }
  .home-intro-editorial .eyebrow { margin-bottom:0; }
  .home-intro-details { padding-top:6px; }
  .brand-film .film-copy { grid-template-columns:1fr; gap:24px; }
  .home-products-editorial .home-section-heading { grid-template-columns:1fr; gap:28px; }
  .home-products-editorial .home-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:44px 20px; }
  .home-products-editorial .home-product-card,.home-products-editorial .home-product-card:nth-child(n) { grid-column:auto; margin:0; padding-top:0; }
  .home-products-editorial .home-product-card:nth-child(2)>div,.home-products-editorial .home-product-card:nth-child(5)>div,.home-products-editorial .home-product-card:nth-child(3)>div,.home-products-editorial .home-product-card:nth-child(6)>div { height:clamp(330px,48vw,500px); }
  .catalog-hero-refresh { min-height:600px; }
  .catalog-hero-layout { grid-template-columns:1fr; gap:36px; min-height:400px; }
  .catalog-hero-points { justify-self:start; }
  .modern-catalog .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px 20px; }
  .modern-catalog .catalog-card { grid-column:auto; }
  .modern-catalog .catalog-card:nth-child(3n+2) { margin-top:60px; }
}
@media(max-width:650px) {
  .hero-content-editorial { margin-top:44px; }
  .hero-content-editorial h1 { font-size:clamp(54px,15vw,72px); }
  .hero-intro-line { gap:18px; margin-top:24px; }
  .hero-intro-line p { font-size:13px; }
  .home-intro-editorial { padding-top:82px; padding-bottom:82px; }
  .home-intro-statement h2 { font-size:clamp(42px,12vw,62px); }
  .brand-film .film-copy { padding:70px 0 36px; }
  .home-products-editorial .home-product-grid { grid-template-columns:1fr; gap:38px; }
  .home-products-editorial .home-product-card:nth-child(n)>div { height:clamp(330px,105vw,460px); }
  .home-product-card h3 { font-size:25px; }
  .catalog-hero-refresh { min-height:545px; }
  .catalog-hero-refresh h1 { font-size:clamp(51px,14vw,70px); }
  .catalog-filter { padding-top:30px; padding-bottom:30px; }
  .modern-catalog .catalog-results { padding-top:62px; }
  .modern-catalog .catalog-grid { grid-template-columns:1fr; gap:44px; }
  .modern-catalog .catalog-card:nth-child(3n+2) { margin-top:0; }
  .modern-catalog .catalog-card-image { height:clamp(350px,108vw,480px); }
}

/* Parameter-led product catalog */
.modern-catalog { display:block; padding-top:0; }
.catalog-filter { position:sticky; top:88px; z-index:20; padding:25px 7vw; background:rgba(244,244,241,.96); border-bottom:1px solid rgba(0,0,0,.13); backdrop-filter:blur(14px); display:grid; grid-template-columns:230px 1fr; align-items:center; gap:30px; }
.catalog-filter>div:first-child { display:flex; flex-direction:column; gap:8px; }
.catalog-filter>div:first-child small { color:#9c7c4c; font-size:8px; letter-spacing:.2em; }
.catalog-filter>div:first-child strong { font-size:19px; font-weight:400; }
.catalog-filter-scroll { display:flex; overflow-x:auto; scrollbar-width:thin; }
.catalog-filter-scroll button { flex:0 0 auto; min-height:66px; min-width:165px; padding:0 18px; display:flex; align-items:center; gap:12px; border:0; border-left:1px solid rgba(0,0,0,.15); background:transparent; font:inherit; font-size:11px; text-align:left; cursor:pointer; }
.catalog-filter-scroll button span { color:#b18d56; font-size:13px; }
.catalog-filter-scroll button.active { background:#111; color:#fff; }
.modern-catalog .catalog-results { padding:90px 7vw 130px; }
.modern-catalog .catalog-category { margin-bottom:110px; }
.modern-catalog .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px; }
.modern-catalog .catalog-card { background:#fff; border:1px solid rgba(0,0,0,.1); }
.modern-catalog .catalog-card-image { height:480px; }
.modern-catalog .catalog-card-copy { padding:30px 30px 34px; }
.catalog-card-parameters { margin:25px 0 26px; border-top:1px solid rgba(0,0,0,.12); }
.catalog-card-parameters>div { display:grid; grid-template-columns:.8fr 1.2fr; gap:18px; padding:11px 0; border-bottom:1px solid rgba(0,0,0,.1); }
.catalog-card-parameters dt { color:#8a867e; font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.catalog-card-parameters dd { margin:0; color:#252522; font-size:11px; line-height:1.45; text-align:right; }

/* Global quote drawer */
.quote-rail { position:fixed; z-index:120; right:0; top:52%; transform:translateY(-50%); width:54px; height:220px; border:0; border-radius:22px 0 0 22px; background:#080808; color:#fff; cursor:pointer; box-shadow:0 8px 30px rgba(0,0,0,.25); }
.quote-rail span { position:absolute; left:50%; top:54%; width:185px; white-space:nowrap; text-align:center; transform:translate(-50%,-50%) rotate(-90deg); transform-origin:center; font-size:11px; line-height:1; letter-spacing:.14em; font-weight:600; }
.quote-rail:after { content:"↗"; position:absolute; top:18px; left:50%; transform:translateX(-50%); color:#c29d63; }
.quote-overlay { position:fixed; inset:0; z-index:200; background:rgba(0,0,0,.58); opacity:0; visibility:hidden; transition:.35s ease; backdrop-filter:blur(4px); }
.quote-overlay.open { opacity:1; visibility:visible; }
.quote-drawer { position:absolute; right:0; top:0; bottom:0; width:min(620px,100%); padding:72px 65px 50px; overflow-y:auto; background:#f1f0ec; color:#111; transform:translateX(100%); transition:transform .55s cubic-bezier(.2,.75,.2,1); }
.quote-overlay.open .quote-drawer { transform:translateX(0); }
.quote-close { position:absolute; top:22px; right:25px; width:42px; height:42px; border:1px solid rgba(0,0,0,.2); border-radius:50%; background:transparent; font-size:26px; cursor:pointer; }
.quote-drawer h2 { margin:28px 0 25px; font-size:clamp(52px,5vw,76px); line-height:.92; font-weight:400; letter-spacing:-.055em; }
.quote-drawer h2 em { color:#b18d56; font-style:normal; }
.quote-drawer>p { color:#6d6962; line-height:1.75; margin-bottom:35px; }
.quote-drawer form { margin:0; padding:0; background:transparent; }
.quote-fields { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; }
.quote-drawer label { color:#77736c; font-size:8px; letter-spacing:.16em; }
.quote-drawer input,.quote-drawer select,.quote-drawer textarea { width:100%; margin:9px 0 24px; padding:11px 0; border:0; border-bottom:1px solid rgba(0,0,0,.28); background:transparent; color:#111; font:14px Arial,sans-serif; outline:0; }
.quote-drawer textarea { resize:vertical; }
.quote-drawer .submit { width:100%; margin-top:10px; }
.quote-success { min-height:80vh; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.quote-success>small { color:#b18d56; letter-spacing:.2em; }.quote-success>span { margin:35px 0 20px; font-size:42px; color:#b18d56; }.quote-success h2 { margin:0 0 20px; }.quote-success p { color:#68645e; line-height:1.7; max-width:430px; }.quote-success button { margin-top:30px; padding:15px 22px; background:#111; color:#fff; border:0; cursor:pointer; }

@media(max-width:900px) {
  .catalog-filter { top:76px; grid-template-columns:1fr; gap:16px; padding:20px 24px; }
  .catalog-filter>div:first-child { display:none; }
  .modern-catalog .catalog-results { padding:70px 24px 100px; }
  .modern-catalog .catalog-grid { grid-template-columns:1fr; }
  .modern-catalog .catalog-card-image { height:420px; }
}
@media(max-width:560px) {
  .quote-rail { width:44px; height:182px; }
  .quote-rail span { width:150px; font-size:9px; }
  .quote-drawer { padding:68px 24px 40px; }
  .quote-fields { grid-template-columns:1fr; }
  .catalog-filter-scroll button { min-width:145px; }
  .modern-catalog .catalog-card-image { height:330px; }
  .catalog-card-parameters>div { grid-template-columns:1fr; gap:5px; }
  .catalog-card-parameters dd { text-align:left; }
}

/* Products page: editorial hero and category filters */
.catalog-hero-refresh { min-height:620px; padding:160px 8vw 74px; background-position:center; }
.catalog-hero-layout { min-height:386px; max-width:1320px; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(260px,.55fr); gap:90px; align-items:end; }
.catalog-hero-refresh h1 { max-width:860px; margin:0; font-size:clamp(62px,7vw,112px); line-height:.88; letter-spacing:-.065em; }
.catalog-hero-refresh h1 em { display:inline-block; margin-top:12px; }
.catalog-hero-points { display:flex; flex-direction:column; gap:0; border-top:1px solid rgba(255,255,255,.35); }
.catalog-hero-points span { padding:16px 0; border-bottom:1px solid rgba(255,255,255,.22); color:rgba(255,255,255,.9); font-size:9px; letter-spacing:.18em; }
.catalog-hero-points span::before { content:"/"; margin-right:11px; color:var(--gold); }

.modern-catalog { padding:0; background:#f4f4f1; }
.catalog-filter { position:relative; top:auto; display:grid; grid-template-columns:280px minmax(0,1fr); gap:34px 60px; padding:52px 8vw 46px; background:#f4f4f1; border-bottom:1px solid rgba(0,0,0,.14); backdrop-filter:none; }
.catalog-filter-heading { display:flex !important; flex-direction:column; justify-content:center; gap:10px !important; }
.catalog-filter-heading small { color:#9c7c4c; font-size:9px; letter-spacing:.21em; }
.catalog-filter-heading strong { max-width:250px; font-size:26px !important; line-height:1.08; font-weight:400; }
.catalog-filter-buttons { display:flex; flex-wrap:wrap; gap:10px; align-content:center; }
.catalog-filter-buttons :is(button,a) { min-width:0; min-height:48px; padding:0 17px; display:inline-flex; align-items:center; gap:11px; border:1px solid rgba(0,0,0,.19); background:transparent; color:#1b1b19; font:500 10px/1 Arial,sans-serif; letter-spacing:.025em; text-decoration:none; cursor:pointer; transition:background .24s,color .24s,border-color .24s; }
.catalog-filter-buttons :is(button,a):hover,.catalog-filter-buttons :is(button,a).active { background:#151513; color:#fff; border-color:#151513; }
.catalog-filter-buttons :is(button,a) span { color:#af8d56; font-size:12px; }
.catalog-filter-buttons :is(button,a).active span { color:#d9ba81; }
.catalog-series-link { grid-column:2; justify-self:start; display:inline-flex; align-items:center; gap:22px; padding-bottom:7px; border-bottom:1px solid #b18d56; color:#222; font-size:9px; letter-spacing:.16em; }
.catalog-series-link b { color:#ae8950; font-size:16px; font-weight:400; line-height:.8; }
.catalog-card[hidden] { display:none !important; }
.modern-catalog .catalog-results { padding-top:72px; }

@media(max-width:900px) {
  .catalog-hero-refresh { min-height:560px; padding:135px 24px 56px; background-position:60% center; }
  .catalog-hero-layout { min-height:360px; grid-template-columns:1fr; gap:38px; align-content:end; }
  .catalog-hero-refresh h1 { font-size:clamp(54px,12vw,84px); }
  .catalog-hero-points { display:grid; grid-template-columns:repeat(3,1fr); }
  .catalog-hero-points span { padding:12px 10px 12px 0; font-size:8px; line-height:1.45; }
  .catalog-filter { grid-template-columns:1fr; gap:28px; padding:38px 24px 34px; }
  .catalog-filter-heading strong { max-width:none; }
  .catalog-series-link { grid-column:auto; }
}
@media(max-width:560px) {
  .catalog-hero-refresh { min-height:510px; }
  .catalog-hero-layout { min-height:330px; }
  .catalog-hero-points { grid-template-columns:1fr; }
  .catalog-filter-buttons { gap:8px; }
  .catalog-filter-buttons :is(button,a) { min-height:44px; padding:0 13px; font-size:9px; }
}

/* WordPress blog */
.blog-hero { min-height:520px; padding:178px 8vw 72px; color:#fff; background:linear-gradient(110deg,rgba(7,7,6,.96),rgba(15,15,12,.69)),url("../images/paifeilai-blog-hero.png") center/cover; }
.blog-hero h1 { margin:24px 0 20px; font-size:clamp(58px,7vw,104px); line-height:.88; letter-spacing:-.06em; }
.blog-hero p { max-width:420px; color:rgba(255,255,255,.68); font-size:13px; line-height:1.8; }
.blog-topics { display:flex; flex-wrap:wrap; gap:9px; margin-top:30px; }
.blog-topics a { padding:9px 12px; border:1px solid rgba(255,255,255,.34); color:#fff; font-size:9px; letter-spacing:.12em; text-transform:uppercase; transition:background .2s,color .2s; }
.blog-topics a:hover { background:#c19d63; border-color:#c19d63; color:#161613; }
.blog-listing { padding:95px 8vw 130px; background:#f4f4f1; }
.blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.blog-card { background:#fff; border:1px solid rgba(0,0,0,.1); }
.blog-card-image { display:block; height:280px; background-size:cover; background-position:center; }
.blog-card>div { padding:27px 27px 30px; }
.blog-card small { color:#a18150; font-size:9px; letter-spacing:.16em; }
.blog-card h2 { margin:15px 0 13px; font-size:27px; line-height:1.06; font-weight:400; }
.blog-card h2 a { color:#151513; }
.blog-card p { min-height:58px; margin:0 0 22px; color:#6d6961; font-size:11px; line-height:1.75; }
.blog-card .line-link { color:#201f1c; font-size:9px; letter-spacing:.14em; }
.blog-empty { max-width:680px; padding:80px 0; border-top:1px solid rgba(0,0,0,.16); }
.blog-empty small { color:#b18d56; font-size:14px; }
.blog-empty h2 { margin:16px 0; font-size:clamp(36px,4vw,58px); font-weight:400; }
.blog-empty p { max-width:460px; color:#68645e; line-height:1.8; }
.blog-listing .page-numbers { display:inline-flex; margin-top:48px; padding:10px 13px; border:1px solid rgba(0,0,0,.15); color:#222; font-size:11px; }
@media(max-width:900px) {
  .blog-hero { min-height:470px; padding:150px 24px 58px; }
  .blog-listing { padding:70px 24px 100px; }
  .blog-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:560px) {
  .blog-grid { grid-template-columns:1fr; }
  .blog-card-image { height:245px; }
}

/* Projects page */
.subpage-projects { padding:120px 8vw; background:#f4f4f1; }
.subpage-projects .home-section-heading { margin-bottom:80px; }
.subpage-projects .project-grid { margin-left:0; }
.project-delivery-support { padding:125px 8vw; background:#fff; }
.project-delivery-support>div:first-child { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:end; max-width:1120px; }
.project-delivery-support h2 { margin:30px 0 0; font-size:clamp(48px,5vw,78px); line-height:.92; font-weight:400; letter-spacing:-.055em; }
.project-delivery-support h2 em { color:#b99761; font-style:normal; }
.project-delivery-support .buyer-support { margin:72px 0 0; }
@media(max-width:650px) {
  .subpage-projects,.project-delivery-support { padding:80px 24px; }
  .subpage-projects .home-section-heading { margin-bottom:55px; }
  .project-delivery-support>div:first-child { grid-template-columns:1fr; gap:0; }
}

/* Sitewide typography and spacing system */
:root {
  --font-ui: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
  --space-section: clamp(76px, 8vw, 132px);
  --space-content: clamp(22px, 2.6vw, 42px);
}
html,body { overflow-x:hidden; }
body { font-family:var(--font-ui); font-size:16px; line-height:1.6; letter-spacing:0; }
button,input,select,textarea { font-family:var(--font-ui); }
h1,h2,h3,h4,h5,h6 { font-family:var(--font-ui); font-weight:400; letter-spacing:-.045em; }
h1 em,h2 em { font-weight:400; }
p { margin-bottom:0; }
.eyebrow { margin-bottom:22px; gap:12px; font-size:9px; letter-spacing:.2em; }
.eyebrow>span { width:30px; }
.button { min-width:194px; padding:16px 20px; font-size:9px; letter-spacing:.16em; }
.line-link { min-width:0; gap:18px; margin-top:28px; padding-bottom:9px; font-size:9px; }

.site-header { height:80px; padding:0 clamp(24px,4.5vw,78px); }
.site-header .wordmark span { font-size:20px; letter-spacing:.17em; }
.site-header .wordmark small { font-size:7px; letter-spacing:.24em; }
.site-header nav { gap:clamp(12px,1.45vw,28px); }
.site-header nav>a,.site-header .nav-products>a,.site-header nav>button { font-size:10px; letter-spacing:.12em; }
.site-header .nav-products { height:80px; }
.site-header .nav-submenu { top:70px; }
.site-header .nav-cta { padding:12px 15px; }

.hero-content { width:min(620px,82vw); margin-top:60px; margin-left:clamp(24px,9vw,160px); }
.hero h1 { font-size:clamp(54px,6.8vw,102px); line-height:.91; margin-bottom:24px; }
.hero p { max-width:510px; font-size:15px; line-height:1.75; }
.hero-actions { gap:24px; margin-top:32px; }
.smart-feature-panel { right:clamp(24px,4.5vw,80px); bottom:30px; width:min(340px,calc(100vw - 48px)); }

.home-intro,.home-products,.home-value,.brand-film,.about-values,.content-split,.custom-page-main,.factory-page-process,.contact-page-main,.subpage-projects,.project-delivery-support,.blog-listing { padding-top:var(--space-section); padding-bottom:var(--space-section); }
.home-intro { padding-left:clamp(24px,9vw,160px); padding-right:clamp(24px,9vw,160px); gap:clamp(48px,8vw,140px); }
.home-intro h2,.home-section-heading h2,.home-value h2,.home-cta h2,.subpage-hero h1,.content-split h2,.custom-page-specs h2,.factory-page-heading h2,.contact-page-copy h2 { margin-top:22px; font-size:clamp(44px,5.6vw,88px); line-height:.95; }
.home-intro>div:last-child p,.home-section-heading>p,.content-split p,.custom-page-specs>p,.contact-page-copy>p { font-size:16px; line-height:1.8; }
.brand-film { padding-left:clamp(24px,8vw,140px); padding-right:clamp(24px,8vw,140px); }
.film-copy { max-width:840px; margin-bottom:42px; }
.film-copy h2 { font-size:clamp(42px,5vw,76px); margin-bottom:20px; }
.film-copy p { font-size:14px; }

.home-products { padding-left:clamp(24px,7vw,120px); padding-right:clamp(24px,7vw,120px); }
.home-section-heading { gap:clamp(36px,7vw,120px); margin-bottom:52px; }
.home-product-grid { gap:42px 24px; }
.home-product-card>div { height:clamp(330px,31vw,450px); }
.home-product-card h3 { margin:17px 0 10px; font-size:22px; line-height:1.15; }
.home-product-card b { font-size:9px; }
.home-opening-systems { margin-top:110px; padding:82px clamp(24px,5vw,82px) 60px; }
.opening-heading { gap:clamp(35px,7vw,110px); margin-bottom:40px; }
.opening-heading h2 { font-size:clamp(42px,5vw,76px); margin-top:22px; }
.opening-heading>p { font-size:14px; }
.product-row { min-height:118px; grid-template-columns:58px minmax(210px,1.2fr) minmax(150px,.75fr) 140px 42px; gap:22px; }
.product-no { font-size:20px; }
.product-name { gap:7px; font-size:25px; }
.product-desc { font-size:9px; }
.door-demo { transform:scale(.92); transform-origin:center; }
.home-value { padding-left:clamp(24px,8vw,140px); padding-right:clamp(24px,8vw,140px); gap:clamp(48px,8vw,130px); }
.home-value-grid div { min-height:96px; }
.home-value-grid strong { font-size:19px; }
.home-cta { padding:clamp(70px,8vw,112px) clamp(24px,8vw,140px); }

.subpage-hero { min-height:620px; padding:150px clamp(24px,9vw,160px) 82px; }
.subpage-hero h1 { font-size:clamp(54px,7vw,108px); line-height:.92; }
.subpage-hero p { margin-top:24px; font-size:16px; line-height:1.75; }
.content-split,.custom-page-main,.contact-page-main { padding-left:clamp(24px,8vw,140px); padding-right:clamp(24px,8vw,140px); gap:clamp(48px,8vw,140px); }
.content-image { min-height:clamp(480px,48vw,700px); }
.about-values { padding-left:clamp(24px,8vw,140px); padding-right:clamp(24px,8vw,140px); }
.about-values article { min-height:235px; padding:30px; }
.about-values article h3 { margin:34px 0 14px; font-size:23px; }
.about-values article p { font-size:14px; }
.custom-page-main .custom-visual { min-height:clamp(540px,58vw,820px); height:auto; }
.spec-grid { margin-bottom:32px; }
.spec-grid div { padding:15px 0; gap:16px; }
.spec-grid strong { font-size:16px; }
.factory-page-process { padding-left:clamp(24px,7vw,120px); padding-right:clamp(24px,7vw,120px); }
.factory-page-heading { margin-bottom:58px; }
.factory-page-heading>div small { font-size:56px; }
.process-grid article { min-height:235px; padding:34px 28px; }
.process-grid h3 { margin:36px 0 13px; font-size:21px; }

.catalog-hero-refresh { min-height:590px; padding:145px clamp(24px,8vw,140px) 64px; }
.catalog-hero-layout { min-height:360px; gap:70px; }
.catalog-hero-refresh h1 { font-size:clamp(54px,6.6vw,98px); }
.catalog-filter { padding:42px clamp(24px,8vw,140px); }
.modern-catalog .catalog-results { padding:72px clamp(24px,7vw,120px) 105px; }
.modern-catalog .catalog-card-image { height:420px; }
.catalog-card-copy { padding:25px 25px 28px; }
.catalog-card h3 { font-size:24px; }

.subpage-projects .home-section-heading { margin-bottom:60px; }
.project-grid { gap:54px 26px; }
.project-photo { height:450px; }
.project-info h3 { font-size:22px; }
.project-delivery-support .buyer-support { margin-top:54px; }
.buyer-support article { min-height:175px; padding:25px 22px; }
.buyer-support h3 { margin:30px 0 12px; }

.blog-hero { min-height:480px; padding:150px clamp(24px,8vw,140px) 65px; }
.blog-hero h1 { font-size:clamp(52px,6.5vw,94px); }
.blog-grid { gap:24px; }
.blog-card-image { height:255px; }
.blog-card>div { padding:23px; }
.blog-card h2 { font-size:24px; }
.blog-card p { font-size:13px; }
.footer-main { padding:80px clamp(24px,8vw,140px) 55px; }
.footer-main p { font-size:19px; }

@media(max-width:1100px) {
  .site-header { height:76px; }
  .site-header .nav-products { height:auto; }
  .site-header nav { top:76px; }
  .home-product-grid { gap:34px 20px; }
  .product-row { grid-template-columns:48px minmax(180px,1fr) 118px 38px; }
  .product-desc { display:none; }
  .door-demo { transform:scale(.84); }
}
@media(max-width:650px) {
  body { font-size:15px; }
  .eyebrow { font-size:8px; margin-bottom:18px; }
  .button { min-width:178px; padding:15px 17px; }
  .hero-content { margin-top:46px; }
  .hero h1 { font-size:clamp(48px,14vw,68px); }
  .hero p,.home-intro>div:last-child p,.home-section-heading>p,.content-split p,.custom-page-specs>p,.contact-page-copy>p { font-size:15px; }
  .hero-actions { flex-wrap:wrap; gap:18px 24px; }
  .smart-feature-panel { display:none; }
  .home-intro,.home-products,.home-value,.about-values,.content-split,.custom-page-main,.contact-page-main,.subpage-projects,.project-delivery-support,.blog-listing { padding-top:74px; padding-bottom:74px; }
  .brand-film { padding-top:74px; padding-bottom:68px; }
  .home-product-card>div { height:360px; }
  .home-opening-systems { margin:74px 0 -10px; padding:65px 20px 45px; }
  .product-row { min-height:102px; grid-template-columns:38px minmax(0,1fr) 82px 32px; gap:10px; }
  .product-name { font-size:18px; }
  .product-name small { font-size:7px; letter-spacing:.12em; }
  .door-demo { transform:scale(.62); transform-origin:right center; }
  .round-arrow { width:32px; height:32px; }
  .home-value-grid strong { font-size:17px; }
  .subpage-hero { min-height:520px; padding-top:125px; padding-bottom:58px; }
  .subpage-hero h1 { font-size:clamp(48px,13vw,64px); }
  .subpage-hero p { font-size:15px; }
  .about-values article { min-height:210px; }
  .catalog-hero-refresh { min-height:500px; padding-top:126px; }
  .catalog-hero-layout { min-height:320px; }
  .modern-catalog .catalog-card-image { height:360px; }
  .project-photo { height:340px; }
  .blog-hero { min-height:440px; padding-top:125px; }
}

/* Final 1.0.9 cascade — intentional homepage and product-page composition */
.hero { min-height:100svh; }
.hero:after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(4,5,5,.63),rgba(4,5,5,.13) 62%,rgba(4,5,5,.32)); }
.hero-content-editorial { position:relative; z-index:3; width:min(680px,82vw); margin-top:86px; }
.hero-content-editorial .eyebrow { margin-bottom:28px; }
.hero-content-editorial h1 { max-width:680px; font-size:clamp(60px,7.55vw,118px); line-height:.84; letter-spacing:-.072em; }
.hero-content-editorial h1 em { display:inline-block; margin-top:13px; }
.hero-intro-line { display:flex; align-items:flex-start; justify-content:space-between; gap:35px; max-width:520px; margin-top:30px; padding-top:18px; border-top:1px solid rgba(255,255,255,.42); }
.hero-intro-line p { max-width:370px; margin:0; color:rgba(255,255,255,.82); font-size:14px; line-height:1.65; }
.hero-intro-line span { color:#bd9a62; font-size:9px; letter-spacing:.16em; white-space:nowrap; }
.hero-content-editorial .hero-actions { margin-top:34px; }
.hero .smart-feature-panel { z-index:4; border-left:1px solid rgba(189,154,98,.55); border-radius:0; background:rgba(6,6,5,.68); backdrop-filter:blur(12px); }
.home-intro-editorial { grid-template-columns:.53fr 1.25fr .8fr; gap:clamp(30px,5.2vw,92px); align-items:start; padding-top:clamp(95px,10vw,160px); padding-bottom:clamp(95px,10vw,160px); }
.home-intro-editorial .eyebrow { margin:0 0 52px; }.home-intro-mark small { color:#8e887d; font-size:9px; letter-spacing:.17em; }
.home-intro-statement h2 { margin:0; max-width:710px; font-size:clamp(48px,5.4vw,84px); line-height:.9; }.home-intro-details { padding-top:10px; }
.home-intro-details p { max-width:365px; margin:0; font-size:15px; line-height:1.85; color:#686660; }.home-intro-details .line-link { margin-top:39px; }
.brand-film { padding-top:0; background:#f5f4f0; }.brand-film .film-copy { display:grid; grid-template-columns:.55fr 1.2fr; align-items:end; gap:clamp(28px,5vw,90px); max-width:none; padding:clamp(78px,8vw,122px) 0 48px; margin:0; }
.brand-film .film-copy h2 { margin:0; font-size:clamp(45px,5.4vw,78px); line-height:.9; }.brand-film .film-copy .eyebrow { margin:0; }.film-frame { max-width:none; }.film-preview { min-height:clamp(380px,48vw,660px); }
.home-products-editorial { background:#fff; }.home-products-editorial .home-section-heading { grid-template-columns:1.15fr .55fr; align-items:end; margin-bottom:64px; }.home-products-editorial .home-section-heading h2 { font-size:clamp(48px,5.7vw,89px); }
.home-products-side { padding-bottom:5px; }.home-products-side p { max-width:430px; margin:0; color:#686660; font-size:14px; line-height:1.82; }.home-products-side .line-link { margin-top:27px; }
.home-products-editorial .home-product-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:64px 26px; align-items:start; }.home-products-editorial .home-product-card { grid-column:span 4; }
.home-products-editorial .home-product-card:nth-child(1),.home-products-editorial .home-product-card:nth-child(4) { grid-column:span 7; }.home-products-editorial .home-product-card:nth-child(2),.home-products-editorial .home-product-card:nth-child(5) { grid-column:span 5; padding-top:120px; }.home-products-editorial .home-product-card:nth-child(3),.home-products-editorial .home-product-card:nth-child(6) { grid-column:span 5; }.home-products-editorial .home-product-card:nth-child(3) { margin-left:calc(100% + 26px); }
.home-products-editorial .home-product-card>div { height:clamp(355px,42vw,650px); background-position:center; transform:none!important; }.home-products-editorial .home-product-card:nth-child(2)>div,.home-products-editorial .home-product-card:nth-child(5)>div { height:clamp(300px,31vw,490px); }.home-products-editorial .home-product-card:nth-child(3)>div,.home-products-editorial .home-product-card:nth-child(6)>div { height:clamp(300px,32vw,500px); }
.home-products-editorial .home-product-card>div:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.42)); opacity:0; transition:opacity .35s ease; }.home-products-editorial .home-product-card:hover>div:after { opacity:1; }
.home-product-card-meta { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:16px; border-top:1px solid rgba(13,13,12,.16); }.home-product-card h3 { margin:0; font-size:clamp(20px,1.9vw,30px); letter-spacing:-.035em; }.home-product-card b { display:flex; align-items:center; gap:10px; color:#31302c; font-size:8px; letter-spacing:.16em; white-space:nowrap; }.home-product-card b i { display:inline-grid; place-items:center; width:22px; height:22px; border:1px solid rgba(0,0,0,.25); border-radius:50%; font-style:normal; font-size:12px; }.home-products-editorial .home-opening-systems { margin-top:clamp(100px,12vw,180px); }
.catalog-hero-refresh { min-height:680px; padding-bottom:78px; background-position:center; }.catalog-hero-layout { grid-template-columns:minmax(0,1.1fr) minmax(300px,.46fr); min-height:430px; }.catalog-hero-refresh h1 { max-width:900px; font-size:clamp(60px,7.1vw,112px); line-height:.85; }.catalog-hero-refresh h1 em { margin-top:16px; }.catalog-hero-points { max-width:380px; justify-self:end; }
.catalog-filter { grid-template-columns:230px minmax(0,1fr); gap:28px 50px; padding-top:38px; padding-bottom:38px; }.catalog-filter-heading strong { font-size:24px!important; line-height:1.1; }.catalog-filter-buttons { gap:8px; }.catalog-filter-buttons :is(button,a) { min-height:42px; padding:0 14px; border-radius:100px; font-size:9px; }.catalog-filter-buttons :is(button,a) span { font-size:10px; }.catalog-series-link { margin-top:3px; }.modern-catalog .catalog-results { padding-top:92px; }
.modern-catalog .catalog-grid { grid-template-columns:repeat(12,minmax(0,1fr)); gap:72px 26px; }.modern-catalog .catalog-card { grid-column:span 6; display:grid; grid-template-columns:1fr; border:0; background:transparent; }.modern-catalog .catalog-card:nth-child(3n+2) { margin-top:110px; }.modern-catalog .catalog-card-image { height:clamp(390px,41vw,620px); }.modern-catalog .catalog-card-copy { padding:17px 0 0; }.catalog-card-copy>small { color:#9d7c49; font-size:8px; letter-spacing:.19em; }.catalog-card h3 { margin:10px 0 8px; font-size:clamp(25px,2.3vw,36px); line-height:1; }.catalog-card p { max-width:520px; font-size:13px; line-height:1.72; }.catalog-card-parameters { display:grid; grid-template-columns:repeat(2,1fr); gap:0 20px; margin:24px 0; }.catalog-card-parameters>div { display:block; padding:10px 0; }.catalog-card-parameters dt,.catalog-card-parameters dd { text-align:left; }.catalog-card-parameters dd { margin-top:5px; font-size:11px; }
@media(max-width:900px) { .home-intro-editorial { grid-template-columns:1fr; gap:28px; }.home-intro-editorial .eyebrow { margin-bottom:0; }.home-intro-details { padding-top:6px; }.brand-film .film-copy { grid-template-columns:1fr; gap:24px; }.home-products-editorial .home-section-heading { grid-template-columns:1fr; gap:28px; }.home-products-editorial .home-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:44px 20px; }.home-products-editorial .home-product-card,.home-products-editorial .home-product-card:nth-child(n) { grid-column:auto; margin:0; padding-top:0; }.home-products-editorial .home-product-card:nth-child(2)>div,.home-products-editorial .home-product-card:nth-child(5)>div,.home-products-editorial .home-product-card:nth-child(3)>div,.home-products-editorial .home-product-card:nth-child(6)>div { height:clamp(330px,48vw,500px); }.catalog-hero-refresh { min-height:600px; }.catalog-hero-layout { grid-template-columns:1fr; gap:36px; min-height:400px; }.catalog-hero-points { justify-self:start; }.modern-catalog .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px 20px; }.modern-catalog .catalog-card { grid-column:auto; }.modern-catalog .catalog-card:nth-child(3n+2) { margin-top:60px; } }
@media(max-width:650px) { .hero-content-editorial { margin-top:44px; }.hero-content-editorial h1 { font-size:clamp(54px,15vw,72px); }.hero-intro-line { gap:18px; margin-top:24px; }.hero-intro-line p { font-size:13px; }.home-intro-editorial { padding-top:82px; padding-bottom:82px; }.home-intro-statement h2 { font-size:clamp(42px,12vw,62px); }.brand-film .film-copy { padding:70px 0 36px; }.home-products-editorial .home-product-grid { grid-template-columns:1fr; gap:38px; }.home-products-editorial .home-product-card:nth-child(n)>div { height:clamp(330px,105vw,460px); }.home-product-card h3 { font-size:25px; }.catalog-hero-refresh { min-height:545px; }.catalog-hero-refresh h1 { font-size:clamp(51px,14vw,70px); }.catalog-filter { padding-top:30px; padding-bottom:30px; }.modern-catalog .catalog-results { padding-top:62px; }.modern-catalog .catalog-grid { grid-template-columns:1fr; gap:44px; }.modern-catalog .catalog-card:nth-child(3n+2) { margin-top:0; }.modern-catalog .catalog-card-image { height:clamp(350px,108vw,480px); } }

/* Deliberate offset for the last two systems; no overflowing grid items. */
.home-products-editorial .home-product-card:nth-child(3) { margin-left:0; }
.home-products-editorial .home-product-card:nth-child(5) { grid-column:2 / span 5; }
@media(max-width:900px) { .home-products-editorial .home-product-card:nth-child(5) { grid-column:auto; } }

/* 1.0.10 — Restore the v1.0.7 structure; refresh only typography and spacing. */
:root { --font-ui:"Helvetica Neue", Helvetica, Arial, "PingFang SC", "Microsoft YaHei", sans-serif; }
body { font-family:var(--font-ui); color:#121211; font-size:16px; line-height:1.65; }
button,input,select,textarea { font-family:var(--font-ui); }
h1,h2,h3,h4,h5,h6 { font-family:var(--font-ui); font-weight:400; letter-spacing:-.045em; }
.eyebrow { font-size:10px; letter-spacing:.19em; }.button { font-size:10px; letter-spacing:.14em; }.line-link { font-size:10px; letter-spacing:.14em; }
.hero:after { display:none; }.hero-content { width:min(620px,82vw); margin-top:60px; margin-left:clamp(24px,9vw,160px); }.hero h1 { font-size:clamp(56px,6.6vw,100px); line-height:.91; letter-spacing:-.055em; }.hero p { max-width:505px; font-size:16px; line-height:1.7; }.hero-actions { margin-top:32px; }
.home-intro { grid-template-columns:1.1fr .9fr; gap:clamp(48px,8vw,140px); padding-top:clamp(82px,9vw,135px); padding-bottom:clamp(82px,9vw,135px); }.home-intro h2 { font-size:clamp(46px,5.7vw,88px); line-height:.94; }.home-intro>div:last-child p { max-width:600px; font-size:16px; line-height:1.82; }
.brand-film { padding-top:clamp(82px,9vw,135px); padding-bottom:clamp(82px,9vw,135px); background:#0a0a09; }.film-copy { max-width:840px; margin-bottom:42px; }.film-copy h2 { font-size:clamp(44px,5.2vw,78px); line-height:.93; }.film-preview { min-height:clamp(360px,43vw,620px); }
.home-products { padding-top:clamp(82px,9vw,135px); padding-bottom:clamp(82px,9vw,135px); }.home-section-heading { grid-template-columns:1.35fr .65fr; gap:clamp(42px,7vw,115px); margin-bottom:58px; }.home-section-heading h2 { font-size:clamp(48px,5.7vw,88px); line-height:.94; }.home-section-heading>p { font-size:16px; line-height:1.8; }.home-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:42px 24px; }.home-product-card>div { height:clamp(340px,31vw,450px); }.home-product-card h3 { margin:18px 0 10px; font-size:22px; line-height:1.15; }.home-product-card b { font-size:9px; letter-spacing:.15em; }.home-products-link { margin:60px auto 0; }
.home-opening-systems { margin-top:112px; }.opening-heading h2 { font-size:clamp(44px,5.2vw,78px); }.product-row { min-height:114px; }.product-no { font-size:21px; }.product-name { font-size:24px; }.product-desc { font-size:10px; }
.catalog-hero-refresh { min-height:620px; padding:160px 8vw 74px; background-position:center; }.catalog-hero-layout { min-height:386px; max-width:1320px; grid-template-columns:minmax(0,1.25fr) minmax(260px,.55fr); gap:90px; }.catalog-hero-refresh h1 { max-width:860px; font-size:clamp(58px,6.7vw,104px); line-height:.88; }.catalog-hero-refresh h1 em { margin-top:12px; }.catalog-hero-points { max-width:none; justify-self:auto; }
.catalog-filter { position:relative; top:auto; grid-template-columns:280px minmax(0,1fr); gap:34px 60px; padding:48px 8vw 44px; }.catalog-filter-heading strong { font-size:24px!important; }.catalog-filter-buttons { gap:10px; }.catalog-filter-buttons :is(button,a) { min-height:46px; padding:0 16px; border-radius:0; font-size:10px; }.catalog-filter-buttons :is(button,a) span { font-size:12px; }.modern-catalog .catalog-results { padding:72px 7vw 120px; }.modern-catalog .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px; }.modern-catalog .catalog-card { display:block; grid-column:auto; margin:0!important; border:1px solid rgba(0,0,0,.1); background:#fff; }.modern-catalog .catalog-card-image { height:clamp(400px,35vw,480px); }.modern-catalog .catalog-card-copy { padding:28px 28px 32px; }.catalog-card h3 { margin:15px 0 11px; font-size:25px; line-height:1.08; }.catalog-card p { font-size:13px; line-height:1.72; }.catalog-card-parameters { display:block; margin:25px 0; }.catalog-card-parameters>div { display:grid; grid-template-columns:.8fr 1.2fr; gap:18px; }.catalog-card-parameters dd { margin:0; text-align:right; }
@media(max-width:900px) { .home-intro { grid-template-columns:1fr; }.home-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.catalog-hero-refresh { min-height:560px; padding:135px 24px 56px; }.catalog-hero-layout { min-height:360px; grid-template-columns:1fr; gap:38px; }.catalog-hero-points { justify-self:auto; }.catalog-filter { grid-template-columns:1fr; gap:28px; padding:38px 24px 34px; }.modern-catalog .catalog-results { padding:70px 24px 100px; }.modern-catalog .catalog-grid { grid-template-columns:1fr; }.modern-catalog .catalog-card-image { height:420px; } }
@media(max-width:650px) { .hero h1 { font-size:clamp(48px,14vw,68px); }.home-intro,.home-products { padding-top:74px; padding-bottom:74px; }.home-product-grid { grid-template-columns:1fr; }.home-product-card>div { height:360px; }.home-section-heading { grid-template-columns:1fr; gap:28px; }.catalog-hero-refresh { min-height:510px; padding-top:126px; }.catalog-hero-layout { min-height:330px; }.modern-catalog .catalog-card-image { height:330px; } }

/* 1.0.11 — Balanced large-title composition for editorial content pages. */
.project-delivery-support>div:first-child { grid-template-columns:minmax(190px,.42fr) minmax(420px,1fr); gap:clamp(42px,8vw,130px); align-items:end; max-width:1280px; }
.project-delivery-support>div:first-child .eyebrow { margin:0 0 9px; }
.project-delivery-support h2 { max-width:680px; margin:0; font-size:clamp(48px,5.25vw,80px); line-height:.91; letter-spacing:-.055em; }
.project-delivery-support h2 em { display:inline-block; margin-top:8px; }
.custom-page-specs h2 { max-width:680px; margin-top:20px; font-size:clamp(46px,4.7vw,74px); line-height:.92; letter-spacing:-.052em; }
.custom-page-specs h2 em { display:inline-block; margin-top:8px; }
.factory-page-heading { display:grid; grid-template-columns:.43fr 1fr; gap:clamp(42px,7vw,120px); align-items:end; }
.factory-page-heading h2 { max-width:760px; margin:0; text-align:left; font-size:clamp(50px,5.4vw,82px); line-height:.9; letter-spacing:-.058em; }
.factory-page-heading h2 em { display:inline-block; margin-top:8px; }
.content-split>div:last-child h2 { max-width:710px; margin-top:20px; font-size:clamp(46px,4.7vw,74px); line-height:.92; letter-spacing:-.052em; }
.content-split>div:last-child h2 em { display:inline-block; margin-top:8px; }
@media(max-width:900px) { .project-delivery-support>div:first-child,.factory-page-heading { grid-template-columns:1fr; gap:26px; }.project-delivery-support h2,.factory-page-heading h2 { max-width:700px; }.factory-page-heading h2 { text-align:left; }.factory-page-heading>div { flex-direction:row; align-items:baseline; gap:15px; }.factory-page-heading>div small { font-size:42px; } }
@media(max-width:650px) { .project-delivery-support h2,.factory-page-heading h2,.custom-page-specs h2,.content-split>div:last-child h2 { font-size:clamp(42px,12vw,62px); }.project-delivery-support h2 em,.factory-page-heading h2 em,.custom-page-specs h2 em,.content-split>div:last-child h2 em { margin-top:5px; } }

/* Keep editorial titles on one line on desktop; mobile may wrap only when required. */
@media(min-width:901px) {
  .project-delivery-support h2,.custom-page-specs h2,.factory-page-heading h2,.content-split>div:last-child h2 { white-space:nowrap; }
  .project-delivery-support h2 { max-width:none; font-size:clamp(42px,4.25vw,66px); }
  .custom-page-specs h2,.content-split>div:last-child h2 { max-width:none; font-size:clamp(38px,3.75vw,60px); }
  .factory-page-heading h2 { max-width:none; font-size:clamp(42px,4.3vw,68px); }
}

/* 1.0.13 — Persistent active state for the current navigation category. */
.site-header nav>a,.site-header .nav-products>a { position:relative; transition:color .2s ease; }
.site-header nav>a:hover,.site-header .nav-products>a:hover,.site-header nav>a.is-active,.site-header .nav-products>a.is-active { color:#d0ac70; }
.site-header nav>a.is-active:after,.site-header .nav-products>a.is-active:after { content:""; position:absolute; left:0; right:0; bottom:-11px; height:1px; background:#d0ac70; transform:scaleX(1); transform-origin:left center; }
.site-header .nav-submenu a.is-active { background:rgba(196,158,97,.16); color:#d0ac70; }
@media(max-width:1100px) { .site-header nav>a.is-active:after,.site-header .nav-products>a.is-active:after { bottom:-7px; } }

/* 1.0.18 — keep the Products indicator attached to its label, not the menu column. */
@media(min-width:1101px) {
  .site-header .nav-products>a { padding:0; }
  .site-header .nav-products>a.is-active:after { bottom:-8px; }
}

/* 1.0.21 — mirror the current-page cue in the footer navigation. */
.footer-links a { position:relative; width:max-content; color:rgba(255,255,255,.78); transition:color .2s ease; }
.footer-links a:hover,.footer-links a.is-active { color:#d0ac70; }
.footer-links a.is-active:after { content:""; position:absolute; left:0; right:0; bottom:-7px; height:1px; background:#d0ac70; }
.footer-contact .footer-email { display:inline-flex; align-items:center; gap:9px; }
.footer-contact .footer-email span { color:#d0ac70; font-size:17px; line-height:1; }

/* 1.0.24 — concise Foshan location composition beside the map. */
.map-location-card { display:grid; grid-template-rows:auto 1fr auto; align-items:start; gap:0; padding:64px clamp(42px,5vw,84px); }
.map-location-card h2 { margin:28px 0 0; font-size:clamp(46px,4.25vw,70px); line-height:.9; letter-spacing:-.06em; }
.map-location-card h2 em { color:#c19d63; }
.map-location-country { display:block; color:#c19d63; font-size:9px; letter-spacing:.18em; }
.map-location-summary { align-self:center; max-width:330px; padding:26px 0; border-top:1px solid rgba(255,255,255,.22); border-bottom:1px solid rgba(255,255,255,.22); }
.map-location-summary p { margin:18px 0 0; font-size:15px; line-height:1.72; }
.map-contact-lines { align-self:end; gap:10px; margin-top:0; font-size:12px; }
.map-contact-lines a { display:inline-flex; align-items:center; gap:8px; color:#fff; }
.map-contact-lines a span { color:#c19d63; font-size:15px; }
@media(max-width:900px) { .map-location-card { display:flex; gap:36px; padding:62px 24px; }.map-location-summary { align-self:auto; width:100%; }.map-contact-lines { align-self:auto; } }

/* 1.0.26 — enquiry management, footer social widget and single-line factory title. */
@media(min-width:901px) { .brand-film .film-copy h2 { white-space:nowrap; } }
.footer-social-area { margin-top:20px; }
.footer-social-area .widget { margin:0; }
.footer-social-area .widget-title { display:none; }
.footer-social-area ul { display:flex; flex-wrap:wrap; gap:9px; margin:0; padding:0; list-style:none; }
.footer-social-area a { display:inline-grid; place-items:center; min-width:36px; min-height:36px; padding:0 9px; border:1px solid rgba(255,255,255,.3); border-radius:50%; color:#fff; font-size:10px; transition:.2s ease; }
.footer-social-area a:hover,.footer-social-area a:focus-visible { background:#c19d63; border-color:#c19d63; color:#0b0b0a; outline:0; }

/* 1.0.31 — bundled, browser-safe homepage factory video. */
.film-video { overflow:hidden; padding:0; background:#080808; }
.film-video::before { display:none; }
.film-video video { position:relative; z-index:2; display:block; width:100%; height:100%; border:0; object-fit:cover; }

/* 1.0.33 — product image, specifications and detail zones. */
.product-specification-layout { padding:clamp(88px,8vw,138px) clamp(24px,8vw,150px); display:grid; grid-template-columns:minmax(330px,.82fr) minmax(520px,1.28fr); gap:clamp(54px,8vw,140px); align-items:start; background:#f5f4f0; }
.product-specification-image { position:sticky; top:110px; min-height:clamp(650px,68vw,900px); margin:0; overflow:hidden; background:#ddd9d1; }
.product-specification-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; object-position:center; }
.product-specification-image::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.42),transparent 34%); pointer-events:none; }
.product-specification-image figcaption { position:absolute; z-index:2; left:30px; right:30px; bottom:26px; color:#fff; font-size:9px; letter-spacing:.18em; text-transform:uppercase; }
.product-specification-panel { min-width:0; }
.product-specification-heading { padding:0 0 46px; border-bottom:1px solid var(--line); }
.product-specification-heading :is(h1,h2) { margin:28px 0 20px; font-size:clamp(42px,4.4vw,70px); line-height:.96; font-weight:400; white-space:normal; }
.product-technical-label { margin:0 0 16px; color:var(--gold); font-size:9px; letter-spacing:.2em; }
.product-specification-heading>p { max-width:680px; margin:0; color:#6b6861; font-size:13px; line-height:1.8; }
.product-recommended { display:flex; align-items:center; gap:20px; margin-top:30px; }
.product-recommended small { color:var(--gold); font-size:8px; letter-spacing:.16em; }
.product-recommended strong { font-size:12px; font-weight:400; }
.product-model-code,.product-reference-colors,.product-summary-row { width:min(420px,100%); display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:16px; padding:16px 0; border-top:1px solid rgba(0,0,0,.14); border-bottom:1px solid rgba(0,0,0,.14); }
.product-reference-colors,.product-summary-row { margin-top:-1px; }
.product-model-code small,.product-reference-colors small,.product-summary-row small { color:var(--gold); font-size:8px; letter-spacing:.16em; text-transform:uppercase; }
.product-model-code strong,.product-reference-colors strong,.product-summary-row strong { color:#151513; font-size:15px; font-weight:500; letter-spacing:.08em; text-align:right; }
.product-page-jumps { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.product-page-jumps a { min-height:44px; display:inline-flex; align-items:center; justify-content:space-between; gap:18px; padding:0 15px; border:1px solid rgba(0,0,0,.2); color:#282722; font-size:9px; letter-spacing:.12em; text-transform:uppercase; transition:.25s ease; }
.product-page-jumps a:first-child { border-color:#171715; background:#171715; color:#fff; }
.product-page-jumps a:hover,.product-page-jumps a:focus-visible { border-color:var(--gold); background:var(--gold); color:#111; }
.product-page-jumps span { color:var(--gold); font-size:13px; }
.product-page-jumps a:hover span,.product-page-jumps a:focus-visible span { color:inherit; }
.product-parameter-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 34px; margin:24px 0 0; }
.product-parameter-list>div { min-height:138px; display:block; padding:28px 0 24px; border-bottom:1px solid var(--line); }
.product-parameter-list dt { display:flex; align-items:center; gap:18px; margin:0 0 14px; font-size:14px; }
.product-parameter-list dt small { color:var(--gold); font-size:14px; }
.product-parameter-list dd { margin:0 0 0 34px; color:#67645e; font-size:13px; line-height:1.65; }
.product-details-section { padding:clamp(90px,9vw,150px) clamp(24px,8vw,150px); background:#eceae4; }
.product-details-heading { display:grid; grid-template-columns:.75fr 1.25fr; gap:clamp(44px,8vw,140px); align-items:start; padding-bottom:58px; border-bottom:1px solid rgba(0,0,0,.16); }
.product-details-heading h2 { max-width:980px; margin:0; font-size:clamp(46px,5.6vw,84px); line-height:.94; font-weight:400; }
.product-details-section .wp-product-content { max-width:none; margin:0; padding:70px 0 0; font:15px/1.85 Arial,sans-serif; color:#55524c; }
.product-details-section .wp-product-content>p { max-width:850px; }
.product-details-section>.wp-product-content { width:min(100%,1320px); display:grid; grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr); grid-auto-flow:row; column-gap:clamp(55px,8vw,130px); margin:0 auto; padding-top:0; font-size:17px; line-height:1.9; }
.product-details-section>.wp-product-content :where(h2,h3,h4) { color:#171715; font-weight:400; letter-spacing:-.035em; }
.product-details-section>.wp-product-content>h2 { grid-column:1; margin:0; padding:44px 0; border-top:1px solid rgba(0,0,0,.16); font-size:clamp(32px,3.3vw,50px); line-height:1.03; }
.product-details-section>.wp-product-content>h2+* { grid-column:2; margin-top:0; padding-top:44px; border-top:1px solid rgba(0,0,0,.16); }
.product-details-section>.wp-product-content>h2:first-child,.product-details-section>.wp-product-content>h2:first-child+* { border-top:0; padding-top:0; }
.product-details-section>.wp-product-content h3 { margin:42px 0 18px; font-size:clamp(27px,3vw,40px); line-height:1.08; }
.product-details-section>.wp-product-content :where(p,ul,ol) { grid-column:2; max-width:900px; }
.product-details-section>.wp-product-content p { margin:0 0 32px; }
.product-details-section>.wp-product-content :where(figure,.wp-block-image,.wp-block-gallery,.wp-block-group) { grid-column:1/-1; }
.product-details-section>.wp-product-content :where(ul,ol) { margin:24px 0 34px; padding-left:1.35em; }
.product-details-section>.wp-product-content li { margin:8px 0; }
.product-details-section>.wp-product-content a { color:#8c6938; text-decoration:underline; text-underline-offset:4px; }
.product-details-section .wp-product-content img { width:100%; height:auto; margin:46px 0 0; }
.product-details-section .wp-product-content .wp-block-gallery { margin-top:46px; }
.product-detail-gallery-section { padding:clamp(70px,7vw,120px) clamp(24px,8vw,150px); background:#eceae4; }
.product-detail-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(16px,2vw,34px); }
.product-detail-gallery.is-single { grid-template-columns:1fr; }
.product-detail-gallery figure { min-width:0; margin:0; overflow:hidden; background:transparent; }
.product-detail-gallery img { width:100%; height:auto; display:block; object-fit:initial; object-position:initial; }
.product-detail-gallery figure:hover img { transform:none; }
.product-detail-gallery figure:nth-child(3n) { grid-column:1/-1; }

/* 1.0.41 — category-first product journey and return navigation. */
.product-series-directory { padding:clamp(82px,8vw,132px) clamp(24px,8vw,140px) clamp(100px,10vw,160px); background:#f4f3ef; }
.product-series-directory-heading { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.55fr); gap:clamp(45px,8vw,130px); align-items:end; margin-bottom:clamp(54px,7vw,100px); }
.product-series-directory-heading h2 { max-width:760px; margin:22px 0 0; font-size:clamp(48px,5.6vw,86px); line-height:.94; font-weight:400; }
.product-series-directory-heading>p { margin:0 0 4px; color:#69665f; font-size:15px; line-height:1.8; }
.product-series-directory-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(38px,5vw,76px) clamp(20px,2.4vw,38px); }
.product-series-directory-card { display:block; min-width:0; color:#151513; }
.product-series-directory-card figure { height:clamp(390px,42vw,650px); margin:0; overflow:hidden; background:#111; }
.product-series-directory-card img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.product-series-directory-card:hover img { transform:scale(1.035); }
.product-series-directory-card>div { position:relative; display:grid; grid-template-columns:48px minmax(0,1fr) auto; gap:12px 20px; align-items:end; padding:22px 0 0; border-top:1px solid rgba(0,0,0,.18); }
.product-series-directory-card span { grid-row:1/3; align-self:start; color:var(--gold); font-size:16px; }
.product-series-directory-card h2 { margin:0; font-size:clamp(25px,2.4vw,38px); line-height:1; font-weight:400; }
.product-series-directory-card small { grid-column:2; color:#77736c; font-size:9px; letter-spacing:.13em; text-transform:uppercase; }
.product-series-directory-card b { grid-column:3; grid-row:1/3; align-self:center; color:#4d4a44; font-size:9px; font-weight:500; letter-spacing:.14em; }
.product-category-catalog { padding:0 clamp(24px,7vw,120px) clamp(100px,10vw,150px); background:#f4f3ef; }
.product-category-navigation { display:flex; flex-wrap:wrap; gap:8px; padding:34px 0; border-bottom:1px solid rgba(0,0,0,.14); }
.product-category-navigation a { min-height:44px; display:inline-flex; align-items:center; padding:0 15px; border:1px solid rgba(0,0,0,.18); color:#25231f; font-size:9px; letter-spacing:.08em; text-transform:uppercase; transition:.25s ease; }
.product-category-navigation a:hover,.product-category-navigation a.active { border-color:#151513; background:#151513; color:#fff; }
.product-category-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.5fr); gap:30px 80px; align-items:end; padding:clamp(70px,7vw,105px) 0 38px; }
.product-category-heading .eyebrow { grid-column:1/-1; margin:0; }
.product-category-heading h2 { margin:0; font-size:clamp(46px,5.3vw,82px); line-height:.94; font-weight:400; }
.product-category-heading>div:last-child { color:#69665f; font-size:14px; line-height:1.8; }
.product-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(30px,4vw,58px) clamp(20px,2.5vw,38px); padding-top:24px; }
.product-category-grid .catalog-card { border:1px solid rgba(0,0,0,.1); background:#fff; }
.product-category-grid .catalog-card-image { height:clamp(390px,38vw,570px); }
.product-category-empty { padding:70px 0 20px; border-top:1px solid rgba(0,0,0,.14); }
.product-category-empty h3 { margin:0 0 15px; font-size:36px; font-weight:400; }
.product-category-empty p { max-width:600px; margin-bottom:30px; color:#6b6861; }
.product-back-navigation { display:flex; align-items:center; justify-content:space-between; gap:35px; padding:clamp(46px,5vw,72px) clamp(24px,8vw,150px); background:#11110f; color:#fff; }
.product-back-navigation>div { display:flex; flex-direction:column; gap:9px; }
.product-back-navigation small { color:var(--gold); font-size:8px; letter-spacing:.19em; }
.product-back-navigation strong { font-size:clamp(24px,2.7vw,40px); line-height:1; font-weight:400; }
.product-back-navigation>a { min-height:54px; display:inline-flex; align-items:center; padding:0 24px; border:1px solid rgba(255,255,255,.34); color:#fff; font-size:10px; letter-spacing:.12em; text-transform:uppercase; transition:.25s ease; }
.product-back-navigation>a:hover { border-color:var(--gold); background:var(--gold); color:#111; }

/* 1.1.0 — saved Featured Products now drive a pauseable seamless loop. */
.home-featured-loop { overflow:hidden; }
.featured-products-shell { position:relative; margin-left:-7vw; margin-right:-7vw; }
.featured-products-viewport { overflow:hidden; cursor:pointer; }
.featured-products-track { width:max-content; display:flex; will-change:transform; animation:pfl-featured-marquee var(--pfl-marquee-duration,34s) linear infinite; }
.featured-products-group { display:flex; flex:none; gap:24px; padding-right:24px; }
.featured-products-group .home-product-card { width:clamp(280px,28vw,440px); flex:none; }
.featured-products-shell:hover .featured-products-track,.featured-products-shell:focus-within .featured-products-track,.featured-products-shell.is-paused .featured-products-track { animation-play-state:paused; }
.featured-products-toggle { position:absolute; z-index:4; top:-48px; right:7vw; min-height:34px; display:inline-flex; align-items:center; gap:9px; padding:0; border:0; border-bottom:1px solid rgba(0,0,0,.28); background:transparent; color:#24231f; font:600 9px/1 var(--pfl-body-font,Arial,sans-serif); letter-spacing:.13em; text-transform:uppercase; cursor:pointer; }
.featured-toggle-icon { width:14px; color:var(--gold); font-size:11px; letter-spacing:-.2em; }
.featured-products-empty { padding:35px; border:1px solid var(--line); text-align:center; color:#67645e; }
@keyframes pfl-featured-marquee { to { transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce) { .featured-products-track { animation-play-state:paused; } }

/* Gutenberg/WordPress editor layouts retain the theme's visual language. */
.pfl-block-layout { min-height:60vh; background:#f4f3ef; color:#151513; }
.pfl-block-layout > :where(:not(.alignfull):not(.alignwide)) { width:min(calc(100% - 48px),var(--wp--style--global--content-size,1100px)); margin-left:auto; margin-right:auto; }
.pfl-block-layout > .alignwide { width:min(calc(100% - 48px),var(--pfl-content-width,1500px)); margin-left:auto; margin-right:auto; }
.pfl-block-layout > .alignfull { width:100%; }
.pfl-block-layout > :first-child { margin-top:0; }
.pfl-block-layout :where(.wp-block-group.has-background,.wp-block-cover) { padding-top:var(--pfl-section-space,120px); padding-bottom:var(--pfl-section-space,120px); }
.pfl-block-layout :where(h1,h2,h3) { letter-spacing:-.045em; }
.pfl-block-layout .wp-block-button__link { border-radius:0; text-transform:uppercase; letter-spacing:.12em; font-size:11px; }

@media (max-width:700px) {
  .featured-products-shell { margin-left:-7vw; margin-right:-7vw; }
  .featured-products-group { gap:16px; padding-right:16px; }
  .featured-products-group .home-product-card { width:min(78vw,340px); }
  .featured-products-group .home-product-card>div { height:390px; }
  .featured-products-toggle { top:-42px; }
}

/* 1.1.1 — responsive journal index and complete article reading template. */
.blog-grid-count-1 { grid-template-columns:1fr; }
.blog-grid-count-1 .blog-card { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); min-height:540px; }
.blog-grid-count-1 .blog-card-image { height:auto; min-height:540px; }
.blog-grid-count-1 .blog-card>div { display:flex; flex-direction:column; justify-content:center; padding:clamp(38px,5vw,78px); }
.blog-grid-count-1 .blog-card h2 { max-width:560px; font-size:clamp(34px,3.6vw,58px); }
.blog-grid-count-1 .blog-card p { max-width:540px; min-height:0; font-size:15px; }
.blog-grid-count-1 .blog-card .line-link { align-self:flex-start; margin-top:22px; }
.blog-grid-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }

.journal-article { background:#f4f3ef; color:#171715; }
.journal-article-hero { min-height:clamp(540px,66vh,760px); display:flex; align-items:flex-end; padding:160px clamp(24px,8vw,150px) clamp(72px,8vw,120px); background:linear-gradient(118deg,rgba(6,6,5,.98),rgba(13,13,11,.86)),url("../images/paifeilai-blog-hero.png") center/cover; color:#fff; }
.journal-article-hero-inner { width:min(100%,1300px); margin:0 auto; }
.journal-back-link { display:inline-flex; margin-bottom:clamp(45px,7vw,90px); color:rgba(255,255,255,.62); font-size:9px; letter-spacing:.16em; text-transform:uppercase; }
.journal-article-meta { display:flex; flex-wrap:wrap; align-items:center; gap:10px; color:#c3a16a; font-size:10px; letter-spacing:.13em; text-transform:uppercase; }
.journal-article-meta a { color:inherit; }
.journal-article-hero h1 { max-width:1200px; margin:25px 0 0; font-size:clamp(54px,7.2vw,112px); line-height:.9; font-weight:400; letter-spacing:-.058em; text-wrap:balance; }
.journal-article-hero>div>p { max-width:760px; margin:32px 0 0; color:rgba(255,255,255,.7); font-size:clamp(15px,1.4vw,19px); line-height:1.75; }
.journal-article-shell { padding:clamp(80px,9vw,145px) 24px; }
.journal-article-content { width:min(100%,960px); margin:0 auto; font-size:18px; line-height:1.9; color:#373530; }
.journal-article-content>p { margin:0 0 30px; }
.journal-article-content :where(h2,h3,h4) { color:#171715; font-weight:400; letter-spacing:-.035em; }
.journal-article-content h2 { margin:78px 0 26px; font-size:clamp(36px,4.2vw,58px); line-height:1.05; }
.journal-article-content h3 { margin:55px 0 22px; font-size:clamp(27px,3vw,38px); }
.journal-article-content :where(figure,.wp-block-image,.wp-block-gallery) { margin-top:55px; margin-bottom:55px; }
.journal-article-content img { max-width:100%; height:auto; display:block; }
.journal-article-content a { color:#8c6938; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.journal-article-content :where(ul,ol) { margin:30px 0; padding-left:1.4em; }
.journal-article-content li { margin:10px 0; }
.journal-article-content blockquote { margin:55px 0; padding:10px 0 10px 34px; border-left:2px solid #b99761; font:italic clamp(24px,3vw,36px)/1.45 var(--pfl-heading-font,Georgia,serif); color:#26241f; }
.journal-article-footer { display:flex; align-items:flex-end; justify-content:space-between; gap:50px; padding:clamp(70px,8vw,120px) clamp(24px,8vw,150px); background:#0b0b0a; color:#fff; }
.journal-article-footer small { color:#ba9861; font-size:9px; letter-spacing:.18em; }
.journal-article-footer h2 { max-width:740px; margin:22px 0 0; font-size:clamp(38px,5vw,70px); line-height:.96; font-weight:400; letter-spacing:-.045em; }
.journal-article-actions { display:flex; align-items:center; gap:28px; flex:none; }
.journal-article-actions .text-link { min-height:58px; display:inline-flex; align-items:center; padding:0 23px; border:1px solid rgba(255,255,255,.42); background:transparent; color:#fff; font:500 10px/1 var(--pfl-body-font,Arial,sans-serif); letter-spacing:.14em; text-transform:uppercase; cursor:pointer; transition:.25s ease; }
.journal-article-actions .text-link:hover,.journal-article-actions .text-link:focus-visible { border-color:#c3a16a; background:#c3a16a; color:#111; }

@media (max-width:900px) {
  .blog-grid-count-1 .blog-card { grid-template-columns:1fr; }
  .blog-grid-count-1 .blog-card-image { min-height:430px; }
  .journal-article-footer { align-items:flex-start; flex-direction:column; }
}

@media (max-width:650px) {
  .blog-grid-count-1,.blog-grid-count-2 { grid-template-columns:1fr; }
  .blog-grid-count-1 .blog-card-image { min-height:310px; }
  .blog-grid-count-1 .blog-card>div { padding:30px 24px 36px; }
  .journal-article-hero { min-height:580px; padding-top:135px; padding-bottom:65px; }
  .journal-back-link { margin-bottom:58px; }
  .journal-article-hero h1 { font-size:clamp(48px,14vw,68px); }
  .journal-article-shell { padding:68px 20px 82px; }
  .journal-article-content { font-size:16px; line-height:1.85; }
  .journal-article-content h2 { margin-top:58px; font-size:36px; }
  .journal-article-content :where(figure,.wp-block-image,.wp-block-gallery) { margin-top:38px; margin-bottom:38px; }
  .journal-article-actions { width:100%; align-items:flex-start; flex-direction:column; }
}

@media(max-width:900px) {
  .product-specification-layout { grid-template-columns:1fr; gap:58px; }
  .product-specification-image { position:relative; top:auto; min-height:clamp(520px,110vw,760px); }
  .product-specification-heading :is(h1,h2) { white-space:normal; }
  .product-details-heading { grid-template-columns:1fr; gap:28px; }
  .product-series-directory-heading,.product-category-heading { grid-template-columns:1fr; gap:26px; }
  .product-series-directory-grid,.product-category-grid { grid-template-columns:1fr; }
  .product-series-directory-card figure { height:clamp(420px,100vw,650px); }
  .product-details-section>.wp-product-content { display:block; }
  .product-details-section>.wp-product-content>h2,.product-details-section>.wp-product-content>h2+* { border-top:0; padding-top:0; }
  .product-details-section>.wp-product-content>h2 { margin:58px 0 22px; }
  .product-details-section>.wp-product-content>h2:first-child { margin-top:0; }
}
@media(max-width:650px) {
  .product-specification-layout { padding-top:70px; padding-bottom:78px; }
  .product-specification-image { min-height:520px; }
  .product-specification-heading { padding-bottom:34px; }
  .product-specification-heading :is(h1,h2) { font-size:42px; }
  .product-parameter-list { grid-template-columns:1fr; gap:0; }
  .product-parameter-list>div { min-height:0; padding:22px 0; }
  .product-parameter-list dd { margin-left:32px; }
  .product-details-section { padding-top:76px; padding-bottom:82px; }
  .product-details-heading { padding-bottom:38px; }
  .product-details-heading h2 { font-size:44px; }
  .product-details-section .wp-product-content { padding-top:46px; }
  .product-details-section>.wp-product-content { padding-top:0; font-size:16px; }
  .product-details-section>.wp-product-content h2 { margin-top:54px; font-size:38px; }
  .product-detail-gallery-section { padding:56px 20px 72px; }
  .product-detail-gallery { grid-template-columns:1fr; }
  .product-detail-gallery figure:nth-child(3n) { grid-column:auto; }
  .product-detail-gallery img { height:auto; min-height:360px; }
  .product-series-directory { padding-left:20px; padding-right:20px; }
  .product-series-directory-card>div { grid-template-columns:36px minmax(0,1fr); }
  .product-series-directory-card b { grid-column:2; grid-row:3; justify-self:start; padding-top:8px; }
  .product-category-catalog { padding-left:20px; padding-right:20px; }
  .product-category-navigation { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; }
  .product-category-navigation::-webkit-scrollbar { display:none; }
  .product-category-navigation a { flex:0 0 auto; }
  .product-category-grid .catalog-card-image { height:360px; }
  .product-back-navigation { align-items:flex-start; flex-direction:column; }
  .product-back-navigation>a { width:100%; justify-content:center; }
}

/* 1.1.7 — mobile product pages preserve the desktop editorial hierarchy. */
@media(max-width:650px) {
  .product-specification-layout { display:flex; flex-direction:column; gap:0; padding:0 20px 68px; }
  .product-specification-image { width:calc(100% + 40px); min-height:0; aspect-ratio:4/5; margin:0 -20px 52px; }
  .product-specification-image figcaption { left:20px; right:20px; bottom:20px; }
  .product-specification-panel { width:100%; }
  .product-specification-heading { padding-bottom:30px; }
  .product-specification-heading .eyebrow { font-size:8px; }
  .product-specification-heading :is(h1,h2) { margin:24px 0 22px; font-size:clamp(40px,12vw,52px); line-height:.94; letter-spacing:-.052em; }
  .product-technical-label { margin-bottom:13px; }
  .product-specification-heading>p { font-size:13px; line-height:1.72; }
  .product-recommended { display:grid; grid-template-columns:96px minmax(0,1fr); gap:14px; align-items:start; margin-top:26px; }
  .product-recommended strong { line-height:1.55; }
  .product-model-code,.product-reference-colors,.product-summary-row { width:100%; margin-top:18px; }
  .product-reference-colors,.product-summary-row { margin-top:-1px; }
  .product-page-jumps { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:24px; }
  .product-page-jumps a { min-height:52px; gap:10px; padding:0 12px; font-size:8px; line-height:1.35; }
  .product-parameter-list { margin-top:12px; }
  .product-parameter-list>div { display:grid; grid-template-columns:minmax(118px,.7fr) minmax(0,1fr); gap:16px; align-items:start; padding:22px 0; }
  .product-parameter-list dt { gap:12px; margin:0; line-height:1.35; }
  .product-parameter-list dt small { min-width:20px; font-size:12px; }
  .product-parameter-list dd { margin:0; font-size:12px; line-height:1.55; }

  .product-detail-gallery-section { padding:48px 0 62px; overflow:hidden; }
  .product-detail-gallery,.product-detail-gallery.is-single { display:flex; grid-template-columns:none; gap:14px; overflow-x:auto; padding:0 20px 12px; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain; }
  .product-detail-gallery::-webkit-scrollbar { display:none; }
  .product-detail-gallery figure,.product-detail-gallery figure:nth-child(3n) { width:84vw; flex:0 0 84vw; scroll-snap-align:center; grid-column:auto; }
  .product-detail-gallery.is-single figure { width:calc(100vw - 40px); flex-basis:calc(100vw - 40px); }
  .product-detail-gallery img { width:100%; height:auto; min-height:0; object-fit:initial; object-position:initial; }

  .product-details-section { padding:68px 20px 78px; }
  .product-details-section>.wp-product-content { display:block; font-size:15px; line-height:1.82; }
  .product-details-section>.wp-product-content>h2 { margin:0; padding:34px 0 18px; border-top:1px solid rgba(0,0,0,.16); font-size:clamp(31px,9vw,40px); line-height:1.02; }
  .product-details-section>.wp-product-content>h2:first-child { padding-top:0; border-top:0; }
  .product-details-section>.wp-product-content>h2+* { padding-top:0; border-top:0; }
  .product-details-section>.wp-product-content p { margin-bottom:34px; }
  .product-details-section>.wp-product-content :where(figure,.wp-block-image,.wp-block-gallery) { margin:34px 0; }
  .product-details-section>.wp-product-content img { margin-top:0; }
}

@media(max-width:390px) {
  .product-page-jumps { grid-template-columns:1fr; }
  .product-parameter-list>div { grid-template-columns:1fr; gap:10px; }
  .product-parameter-list dd { padding-left:32px; }
}

/* 1.1.8 — keep the complete product visible in the mobile first screen. */
@media(max-width:650px) {
  .product-specification-image {
    aspect-ratio:4/3;
    margin-bottom:34px;
    background:#161512;
  }
  .product-specification-image picture { position:absolute; inset:0; display:block; }
  .product-specification-image img { object-fit:contain; object-position:center; }
  .product-specification-image::after { background:linear-gradient(0deg,rgba(0,0,0,.30),transparent 28%); }
  .product-specification-image figcaption { bottom:16px; }
}

