@charset "UTF-8";
@font-face{font-family:Manrope;src:url('./manrope-latin.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{
  --paper:#f4f5f2;--white:#fff;--ink:#233a59;--body:#556273;--accent:#bd592e;--accent-ink:#954324;
  --line:#cbd2d9;--sage:#e8eced;--dark:#1b2d47;--field-line:#7c8998;
  --gutter:clamp(22px,4.5vw,64px);--max:1440px;--radius:12px;--section-space:clamp(4.5rem,7.2vw,6.5rem);
  --text-sm:.875rem;--text-base:1rem;--text-lead:clamp(1.25rem,2vw,1.625rem);--header-offset:132px;
  color-scheme:light;font-family:Manrope,'Helvetica Neue','PingFang SC','Microsoft YaHei',sans-serif;
  color:var(--ink);background:var(--paper);font-synthesis:none
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--header-offset);scrollbar-color:var(--field-line) var(--paper)}
body{margin:0;font-size:var(--text-base);line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;cursor:pointer;transition:color .2s,background-color .2s,border-color .2s}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
img{display:block;max-width:100%;height:auto}
p,h1,h2,h3,figure{margin:0}
ul,ol{margin:0;padding:0}
p{color:var(--body);text-wrap:pretty}
main,section,article,figure{min-width:0}
h1,h2,h3,p,a,label{overflow-wrap:anywhere}
input,select,textarea{caret-color:var(--accent-ink)}
h1,h2,h3{font-weight:550;line-height:1.16;letter-spacing:-.025em;text-wrap:balance}
h2{font-size:clamp(2rem,3.55vw,3.125rem)}
h3{font-size:1.375rem}
::selection{background:#d8e0e8;color:var(--dark)}
:focus-visible{outline:3px solid var(--accent-ink);outline-offset:5px}
section[tabindex='-1']:focus,main[tabindex='-1']:focus{outline:none}
a:hover{color:var(--accent-ink)}
.multiline{white-space:pre-line}
.icon{width:22px;height:22px;flex:0 0 22px;vertical-align:middle}
.section-pad{padding:var(--section-space) var(--gutter);max-width:var(--max);margin:auto}
.lead{font-size:var(--text-lead);line-height:1.55;letter-spacing:-.025em;color:var(--ink)}
.text-link{display:inline-flex;min-height:44px;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid currentColor;font-size:0.875rem;font-weight:650;line-height:1.5;padding:8px 0}
.button-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:52px;padding:14px 22px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:6px;font-size:0.875rem;font-weight:650;line-height:1.5}
.button-primary:hover{background:var(--dark);border-color:var(--dark);color:white}
.button-primary .icon{color:#f0bf9c}
.skip-link{position:fixed;top:10px;left:20px;transform:translateY(-160%);z-index:1000;background:var(--ink);color:white;padding:14px 22px;border-radius:6px}
.skip-link:focus{transform:translateY(0);color:white}

/* Navigation stays within an opaque, calm surface so text remains readable. */
.site-header{position:static;top:16px;width:calc(100% - 2 * var(--gutter));max-width:calc(var(--max) - 2 * var(--gutter));margin:16px auto 0;min-height:88px;padding:17px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);border:1px solid #d5dbe0;border-radius:10px;z-index:30}
.js-ready .site-header{position:sticky}
.admin-bar .site-header{top:48px}
.wordmark{display:inline-flex;align-items:center;flex:none;max-width:100%;min-height:44px;line-height:0}
.wordmark img{width:208px;height:auto;object-fit:contain}
.site-nav{display:flex;align-items:center;gap:22px;font-size:var(--text-sm);font-weight:600}
.site-nav>a{display:inline-flex;align-items:center;min-height:44px;position:relative;white-space:nowrap}
.site-nav>a[aria-current='location']{color:var(--ink)}
.site-nav>a[aria-current='location']:after{content:'';position:absolute;left:0;right:0;bottom:3px;height:2px;background:var(--accent)}
.site-nav .language-switch{padding-inline:14px;border-left:1px solid var(--line);min-width:52px;justify-content:center}
.menu-toggle{display:none}

/* The image stays unobstructed; its caption sits in the reading flow. */
.hero{max-width:var(--max);margin:auto;padding:clamp(3rem,5vw,4.5rem) var(--gutter) 1.5rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:clamp(2rem,4.5vw,4rem);align-items:center}
.hero-copy,.hero-visual{min-width:0}
.hero-copy{padding-block:1.5rem}
.hero h1{font-size:clamp(2.625rem,4.65vw,4.1875rem);line-height:1.13;letter-spacing:-.03em;font-weight:550}
.hero h1 span{display:block}
.hero h1 span:last-child{color:#526b88}
.hero-context{margin-top:1.5rem;color:var(--accent-ink);font-size:var(--text-sm);font-weight:600;letter-spacing:.025em}
.hero-bottom{margin-top:1rem;display:flex;flex-direction:column;align-items:flex-start;gap:1.75rem}
.hero-bottom>p{max-width:36em;font-size:var(--text-base);line-height:1.85}
.hero-image>img{width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;object-position:48% 50%;border-radius:var(--radius);background:var(--sage)}
.hero-image figcaption{display:flex;flex-direction:column;gap:.375rem;border-bottom:1px solid var(--line);padding:1.125rem 0;font-size:var(--text-base);line-height:1.6;color:var(--ink)}
.hero-image figcaption small{font-size:.8125rem;font-weight:400;color:var(--body);line-height:1.65}

/* Company context uses two clear columns instead of nested narrow measures. */
.about{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:3rem 8%;align-items:start}
.about .section-heading h2{max-width:15ch}
.about-story{display:flex;flex-direction:column;gap:1.5rem;min-width:0}
.about-story .lead{font-size:var(--text-lead);max-width:32ch}
.body-copy p+p{margin-top:1rem}
.body-copy p{font-size:var(--text-base);line-height:1.85;max-width:68ch}
.values{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;padding-top:2rem;border-top:1px solid var(--line)}
.values article+article{border-left:1px solid var(--line);padding-left:2rem}
.values h3{font-size:1.1875rem;line-height:1.45;letter-spacing:-.015em;margin-bottom:.625rem}
.values p{font-size:var(--text-base);line-height:1.8;max-width:34ch}

/* The main business and the broad home brand share a single visual chapter. */
.home-section{background:var(--sage)}
.home-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10%;align-items:start}
.home-intro h2{max-width:16ch}
.home-intro>div:last-child{min-width:0}
.home-intro .lead{margin-bottom:18px;font-size:1.5625rem}
.home-intro>div:last-child>p:not(.lead){font-size:1rem;line-height:1.85}
.scope-list{list-style:none;border-top:1px solid #bec8d1;margin-top:1.75rem}
.scope-list li{padding:13px 0;border-bottom:1px solid #bec8d1;display:flex;gap:16px;align-items:baseline;font-size:var(--text-sm)}
.brand-feature{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:clamp(2rem,4.5vw,4rem);align-items:center;margin-top:3.5rem;padding-top:3.5rem;border-top:1px solid #bec8d1}
.brand-feature img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:50% 50%;border-radius:var(--radius)}
.brand-feature figcaption{font-size:.8125rem;line-height:1.7;padding-top:.75rem;color:var(--body)}
.brand-story{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.brand-name{font-size:clamp(3.25rem,5.6vw,5rem);font-weight:550;line-height:1.2;letter-spacing:-.03em}
.brand-descriptor{font-size:var(--text-sm);color:var(--accent-ink);margin-top:.5rem}
.brand-tagline{font-size:clamp(1.5rem,2.25vw,1.875rem);line-height:1.5;letter-spacing:-.02em;color:var(--ink);margin:1.75rem 0 1rem}
.brand-body{font-size:var(--text-base);line-height:1.85;max-width:54ch}
.brand-categories{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin:1.5rem 0 0}
.brand-categories li{color:var(--body);font-size:var(--text-sm);line-height:1.7}
.brand-story .text-link{margin-top:1.5rem;max-width:100%}

/* Technology is a supporting product philosophy, not a competing business. */
.technology{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:9%;align-items:start}
.technology .section-heading h2{font-size:clamp(1.875rem,2.8vw,2.5rem);max-width:18ch}
.technology-content{min-width:0}
.technology-content .lead{font-size:1.5rem;margin-bottom:18px}
.technology-content>p:not(.lead){font-size:1rem;line-height:1.85;margin-top:16px}
.technology-principles{list-style:none;display:flex;flex-wrap:wrap;gap:10px 24px;border-top:1px solid var(--line);padding-top:22px;margin-top:27px}
.technology-principles li{font-size:var(--text-sm);color:var(--ink)}

/* A light panel improves scanning and input contrast in the contact chapter. */
.contact{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,6vw,86px);align-items:start;background:var(--ink);color:var(--paper)}
.contact-inner{min-width:0;padding-block:12px}
.contact h2{font-size:clamp(2rem,3.25vw,2.9375rem);line-height:1.25}
.contact-inner>p{color:#dce3eb;font-size:1rem;line-height:1.9;max-width:470px;margin-top:26px}
.contact-action{container-type:inline-size;container-name:contact-panel;min-width:0;padding:32px;background:var(--paper);color:var(--ink);border-radius:var(--radius)}
.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
.contact-field{min-width:0}
.contact-field-wide{grid-column:1/-1}
.contact-form label,.contact-fluent .ff-el-input--label label,.contact-manual-copy label{display:block;font-size:0.875rem;font-weight:600;color:var(--ink);margin:0 0 8px;line-height:1.6}
.contact-form label span,.contact-fluent .ff-el-input--label.asterisk-right>label:after{color:var(--accent-ink)}
.contact-form input,.contact-form select,.contact-form textarea,.contact-fluent .fluentform .ff-el-form-control{display:block;width:100%;max-width:100%;min-width:0;border:1px solid var(--field-line);background:white;color:var(--ink);border-radius:6px;box-shadow:none;padding:12px;font:inherit;font-size:1rem;line-height:1.5;min-height:50px;transition:border-color .2s,background-color .2s}
.contact-form textarea,.contact-fluent .fluentform textarea.ff-el-form-control{resize:vertical;min-height:150px}
.contact-form select option,.contact-fluent select option{background:white;color:var(--ink)}
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus,.contact-fluent .fluentform .ff-el-form-control:focus{border-color:var(--ink);outline:2px solid var(--ink);outline-offset:3px;box-shadow:none}
.contact-form ::placeholder,.contact-fluent .fluentform ::placeholder{color:#626f7e;opacity:1;font-size:0.875rem}
.contact .contact-form-help,.contact .contact-direct{font-size:var(--text-sm);line-height:1.8;color:var(--body);margin-top:20px}
.contact-form-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:24px}
.contact-submit,.contact-fluent .fluentform .ff-btn-submit{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:52px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:6px;padding:13px 20px;font:inherit;font-size:0.875rem;font-weight:650;box-shadow:none;transition:background-color .2s,border-color .2s}
.contact-submit:hover,.contact-fluent .fluentform .ff-btn-submit:hover{background:var(--dark);border-color:var(--dark);color:white}
.contact-copy-message{display:none;min-height:44px;background:transparent;color:var(--ink);font-size:var(--text-sm);border:0;border-bottom:1px solid var(--line);padding:8px 0;transition:color .2s,border-color .2s}
.contact-copy-message:hover{color:var(--accent-ink);border-color:var(--accent-ink)}
.js-ready .contact-copy-message{display:block}
.contact-direct a{display:inline-block;min-height:44px;line-height:44px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.contact-direct a:hover{color:var(--accent-ink)}
.contact .contact-status{font-size:var(--text-sm);line-height:1.8;color:var(--ink);background:var(--sage);border:1px solid var(--line);border-radius:6px;padding:12px 14px;margin-top:18px}
.contact-status:empty{display:none}
.contact-manual-copy{margin-top:18px}
.contact-manual-copy[hidden]{display:none}
.contact-fluent .fluentform{font-family:inherit}
.contact-fluent .fluentform .ff-el-input--label{margin-bottom:0}
.contact-fluent .fluentform .ff-el-input--content{min-width:0}
.contact-fluent .fluentform .ff-el-is-error .ff-el-form-control,.contact-form :user-invalid{border-color:#a62b24}
.contact-fluent .fluentform .error{font-size:var(--text-sm);line-height:1.6;overflow-wrap:anywhere}
.contact-fluent .ff-el-progress-status,.contact-fluent .ff-message-success{overflow-wrap:anywhere}
.contact-fluent .fluentform .ff-el-group{margin-bottom:22px}
.contact-fluent .fluentform .ff-t-container{gap:18px}
.contact-fluent .fluentform .ff-t-container>.ff-t-cell{padding:0;min-width:0}
.contact-fluent .ff-el-is-error .text-danger,.contact-fluent .ff-el-is-error .error,.contact-fluent .ff-errors-in-stack{color:#a62b24}
.contact-fluent .ff-message-success{background:var(--sage);color:var(--ink);border:1px solid #b5c1cc;box-shadow:none;border-radius:6px;padding:22px;font-size:0.9375rem}
.contact-fluent .ff-message-success p{color:inherit}
.contact-fluent .ff-btn-submit:disabled{cursor:wait;opacity:.65}

.site-footer{max-width:var(--max);margin:auto;padding:48px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:40px}
.site-footer .wordmark img{width:208px;height:auto}
.site-footer>div>p{font-size:var(--text-sm);margin-top:18px}
.footer-meta{text-align:right;font-size:var(--text-sm)}
.footer-meta>a:first-child{display:inline-flex;align-items:center;gap:24px;min-height:44px}
.footer-meta p{margin-top:14px;font-size:0.75rem;line-height:1.9}
.privacy-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}

/* Preserve the classic theme's article and page templates. */
.standard-content{min-height:60vh;max-width:900px;margin:auto;padding:72px var(--gutter)}
.standard-content h1{font-size:clamp(36px,5vw,52px);margin-bottom:35px}
.standard-content article{margin-bottom:44px}
.standard-content h2{font-size:32px;margin:25px 0}
.standard-content p{margin:20px 0}
.standard-content a{text-decoration:underline;text-underline-offset:3px}
.standard-content ul,.standard-content ol{padding-left:24px}
.standard-content input{max-width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--field-line);border-radius:4px}
.standard-content input[type=submit]{background:var(--ink);color:white;cursor:pointer}
.wp-block-image{margin:30px 0}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
html[lang='zh-CN'] h1{font-size:clamp(2.4375rem,4.05vw,3.6875rem);line-height:1.4;letter-spacing:-.015em}
html[lang='zh-CN'] h2,html[lang='zh-CN'] h3{line-height:1.4;letter-spacing:0}
html[lang='zh-CN'] p{letter-spacing:0}
html[lang='zh-CN'] .about .section-heading h2{max-width:12em}
html[lang='zh-CN'] .brand-name{line-height:1.2;letter-spacing:-.03em}

@media(max-width:1100px){
  .site-header{padding-inline:20px}.site-nav{gap:16px}.wordmark img{width:190px}
  .about{gap:2.5rem 6%}.contact{gap:36px}.contact-action{padding:26px}
}
@media(max-width:1050px){
  .contact{grid-template-columns:1fr;gap:2rem}.contact-inner{max-width:620px}
  .site-header{min-height:80px;flex-wrap:wrap;gap:12px 24px;padding-block:14px}
  .menu-toggle{align-items:center;justify-content:center;gap:12px;min-height:44px;min-width:72px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--ink);padding:8px 12px;font-size:var(--text-sm);transition:background-color .2s}
  .menu-toggle:hover{background:var(--sage)}.js-ready .menu-toggle{display:inline-flex}
  .menu-lines{position:relative;display:block;width:18px;height:10px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}
  .menu-toggle[aria-expanded=true] .menu-lines{height:0;transform:rotate(45deg);border-bottom:0}
  .menu-toggle[aria-expanded=true] .menu-lines:after{content:'';position:absolute;inset:-1px 0 auto;border-top:1px solid currentColor;transform:rotate(90deg)}
  .site-nav{flex-basis:100%;display:grid;grid-template-columns:1fr 1fr;gap:4px 18px;padding-top:14px;border-top:1px solid var(--line);max-height:calc(100dvh - 9rem);overflow-y:auto;overscroll-behavior:contain}
  .site-nav>a{padding:10px 8px;white-space:normal}.site-nav .language-switch{border-left:0;justify-content:flex-start;padding:10px 8px}
  .site-nav>a[aria-current='location']:after{left:8px;right:8px;bottom:3px}
  .js-ready .site-nav{display:none}.js-ready .site-nav.is-open{display:grid}
}
@media(max-width:900px){
  .hero{grid-template-columns:1fr;gap:2rem;padding-top:3rem}.hero-copy{padding:0;max-width:720px}.hero h1{font-size:clamp(2.625rem,7.2vw,3.875rem)}.hero-image>img{aspect-ratio:16/10;object-position:50% 52%}.hero-bottom>p{max-width:42em}
  .about{grid-template-columns:1fr;gap:2rem}.about .section-heading h2{max-width:22ch}.about-story{max-width:70ch}.about-story .lead{max-width:44ch}
  .brand-feature{grid-template-columns:1fr;gap:2rem}.brand-feature img{aspect-ratio:3/2}.brand-story{max-width:70ch}.brand-name{font-size:4.5rem}
  .technology{gap:6%}.technology-content .lead{font-size:1.375rem}
  .contact-inner{padding:0}.contact-inner>p{max-width:580px}.contact-action{padding:2rem}
  html[lang='zh-CN'] h1{font-size:clamp(2.5rem,6.1vw,3.4375rem)}
}
@media(max-width:700px){
  .home-intro{grid-template-columns:1fr;gap:1.5rem}.home-intro h2{font-size:2.5rem}.home-intro .lead{font-size:1.4375rem}.brand-feature{margin-top:2.25rem;padding-top:2.25rem}
  .technology{grid-template-columns:1fr;gap:1.5rem}
  .values{grid-template-columns:1fr;gap:1.5rem}.values article+article{padding-left:0;padding-top:1.5rem;border-left:0;border-top:1px solid var(--line)}.values h3{font-size:1.25rem}.values p{max-width:none}
  .section-heading h2,h2{font-size:2.25rem}
  .site-footer{align-items:flex-start;gap:1.75rem;flex-direction:column}.footer-meta{text-align:left;width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.footer-meta p{margin:0}.site-footer>div>p{margin-top:14px}
}
@media(max-width:600px){.admin-bar .site-header{top:12px}}
@media(min-width:601px) and (max-width:782px){.admin-bar .site-header{top:62px}}
@media(max-width:560px){
  :root{--gutter:22px;--section-space:3.5rem;--header-offset:116px}
  .site-header{top:12px;margin-top:12px;padding:12px 14px;gap:10px;min-height:76px}.wordmark img{width:min(170px,46vw)}.menu-toggle{min-width:64px;padding:8px;gap:8px}
  .hero{padding-top:2.25rem;gap:1.75rem}.hero h1{font-size:clamp(2.25rem,8.9vw,3.0625rem)}.hero-context{margin-top:1.25rem}.hero-bottom{gap:1.5rem}.hero-image>img{aspect-ratio:6/5}.hero-image figcaption{padding-block:1rem}.button-primary{min-height:52px;max-width:100%}
  .brand-name{font-size:clamp(2.875rem,13vw,3.5rem)}.brand-tagline{font-size:1.5625rem}.brand-feature img{aspect-ratio:6/5}
  .contact h2{font-size:2.1875rem}.contact-action{padding:1.5rem 1.25rem}.contact-fields{grid-template-columns:1fr;gap:1.25rem}.contact-submit{width:100%;justify-content:space-between}.contact-form-actions{gap:12px}.contact-form-help{margin-top:18px}.contact-direct a{display:block;line-height:1.7;padding-block:10px}
  .contact-fluent .fluentform .ff-t-container{display:block}.contact-fluent .fluentform .ff-btn-submit{width:100%;justify-content:center}
  .site-footer{padding-block:2.25rem}.site-footer .wordmark img{width:200px}.standard-content{padding-top:3rem}
  html[lang='zh-CN'] h1{font-size:clamp(2.125rem,8.6vw,2.9375rem);line-height:1.4}
}
@container contact-panel (max-width:30rem){
  .contact-fields{grid-template-columns:1fr}
  .contact-form-actions{align-items:stretch;gap:.75rem}.contact-submit{width:100%}.contact-copy-message{align-self:flex-start}
  .contact-fluent .fluentform .ff-t-container{display:block}.contact-fluent .fluentform .ff-t-cell{width:100%;flex-basis:100%}
}
@media(hover:hover){
  .button-primary:active,.contact-submit:active{background:var(--dark)}
  .text-link:hover{border-bottom-color:var(--accent-ink)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(forced-colors:active){.site-nav>a[aria-current='location']:after{background:Highlight}.button-primary,.contact-submit{border:1px solid ButtonText}.hero-image>img,.brand-feature img{border:1px solid CanvasText}}
