/* Approved Figma dBAy9VSD6xCVplCkflo3aS, frame 2:2. Editorial route only. */
:root{--navy:#092434;--red:#e5352c;--white:#fff;--font:"PingFang TC","Microsoft JhengHei",sans-serif;--gap:32px}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;overflow-x:clip}body{font-family:var(--font);color:var(--navy);background:var(--white)}h1,h2,p,figure{margin:0}h1,h2{font-weight:600}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:5px}img{display:block} .container{width:100%;max-width:1440px;padding-inline:64px;margin-inline:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:30;background:var(--white);padding:16px}.opening{height:100svh;position:relative;background:var(--navy);overflow:clip}.opening-film{width:100%;height:100%;object-fit:contain;display:block}.film-controls{position:absolute;left:64px;right:64px;bottom:44px;display:flex;align-items:center;justify-content:space-between}.film-toggle,.enter-home{background:var(--navy);color:var(--white);width:48px;height:48px;display:grid;place-items:center;border:0;cursor:pointer}.film-toggle{border:1px solid var(--white)}.film-toggle img{width:20px;height:20px}.film-toggle .play{display:none;font-size:20px}.film-toggle[data-paused=true] .pause{display:none}.film-toggle[data-paused=true] .play{display:block}.enter-home{font-size:32px;line-height:normal}.brand-hero{height:896px;min-height:800px;background:var(--white);position:relative;isolation:isolate}.brand-photo{position:absolute;top:122px;bottom:0;left:0;right:0;overflow:clip;z-index:-1}.brand-photo img{position:absolute;top:-.03%;left:-8.82%;width:108.81%;height:154.52%;opacity:.58;object-fit:fill}.masthead{height:120px;display:flex;justify-content:space-between;align-items:center;padding-block:24px;background:var(--white);gap:32px}.logo{padding:8px 12px;background:var(--white)}.logo img{width:112px;height:56px;object-fit:contain}.masthead nav{display:flex;gap:24px;height:72px;align-items:center;background:var(--white)}.masthead nav a{font-size:20px;line-height:21px;padding-block:12px;white-space:nowrap;position:relative}.masthead nav a:after{content:"";position:absolute;height:1px;background:currentColor;left:0;right:0;bottom:5px;transform:scaleX(0);transform-origin:left;transition:transform 200ms}.masthead nav a:hover:after,.masthead nav a:focus-visible:after{transform:scaleX(1)}.brand-layout{display:grid;grid-template-columns:896px 384px;gap:32px;padding-top:291px}.hero-plate{height:271px;background:var(--navy);border-top:5px solid var(--red);padding:32px 32px 0;color:var(--white)}h1{font-size:92px;line-height:103.04px;white-space:nowrap}h1 span{display:block}.hero-details{color:var(--white);width:384px}.hero-details p{font-size:24px;line-height:31.45px;text-shadow:0 0 8.9px #516876}.hero-details .link{margin-top:63px;text-shadow:0 0 17.8px #516876}.link{display:inline-flex;min-height:48px;align-items:center;padding-block:8px;border-bottom:1px solid currentColor;font-size:16px;line-height:normal;font-weight:600}.products{height:750px;padding-block:60px}.products-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;padding-top:32px}.products h2{height:109px;font-size:72px;line-height:76.8px;white-space:nowrap}.products p{font-size:20px;line-height:32.3px;letter-spacing:-.5px}.product-photo{width:100%;height:369.782px;object-fit:cover}.actions{grid-column:2;display:flex;justify-content:flex-end;gap:32px;padding-top:0;height:48px}.capability{height:907px;background:var(--navy);color:var(--white);padding-top:60px;overflow:clip}.capability h2{font-size:72px;line-height:76.8px;height:100px;white-space:nowrap}.capability-text{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;border-top:2px solid var(--white);padding-top:32px}.capability-text p{font-size:21px;line-height:37.8px}.capability-text strong{font-weight:600;display:block}.gallery{margin-top:32px;height:393px;overflow:clip}.gallery-track{display:flex;width:max-content;height:393px;margin-left:calc((100% - 1312px)/2 - 1677.5px);animation:equipment-scroll 100s linear infinite}.gallery-set{display:flex;flex-shrink:0;height:393px;width:3995px}.gallery-set img{width:var(--equipment-width);height:393px;object-fit:cover;flex-shrink:0}.gallery:hover .gallery-track,.gallery:focus-within .gallery-track{animation-play-state:paused}.capability-action{text-align:right;margin-top:32px}.about{padding-bottom:60px}.factory-photo{height:799px;position:relative;overflow:clip}.factory-photo img{position:absolute;width:100%;height:159.23%;top:-31.74%;left:.01%;object-fit:fill}.about-layout{display:grid;grid-template-columns:minmax(0,1fr) 392px;gap:32px;padding-top:32px;margin-top:26px;height:232px;position:relative}.about h2{font-size:72px;line-height:76.8px;white-space:nowrap}.about p{font-size:20px;line-height:32.3px}.about .link{position:absolute;right:64px;bottom:0}.support{background:var(--white);padding-bottom:60px}.support-band{height:714px;background:var(--navy);color:var(--white)}.support-layout{display:grid;grid-template-columns:421px minmax(0,1fr);gap:32px;padding-top:65px;height:652px}.support-photo{height:587px;overflow:clip;position:relative}.support-photo img{position:absolute;height:100%;width:248%;left:-85.48%;top:.01%;object-fit:fill}.support h2{font-size:72px;line-height:76.8px;white-space:nowrap}.support-copy{position:relative}.support p{font-size:20px;line-height:32.3px;padding-top:32px}.support .link{position:absolute;bottom:0;right:0}footer{background:var(--white);border:1px solid var(--white);padding-bottom:64px}.colophon{display:grid;grid-template-columns:533.33px minmax(0,1fr);gap:32px;height:150px}.footer-logo{width:256px;height:75px;object-fit:contain}.colophon h2{font-size:32px;line-height:38.4px;padding-top:34px;white-space:nowrap}.contact{font-size:20px;line-height:30px;white-space:pre-wrap}.contact a{text-decoration:underline;text-underline-offset:3px}
@keyframes equipment-scroll{to{transform:translateX(-3995px)}}
.js-motion .reveal{opacity:0;transform:translateY(16px);transition:opacity 600ms,transform 600ms}.js-motion .reveal.in-view{opacity:1;transform:none}.review-static .reveal{opacity:1;transform:none;transition:none}.review-static .gallery-track{animation:none}
@media(max-width:1599px) and (min-width:961px){.brand-layout{grid-template-columns:minmax(0,7fr) minmax(0,3fr)}h1{font-size:clamp(58px,4.7vw,80px);line-height:1.15}.hero-plate{height:auto;min-height:240px}.hero-details{width:auto}.hero-details p{font-size:20px;line-height:1.5}.brand-layout{padding-top:240px}.products h2,.capability h2,.about h2,.support h2{font-size:clamp(40px,3.68vw,64px);line-height:1.2}.products h2{height:109px}.support-layout{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.colophon{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.support h2{white-space:normal}.about h2{white-space:normal}.capability-text p{font-size:19px;line-height:1.8}}
@media(max-width:960px){.container{padding-inline:24px}.film-controls{left:24px;right:24px;bottom:32px}.masthead{height:auto;min-height:104px;gap:20px}.masthead nav{flex-wrap:wrap;justify-content:flex-end;gap:12px 20px;height:auto;max-width:420px}.masthead nav a{font-size:15px;line-height:20px;padding:8px 0}.logo img{width:88px;height:44px}.brand-hero{height:auto;min-height:800px}.brand-photo{top:104px}.brand-photo img{height:100%;width:100%;left:0;top:0;object-fit:cover;object-position:center}.brand-layout{grid-template-columns:minmax(0,1fr);padding-top:160px;padding-bottom:64px;gap:32px}.hero-plate{height:auto;padding:28px}.hero-details{width:min(100%,560px);margin-left:auto}.hero-details p{font-size:20px;line-height:1.6;text-shadow:0 1px 6px var(--navy)}h1{font-size:clamp(36px,7.5vw,68px);line-height:1.2}.hero-details .link{margin-top:24px}.products{height:auto;padding-block:60px}.products-grid{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:0}.products h2{height:auto;font-size:40px;line-height:1.25;white-space:normal}.products p{font-size:18px;line-height:1.8;letter-spacing:0}.product-photo{height:auto;aspect-ratio:640/369.782}.actions{grid-column:1;justify-content:flex-end;height:auto}.capability{height:auto;padding-block:60px}.capability h2{height:auto;white-space:normal;font-size:40px;line-height:1.25;margin-bottom:32px}.capability-text{grid-template-columns:minmax(0,1fr)}.capability-text p{font-size:18px;line-height:1.8}.gallery,.gallery-track,.gallery-set{height:280px}.gallery-set{width:2846.31px}.gallery-set img{height:280px;width:calc(var(--equipment-width)*280/393)}.gallery-track{margin-left:0;animation-name:equipment-mobile}.capability-action{margin-top:28px}.factory-photo{height:auto;aspect-ratio:1954/799}.factory-photo img{height:159.23%;top:-31.74%}.about-layout{height:auto;grid-template-columns:minmax(0,1fr);gap:24px;margin-top:26px;padding-bottom:72px}.about h2{font-size:40px;line-height:1.25;white-space:normal}.about p{font-size:18px;line-height:1.8}.about .link{right:24px}.support-band{height:auto}.support-layout{height:auto;grid-template-columns:minmax(0,1fr);padding-block:60px;gap:32px}.support-photo{height:auto;width:min(100%,421px);aspect-ratio:421/587}.support h2{font-size:40px;line-height:1.25;white-space:normal}.support p{font-size:18px;line-height:1.8}.support .link{position:static;margin-top:32px}.colophon{height:auto;grid-template-columns:minmax(0,1fr);gap:40px}.contact{font-size:16px;line-height:1.8;white-space:normal}.footer-logo{width:200px;height:60px}.colophon h2{font-size:28px;padding-top:24px}.opening-film{object-fit:contain}footer{padding-bottom:48px}.support-photo{order:0}.support-copy{order:1}}
@keyframes equipment-mobile{to{transform:translateX(-2846.31px)}}
@media(max-width:480px){.masthead nav{gap:4px 12px}.masthead nav a{font-size:12px}.logo{padding:4px}.logo img{width:72px;height:36px}.brand-layout{padding-top:120px}.hero-plate{padding:24px 16px}h1{font-size:clamp(30px,8.4vw,40px)}.hero-details p{font-size:18px}.products h2,.capability h2,.about h2,.support h2{font-size:34px}.actions{gap:24px}.factory-photo{aspect-ratio:4/3}.factory-photo img{height:100%;top:0;object-fit:cover}.contact{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js-motion .reveal{opacity:1;transform:none;transition:none}.gallery-track{animation:none}}

.contact a[href^="tel:"]{text-decoration:none}

/* ---- Critique fixes (approved 2026-11-01) ---- */
/* 1. Hero copy legible: dark scrim panel behind intro text */
body.editorial .hero-details{background:rgba(9,36,52,.82);padding:32px;color:#fff;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);text-shadow:none}
body.editorial .hero-details p{font-size:17px;line-height:1.8;text-shadow:none}
/* 2. One clear primary action */
body.editorial .hero-details .link{background:var(--red);border:0;padding:0 28px;height:52px;margin-top:28px;text-shadow:none;transition:background .2s}
body.editorial .hero-details .link:hover{background:#c92b23}
/* 3. Title plate sits below the wall sign */
body.editorial .brand-layout{margin-top:120px}
/* 4 + 7. Text links sit with their content, left aligned, red underline */
body.editorial .link{position:static!important;border-bottom:2px solid var(--red);transition:color .2s}
body.editorial .link:hover{color:var(--red)}
body.editorial .actions{display:flex;gap:32px;flex-wrap:wrap;margin-top:24px}
body.editorial .capability-action{display:flex;justify-content:flex-start;padding-block:32px}
body.editorial .support-copy{display:flex;flex-direction:column;align-items:flex-start}
/* 5. Equipment strip: fade edges so the moving row reads as a carousel */
body.editorial .gallery{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
/* 6. About: stronger composition */
body.editorial .about-layout{padding-block:96px}

body.editorial .about-layout p{font-size:18px;line-height:1.9;max-width:36em}
/* 8. Footer: fuller, no dead space */
body.editorial footer{padding-block:96px;border-top:4px solid var(--red)}
body.editorial .colophon h2{font-size:28px}
body.editorial .contact{font-size:17px;line-height:2.1}
body.editorial footer~*,body.editorial{min-height:0}
/* 9. Readable body copy */
body.editorial main p{font-size:17px;line-height:1.85}
/* 10. Subtitle clearance: controls move to the side edges, smaller */
body.editorial .film-controls{bottom:20px}
body.editorial .film-toggle,body.editorial .enter-home{width:40px;height:40px;font-size:22px}
@media (max-width:760px){body.editorial .hero-details{padding:24px}body.editorial .brand-layout{margin-top:64px}body.editorial footer{padding-block:64px}}
body.editorial .about-layout{height:auto;padding-block:80px;margin-top:0}body.editorial .about-layout .link{grid-column:2;justify-self:start;margin-top:0}body.editorial .products .actions{justify-content:flex-start}@media (max-width:760px){body.editorial .about-layout .link{grid-column:1}}
body.editorial .support-copy .link{margin-top:32px}
@media (max-width:760px){body.editorial .masthead nav{display:none}body.editorial .brand-photo img{object-position:30% center}}
body.editorial .menu-btn{display:none}@media (max-width:760px){body.editorial .masthead{position:relative;display:flex;align-items:center}body.editorial .menu-btn{display:grid;gap:5px;place-content:center;width:44px;height:44px;margin-left:auto;background:none;border:1px solid var(--navy);cursor:pointer}body.editorial .menu-btn i{display:block;width:20px;height:2px;background:var(--navy);transition:transform .2s,opacity .2s}body.editorial .menu-btn[aria-expanded=true] i:nth-child(1){transform:translateY(7px) rotate(45deg)}body.editorial .menu-btn[aria-expanded=true] i:nth-child(2){opacity:0}body.editorial .menu-btn[aria-expanded=true] i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}body.editorial .masthead nav{display:flex!important;position:absolute;z-index:20;top:100%;left:-24px;right:-24px;flex-direction:column;align-items:stretch;gap:0;background:var(--navy);padding:0 24px;max-height:0;overflow:hidden;visibility:hidden;transition:max-height .35s,visibility .35s}body.editorial .masthead nav.open{max-height:420px;visibility:visible}body.editorial .masthead nav a{color:#fff;padding:16px 0;border-top:1px solid #ffffff26;font-size:17px}}
@media (max-width:760px){body.editorial .masthead nav.open{border-bottom:3px solid var(--red);box-shadow:0 12px 24px #0006}}
@media (max-width:760px){body.editorial .menu-btn{border:0}}

/* Balanced line breaks: no single-character last lines */
h1,h2,h3{text-wrap:balance}p,dd{text-wrap:pretty}

/* One rhythm: gap above buttons = gap between paragraphs (24px) */
body.editorial .link,body.editorial .hero-details .link,body.editorial .support-copy .link{margin-top:24px!important}body.editorial .actions{margin-top:24px}body.editorial .actions .link{margin-top:0!important}body.editorial .capability-action{padding-top:24px}

/* Hero photo settles slowly on load */
@keyframes edKb{from{transform:scale(1.12)}to{transform:none}}
body.editorial .brand-photo img{animation:edKb 12s cubic-bezier(.2,.7,.2,1) both}
@media (prefers-reduced-motion:reduce){body.editorial .brand-photo img{animation:none}}

/* Key figures: under the About copy, navy numerals divided by hairlines */
body.editorial .about-layout .kf{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:56px;border-top:1px solid #09243433}
body.editorial .kf-i{margin:0;padding:32px 32px 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;font-size:18px;color:var(--navy)}
body.editorial .kf-i+.kf-i{padding-left:32px;border-left:1px solid #09243433}
body.editorial .kf-pre{flex-basis:100%;margin-bottom:12px;color:#4a6170}
body.editorial .kf-n{font-size:clamp(52px,5.2vw,84px);line-height:1;font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
body.editorial .kf-u{font-weight:600}
@media (max-width:760px){body.editorial .about-layout .kf{grid-template-columns:minmax(0,1fr);margin-top:32px}body.editorial .kf-i,body.editorial .kf-i+.kf-i{padding:24px 0;border-left:0}body.editorial .kf-i+.kf-i{border-top:1px solid #09243433}}
