/* Original logos are displayed intact. All surrounding UI is monochrome. */
:root { --canvas:#000; --surface:#101012; --ink:#f5f5f7; --muted:#b7b7be; --dim:#95959d; --background:var(--canvas); --foreground:var(--ink); --muted-foreground:var(--muted); --primary:var(--ink); --primary-foreground:#111; color-scheme:dark; }
html,body { background:var(--canvas); color:var(--ink); }
body { font-family:-apple-system,BlinkMacSystemFont,'SF Pro Display','PingFang SC','Microsoft YaHei',sans-serif; }
.ao-title,.ao-section-title,.ao-feature-copy h2,.ao-profile-headline { text-wrap:balance; }
.ao-header { background:#000000ed; border-bottom-color:#ffffff19; }
.ao-nav { height:88px; }
.ao-brand { gap:12px; }
.ao-brand strong { font-weight:500; letter-spacing:-.025em; }
.ao-brand .ao-zh { color:var(--muted); border-left-color:#ffffff40; }
.ao-original-logo { display:block; height:auto; max-width:100%; object-fit:contain; filter:none; opacity:1; mask:none; -webkit-mask:none; clip-path:none; transform:none; mix-blend-mode:normal; border-radius:0; }
.ao-brand-image { width:64px; height:64px; flex-shrink:0; }
.ao-nav-links { color:var(--muted); }
.ao-nav-links a:hover,.ao-nav-links a[aria-current='page'],.ao-mobile-menu nav a[aria-current='page'] { color:#fff; }
.ao-dim { color:#b0b0b8; }
.ao-eyeline,.ao-feature-copy .ao-eyeline,.ao-profile-role { color:#ceced4; }
.ao-copy,.ao-lead,.ao-feature-copy>p,.ao-closing p,.ao-profile-copy>p:not([class]),.ao-manifesto p { color:var(--muted); }
.ao-button { background:#f5f5f7; color:#121214; font-weight:500; padding:15px 29px; }
.ao-button:hover { background:#dcdce2; }
.ao-inline-link { color:#efeff4; }
.ao-inline-link:hover { color:#bcbcc4; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline-color:#fff; }
::selection { background:#d5d5dc; color:#101012; }
/* 01 starfield + 03 silver trails. The backdrop is independent of the original logos. */
:root { --ao-starfield: url("image-1d51b16b52d1a92b.png"); }
.ao-home-hero,.ao-product-hero,.ao-about-hero,.ao-team-hero { isolation:isolate; position:relative; }
.ao-home-hero::before,.ao-product-hero::before,.ao-about-hero::before,.ao-team-hero::before {
 content:''; position:absolute; inset:0 calc((100% - 100vw) / 2); z-index:-1; pointer-events:none;
 background-color:#000;
 background-image:linear-gradient(180deg,#11111112 0%,#0000 64%,#000 100%),var(--ao-starfield);
 background-size:100% 100%,100% auto; background-position:center top; background-repeat:no-repeat;
}
.ao-home-hero::before { background-size:100% 100%,cover; }
.ao-home-hero { min-height:690px; padding-block:45px 65px; gap:10px; }
.ao-hero-copy>.ao-eyeline { color:#b7b7bf; font-size:20px; letter-spacing:.035em; margin-bottom:28px; }
.ao-hero-copy .ao-title { font-weight:550; font-size:clamp(60px,6.5vw,92px); letter-spacing:-.055em; }
.ao-hero-copy .ao-lead { font-size:25px; margin-top:24px; margin-bottom:32px; }
.ao-hero-logo { width:100%; }
/* Nine separately clipped layers retain the original ring pixels. */
.ao-logo-motion { position:relative; aspect-ratio:1; isolation:isolate; --ao-ring-source:url("image-dc17916fecb04536.png"); }
.ao-static-ring { display:none; position:absolute; inset:0; background:var(--ao-ring-source) center/100% 100% no-repeat; clip-path:circle(35% at 50.239234% 41.866029%); transform:translateY(8%); }
.ao-ring-definitions { position:absolute; width:0; height:0; overflow:hidden; }
.ao-motion-ring { position:absolute; inset:0; pointer-events:none; isolation:isolate; transform:translateY(8%); }
.ao-ring-layer {
 position:absolute; inset:0; display:block;
 background-image:var(--ao-ring-source); background-size:100% 100%; background-repeat:no-repeat;
 clip-path:var(--ring-clip); transform-origin:50.239234% 41.866029%;
 mix-blend-mode:screen;
 animation:ao-ring-turn var(--ring-duration) linear infinite;
 animation-direction:var(--ring-direction); will-change:transform;
}
@keyframes ao-ring-turn { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) {
 .ao-ring-layer { animation:none; will-change:auto; }
 .ao-motion-ring { display:none; }
 .ao-static-ring { display:block; }
}
.ao-home-brand { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; padding-block:30px 95px; border-bottom:1px solid #ffffff20; }
.ao-company-logo { width:100%; max-width:500px; }
.ao-home-brand .ao-eyeline { font-size:19px; margin-bottom:22px; }
.ao-home-brand .ao-section-title { font-size:clamp(36px,3.4vw,50px); }
.ao-home-brand .ao-copy { font-size:22px; line-height:1.8; margin:25px 0; }
.ao-home-company { background:#000; padding-block:90px 80px; }
.ao-home-company .ao-section-heading { margin-bottom:45px; align-items:center; }
.ao-home-company .ao-section-title { font-size:52px; }
.ao-home-company .ao-people-grid { gap:30px; }
.ao-portrait { border-radius:6px; }
.ao-portrait img { filter:none; width:337.5%; height:auto; }
.ao-portrait--refined img { position:static; width:100%; max-width:100%; height:100%; object-fit:cover; object-position:center top; filter:none; }
.ao-person-role { color:var(--muted); }
.ao-person .ao-inline-link,.ao-profile-en { color:#c3c3cc; }
.ao-profile-points li { color:var(--muted); border-top-color:#ffffff24; }
.ao-profile { scroll-margin-top:88px; }
.ao-profile h2 { color:var(--ink); }
.ao-team-nav a { border-top-color:#ffffff40; color:var(--muted); }
.ao-team-nav a:hover strong { color:#fff; }
.ao-stat strong { color:#f5f5f7; }
.ao-stat p,.ao-stat strong span { color:var(--muted); }
.ao-step-number { color:#c3c3cc; }
.ao-step p,.ao-beliefs p,.ao-principle-grid p,.ao-agenda-item p,.ao-location p { color:var(--muted); }
.ao-step,.ao-principle-grid article { border-top-color:#ffffff35; }
.ao-location h2 span { color:#b8b8c2; }
.ao-local-nav a { padding-block:8px; }
.ao-local-nav a:hover { color:#fff; }
.ao-product-intro { display:grid; grid-template-columns:1fr 1fr; align-items:center; text-align:left; gap:10px; }
.ao-product-hero { --ao-product-header-height:88px; padding-top:0; }
/* Give the introduction a full first screen before revealing the workspace. */
.ao-product-intro {
 min-height:calc(100vh - var(--ao-product-header-height));
 min-height:calc(100svh - var(--ao-product-header-height));
 padding-block:clamp(56px,8svh,104px); box-sizing:border-box;
}
.ao-product-overview { margin-top:clamp(40px,5svh,72px); }
.ao-product-hero .ao-title { font-size:clamp(42px,4.1vw,60px); }
.ao-product-hero .ao-eyeline { font-size:20px; }
.ao-product-hero .ao-local-nav { justify-content:flex-start; }

.ao-product-hero .ao-lead { font-size:22px; }
.ao-workspace { border-color:#ffffff35; box-shadow:0 24px 70px #0004; }
.ao-workspace-top { background:#1c1c20; border-bottom-color:#ffffff21; }
.ao-workspace-top strong { color:#fff; }
.ao-workspace-top span,.ao-workspace-intro,.ao-workspace-caption,.ao-fact-row span,.ao-dossier-top p,.ao-dossier-line dt,.ao-explainer-note { color:#b1b1bc; }
.ao-workspace-side .ao-selected { background:#ffffff0e; color:#eeeef4; }
.ao-fact-row span { flex-shrink:0; }
.ao-check-line svg,.ao-feature-outputs { color:#d4d4df; }
.ao-dossier-card { border-color:#ffffff35; }
.ao-avatar { background:#ffffff12; color:#f0f0f4; }
.ao-paper { background:#e1e1e5; color:#242428; }
.ao-paper-note { color:#50505a!important; }
.ao-product-note { color:var(--muted); }
/* Phase labels get their own column; long English labels cannot touch the copy. */
.ao-agenda-item { display:grid; grid-template-columns:3rem minmax(0,1fr); align-items:start; gap:20px; }
html[lang=en] .ao-agenda-item { grid-template-columns:6rem minmax(0,1fr); }
.ao-agenda-item .ao-agenda-date { width:auto; white-space:nowrap; }
.ao-agenda-date strong { margin-top:0; line-height:1.4; }
.ao-agenda-item>div:last-child { min-width:0; }
.ao-agenda-item h3 { line-height:1.4; }
.ao-footer { border-top-color:#ffffff25; }
.ao-footer-intro,.ao-footer-links a { color:#acacb6; }
.ao-footer-links strong { color:#e5e5ef; }
.ao-footer-bottom { color:var(--dim); border-top-color:#ffffff20; }
.ao-footer-bottom a { color:#c3c3cf; }
@media(min-width:1550px) { .ao-home-hero { min-height:740px; } }
@media(max-width:1100px) { .ao-home-hero { min-height:600px; } .ao-home-brand { gap:40px; } .ao-product-hero .ao-title { font-size:clamp(34px,4.2vw,48px); } }
@media(max-width:800px) {
 .ao-home-hero::before,.ao-product-hero::before,.ao-about-hero::before,.ao-team-hero::before {
  background-image:linear-gradient(180deg,#11111112 0%,#0000 44%,#000 92%),var(--ao-starfield);
  background-size:100% 760px,auto 760px; background-position:center top,22% top;
 }
 .ao-nav { height:80px; }
 .ao-home-hero { min-height:0; padding:60px 0 32px; }
 .ao-hero-copy .ao-title { font-size:68px; }
 .ao-hero-copy .ao-lead { font-size:23px; margin:23px auto 27px; }
 .ao-hero-logo { width:76%; max-width:450px; margin:12px auto 0; }
 .ao-home-brand { gap:25px; padding-block:25px 60px; }
 .ao-home-brand .ao-section-title { font-size:34px; }
 .ao-home-brand .ao-copy { font-size:19px; margin-block:20px; }
 .ao-home-company { padding-block:65px; }
 .ao-home-company .ao-section-title { font-size:44px; }
 .ao-product-hero { --ao-product-header-height:80px; }
 .ao-product-intro { grid-template-columns:1fr; text-align:center; }

 .ao-product-hero .ao-local-nav { justify-content:center; }
 .ao-product-hero .ao-title { font-size:clamp(39px,6.5vw,52px); }
}
@media(max-width:540px) {
 .ao-agenda-item,html[lang=en] .ao-agenda-item { grid-template-columns:minmax(0,1fr); gap:10px; }
 .ao-nav { height:76px; gap:12px; }
 .ao-brand { gap:8px; }
 .ao-brand-image { width:52px; height:52px; }
 .ao-brand strong { font-size:21px; }
 .ao-mobile-menu nav { top:76px; background:#101012; border-bottom-color:#ffffff35; }
 .ao-home-hero { padding-top:42px; padding-bottom:22px; }
 .ao-hero-copy>.ao-eyeline { font-size:17px; margin-bottom:20px; }
 .ao-hero-copy .ao-title { font-size:clamp(43px,12.8vw,60px); line-height:1.2; }
 .ao-hero-copy .ao-lead { font-size:20px; margin:20px auto 25px; }
 .ao-button { padding:13px 25px; font-size:17px; }
 .ao-hero-logo { width:94%; max-width:360px; margin:8px auto 0; }
 .ao-home-brand { grid-template-columns:1fr; text-align:center; padding-block:0 55px; gap:20px; }
 .ao-company-logo { width:90%; max-width:350px; margin:auto; }
 .ao-home-brand .ao-eyeline { margin-bottom:16px; }
 .ao-home-brand .ao-section-title { font-size:34px; }
 .ao-home-brand .ao-copy { font-size:19px; }
 .ao-home-company { padding-block:50px; }
 .ao-home-company .ao-section-title { font-size:36px; }
 .ao-home-company .ao-section-heading { margin-bottom:32px; display:flex; flex-wrap:wrap; gap:22px; }
 .ao-home-company .ao-people-grid { gap:27px; }
 .ao-person { grid-template-columns:112px 1fr; gap:23px; }
 .ao-person h3 { font-size:25px; }
 .ao-home-company .ao-portrait { max-height:none; }
 .ao-team-hero .ao-title { font-size:clamp(30px,9.6vw,49px); }
 .ao-product-hero .ao-title { font-size:clamp(30px,10.8vw,44px); }
 .ao-product-hero .ao-lead { font-size:19px; }
 .ao-product-hero { --ao-product-header-height:76px; }
 .ao-product-intro { text-align:left; gap:28px; padding-block:48px; }
 .ao-product-hero .ao-local-nav { justify-content:flex-start; }

 .ao-feature-copy h2 { font-size:clamp(30px,9.6vw,37px); }
 .ao-workspace-top span,.ao-workspace-caption,.ao-explainer-note { font-size:14px; }
 .ao-paper-note { font-size:14px!important; }
 .ao-profile { scroll-margin-top:76px; }
}

/* Language controls and typography accommodate all three writing systems. */
.ao-nav-links { margin-left:auto; }
.ao-language-control { position:relative; display:flex; align-items:center; gap:7px; flex-shrink:0; color:#c8c8ce; }
.ao-language-control select { appearance:none; -webkit-appearance:none; border:0; border-radius:4px; background:transparent; color:inherit; font:inherit; font-size:15px; cursor:pointer; padding:12px 15px 12px 0; width:83px; }
.ao-language-control select:focus-visible { outline:2px solid #eee; outline-offset:4px; }
.ao-language-control option { background:#101012; color:#f5f5f7; }
.ao-language-chevron { position:absolute; right:0; pointer-events:none; }
.ao-brand strong { white-space:nowrap; }
html[lang=en] .ao-brand .ao-zh,html[lang=en] .ao-profile-en { display:none; }
html[lang=en] .ao-hero-copy .ao-title { font-size:clamp(48px,5.5vw,78px); letter-spacing:-.05em; line-height:1.08; }
html[lang=en] .ao-home-brand .ao-section-title { font-size:clamp(34px,3.5vw,48px); }
html[lang=en] .ao-product-hero .ao-title { font-size:clamp(38px,4vw,58px); }
html[lang=en] .ao-team-hero .ao-title { font-size:clamp(44px,5.6vw,80px); }
html[lang=en] .ao-section-title { letter-spacing:-.035em; }
html[lang=en] .ao-profile-headline { line-height:1.25; }
.ao-title,.ao-section-title,.ao-profile-headline,.ao-person h3 { overflow-wrap:break-word; }
.ao-hero-copy,.ao-product-copy,.ao-feature-copy,.ao-feature-visual,.ao-workspace-content,.ao-workspace-card,.ao-person>div { min-width:0; }
.ao-fact-row { gap:14px; align-items:flex-start; }
.ao-fact-row>span { flex-basis:40%; flex-shrink:1; }
.ao-fact-row>strong { flex:1; min-width:0; text-align:right; }
html[lang=en] .ao-stat strong>span { margin-left:.25em; }
@media(max-width:900px) { .ao-nav { gap:18px; } .ao-nav-links { gap:20px; } .ao-brand .ao-zh { display:none; } }
@media(max-width:800px) {
 .ao-nav-links { display:none; }
 .ao-mobile-menu { display:block; margin-left:0; }
 .ao-language-control { margin-left:auto; }
 .ao-mobile-menu summary { padding:10px 0; }
 .ao-menu-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .ao-mobile-menu nav { top:80px; }
 html[lang=en] .ao-hero-copy .ao-title { font-size:clamp(48px,9vw,68px); }
 html[lang=en] .ao-home-company .ao-section-title { font-size:40px; }
 html[lang=en] .ao-product-hero .ao-title { font-size:clamp(38px,7vw,54px); }
 html[lang=en] .ao-team-hero .ao-title { font-size:clamp(40px,7vw,62px); }
}
@media(max-width:540px) {
 .ao-nav { gap:12px; }
 .ao-brand-image { width:40px; height:40px; }
 .ao-brand { gap:6px; }
 .ao-brand strong { font-size:18px; }
 .ao-language-control { gap:4px; }
 .ao-language-control>svg:first-child { width:15px; }
 .ao-language-control select { width:76px; font-size:14px; padding-right:10px; }
 .ao-mobile-menu nav { top:76px; }
 .ao-mobile-menu summary svg { width:20px; height:20px; }
 html[lang=en] .ao-hero-copy .ao-title { font-size:clamp(40px,11.5vw,56px); }
 html[lang=en] .ao-home-company .ao-section-title { font-size:34px; }
 html[lang=en] .ao-person h3 { font-size:24px; }
 html[lang=en] .ao-person { grid-template-columns:100px minmax(0,1fr); gap:18px; }
 html[lang=en] .ao-team-nav { grid-template-columns:1fr; gap:0; text-align:left; }
 html[lang=en] .ao-team-nav a { padding:15px 0; }
 html[lang=en] .ao-team-nav strong { font-size:23px; }
 html[lang=en] .ao-product-hero .ao-title { font-size:clamp(34px,9vw,44px); }
 html[lang=en] .ao-team-hero .ao-title { font-size:clamp(36px,9.4vw,48px); }
 html[lang=en] .ao-profile-headline { font-size:30px; }
 html[lang=en] .ao-feature-copy h2 { font-size:34px; }
 html[lang=en] .ao-workspace-top { align-items:flex-start; gap:12px; }
 html[lang=en] .ao-workspace-top>span { max-width:110px; text-align:right; }
 html[lang=en] .ao-dossier-line { grid-template-columns:82px minmax(0,1fr); }
}
@media(max-width:360px) {
 .ao-nav { gap:8px; }
 .ao-nav .ao-brand-image { width:30px; height:30px; }
 .ao-nav .ao-brand strong { font-size:17px; }
 .ao-language-control>svg:first-child { display:none; }
}

/* Keep the complete company artwork within the About page's first screen. */
.ao-about-hero {
 --ao-about-header-height:89px;
 display:grid; grid-template-columns:1.05fr 1fr;
 align-items:center; align-content:center; gap:clamp(24px,3.5vw,56px);
 min-height:calc(100vh - var(--ao-about-header-height));
 min-height:calc(100svh - var(--ao-about-header-height));
 padding-block:clamp(32px,5svh,64px); box-sizing:border-box; text-align:left;
}
.ao-about-copy { min-width:0; }
.ao-about-hero .ao-eyeline { font-size:20px; margin-bottom:24px; }
.ao-about-hero .ao-title { font-size:clamp(36px,4.15vw,60px); line-height:1.2; letter-spacing:-.045em; margin-bottom:0; }
.ao-about-original { width:min(100%,580px,calc(100svh - 185px)); margin:0; justify-self:center; }
.ao-about-original img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; }
@media(max-width:800px) {
 .ao-about-hero { --ao-about-header-height:81px; grid-template-columns:minmax(0,1fr); gap:24px; text-align:center; padding-block:32px; }
 .ao-about-hero .ao-eyeline { font-size:19px; margin-bottom:18px; }
 .ao-about-hero .ao-title { font-size:clamp(28px,5vw,40px); }
 .ao-about-original { width:min(100%,420px,calc(100svh - 330px)); }
}
@media(max-width:540px) {
 .ao-about-hero { --ao-about-header-height:77px; gap:20px; }
 .ao-about-hero .ao-title { font-size:clamp(28px,7.4vw,36px); }
 .ao-about-hero .ao-eyeline { font-size:18px; }
}
