@font-face{font-family:"Smiley Sans";src:url("assets/fonts/smiley-sans-display.woff2") format("woff2");font-display:swap}
:root{--paper:#f4f3ee;--ink:#111719;--blue:#1f55e5;--green:#76a96b;--muted:#747b79;--line:rgba(17,23,25,.18);--header:84px;--gutter:clamp(20px,4vw,68px);--display:"Smiley Sans","Microsoft YaHei","Noto Sans CJK SC",sans-serif;--body:"Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--header)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.65;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
::selection{color:#fff;background:var(--blue)}
input,select,textarea{caret-color:var(--ink)}
:focus{outline:3px solid var(--blue);outline-offset:4px}
:focus:not(:focus-visible){outline:0}
:focus-visible{outline-color:var(--blue)}
.site-header :focus-visible,.mobile-menu :focus-visible,.hero :focus-visible,.product-row--dark :focus-visible,.engineering :focus-visible,.contact :focus-visible,.site-footer :focus-visible{outline-color:#fff}
.inquiry :focus-visible{outline-color:var(--blue)}
.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;padding:10px 16px;background:var(--paper);color:var(--ink);border:2px solid var(--blue)}
.skip-link:focus{top:12px}
.site-header{position:fixed;inset:0 0 auto;z-index:100;height:var(--header);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--gutter);border-bottom:1px solid rgba(244,243,238,.22);background:rgba(17,23,25,.9);color:var(--paper);backdrop-filter:blur(14px)}
.brand{display:inline-flex;align-items:center;gap:12px;justify-self:start;min-height:48px}.brand img{width:46px;height:46px}.brand span{display:grid;line-height:1.15}.brand strong{font-family:var(--display);font-size:18px;letter-spacing:.06em}.brand small{margin-top:4px;color:rgba(244,243,238,.62);font:10px/1 var(--body);letter-spacing:.14em;text-transform:uppercase}
.desktop-nav{display:flex;align-items:center;gap:clamp(22px,3vw,52px);font-size:14px}.desktop-nav a{position:relative;padding:30px 0}.desktop-nav a::after{content:"";position:absolute;inset:auto 0 23px;height:1px;background:var(--green);transform:scaleX(0);transform-origin:right;transition:transform .25s}.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}
.header-cta{justify-self:end;display:flex;align-items:center;justify-content:space-between;gap:24px;min-width:190px;min-height:46px;padding:0 16px;border:1px solid rgba(244,243,238,.44);font-size:13px;transition:background .2s,color .2s}.header-cta:hover{background:var(--paper);color:var(--ink)}
.menu-toggle{display:none;justify-self:end;width:48px;height:48px;border:1px solid rgba(244,243,238,.42);background:transparent;color:inherit;cursor:pointer}.menu-toggle span{display:block;width:20px;height:1px;margin:6px auto;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.mobile-menu{position:fixed;z-index:90;inset:var(--header) 0 0;background:var(--ink);color:var(--paper);padding:40px var(--gutter);overflow:auto}.mobile-menu__index{color:var(--green);font:12px/1 var(--body);letter-spacing:.16em}.mobile-menu nav{display:grid;margin-top:36px;border-top:1px solid rgba(244,243,238,.25)}.mobile-menu nav a{display:grid;grid-template-columns:48px 1fr;align-items:center;min-height:80px;border-bottom:1px solid rgba(244,243,238,.25);font:clamp(34px,9vw,64px)/1 var(--display)}.mobile-menu nav span{font:11px/1 var(--body);color:var(--green)}.mobile-menu__contact{display:inline-block;margin-top:36px;text-decoration:underline;text-underline-offset:5px}
main{display:block}.hero{position:relative;min-height:100svh;padding:calc(var(--header) + 54px) var(--gutter) 46px;background:var(--ink);color:var(--paper);display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:auto auto 1fr auto;gap:24px;overflow:hidden}.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(244,243,238,.22)}
.eyebrow{grid-column:1/5;margin:0;font-size:11px;letter-spacing:.2em;color:var(--green)}.axis--hero{position:absolute;left:54%;top:var(--header);bottom:0;width:1px;background:rgba(244,243,238,.22)}.axis--hero span{position:absolute;top:25%;left:-5px;width:11px;height:11px;border:2px solid var(--green);background:var(--ink);transform:rotate(45deg)}
.hero__title{grid-column:1/7;z-index:2;padding-top:clamp(22px,5vh,72px)}.hero__title h1{margin:0;font:clamp(68px,9.2vw,150px)/.84 var(--display);letter-spacing:-.05em}.hero__title h1 span{display:inline-block;color:var(--green);font-size:.72em;margin-left:.08em}.hero__title p{max-width:520px;margin:36px 0 0;font-size:clamp(16px,1.35vw,21px);color:rgba(244,243,238,.74)}
.hero__media{grid-column:6/13;grid-row:2/4;align-self:end;margin:0;position:relative;z-index:1}.hero__media::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink),transparent 38%);pointer-events:none}.hero__media img{width:100%;height:clamp(390px,58vh,710px);object-fit:cover;object-position:center}.hero__media figcaption{position:absolute;right:12px;bottom:10px;color:rgba(244,243,238,.68);font-size:10px;letter-spacing:.12em}
.hero__facts{grid-column:1/6;display:grid;grid-template-columns:repeat(3,1fr);align-self:end;border-top:1px solid rgba(244,243,238,.26);z-index:3}.hero__facts div{padding:18px 12px 0 0}.hero__facts span,.hero__facts small{display:block;font-size:10px;color:rgba(244,243,238,.56)}.hero__facts strong{display:block;margin:5px 0;font:34px/1 var(--display);font-variant-numeric:tabular-nums}
.scroll-cue{grid-column:11/13;justify-self:end;align-self:end;display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.12em;z-index:3}.scroll-cue i{display:block;width:40px;height:40px;border:1px solid rgba(244,243,238,.4);position:relative}.scroll-cue i::after{content:"";position:absolute;left:19px;top:10px;width:1px;height:18px;background:var(--green)}
.section-code{font-size:11px;letter-spacing:.18em;color:var(--blue)}
.intro{padding:clamp(88px,12vw,180px) var(--gutter);display:grid;grid-template-columns:2fr 7fr 3fr;gap:32px;border-bottom:1px solid var(--line)}.intro h2{grid-column:2;margin:0;font:clamp(42px,6.2vw,94px)/.98 var(--display);letter-spacing:-.04em}.intro p{grid-column:3;margin:0;align-self:end;color:#4b5352}
.products{background:var(--paper)}.section-head{display:grid;grid-template-columns:2fr 7fr 3fr;gap:32px;padding:88px var(--gutter) 54px;border-bottom:1px solid var(--line)}.section-head h2{margin:0;font:clamp(48px,7vw,108px)/.9 var(--display);letter-spacing:-.04em}.section-head p{margin:0;align-self:end;color:#59605f}.section-head--dark{color:var(--paper);border-color:rgba(244,243,238,.22)}.section-head--dark p{color:rgba(244,243,238,.66)}.section-head--dark .section-code{color:var(--green)}
.product-row{display:grid;grid-template-columns:1fr 4fr 7fr;min-height:620px;border-bottom:1px solid var(--line)}.product-row__number{padding:30px var(--gutter);padding-right:16px;font-size:11px;letter-spacing:.15em}.product-row__copy{padding:clamp(48px,7vw,110px) clamp(24px,4vw,72px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.kicker{margin:0 0 18px;font-size:10px;letter-spacing:.18em;color:var(--blue)}.product-row__copy h3{margin:0;font:clamp(52px,7.2vw,112px)/.92 var(--display);letter-spacing:-.04em}.product-row__copy>p:not(.kicker){max-width:470px;margin:28px 0;color:inherit;opacity:.72}.product-row__copy a{margin-top:10px;border-bottom:1px solid currentColor;padding:10px 0;font-size:13px}.product-row figure{margin:0;min-height:100%;overflow:hidden}.product-row figure img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.6,.2,1)}.product-row:hover figure img{transform:scale(1.018)}
.product-row--dark{background:var(--ink);color:var(--paper)}.product-row--dark .kicker{color:var(--green)}.product-row--green{background:#dfe8db}.product-row--paper{background:#e9e8e2}
.engineering{position:relative;background:var(--ink);color:var(--paper);padding-bottom:120px;overflow:hidden}.engineering__track{position:absolute;top:330px;bottom:0;left:50%;width:1px;background:rgba(244,243,238,.18)}.engineering__track span,.engineering__track i{position:absolute;left:-6px;width:13px;height:13px;border:2px solid var(--green);background:var(--ink);transform:rotate(45deg)}.engineering__track span{top:18%}.engineering__track i{top:57%}
.engineering__item{position:relative;display:grid;grid-template-columns:7fr 5fr;gap:0;margin-top:90px;align-items:center}.engineering__item figure{margin:0;min-height:560px}.engineering__item img{width:100%;height:100%;min-height:560px;object-fit:cover}.engineering__item>div{padding:60px clamp(34px,6vw,110px)}.engineering__item span{font-size:10px;letter-spacing:.18em;color:var(--green)}.engineering__item h3{margin:22px 0;font:clamp(50px,7vw,104px)/.92 var(--display)}.engineering__item p{max-width:420px;color:rgba(244,243,238,.68)}.engineering__item--reverse{grid-template-columns:5fr 7fr}.engineering__item--reverse figure{order:2}.engineering__item--reverse>div{order:1}
.engineering__statement{max-width:1100px;margin:140px auto 0;padding:0 var(--gutter)}.engineering__statement>p{color:var(--green);letter-spacing:.16em;font-size:12px}.engineering__statement h3{margin:24px 0 30px;font:clamp(38px,5vw,78px)/1.05 var(--display)}.engineering__statement small{display:block;max-width:760px;color:rgba(244,243,238,.56);font-size:13px}
.development{padding-bottom:0}.timeline{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.timeline article{min-height:330px;padding:42px clamp(20px,3vw,48px);border-right:1px solid var(--line)}.timeline article:last-child{border-right:0}.timeline time{color:var(--blue);font:20px/1 var(--display)}.timeline h3{margin:64px 0 20px;font:30px/1.05 var(--display)}.timeline p{margin:0;color:#59605f;font-size:14px}.development__media{margin:0;position:relative}.development__media img{width:100%;height:min(70vw,780px);object-fit:cover}.development__media figcaption{position:absolute;left:var(--gutter);bottom:28px;padding:12px 16px;background:rgba(17,23,25,.84);color:var(--paper);font-size:12px}
.contact{display:grid;grid-template-columns:1fr 1fr;background:var(--blue);color:#fff}.contact__lead{padding:clamp(72px,8vw,130px) var(--gutter)}.contact__lead .section-code{color:#fff}.contact__lead h2{margin:38px 0 28px;font:clamp(48px,6vw,92px)/.96 var(--display);letter-spacing:-.04em}.contact__lead>p{max-width:560px;color:rgba(255,255,255,.88)}.contact address{display:grid;gap:12px;margin-top:64px;font-style:normal}.contact address a{font:clamp(23px,2.3vw,38px)/1.1 var(--display);text-decoration:underline;text-underline-offset:7px}.contact address span{margin-top:14px;color:rgba(255,255,255,.88)}
.inquiry{padding:clamp(72px,8vw,130px) var(--gutter);background:var(--paper);color:var(--ink)}.form-title{display:flex;justify-content:space-between;align-items:end;padding-bottom:24px;border-bottom:2px solid var(--ink)}.form-title span{font-size:11px;letter-spacing:.18em;color:var(--blue)}.form-title strong{font:34px/1 var(--display)}.field{margin-top:28px}.field label{display:block;margin-bottom:9px;font-size:13px}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #6d7472;background:transparent;border-radius:0;padding:10px 0;color:var(--ink)}.field textarea{resize:vertical;min-height:110px}.field--split{display:grid;grid-template-columns:1fr 1fr;gap:28px}.inquiry button{width:100%;min-height:58px;margin-top:34px;border:0;background:var(--ink);color:var(--paper);display:flex;justify-content:space-between;align-items:center;padding:0 20px;cursor:pointer;transition:background .2s}.inquiry button:hover{background:#2a3436}.form-status{min-height:28px;margin:16px 0 0;color:#37403e;font-size:13px}.form-status:not(:empty){padding-left:14px;border-left:3px solid var(--green)}
.site-footer{padding:64px var(--gutter) 34px;background:var(--ink);color:var(--paper);display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-brand{display:flex;align-items:center;gap:18px;font-family:var(--display);font-size:clamp(20px,2.3vw,34px)}.footer-brand img{width:64px;height:64px}.site-footer nav{display:grid;align-content:start;gap:8px;font-size:13px}.site-footer nav a{padding:6px 0}.footer-meta{display:grid;align-content:start;gap:8px;color:rgba(244,243,238,.6);font-size:12px}.site-footer>p{grid-column:1/-1;margin:40px 0 0;padding-top:18px;border-top:1px solid rgba(244,243,238,.18);font-size:10px;letter-spacing:.09em;color:rgba(244,243,238,.56)}
.reveal{opacity:1;transform:none;transition:transform .25s ease}.reveal:hover{transform:translateY(-2px)}
@media (max-width:1020px){.site-header{grid-template-columns:1fr auto}.desktop-nav,.header-cta{display:none}.menu-toggle{display:block}.hero{grid-template-columns:repeat(8,1fr);grid-template-rows:auto auto auto auto;padding-top:calc(var(--header) + 38px)}.eyebrow{grid-column:1/5}.hero__title{grid-column:1/8;padding-top:20px}.hero__media{grid-column:2/9;grid-row:3;margin-right:calc(var(--gutter) * -1)}.hero__media img{height:50vh;min-height:370px}.hero__facts{grid-column:1/7}.scroll-cue{grid-column:7/9}.axis--hero{left:62%}.intro,.section-head{grid-template-columns:2fr 6fr}.intro h2,.section-head h2{grid-column:2}.intro p,.section-head p{grid-column:2}.product-row{grid-template-columns:1fr 3fr 4fr;min-height:520px}.engineering__item{grid-template-columns:1fr}.engineering__item--reverse{grid-template-columns:1fr}.engineering__item--reverse figure,.engineering__item--reverse>div{order:initial}.engineering__track{display:none}.timeline{grid-template-columns:1fr 1fr}.timeline article:nth-child(2){border-right:0}.timeline article:nth-child(-n+2){border-bottom:1px solid var(--line)}.contact{grid-template-columns:1fr}.site-footer{grid-template-columns:2fr 1fr}}
@media (max-width:680px){:root{--header:72px;--gutter:20px}.site-header{height:var(--header)}.brand img{width:40px;height:40px}.brand strong{font-size:16px}.menu-toggle{width:44px;height:44px}.hero{min-height:auto;padding-bottom:34px}.hero__title{grid-column:1/9}.hero__title h1{font-size:clamp(60px,20vw,86px);line-height:.9}.hero__title h1 span{display:block;margin:6px 0 0}.hero__title p{margin-top:24px;font-size:16px}.hero__media{grid-column:1/9;margin:16px calc(var(--gutter) * -1) 0}.hero__media::before{display:none}.hero__media img{height:52vw;min-height:260px}.hero__facts{grid-column:1/9;grid-template-columns:1fr 1fr;margin-top:10px}.hero__facts div:last-child{display:none}.hero__facts strong{font-size:28px}.scroll-cue{display:none}.axis--hero{display:none}.intro{grid-template-columns:1fr;padding:78px var(--gutter)}.intro .section-code,.intro h2,.intro p{grid-column:1}.intro h2{font-size:46px}.section-head{grid-template-columns:1fr;padding:72px var(--gutter) 36px}.section-head .section-code,.section-head h2,.section-head p{grid-column:1}.section-head h2{font-size:58px}.product-row{grid-template-columns:46px 1fr;min-height:auto}.product-row__number{grid-column:1;padding:34px 8px;font-size:9px;writing-mode:vertical-rl}.product-row__copy{grid-column:2;padding:56px 24px}.product-row__copy h3{font-size:58px}.product-row figure{grid-column:1/3;min-height:auto}.product-row figure img{height:72vw;min-height:300px}.engineering{padding-bottom:76px}.engineering__item{margin-top:44px}.engineering__item figure,.engineering__item img{min-height:0;height:70vw}.engineering__item>div{padding:42px var(--gutter) 62px}.engineering__item h3{font-size:56px}.engineering__statement{margin-top:78px;padding:0 var(--gutter)}.engineering__statement h3{font-size:39px}.timeline{grid-template-columns:1fr}.timeline article{min-height:auto;border-right:0!important;border-bottom:1px solid var(--line)!important;padding:38px var(--gutter)}.timeline h3{margin:36px 0 16px}.development__media img{height:76vw}.development__media figcaption{left:var(--gutter);right:var(--gutter);bottom:16px}.contact__lead,.inquiry{padding:72px var(--gutter)}.contact__lead h2{font-size:52px}.contact address{margin-top:46px}.field--split{grid-template-columns:1fr;gap:0}.site-footer{grid-template-columns:1fr;padding:50px var(--gutter) 28px}.site-footer>p{margin-top:10px}.footer-brand img{width:54px;height:54px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{transform:none!important}}
