/* Chenfan refinement — graphite, warm paper and a restrained titanium accent. */
:root{--ink:#131719;--ink-2:#191d1e;--ink-3:#222727;--ink-4:#2c3232;--paper:#eeeae2;--paper-2:#dedbd3;--d-1:#f0eee8;--d-2:#b1b3ae;--d-3:#979d98;--l-2:#555b58;--l-3:#646a66;--acc:#bda17b}
html{scroll-padding-top:88px}section[id]{scroll-margin-top:88px}.masthead.solid{background:rgba(19,23,25,.96)}
.brand{position:relative}.brand-mark{animation:brand-reveal .9s cubic-bezier(.2,.7,.2,1) both}.brand-word{animation:brand-reveal .9s .16s cubic-bezier(.2,.7,.2,1) both}.brand::after{content:"";position:absolute;bottom:-9px;left:0;width:0;height:1px;background:var(--acc);transition:width .45s}.brand:hover::after{width:100%}.brand img{transition:transform .4s}.brand:hover img{transform:translateY(-1px)}
@keyframes brand-reveal{from{opacity:0;transform:translateY(5px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}
.masthead-inner{gap:25px}.nav-desktop{gap:24px}.header-contact{font-size:11px;white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;border-left:1px solid var(--rule-d);padding:10px 0 10px 20px}.header-contact span{color:var(--acc);margin-left:5px}.nav-cta{white-space:nowrap}.nav-desktop a[aria-current]::after{transform:scaleX(1)}.nav-desktop a[aria-current]{color:var(--d-1)}
.hero-frame img{filter:saturate(.72) brightness(.9)}.hero-type .l3{color:#d2d2c8}.hero-rail{color:#c3c4bd}.minor-row b{font-size:clamp(20px,2.2vw,34px)}
.product-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:55px;border-top:1px solid var(--rule-d);border-bottom:1px solid var(--rule-d)}.product-tabs button{display:flex;gap:18px;align-items:center;text-align:left;min-height:88px;padding:18px 22px;border-right:1px solid var(--rule-d);color:var(--d-2);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.product-tabs button:last-child{border-right:0}.product-tabs button i{font:11px var(--mono);color:var(--d-3)}.product-tabs button[aria-selected=true]{background:var(--paper);color:var(--ink)}.product-tabs button[aria-selected=true] i{color:#79644b}.product-tabs button:hover{box-shadow:inset 0 -2px var(--acc)}
[data-product-panel][hidden]{display:none!important}.made [data-product-panel]{margin-top:0;min-height:620px}.made .band-a .band-media{aspect-ratio:auto;height:620px}.made .band-b .band-media{height:620px;aspect-ratio:auto}.made .band-c .band-bleed{height:620px}.product-detail-link{display:inline-flex;margin-top:26px;gap:16px;border-bottom:1px solid var(--acc);font-size:12px;text-transform:uppercase;letter-spacing:.07em;padding-bottom:8px}.made .band-type{max-width:unset}.made .band-b .band-type{max-width:47ch}.made .band-index{font-size:12px;margin-bottom:25px}.made .band-list{color:var(--d-2)}
.scale{padding:0;background:var(--ink-3);color:var(--d-1);position:relative;overflow:hidden}.scale-picture{position:absolute;inset:0 0 0 34%;height:100%;width:66%;object-fit:cover;object-position:55% center;filter:saturate(.6) brightness(.73)}.scale:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#191d1e 3%,rgba(25,29,30,.95) 24%,rgba(25,29,30,.12) 75%),linear-gradient(0deg,rgba(19,23,25,.96),transparent 60%)}.scale-content{position:relative;z-index:1;padding-block:90px 65px;min-height:850px;display:flex;flex-direction:column;align-items:flex-start}.scale .eyebrow{color:var(--d-2)}.scale-number{font-size:clamp(130px,24vw,390px);font-weight:600;letter-spacing:-.08em;line-height:.85;margin-top:46px;white-space:nowrap}.scale-number i{font-size:.3em;font-style:normal;font-weight:400;letter-spacing:-.04em;margin-left:12px;color:var(--acc)}.scale-title{font-size:clamp(19px,2.2vw,34px);text-transform:uppercase;letter-spacing:.09em;margin-top:28px;line-height:1.2;max-width:30ch}.scale-lead{font-size:clamp(17px,1.6vw,23px);max-width:31ch;line-height:1.45;margin-top:22px;color:var(--d-2)}.scale-support{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:auto;padding-top:70px;max-width:850px}.scale-support li{border-top:1px solid rgba(240,238,232,.38);padding-top:14px;font-size:12px;color:var(--d-1);letter-spacing:.03em}.scale-proof-note{margin-top:20px;font:10px var(--mono);color:var(--d-2);letter-spacing:.02em}
.contact-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:70px;row-gap:32px;margin-top:50px}.contact-person{border-top:1px solid var(--rule-d);padding-top:26px;min-width:0}.contact-person h3{font-size:31px;letter-spacing:-.02em}.contact-role{color:var(--d-2);font-size:12px;letter-spacing:.02em;margin-top:5px}.contact-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin-top:19px}.contact-method{display:flex;align-items:center;gap:10px;min-height:50px;border-bottom:1px solid var(--rule-d);text-align:left;font-size:12px;flex-wrap:wrap}.contact-method-arrow{margin-left:auto;color:var(--acc)}.contact-method small{flex-basis:100%;font-size:11px;padding:0 0 10px 30px;overflow-wrap:anywhere}.contact-method:disabled{cursor:default;color:#a2a7a2}.contact-method:disabled .contact-method-arrow{display:none}.contact-method svg{flex:none;color:var(--acc)}.contact-method:hover:not(:disabled){color:var(--acc)}.contact-pending{font:10px var(--mono);color:var(--d-3);margin-top:14px}.contact-float{position:fixed;bottom:26px;right:28px;z-index:205;display:flex;align-items:center;gap:12px;background:var(--paper);color:var(--ink);border:1px solid #bbb8ae;padding:15px 20px;box-shadow:0 5px 25px #0003;font-size:11px;letter-spacing:.05em;text-transform:uppercase;transition:background .25s,transform .25s}.contact-float:hover{background:#d9c6a8;transform:translateY(-2px)}
.contact-drawer{margin:0 0 0 auto;width:min(530px,100%);height:100dvh;max-height:100dvh;border-radius:0;border:0;border-left:1px solid var(--rule-d);padding:30px 38px;overflow:auto}.contact-drawer[open]{animation:drawer-enter .35s ease-out}.contact-drawer::backdrop{background:rgba(13,17,18,.76);backdrop-filter:blur(3px)}.contact-drawer h2{font-size:38px;line-height:1.07;margin-top:15px;max-width:12ch}.contact-drawer-lead{font-size:14px;color:var(--d-2);margin-top:19px;max-width:34ch}.contact-drawer .contact-directory{grid-template-columns:1fr;margin-top:32px;gap:29px}.contact-drawer .contact-person{padding-top:20px}.contact-drawer .contact-person h3{font-size:28px}.contact-drawer .drawer-inquiry{margin-top:32px}.contact-drawer .eyebrow{color:var(--d-2)}
@keyframes drawer-enter{from{opacity:.5;transform:translateX(35px)}to{opacity:1;transform:translateX(0)}}
.close-inputs{grid-template-columns:repeat(4,minmax(0,1fr))}.rfq-delivery-note{font-size:13px;line-height:1.5;color:var(--d-2);padding:14px 0 23px}.foot{background:#1c2223;color:var(--d-1)}.foot-brand p,.foot-nav a,.foot-legal{color:var(--d-2)}.foot-nav a:hover{color:var(--d-1)}.foot-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-legal{border-color:var(--rule-d);padding-bottom:100px}.foot-wordmark{-webkit-text-stroke:1px #767d78}.footer-logo img{width:200px;height:200px;object-fit:contain;mix-blend-mode:screen}.foot-brand{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:center}.foot-brand p{margin:0;font-size:11px;letter-spacing:.02em}.foot-inner{grid-template-columns:1.25fr .75fr}.foot-contacts{margin-top:40px}.foot-contacts .contact-person h3{font-size:24px}.foot-contacts .contact-role{font-size:11px}.foot-contacts .contact-methods{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.foot-contacts .contact-method{gap:6px;font-size:10px}.foot-contacts .contact-method svg{width:16px}.foot-contacts .contact-method-arrow{display:none}
@media(min-width:1600px){.masthead-inner{max-width:1760px}.hero-type{max-width:1760px}.scale-content{min-height:960px}.made [data-product-panel],.made .band-a .band-media,.made .band-b .band-media,.made .band-c .band-bleed{min-height:710px;height:710px}}
@media(max-width:1200px){.masthead-inner{gap:18px}.header-contact{padding-left:15px}.nav-desktop{gap:15px}.nav-desktop a{font-size:10px}.nav-cta{font-size:10px}.brand-word{height:8px}.brand{gap:8px}.foot-brand{grid-template-columns:150px 1fr}.footer-logo img{width:150px;height:150px}.foot-contacts .contact-methods{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){.header-contact{margin-left:auto;border:0}.nav-desktop{display:none}.nav-cta{display:none}.nav-toggle{display:flex}.product-tabs button{padding:18px 12px;gap:10px;font-size:11px}.made [data-product-panel]{min-height:500px}.made .band-a .band-media,.made .band-b .band-media,.made .band-c .band-bleed{height:500px}.scale-content{min-height:750px}.scale-picture{left:18%;width:82%}.scale-number{font-size:27vw}.scale-support{max-width:610px}.contact-directory{column-gap:32px}.foot-inner{grid-template-columns:1fr}.foot-nav{grid-template-columns:repeat(4,1fr)}}
@media(max-width:720px){html{scroll-padding-top:72px}.masthead-inner{padding-block:16px;gap:16px}.brand-mark{height:27px}.brand-word{height:8px}.header-contact{font-size:9px;letter-spacing:0;padding:8px 0}.header-contact span{display:none}.hero-type .l3{font-size:clamp(27px,7.3vw,42px);max-width:12ch;line-height:1.04}.hero-type p{font-size:14px;max-width:31ch}.hero-frame img{object-position:60% center}.product-tabs{margin-top:30px;grid-template-columns:repeat(2,minmax(0,1fr))}.product-tabs button:nth-child(2){border-right:0}.product-tabs button:nth-child(-n+2){border-bottom:1px solid var(--rule-d)}.product-tabs button{display:block;min-height:84px;font-size:10px;line-height:1.4;padding:13px 9px}.product-tabs button i{display:block;margin-bottom:8px}.made [data-product-panel]{min-height:0;height:auto}.made .band-a,.made .band-b{display:flex;flex-direction:column;gap:0}.made .band-a .band-media,.made .band-b .band-media{width:100%;height:350px;order:0}.made .band-a .band-type,.made .band-b .band-type{order:1;margin:0;max-width:none;width:100%;padding:30px var(--pad) 36px}.made .band-a h3,.made .band-b h3,.made .band-c h3{font-size:38px}.made .band-c .band-bleed{height:600px}.made .band-c-foot{grid-template-columns:1fr}.made .band-index{margin-bottom:18px}.made .band-list{font-size:11px}.scale-content{min-height:770px;padding-block:50px 38px}.scale-picture{inset:0;width:100%;object-position:60% center}.scale:after{background:linear-gradient(0deg,#191d1e 4%,rgba(25,29,30,.86) 38%,rgba(25,29,30,.28) 70%),linear-gradient(90deg,rgba(25,29,30,.76),transparent)}.scale-number{font-size:38vw;margin-top:42px}.scale-number i{margin-left:6px}.scale-title{font-size:21px;letter-spacing:.06em;max-width:19ch}.scale-lead{font-size:17px;max-width:24ch}.scale-support{display:grid;grid-template-columns:1fr 1fr;gap:17px 20px;padding-top:120px}.scale-support li{font-size:11px}.scale-proof-note{font-size:9px;max-width:35ch}.contact-directory{grid-template-columns:1fr;gap:30px}.contact-methods{gap:0 24px}.contact-person h3{font-size:28px}.contact-float{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:13px 16px}.contact-float span{font-size:10px}.contact-drawer{padding:24px}.contact-drawer h2{font-size:34px}.close-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-brand{grid-template-columns:140px 1fr;gap:16px}.footer-logo img{width:140px;height:140px}.foot-nav{grid-template-columns:repeat(2,1fr)}.foot-contacts .contact-methods{grid-template-columns:repeat(4,minmax(0,1fr))}.foot-contacts .contact-method{font-size:10px;gap:4px}.foot-wordmark{white-space:normal;font-size:12vw;line-height:.98;max-width:12ch}.foot-legal{font-size:10px}.core3d-controls button{min-height:44px}}
@media(max-width:380px){.brand-word{height:7px}.masthead-inner{gap:12px}.header-contact{font-size:8px}.brand-mark{height:24px}.contact-methods{gap:0 15px}.foot-contacts .contact-methods{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-brand{grid-template-columns:1fr}.product-tabs button{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.brand-mark,.brand-word,.contact-drawer[open]{animation:none}.brand img,.brand::after,.contact-float{transition:none}.brand:hover img,.contact-float:hover{transform:none}}
.scale-up{margin-top:42px}.scale-number{margin-top:14px}.export-tabs{display:flex;flex-wrap:wrap;gap:24px;margin-top:28px}.export-tabs button{font:11px var(--mono);text-transform:uppercase;letter-spacing:.05em;color:#cccfc6;border-bottom:1px solid transparent;min-height:44px}.export-tabs button[aria-pressed=true]{border-color:var(--acc);color:var(--acc)}.export-bleed img{object-position:50% 50%}.quality-media img{object-position:50% 45%}.refs-images img{object-position:50% 45%}.sig-panel .sig-media img{object-position:55% 58%}
.core3d .hotspot{scroll-margin-top:150px}.nav-desktop a::after{transition:transform .25s}
.masthead{background:rgba(19,23,25,.42)}
.close,.refs{background:var(--ink)}
@media(max-width:720px){.core3d-controls{display:grid;grid-template-columns:1.2fr 1.3fr 1fr 44px 44px;width:100%}.core3d-controls button{padding:8px 4px!important;letter-spacing:.025em!important;font-size:8px!important}.contact-float{width:48px;height:48px;padding:0;justify-content:center}.contact-float span{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.close-inputs{column-gap:22px}.close-inputs li{display:flex;flex-wrap:wrap;gap:5px;align-content:flex-start;line-height:1.5}.close-inputs span{flex-basis:100%;padding-left:22px}}
.contact-drawer{max-width:100vw}

/* Executed references: eight featured states using the existing transition and rail. */
#refs-rail{grid-template-columns:repeat(4,minmax(0,1fr))}
#refs-rail button{min-width:0}
#refs-rail span{overflow-wrap:break-word}
#reference-panel .refs-name,#reference-panel .refs-spec{max-width:58ch}
#reference-panel .refs-images img[data-reference-image="125"],#reference-panel .refs-images img[data-reference-image="railway"],#reference-panel .refs-images img[data-reference-image="mexico"],#reference-panel .refs-images img[data-reference-image="se-asia"],#reference-panel .refs-images img[data-reference-image="china-utility"],#reference-panel .refs-images img[data-reference-image="brazil"]{object-fit:contain;object-position:100% 50%;background:#131719}
#reference-panel[data-reference="railway"] .refs-figure b,#reference-panel[data-reference="mexico"] .refs-figure b,#reference-panel[data-reference="se-asia"] .refs-figure b,#reference-panel[data-reference="china-utility"] .refs-figure b,#reference-panel[data-reference="brazil"] .refs-figure b{font-size:clamp(3rem,9vw,8rem);line-height:.94}
#reference-panel .refs-images img[data-reference-image="xd"]{object-fit:contain;object-position:100% 50%;background:#131719}
#reference-panel .refs-images img[data-reference-image="btw"]{object-fit:contain;object-position:100% 50%;background:#131719}
#reference-panel .refs-images img[data-reference-image="63"]{object-position:60% 50%}
@media(max-width:720px){
 #refs-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;scroll-snap-type:none}
 #refs-rail button{min-height:94px;padding-right:14px}
 #reference-panel .refs-images img[data-reference-image="xd"],#reference-panel .refs-images img[data-reference-image="btw"]{height:64%;object-position:50% 0}
 #reference-panel .refs-images img[data-reference-image="china-utility"],#reference-panel .refs-images img[data-reference-image="brazil"],#reference-panel .refs-images img[data-reference-image="se-asia"]{height:52%;object-fit:cover;object-position:50% 35%}
 #reference-panel[data-reference="railway"] .refs-figure b,#reference-panel[data-reference="mexico"] .refs-figure b,#reference-panel[data-reference="se-asia"] .refs-figure b,#reference-panel[data-reference="china-utility"] .refs-figure b,#reference-panel[data-reference="brazil"] .refs-figure b{font-size:clamp(2.2rem,9vw,3.6rem)}
 #reference-panel .refs-spec{max-width:38ch}
}

/* Keep the existing contact and privacy controls in page-end flow without covering content. */
body.chenfan-v2 .contact-float,
body.chenfan-v2 .cf-privacy-settings{position:static;inset:auto;margin:16px;display:inline-flex;vertical-align:middle}
body.chenfan-v2 .contact-float{width:auto;height:auto;min-height:44px;padding:12px 16px;justify-content:center}
body.chenfan-v2 .contact-float span{position:static;clip:auto;clip-path:none;width:auto;height:auto;overflow:visible}
body.chenfan-v2 .cf-privacy-settings{min-height:44px;align-items:center}
