@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin.woff') format('woff');font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:'Noto Sans TC';src:url('/assets/fonts/noto-tc.woff') format('woff');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Noto Sans SC';src:url('/assets/fonts/noto-sc.woff') format('woff');font-style:normal;font-weight:100 900;font-display:swap}
:root{--paper:#fff;--ink:#23272b;--muted:#63676c;--orange:#f7941d;--orange-dark:#965009;--line:#dfe3e6;--soft:#f5f7f8;--tint:#fff3e4;--wrap:1240px;--font:Manrope,'Noto Sans TC',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}html[data-locale=sc]{--font:Manrope,'Noto Sans SC',sans-serif}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:1rem;line-height:1.75;-webkit-font-smoothing:antialiased}body,button,input,select{font-family:var(--font)}button,input,select{font-size:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.45}button,input,select{border-radius:0}img,svg,canvas{display:block}img{max-width:100%;height:auto}button,select{max-width:100%}svg{width:24px;height:24px;flex-shrink:0}figure{margin:0}p{margin:0 0 1.2em;color:var(--muted)}h1,h2,h3,h4{font-weight:600;letter-spacing:-.035em;line-height:1.35;margin:0 0 .65em;color:var(--ink);text-wrap:balance}h1{font-size:clamp(2.5rem,4.5vw,4rem);font-weight:600}h2{font-size:clamp(1.875rem,3.1vw,2.625rem)}h3{font-size:1.5rem}h4{font-size:1.25rem}strong{font-weight:700}ul,ol{padding:0;margin:0;list-style:none}address{font-style:normal}::selection{background:#ffe0b8;color:var(--ink)}:focus-visible{outline:3px solid #99520b;outline-offset:5px}details summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}[hidden]{display:none!important}.wrap{width:min(var(--wrap),calc(100% - 96px));margin-inline:auto}.section{padding:96px 0}.surface{background:var(--soft)}.eyebrow{font-size:0.75rem;line-height:1.5;letter-spacing:.1em;font-weight:700;color:var(--orange-dark);margin-bottom:20px;text-transform:uppercase}.lead{font-size:1.125rem;line-height:1.95;max-width:700px}.body-large{font-size:1.25rem;line-height:1.9}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:52px;padding:13px 22px;background:var(--orange);border:1px solid var(--orange);font-size:0.875rem;font-weight:700;line-height:1.6;transition:background .2s,transform .2s;color:var(--ink)}.btn:hover{background:#ffac40;border-color:#ffac40;transform:translateY(-2px)}.btn.secondary{background:#fff;border-color:var(--line)}.btn.secondary:hover{border-color:var(--ink);background:var(--soft)}.arrow{font-family:Manrope,sans-serif;font-size:1.4375rem;line-height:1;display:inline-block;transition:transform .2s;flex-shrink:0}.btn:hover .arrow,.text-link:hover .arrow{transform:translate(2px,-2px)}.text-link{display:inline-flex;align-items:center;gap:22px;font-weight:700;font-size:0.875rem;line-height:1.6;padding:8px 0;border-bottom:1px solid var(--line)}.text-link:hover{border-color:var(--orange)}.skip{position:absolute;top:-70px;left:24px;z-index:100;background:var(--ink);color:#fff;padding:12px 20px}.skip:focus{top:12px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:44px}.section-head>div{max-width:700px}.section-head h2{margin-bottom:0}.section-head>p{max-width:360px;margin-bottom:4px;font-size:1rem}.section-head .eyebrow{margin-bottom:15px}
/* Navigation */
.site-header{background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(14px)}.header-inner{height:91px;display:flex;align-items:center;gap:34px}.brand{flex-shrink:0;width:158px}.brand img{height:56px;object-fit:contain}.nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:0.875rem;font-weight:600}.nav>a:not(.nav-contact){padding:32px 0;position:relative}.nav>a.current:not(.nav-contact):after{content:'';position:absolute;bottom:22px;left:0;right:0;height:2px;background:var(--orange)}.nav a:hover,.nav summary:hover{color:var(--orange-dark)}.services-menu summary{display:flex;gap:9px;align-items:center;padding:30px 0}.services-menu summary.current{color:var(--orange-dark)}.services-menu summary span{font-size:1rem}.menu-services{position:absolute;left:50%;top:90px;width:min(790px,90vw);transform:translateX(-50%);background:#fff;border:1px solid var(--line);box-shadow:0 15px 35px #20283010;display:grid;grid-template-columns:1fr 1fr;padding:20px;gap:3px 24px}.menu-services>a{display:flex;align-items:center;gap:12px;padding:17px 14px}.menu-services>a:hover{background:var(--soft)}.menu-services>a svg{color:var(--orange-dark);width:21px;height:21px}.menu-services .arrow{margin-left:auto}.menu-services .menu-all{grid-column:1/-1;border-bottom:1px solid var(--line);font-weight:700;margin-bottom:8px}.nav-contact{display:flex;align-items:center;gap:25px;background:var(--orange);padding:12px 18px;color:var(--ink)!important;order:4}.nav-contact:hover{background:#ffac40}.language{display:flex;gap:5px;font-size:0.75rem;align-items:center;order:2;flex-shrink:0}.language a{padding:8px 5px;color:var(--muted);min-width:22px;text-align:center}.language a.current{color:var(--ink);font-weight:800;border-bottom:2px solid var(--orange)}.menu-toggle{display:none;background:none;border:0;padding:10px;width:42px;height:42px}.menu-toggle span{display:block;height:2px;background:var(--ink);margin:5px 0;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)}
/* Homepage / 3D identity */
.hero{padding-top:58px;background:#fff;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.02fr 1fr;gap:36px;align-items:center;min-height:520px}.hero-copy{border-left:4px solid var(--orange);padding:10px 0 10px 27px;position:relative;z-index:1}.hero-copy h1{font-size:clamp(2.625rem,4.45vw,3.875rem);line-height:1.42;letter-spacing:-.055em;margin:20px 0 27px}.hero-copy h1 span{display:block}.hero-copy .lead{font-size:1.0625rem;max-width:525px;margin-bottom:0;line-height:1.95}.hero-copy .actions{gap:20px;margin-top:34px}.hero-copy .text-link{font-size:0.8125rem}.hero-copy .eyebrow{font-size:0.75rem;letter-spacing:.06em}.hero-visual{position:relative;align-self:stretch;display:flex;flex-direction:column;min-width:0}.visual-overline,.visual-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:0.75rem;letter-spacing:.08em;color:var(--muted)}.visual-overline{padding:13px 12px 0}.visual-overline>span:last-child{color:var(--orange-dark)}.visual-caption{padding:0 12px 16px;min-height:38px;letter-spacing:.04em}.logo-stage{position:relative;min-height:410px;flex:1}.logo-stage canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2}.hero-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1;padding:10px}.webgl-ready .hero-fallback,.webgl-ready .mini-fallback{opacity:0;pointer-events:none}.stage-grid{position:absolute;inset:0;background-image:radial-gradient(circle,#bdc3c777 .8px,transparent .8px);background-size:20px 20px;mask-image:radial-gradient(ellipse at center,#0005,transparent 64%)}.stage-cross{width:12px;height:12px;position:absolute;background:linear-gradient(var(--line),var(--line)) center/1px 100% no-repeat,linear-gradient(var(--line),var(--line)) center/100% 1px no-repeat}.cross-a{top:22%;left:7%}.cross-b{bottom:19%;right:8%}.motion-toggle{font-size:0.75rem;font-weight:600;border:1px solid var(--line);background:rgba(255,255,255,.9);padding:7px 10px;min-height:36px;letter-spacing:0;white-space:nowrap}.motion-toggle:hover{border-color:var(--orange)}.hero-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0 30px;margin-top:32px;font-size:0.75rem;letter-spacing:.07em;color:var(--muted);border-top:1px solid var(--line)}.hero-scroll{font-size:1.5rem;color:var(--orange-dark)}html[lang=en] .hero-copy h1{font-size:clamp(2.625rem,4.4vw,3.8125rem);line-height:1.12;letter-spacing:-.055em}html[lang=en] .hero-copy{padding-left:24px}html[lang=en] .hero-copy h1 span+span{margin-top:12px}html[lang=en] .hero-copy .eyebrow{font-size:0.75rem}html[lang=en] .hero-copy .lead{font-size:1rem;line-height:1.85}
/* Client proof and visual services */
.proof-section{background:var(--soft);padding:48px 0}.proof-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.proof-inner h2{font-size:1.875rem;margin:0 0 14px}.proof-inner p{font-size:0.875rem;max-width:380px}.proof-inner .eyebrow{font-size:0.75rem;margin-bottom:13px}.proof-names{display:grid;grid-template-columns:1fr 1fr;gap:0 34px}.proof-name{min-height:79px;display:flex;align-items:center;border-bottom:1px solid #dce0e3;font-size:1.25rem;font-weight:600;line-height:1.5;letter-spacing:-.03em}.proof-name:nth-last-child(-n+2){border-bottom:0}.proof-name:nth-child(4),.proof-name:nth-child(5),.proof-name:nth-child(6){font-size:1.0625rem}.service-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.service-group{border-top:2px solid var(--orange)}.group-art{position:relative;overflow:hidden;margin-bottom:26px;aspect-ratio:3/2;background:#f7f7f7}.editorial-art{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.group-art img{transition:transform .8s}.service-group:hover .group-art img{transform:scale(1.025)}.art-index{position:absolute;top:15px;left:17px;color:#7a4f22;font-size:0.75rem;font-weight:700;background:#fffc;padding:4px 8px}.group-heading .eyebrow{font-size:0.75rem;margin-bottom:12px}.group-heading h3{font-size:1.625rem;margin-bottom:12px}.group-heading>p{font-size:0.875rem;min-height:50px;line-height:1.8;margin-bottom:24px}.group-service{display:block;border-top:1px solid var(--line);padding:23px 0}.group-service h4{font-size:1.125rem;display:flex;align-items:center;justify-content:space-between;gap:16px;transition:color .2s;margin-bottom:10px}.group-service p{font-size:0.875rem;line-height:1.85;margin:0}.group-service .arrow{font-size:1.375rem}.group-service:hover h4{color:var(--orange-dark)}.group-service:hover .arrow{transform:translate(2px,-2px)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.service-card{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;transition:background .2s,border-color .2s,transform .2s}.service-card:hover{background:var(--tint);border-color:#efba77;transform:translateY(-4px)}.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.service-icon svg{width:33px;height:33px;color:var(--orange-dark)}.service-number{font-size:0.75rem;color:var(--muted)}.service-card h3{font-size:1.4375rem}.service-card p{font-size:0.875rem;line-height:1.85}.card-link{display:flex;justify-content:space-between;align-items:center;padding-top:20px;margin-top:auto;font-size:0.8125rem;font-weight:700}.approach-section{padding-top:70px;border-top:1px solid var(--line)}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.approach-statement h2{font-size:clamp(1.6875rem,3vw,2.4375rem);line-height:1.65;letter-spacing:-.04em;margin-bottom:24px}.reason{display:grid;grid-template-columns:40px 1fr;gap:15px;border-top:1px solid var(--line);padding:24px 0 25px}.reason>span{font-size:0.75rem;color:var(--orange-dark);padding-top:5px}.reason h3{font-size:1.3125rem;letter-spacing:-.02em;margin:0 0 10px}.reason p{font-size:0.9375rem;margin:0;line-height:1.85}.approach-art{margin-bottom:34px}.lab-teaser-section{padding-top:0}.lab-teaser{border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;min-height:438px;background:#fff}.lab-copy{padding:50px 48px}.lab-copy h2{font-size:2.1875rem;max-width:410px}.lab-copy>p{font-size:0.9375rem}.lab-copy .eyebrow{font-size:0.75rem}.lab-tags{display:flex;gap:20px;font-size:0.75rem;margin-top:30px;color:var(--muted)}.lab-tags span+span{border-left:1px solid var(--line);padding-left:20px}.lab-mini{position:relative;background:#f5f7f8;min-height:350px;overflow:hidden}.lab-mini canvas{width:100%;height:100%;position:absolute;inset:0}.mini-fallback{position:absolute;inset:15%;width:70%;height:70%;object-fit:contain}.mini-caption{position:absolute;left:28px;right:28px;bottom:25px;display:flex;justify-content:space-between;font-size:0.75rem;letter-spacing:.08em;color:var(--muted);pointer-events:none}.mini-caption span:last-child{font-size:1.25rem}.process-section{padding-top:20px}.workflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.step{position:relative;padding-top:25px;border-top:1px solid var(--line)}.step:before{content:'';width:7px;height:7px;background:var(--orange);position:absolute;top:-4px;left:0}.step-no{display:block;color:var(--orange-dark);font-size:0.75rem;margin-bottom:22px}.step h3{font-size:1.3125rem;margin-bottom:11px}.step p{font-size:0.875rem;line-height:1.8;max-width:240px;margin:0}.contact-banner{background:var(--orange);padding:59px 0}.contact-banner>.wrap{display:flex;justify-content:space-between;gap:60px;align-items:center}.contact-banner .eyebrow{color:#653504;margin-bottom:12px;font-size:0.75rem}.contact-banner h2{font-size:clamp(1.8125rem,3vw,2.5rem);max-width:790px;margin-bottom:14px}.contact-banner p{color:#483c2e;margin:0;max-width:680px;font-size:1rem}.contact-banner .btn{flex-shrink:0;min-width:210px;border-color:#fff}
/* Shared page layouts */
.page-intro{padding:25px 0 50px;border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:0.75rem;margin-bottom:53px;line-height:1.7}.breadcrumbs a:hover{color:var(--orange-dark)}.breadcrumbs>span:last-child{color:var(--ink)}.page-intro h1{max-width:940px;margin-bottom:22px}.page-intro .lead{max-width:780px;margin:0}.page-intro .eyebrow{margin-bottom:16px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.content-grid h2{font-size:2.1875rem;max-width:490px}.content-grid .problem{font-size:1.125rem;line-height:1.9;max-width:500px}.services-index{padding-top:55px}.service-intro{padding:24px 0 52px}.service-intro .breadcrumbs{margin-bottom:45px}.service-hero-grid{display:grid;grid-template-columns:1fr 1.03fr;gap:55px;align-items:center}.service-hero-grid h1{font-size:clamp(2.1875rem,3.7vw,3.25rem);line-height:1.4}.service-hero-grid .lead{font-size:1rem;line-height:1.9}.service-hero-art{border-bottom:2px solid var(--orange);background:#fafafa}.service-hero-art img{width:100%;aspect-ratio:3/2}.service-hero-art figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:0.75rem;color:var(--muted);padding:19px 20px;background:var(--soft)}.service-hero-art figcaption>span:first-child{display:flex;gap:12px;align-items:center;font-size:0.8125rem;color:var(--ink);font-weight:600}.service-hero-art figcaption svg{width:21px;height:21px;color:var(--orange-dark)}.section-nav{border-block:1px solid var(--line);background:var(--soft)}.section-nav .wrap{display:flex;gap:43px}.section-nav a{padding:18px 0;font-size:0.8125rem;font-weight:600}.section-nav a:hover{color:var(--orange-dark)}.flow-diagram{margin-top:27px;background:var(--soft);padding:25px 22px;border-bottom:2px solid var(--orange)}.flow-label{font-size:0.75rem;letter-spacing:.06em;color:var(--muted);margin-bottom:25px}.flow-diagram ol{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.flow-diagram li{text-align:center;position:relative;font-size:0.75rem;line-height:1.6}.flow-symbol{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0 auto 14px;background:#fff;border:1px solid var(--line);position:relative;z-index:1}.flow-symbol svg{color:var(--orange-dark)}.flow-diagram li:not(:last-child):after{content:'';position:absolute;top:28px;width:calc(100% - 32px);left:calc(50% + 28px);height:1px;background:#dfa457}.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.capability-grid li{position:relative;background:var(--soft);padding:28px 30px;min-height:168px;display:flex;flex-direction:column;justify-content:space-between}.capability-no{font-size:0.75rem;color:var(--orange-dark);margin-bottom:20px}.capability-grid p{font-size:1.0625rem;font-weight:500;line-height:1.7;color:var(--ink);max-width:280px;margin:0}.capability-plus{position:absolute;right:26px;top:25px;color:#a9aeb1;font-size:1.25rem}.outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.outcome{border-top:2px solid var(--orange);padding-top:30px}.outcome-icon{display:block;margin-bottom:24px}.outcome-icon svg{width:33px;height:33px;color:var(--orange-dark)}.outcome h3{font-size:1.5rem}.outcome p{font-size:1rem;line-height:1.9;margin-bottom:0}.delivery-section{padding-top:0}.delivery-box{background:var(--tint);display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding:50px}.delivery-box h2{font-size:2.0625rem}.deliverables li{display:flex;gap:24px;align-items:flex-start;font-size:1.125rem;padding:17px 0;border-bottom:1px solid #e9d5bb}.deliverables li:first-child{padding-top:0}.deliverables li:last-child{border:0;padding-bottom:0}.deliverables li>span{color:var(--orange-dark);font-size:0.75rem;padding-top:4px;flex-shrink:0}.delivery-workflow{padding-top:55px}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px}.faq-layout h2{font-size:2.1875rem}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0;font-size:1.125rem;font-weight:600;line-height:1.7}.faq-list summary span{font-size:1.5rem;font-weight:400;color:var(--orange-dark);transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details[open] summary{padding-bottom:16px}.faq-list p{font-size:1rem;line-height:1.9;margin:0 30px 25px 0}.related-section{background:var(--soft)}.related-section .service-card{background:white}
/* Clients, company and contact */
.clients-section{padding-top:40px}.client-filter{display:flex;gap:9px;flex-wrap:wrap}.client-filter button{padding:10px 16px;background:#fff;border:1px solid var(--line);font-size:0.8125rem;min-height:44px}.client-filter button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.client-filter button:hover{border-color:var(--ink)}.client-results{font-size:0.75rem;color:var(--muted);margin:26px 0}.client-results strong{color:var(--ink)}.client-featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.client-featured{padding:27px 25px;min-height:225px;background:var(--soft);display:flex;flex-direction:column;border-bottom:2px solid transparent;transition:border-color .2s,background .2s}.client-featured:hover{border-color:var(--orange);background:var(--tint)}.client-index{font-size:0.75rem;color:var(--orange-dark);margin-bottom:28px;display:block}.client-featured h2{font-size:1.3125rem;line-height:1.5;margin-bottom:8px;letter-spacing:-.025em}.client-en{font-size:0.75rem;color:var(--muted);line-height:1.6;margin-bottom:8px}.client-featured p{font-size:0.75rem;margin:0;padding-top:22px;margin-top:auto}.about-intro{padding-top:65px}.about-story{display:grid;grid-template-columns:1.05fr 1fr;gap:75px;align-items:center}.about-image{position:relative}.about-image-caption{display:block;background:var(--orange);padding:16px 22px;font-size:0.75rem;font-weight:700;letter-spacing:.1em}.about-story h2{font-size:2.375rem}.about-story .body-large{font-size:1.1875rem}.expertise-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:center}.expertise-layout h2{font-size:2.1875rem}.expertise-layout>div>p{font-size:1rem}.expertise-map{display:grid;grid-template-columns:1fr 1fr;gap:12px}.expertise-node{display:flex;gap:14px;align-items:center;background:white;border:1px solid var(--line);padding:22px 17px;font-size:0.875rem;font-weight:600;min-height:92px}.expertise-node svg{color:var(--orange-dark)}.expertise-node .arrow{font-size:1.1875rem;margin-left:auto}.expertise-node:hover{border-color:var(--orange)}.professional-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.professional-group{border:1px solid var(--line);padding:32px}.professional-group h3{font-size:1.3125rem;margin-top:23px;margin-bottom:22px}.professional-icon svg{height:34px;width:34px;color:var(--orange-dark)}.professional-group .credential-list{justify-content:flex-start;gap:9px}.professional-group .credential-list span{background:var(--soft);font-size:0.75rem;padding:6px 10px}.contact-section{padding-top:55px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact-project{background:var(--tint);padding:42px}.contact-project h2{font-size:2rem}.contact-project>p{font-size:0.9375rem}.contact-project label{font-size:0.8125rem;font-weight:600;display:block;margin:29px 0 10px}.contact-project select{width:100%;padding:14px 40px 14px 15px;border:1px solid #cfbba2;background:white;min-height:54px;color:var(--ink);font-size:0.875rem}.contact-project .btn{width:100%;margin-top:16px;text-align:left;min-height:54px}.contact-project .contact-helper{font-size:0.75rem;line-height:1.75;margin:15px 0 22px}.contact-details{padding-top:0}.contact-detail{border-top:1px solid var(--line);padding:26px 0 31px}.contact-detail>span{font-size:0.75rem;letter-spacing:.06em;display:block;color:var(--muted);margin-bottom:13px}.contact-detail>a{display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:clamp(1.25rem,2.3vw,1.9375rem);line-height:1.5;letter-spacing:-.03em;overflow-wrap:anywhere}.contact-detail>a:hover{color:var(--orange-dark)}.contact-detail .arrow{color:var(--orange-dark)}.contact-person{display:flex;gap:18px;align-items:center;border-top:1px solid var(--line);padding-top:30px}.person-monogram{width:50px;height:50px;background:var(--soft);border:1px solid var(--line);display:grid;place-items:center;font-size:1.0625rem;font-weight:600}.contact-person strong{font-size:0.9375rem}.contact-person p{font-size:0.75rem;margin:3px 0 0}.location-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.location-layout h2{font-size:2.25rem}.location-layout address{margin:25px 0;font-size:1.0625rem;line-height:1.8}.location-visual{position:relative;background:white;border:1px solid var(--line);aspect-ratio:1.55;overflow:hidden;padding:40px;display:flex;align-items:center;background-image:linear-gradient(#e8ecef 1px,transparent 1px),linear-gradient(90deg,#e8ecef 1px,transparent 1px);background-size:32px 32px}.location-hk{font-size:clamp(7.5rem,14vw,12.8125rem);line-height:1;font-weight:700;letter-spacing:-.09em;color:var(--ink);position:relative;z-index:1}.location-line{position:absolute;right:0;top:0;width:41%;height:100%;background:#f7941d;clip-path:polygon(65% 0,100% 0,35% 100%,0 100%)}.location-coordinate{position:absolute;left:40px;bottom:27px;font-size:0.75rem;letter-spacing:.07em;background:white;padding:3px 5px}.location-dot{width:12px;height:12px;background:var(--orange);border:3px solid white;box-shadow:0 0 0 1px var(--orange);border-radius:50%;position:absolute;top:23%;left:35%}
/* Experience lab */
.lab-section{padding-top:40px}.lab-shell{border:1px solid var(--line)}.lab-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;flex-wrap:wrap;background:var(--soft);border-bottom:1px solid var(--line)}.lab-tabs{display:flex;gap:5px}.lab-tabs button{display:flex;align-items:center;gap:10px;background:none;border:1px solid transparent;padding:10px 13px;font-size:0.8125rem;min-height:44px}.lab-tabs button span{font-size:0.75rem;color:var(--muted)}.lab-tabs button[aria-selected=true]{background:white;border-color:var(--line);border-bottom:2px solid var(--orange)}.lab-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.lab-controls label{display:flex;align-items:center;gap:10px;font-size:0.75rem}.lab-controls input{width:75px;accent-color:#99520b}.lab-stage{height:580px;position:relative;background:#fbfcfd;overflow:hidden}.lab-stage canvas{width:100%;height:100%;display:block;touch-action:none}.lab-empty{position:absolute;inset:12% 10%;display:grid;place-items:center;pointer-events:none}.lab-empty img{width:100%;height:100%;object-fit:contain}.lab-empty.hidden{display:none}.lab-error{font-size:1.125rem;text-align:center;color:var(--muted);padding:20px}.scene-note{display:flex;justify-content:space-between;gap:16px;font-size:0.75rem;position:absolute;bottom:22px;left:27px;right:27px;color:var(--muted);pointer-events:none}.logo-views{position:absolute;top:20px;left:24px;display:flex;gap:6px}.logo-views button{background:#fffe;border:1px solid var(--line);padding:9px 13px;font-size:0.75rem}.logo-views button[aria-pressed=true]{border-color:var(--orange);color:var(--orange-dark)}.lab-description{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;border-top:1px solid var(--line);padding:33px 32px;min-height:155px;align-items:center}.lab-description h2{font-size:1.6875rem;margin:0}.lab-description p{font-size:0.9375rem;margin:0}.lab-use-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.lab-use{border-top:2px solid var(--orange);padding-top:24px}.lab-use>span{display:block;color:var(--orange-dark);font-size:0.75rem;margin-bottom:24px}.lab-use h3{font-size:1.5rem}.lab-use p{font-size:1rem;max-width:340px}
/* Footer and accessibility */
.credentials{padding:34px 0;background:#fff}.credential-row{display:flex;gap:36px;align-items:center}.credential-row .eyebrow{font-size:0.75rem;margin:0;color:var(--muted);flex-shrink:0}.credential-list{display:flex;flex-wrap:wrap;gap:10px 23px;font-size:0.75rem;color:var(--muted);line-height:1.6;justify-content:flex-end}.credential-list span{white-space:nowrap}.site-footer{background:white}.footer-top{border-top:1px solid var(--line);padding:53px 0;display:grid;grid-template-columns:1.2fr 1fr 1.15fr;gap:65px}.footer-brand img{height:56px;width:158px;object-fit:contain}.footer-brand .footer-slogan{font-size:1.4375rem;line-height:1.5;color:var(--ink);margin-top:21px;margin-bottom:15px;letter-spacing:-.03em}.footer-brand>p:last-child{font-size:0.75rem}.footer-title{font-size:0.75rem;font-weight:700;margin-bottom:21px}.footer-links{display:flex;flex-direction:column;gap:10px;font-size:0.8125rem;color:var(--muted);line-height:1.8}.footer-links a:hover{color:var(--orange-dark)}.footer-bottom{border-top:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;padding:21px 0 36px;color:var(--muted);font-size:0.75rem}.wa-float{position:fixed;bottom:22px;right:22px;z-index:45;display:flex;align-items:center;gap:10px;background:var(--ink);border:1px solid #fff4;color:white;padding:12px 17px;box-shadow:0 4px 15px #20283022;font-size:0.75rem}.wa-float svg{width:21px;height:21px;color:var(--orange)}.wa-float:hover{background:#3b4147}.not-found{padding:100px 0;min-height:55vh}.not-found h1{font-size:8.75rem;color:var(--orange)}.js-motion .reveal{opacity:0;transform:translateY(17px);transition:opacity .6s ease,transform .6s ease}.js-motion .reveal.visible{opacity:1;transform:none}
@media(min-width:1550px){.hero-inner{min-height:565px}.logo-stage{min-height:450px}.hero-copy h1{font-size:4rem}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.header-inner{gap:22px}.nav{gap:20px}.nav-contact{gap:18px}.brand,.brand img{width:145px}.language{gap:1px}.hero-inner{gap:18px}.hero-copy{padding-left:21px}.hero-copy h1{font-size:3rem}.hero-copy .lead{font-size:1rem}.hero-copy .actions{gap:16px}.hero-copy .text-link{font-size:0.75rem;gap:10px}.logo-stage{min-height:390px}.proof-inner{gap:50px}.proof-name{font-size:1.125rem}.service-groups{gap:23px}.group-heading h3{font-size:1.4375rem}.approach-grid,.content-grid,.about-story,.expertise-layout,.contact-layout,.location-layout{gap:55px}.lab-copy{padding:40px 32px}.lab-copy h2{font-size:1.875rem}.service-hero-grid{gap:35px}.service-hero-grid h1{font-size:2.4375rem}.client-featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.faq-layout{gap:50px}.delivery-box{gap:45px;padding:40px}.credential-row{align-items:flex-start;gap:25px}.footer-top{gap:40px}html[lang=en] .nav{gap:18px}html[lang=en] .header-inner{gap:17px}html[lang=en] .brand,html[lang=en] .brand img{width:134px}html[lang=en] .nav-contact{padding:12px 14px;gap:13px}html[lang=en] .hero-copy h1{font-size:3.125rem}}
@media(max-width:960px){.header-inner{height:78px;gap:20px}.nav{position:absolute;top:78px;left:0;right:0;background:white;border-bottom:1px solid var(--line);margin:0;padding:20px 32px 26px;display:none;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 78px);overflow:auto;box-shadow:0 15px 25px #2028300d}.nav.open{display:flex}.nav>a:not(.nav-contact){padding:15px 0;border-bottom:1px solid var(--line)}.nav>a.current:not(.nav-contact):after{display:none}.nav>a.current{color:var(--orange-dark)}.services-menu summary{padding:15px 0;justify-content:space-between}.menu-services{position:static;transform:none;width:100%;box-shadow:none;grid-template-columns:1fr 1fr;border:0;background:var(--soft);padding:10px;margin:0 0 12px}.menu-services>a{font-size:0.8125rem;padding:13px 10px}.menu-services .menu-all{padding-bottom:15px}.nav-contact{margin-top:18px;justify-content:space-between}.menu-toggle{display:block;order:3}.language{margin-left:auto;order:2}.brand,.brand img{width:145px}.hero{padding-top:40px}.hero-inner{min-height:500px;gap:10px}.hero-copy h1{font-size:2.5rem}.hero-copy .eyebrow{font-size:0.75rem}.hero-copy .lead{font-size:0.9375rem}.hero-copy .actions{flex-direction:column;align-items:flex-start;margin-top:26px;gap:12px}.visual-caption{flex-direction:column;align-items:center;gap:12px}.logo-stage{min-height:335px}.visual-overline{font-size:0.75rem}.hero-foot{margin-top:24px;font-size:0.75rem}.proof-inner{gap:34px;grid-template-columns:.9fr 1.1fr}.proof-inner h2{font-size:1.625rem}.proof-name{font-size:1rem}.proof-name:nth-child(n+4){font-size:0.875rem}.proof-names{column-gap:25px}.section{padding:73px 0}.section-head{gap:35px}.section-head>p{max-width:300px;font-size:0.875rem}.section-head h2{font-size:2rem}.service-groups{gap:20px}.group-heading h3{font-size:1.375rem}.group-heading>p{font-size:0.8125rem;min-height:70px}.group-service h4{font-size:1rem;gap:10px}.group-service p{font-size:0.8125rem}.group-art{margin-bottom:22px}.service-card{padding:24px}.service-card h3{font-size:1.3125rem}.service-grid{gap:18px}.approach-grid{gap:45px}.approach-statement h2{font-size:1.875rem}.lab-teaser-section{padding-top:0}.lab-copy{padding:35px 28px}.lab-copy h2{font-size:1.75rem}.lab-mini{min-height:390px}.process-section{padding-top:0}.workflow{gap:20px}.contact-banner>.wrap{gap:30px}.contact-banner h2{font-size:2rem}.contact-banner .btn{min-width:185px;max-width:260px}.page-intro h1{font-size:2.875rem}.page-intro .lead{font-size:1.0625rem}.service-hero-grid h1{font-size:2.125rem}.service-hero-grid .lead{font-size:0.9375rem}.content-grid{gap:45px}.content-grid h2{font-size:1.875rem}.body-large{font-size:1.125rem}.capability-grid li{padding:24px;min-height:175px}.capability-grid p{font-size:1rem}.outcomes{gap:28px}.outcome h3{font-size:1.375rem}.outcome p{font-size:0.9375rem}.delivery-box{grid-template-columns:.9fr 1.1fr;padding:32px}.deliverables li{font-size:1rem}.delivery-box h2{font-size:1.75rem}.faq-layout h2{font-size:1.875rem}.faq-list summary{font-size:1rem}.about-story,.expertise-layout{gap:40px}.about-story h2,.expertise-layout h2{font-size:1.9375rem}.expertise-map{grid-template-columns:1fr}.expertise-node{min-height:65px;padding:17px}.professional-group{padding:24px}.professional-group h3{font-size:1.1875rem}.professional-grid{gap:18px}.contact-layout{gap:40px}.contact-project{padding:30px}.contact-project h2{font-size:1.6875rem}.contact-detail>a{font-size:1.375rem}.location-layout{gap:45px}.location-layout h2{font-size:1.875rem}.location-visual{aspect-ratio:1.1;padding:28px}.location-hk{font-size:9.0625rem}.location-coordinate{left:24px;font-size:0.75rem}.lab-stage{height:500px}.lab-description{gap:30px}.lab-description h2{font-size:1.5rem}.lab-use-grid{gap:25px}.credential-row{display:block}.credential-row .eyebrow{margin-bottom:16px}.credential-list{justify-content:flex-start}.footer-top{gap:30px}.footer-links{font-size:0.75rem}html[lang=en] .nav{gap:0}html[lang=en] .hero-copy h1{font-size:2.5625rem}html[lang=en] .hero-copy .lead{font-size:0.875rem}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.section{padding:58px 0}.header-inner{height:73px;gap:12px}.brand,.brand img,html[lang=en] .brand,html[lang=en] .brand img{width:135px;height:51px}.nav{top:73px;padding:14px 20px 24px;max-height:calc(100dvh - 73px)}.menu-services{grid-template-columns:1fr}.language{font-size:0.75rem}.language a{min-width:28px;padding:8px 6px}.menu-toggle{width:35px;padding:7px}.hero{padding-top:34px}.hero-inner{grid-template-columns:1fr;gap:28px;min-height:0}.hero-copy{padding:0 0 0 19px;border-left-width:3px}.hero-copy h1{font-size:clamp(2.0625rem,7.7vw,3.125rem);margin:17px 0 22px;line-height:1.45;letter-spacing:-.045em}.hero-copy .eyebrow{font-size:0.75rem;margin-bottom:0}.hero-copy .lead{font-size:0.9375rem;line-height:1.95;max-width:590px}.hero-copy .actions{flex-direction:row;align-items:center;gap:12px 20px;margin-top:26px}.hero-copy .text-link{font-size:0.75rem;gap:13px}.btn{min-height:49px;font-size:0.8125rem;padding:12px 18px;gap:22px}.hero-visual{min-height:320px;max-width:560px;width:100%;justify-self:center}.logo-stage{min-height:270px;flex:none;height:300px}.visual-overline{padding:8px 10px 0}.visual-caption{flex-direction:row;font-size:0.75rem;padding:0 10px;align-items:center}.motion-toggle{font-size:0.75rem;padding:7px 9px;min-height:34px}.hero-foot{margin-top:30px;font-size:0.75rem;padding:19px 0 22px}.hero-foot>span:last-child{display:none}.proof-section{padding:34px 0}.proof-inner{grid-template-columns:1fr;gap:23px}.proof-inner h2{font-size:1.75rem;margin-bottom:10px}.proof-inner p{max-width:550px;margin-bottom:9px;font-size:0.8125rem}.proof-inner .eyebrow{font-size:0.75rem}.proof-inner .text-link{font-size:0.75rem}.proof-names{column-gap:25px}.proof-name{min-height:69px;font-size:1.1875rem}.proof-name:nth-child(n+4){font-size:1rem}.section-head{display:block;margin-bottom:30px}.section-head h2{font-size:1.875rem}.section-head>p{max-width:600px;font-size:0.9375rem;margin:18px 0 0}.eyebrow{font-size:0.75rem;margin-bottom:15px}.service-groups{grid-template-columns:1fr;gap:39px}.group-art{aspect-ratio:3/2;max-height:none;margin-bottom:22px}.group-heading h3{font-size:1.75rem}.group-heading .eyebrow{font-size:0.75rem}.group-heading>p{min-height:0;font-size:0.9375rem;margin-bottom:20px;max-width:550px}.group-service{padding:22px 0}.group-service h4{font-size:1.1875rem}.group-service p{font-size:0.875rem;max-width:590px}.service-grid{grid-template-columns:1fr;gap:16px}.service-card{padding:25px}.service-card h3{font-size:1.5rem}.service-top{margin-bottom:21px}.service-card p{font-size:0.9375rem}.card-link{padding-top:14px}.approach-grid{grid-template-columns:1fr;gap:28px}.approach-statement h2{font-size:1.875rem;line-height:1.7;margin-bottom:15px}.reason{padding:24px 0}.reason h3{font-size:1.3125rem}.reason p{font-size:0.9375rem}.lab-teaser-section{padding-top:0}.lab-teaser{grid-template-columns:1fr}.lab-copy{padding:31px 25px}.lab-copy h2{font-size:1.875rem;max-width:500px}.lab-copy .eyebrow{font-size:0.75rem}.lab-mini{height:315px;min-height:315px}.lab-tags{margin-top:25px}.workflow{grid-template-columns:1fr 1fr;gap:34px 26px}.step h3{font-size:1.3125rem}.step p{font-size:0.875rem}.step-no{margin-bottom:17px}.process-section{padding-top:0}.contact-banner{padding:39px 0}.contact-banner>.wrap{display:block}.contact-banner h2{font-size:1.9375rem}.contact-banner p{font-size:0.9375rem}.contact-banner .btn{margin-top:25px;max-width:none}.page-intro{padding:22px 0 35px}.breadcrumbs{font-size:0.75rem;gap:9px;margin-bottom:35px}.page-intro h1{font-size:clamp(2.125rem,7.6vw,2.8125rem);line-height:1.45}.page-intro .lead{font-size:1rem;line-height:1.85}.service-intro{padding:22px 0 34px}.service-intro .breadcrumbs{margin-bottom:32px}.service-hero-grid{grid-template-columns:1fr;gap:33px}.service-hero-grid h1{font-size:clamp(2.0625rem,7.6vw,2.75rem);max-width:620px}.service-hero-grid .lead{font-size:1rem}.service-hero-grid .actions{margin-top:24px}.service-hero-art figcaption{padding:15px 16px}.section-nav .wrap{gap:25px;overflow:auto}.section-nav a{font-size:0.75rem;padding:15px 0;white-space:nowrap}.content-grid{grid-template-columns:1fr;gap:28px}.content-grid h2{max-width:580px;font-size:1.9375rem}.content-grid .problem{font-size:1.0625rem;max-width:590px;margin-bottom:0}.body-large{font-size:1.0625rem}.flow-diagram{margin-top:25px;padding:23px 18px}.flow-label{font-size:0.75rem}.flow-diagram li{font-size:0.75rem}.capability-grid{grid-template-columns:1fr 1fr}.capability-grid li{padding:23px 20px;min-height:172px}.capability-grid p{font-size:1rem}.capability-plus{right:18px;top:18px}.outcomes{grid-template-columns:1fr;gap:33px}.outcome{padding-top:24px}.outcome-icon{margin-bottom:19px}.outcome h3{font-size:1.5625rem}.outcome p{font-size:1rem}.delivery-section{padding-top:0}.delivery-box{grid-template-columns:1fr;gap:15px;padding:29px 23px}.delivery-box h2{font-size:1.8125rem}.deliverables li{font-size:1.0625rem;gap:19px;padding:20px 0}.delivery-workflow{padding-top:38px}.faq-layout{grid-template-columns:1fr;gap:17px}.faq-layout h2{font-size:1.875rem}.faq-list summary{font-size:1.0625rem;padding:23px 0;gap:20px}.faq-list p{font-size:0.9375rem}.clients-section{padding-top:28px}.client-filter{gap:7px}.client-filter button{padding:8px 12px;font-size:0.75rem;min-height:42px}.client-results{margin:22px 0}.client-featured-grid{grid-template-columns:1fr 1fr;gap:12px}.client-featured{padding:23px 17px;min-height:222px}.client-featured h2{font-size:1.1875rem}.client-index{margin-bottom:25px}.client-en{font-size:0.75rem}.client-featured p{font-size:0.75rem;line-height:1.6}.about-story{grid-template-columns:1fr;gap:32px}.about-story h2{font-size:2rem}.about-story .body-large{font-size:1.125rem}.expertise-layout{grid-template-columns:1fr;gap:27px}.expertise-map{grid-template-columns:1fr 1fr;gap:10px}.expertise-node{min-height:93px;padding:16px 13px;font-size:0.8125rem;gap:12px;flex-wrap:wrap}.expertise-node .arrow{font-size:1.0625rem}.professional-grid{grid-template-columns:1fr;gap:17px}.professional-group{padding:28px}.professional-group h3{font-size:1.4375rem;margin-top:20px}.contact-section{padding-top:30px}.contact-layout{grid-template-columns:1fr;gap:38px}.contact-project{padding:28px 24px}.contact-project h2{font-size:1.8125rem}.contact-project .btn{font-size:0.8125rem}.contact-detail>a{font-size:clamp(1.25rem,5.5vw,1.8125rem)}.contact-detail{padding:22px 0 25px}.contact-detail>span{font-size:0.75rem}.contact-person{padding-top:25px}.location-layout{grid-template-columns:1fr;gap:30px}.location-visual{aspect-ratio:1.6;padding:30px}.location-hk{font-size:9.6875rem}.location-coordinate{left:30px;bottom:20px;font-size:0.75rem}.location-layout h2{font-size:2rem}.location-layout address{font-size:1rem}.lab-section{padding-top:28px}.lab-toolbar{display:block;padding:12px}.lab-tabs{gap:2px;justify-content:space-between}.lab-tabs button{font-size:0.75rem;padding:8px 10px;gap:8px}.lab-tabs button>span{font-size:0.75rem}.lab-controls{border-top:1px solid var(--line);padding-top:12px;margin-top:12px;gap:8px;justify-content:space-between}.lab-controls label{font-size:0.75rem;gap:8px}.lab-controls input{width:63px}.lab-controls .motion-toggle{font-size:0.75rem}.lab-stage{height:405px}.logo-views{top:16px;left:16px}.logo-views button{font-size:0.75rem;padding:8px 11px}.scene-note{font-size:0.75rem;left:16px;right:16px;bottom:16px;gap:10px}.lab-description{grid-template-columns:1fr;gap:12px;padding:27px 21px}.lab-description h2{font-size:1.5rem}.lab-description p{font-size:0.875rem}.lab-use-grid{grid-template-columns:1fr;gap:27px}.lab-use>span{margin-bottom:18px}.lab-use h3{font-size:1.5625rem}.lab-use p{max-width:550px}.credentials{padding:27px 0}.credential-list{gap:9px 18px;font-size:0.75rem}.footer-top{grid-template-columns:1fr 1fr;gap:37px 24px;padding:35px 0}.footer-brand{grid-column:1/-1}.footer-brand .footer-slogan{font-size:1.5rem;margin-top:20px;margin-bottom:12px}.footer-brand .footer-slogan br{display:none}.footer-brand>p:last-child{margin-bottom:0}.footer-title{font-size:0.75rem;margin-bottom:16px}.footer-links{font-size:0.75rem;gap:11px;overflow-wrap:anywhere}.footer-bottom{font-size:0.75rem;flex-direction:column;gap:8px;padding:21px 0 92px}.wa-float{right:15px;bottom:15px;padding:11px 14px;font-size:0.75rem}.wa-float svg{width:20px;height:20px}html[lang=en] .hero-copy h1{font-size:clamp(2.4375rem,9.2vw,3.6875rem);line-height:1.12;max-width:580px}html[lang=en] .hero-copy h1 span+span{margin-top:9px}html[lang=en] .hero-copy .lead{font-size:0.9375rem;line-height:1.85}html[lang=en] .hero-copy .eyebrow{font-size:0.75rem}html[lang=en] .hero-copy{padding-left:19px}html[lang=en] .page-intro h1{line-height:1.2}html[lang=en] .service-hero-grid h1{line-height:1.25}html[lang=en] .expertise-node{font-size:0.75rem}html[lang=en] .section-nav .wrap{gap:23px}}
@media(max-width:390px){.wrap{width:calc(100% - 32px)}.language{gap:0}.language a{padding:8px 4px;min-width:23px}.header-inner{gap:8px}.hero-copy .actions{flex-direction:column;align-items:flex-start}.hero-copy h1{font-size:1.9375rem}.logo-stage{height:265px;min-height:265px}.hero-visual{min-height:310px}.capability-grid{grid-template-columns:1fr}.capability-grid li{min-height:136px}.proof-name{font-size:1.0625rem}.proof-name:nth-child(n+4){font-size:0.875rem}.client-featured-grid{grid-template-columns:1fr}.client-featured{min-height:190px}.expertise-map{grid-template-columns:1fr}.expertise-node{min-height:65px}.lab-tabs button{font-size:0.75rem;padding:8px}.lab-tabs button>span{display:none}.contact-project{padding:25px 20px}.location-hk{font-size:8.4375rem}.lab-stage{height:360px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js-motion .reveal{opacity:1;transform:none}}
.language a[lang=zh-Hans]{font-family:'Noto Sans SC',sans-serif}.language a[lang=zh-Hant]{font-family:'Noto Sans TC',sans-serif}

/* DARS 2026–2027: scalable typography, visible controls and complete alternatives. */
:root{--muted:#59616a;--control:#727982}
html{font-size:100%;scroll-padding-top:10rem}
body{font-size:1rem}
p,.group-service p,.service-card p,.reason p,.step p,.outcome p,.lab-description p,.lab-copy>p,.group-heading>p,.contact-project>p,.page-intro .lead,.service-hero-grid .lead,.hero-copy .lead{font-size:1rem;line-height:1.8}
html[lang=en] .hero-copy .lead{font-size:1rem}
.eyebrow,.hero-copy .eyebrow,.group-heading .eyebrow,.section-head .eyebrow,.visual-overline,.visual-caption,.hero-foot,.mini-caption,.scene-note,.art-index,.service-number,.client-index,.client-en,.client-featured p,.capability-no,.step-no,.flow-label,.service-hero-art figcaption,.footer-bottom,.credential-row .eyebrow,.lab-copy .eyebrow,.contact-detail>span{font-size:.75rem;letter-spacing:.04em}
html[lang=en] .hero-copy .eyebrow{font-size:.75rem}
.nav,.language,.btn,.text-link,.card-link,.footer-links,.footer-title,.credential-list,.professional-group .credential-list span,.flow-diagram li,.section-nav a,.lab-tabs button,.lab-controls label,.motion-toggle,.logo-views button,.client-filter button,.contact-project label,.contact-project select,.contact-project .contact-helper,.contact-helper,.contact-person p,.expertise-node,.contact-project .btn,.wa-float{font-size:.875rem}
.text-link{min-height:2.75rem}
.group-service h4{font-size:1.125rem}.service-card p,.group-service p{max-width:none}
:focus-visible{outline:3px solid #8b4700;outline-offset:4px}
:focus-visible,:target{scroll-margin-block:10rem 6rem}
main:focus,.static-experience:focus{outline:none}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
button,input,select,summary,a{touch-action:manipulation}
.btn{border-color:#965009;white-space:normal}
.btn.secondary,.motion-toggle,.client-filter button,.logo-views button,.lab-tabs button[aria-selected=true],.contact-project select{border-color:var(--control)}
.btn:hover{border-color:#965009}.btn.secondary:hover{border-color:#23272b}
.motion-toggle,.logo-views button,.lab-controls button,.scene-actions button,.menu-close,.submenu-close{min-height:2.75rem;padding:.6rem .85rem;background:#fff;border:1px solid var(--control);font-size:.875rem;line-height:1.6}
.language a{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;min-width:2rem;font-size:.875rem}
.language a.current{border-bottom-color:#965009}
.client-filter button[aria-pressed=true]{border-color:var(--ink)}
.lab-tabs button{min-height:2.75rem}.lab-tabs button[aria-selected=true]{border-bottom:3px solid #965009}
.logo-views button[aria-pressed=true]{border-color:#965009;box-shadow:inset 0 -2px #965009}
.flow-symbol{border-color:var(--control)}.flow-diagram li:not(:last-child):after{background:#965009}
.capability-plus,.hero-scroll,.service-hero-art figcaption>span:first-child{color:var(--ink)}
.contact-project select{font-size:1rem}.contact-detail>a{line-height:1.6}.contact-banner p{color:#423526}
.client-filter{gap:.6rem}.client-results{font-size:.875rem}.lab-controls input{accent-color:#854500;height:2.75rem;min-width:5rem}
.header-inner{display:grid;grid-template-columns:158px 1fr auto;gap:1.4rem;height:auto;min-height:5.7rem;padding-block:.65rem}
.header-utilities{grid-column:3;grid-row:1;display:flex;align-items:center;gap:.7rem}
.nav{grid-column:2;grid-row:1;margin:0;justify-content:flex-end;gap:1.4rem}
.menu-services{top:100%;max-height:70dvh;overflow-y:auto;gap:.25rem 1rem}
.menu-close{display:none}.submenu-close{margin:.5rem 1rem;justify-self:start}
.nav>a:not(.nav-contact),.services-menu summary{padding-block:1.25rem}
.nav a.current:not(.nav-contact):after{bottom:.5rem}
.menu-toggle{width:2.75rem;height:2.75rem;border:1px solid var(--control);padding:.7rem}
.menu-services>a{font-size:.875rem}.menu-services .submenu-close{grid-column:1/-1}
.proof-name{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.7rem;padding:1.25rem .5rem;font-size:1rem;min-height:10rem;border-bottom:1px solid var(--line)}
.proof-name:nth-child(n+4){font-size:1rem}.proof-names{gap:0 1.5rem}
.client-logo{display:flex;align-items:center;justify-content:center;min-height:5.25rem;width:100%;background:#fff;padding:.45rem}
.client-logo img{width:auto;max-width:100%;height:4.5rem;object-fit:contain}
.client-featured{background:#fff;border:1px solid var(--line);min-height:18rem;padding:1.5rem;gap:.3rem}
.client-featured:hover{background:#fff;border-color:#965009}
.client-featured .client-index{margin-bottom:.5rem}
.client-featured h2{font-size:1.125rem;margin:.9rem 0 .25rem}
.client-featured .client-en{font-size:.75rem}.client-featured p{font-size:.75rem;margin-top:auto;padding-top:1rem}
.badge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:1.5rem 0 2.5rem}
.qualification-badge{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.65rem;text-align:center;padding:1.5rem;border:1px solid var(--line);background:#fff;font-size:1.125rem;font-weight:600}
.qualification-badge:hover{border-color:#965009}.qualification-badge img{height:7.5rem;width:7.5rem;object-fit:contain}.qualification-badge .badge-source{font-size:.875rem;font-weight:400;color:var(--muted)}
.badge-grid.compact{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:1.5rem;margin:1.5rem 0 1rem}
.badge-grid.compact .qualification-badge{width:9rem;padding:1rem .7rem;border:0;font-size:.875rem}
.badge-grid.compact img{height:4.5rem;width:4.5rem}.badge-grid.compact .badge-source{font-size:.75rem}
.credential-list{line-height:1.8;gap:.75rem 1.5rem;justify-content:flex-start}.credential-list span{white-space:normal}.credential-row{align-items:flex-start}.credential-row .eyebrow{min-width:10rem}
.professional-group .credential-list span{font-size:.875rem}.qualification-note{max-width:65ch}
.example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.example-grid article{border-top:2px solid var(--orange);padding-top:1.5rem}.example-grid h3{font-size:1.375rem}.example-grid p{font-size:1rem;line-height:1.8}
.examples-section{padding-bottom:0}.home-faqs{padding-top:0}
.experience-links{padding:1.3rem 1.5rem;border-bottom:1px solid var(--line)}.experience-links p{margin:.8rem 0 0;font-size:.875rem}
#experience-panel{min-width:0}.lab-toolbar{align-items:flex-start}.lab-tabs{flex-wrap:wrap}.lab-controls{flex-wrap:wrap;justify-content:flex-start;gap:.5rem}.lab-controls button{min-width:2.75rem}
.lab-controls label{font-size:.875rem;align-self:center}.lab-controls output{align-self:center;font-size:.875rem;min-width:2.2rem}
.logo-views{flex-wrap:wrap;max-width:calc(100% - 2rem)}.scene-note{align-items:flex-end;flex-wrap:wrap;pointer-events:none}
.scene-actions{display:flex;gap:.7rem;flex-wrap:wrap;padding:1.2rem 1.5rem .5rem;border-top:1px solid var(--line)}.scene-actions button{flex:1 0 8rem;max-width:12rem}.scene-actions button:disabled{opacity:.6}
.scene-help{padding:0 1.5rem 1rem;font-size:.875rem;max-width:75ch;margin:0}.lab-stage{height:34rem;min-height:22rem;max-height:none}
.lab-description{min-height:0}.lab-description p{font-size:1rem}.static-experience img{align-self:center;object-fit:contain}
.reading-width{max-width:52rem}.reading-width h2{margin-top:2rem;font-size:1.75rem}.reading-width p,.accessible-list{font-size:1.125rem;line-height:1.85}.accessible-list{list-style:disc;padding-left:1.5rem;margin:1.5rem 0}.accessible-list li{margin:.75rem 0}.reading-width a{color:#854500;text-decoration:underline;text-underline-offset:.2em}
.sitemap-columns{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.sitemap-columns ul{display:grid;gap:1rem}.sitemap-columns h2{font-size:1.75rem}.sitemap-columns .text-link{font-size:1rem}
.footer-utility-links{display:flex;gap:1.5rem;flex-wrap:wrap}.footer-utility-links a{font-size:.875rem;text-decoration:underline;text-underline-offset:.25em;min-height:2rem;display:inline-flex;align-items:center}
.footer-bottom{align-items:center;flex-wrap:wrap;padding-bottom:6rem}.footer-top{min-width:0}.footer-links a{overflow-wrap:anywhere}.wa-float{font-size:.875rem;min-height:2.75rem}.wa-float:focus-visible{outline-color:#965009}
@media(max-width:70rem){.header-inner{grid-template-columns:145px 1fr auto;gap:1rem}.nav{gap:1rem}html[lang=en] .nav{gap:.9rem}html[lang=en] .header-inner{gap:1rem}.nav-contact{padding:.8rem 1rem;gap:.8rem}.section-head{gap:2rem}.hero-copy .actions{flex-wrap:wrap}.proof-inner{gap:2rem}.professional-grid{gap:1rem}}
@media(max-width:60rem){.site-header{position:relative;backdrop-filter:none}.header-inner{grid-template-columns:1fr auto;min-height:4.8rem;gap:0 1rem}.header-utilities{grid-column:2;grid-row:1}.brand{grid-column:1;grid-row:1}.nav{position:static;grid-column:1/-1;grid-row:2;display:flex;align-items:stretch;flex-direction:column;gap:0;width:100%;max-height:none;padding:1rem 0 1.4rem;border:0;box-shadow:none;overflow:visible}.js .nav{display:none}.js .nav.open{display:flex}.menu-toggle{display:none}.js .menu-toggle{display:block}.js .nav.open .menu-close{display:inline-flex;align-self:flex-end;align-items:center;justify-content:center;margin-bottom:.4rem}.nav>a:not(.nav-contact){padding:1rem 0}.services-menu summary{padding:1rem 0}.menu-services{position:static;transform:none;width:100%;max-height:none;box-shadow:none;overflow:visible;padding:.75rem}.menu-services>a{padding:1rem}.header-utilities .language{margin:0}.nav-contact{margin-top:1rem}.proof-name{min-height:10rem}.proof-inner{grid-template-columns:1fr 1.1fr}.client-featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-featured{min-height:19rem}.visual-caption{flex-wrap:wrap}.section-nav .wrap{flex-wrap:wrap;gap:0 1.75rem;overflow:visible}.section-nav a{min-height:2.75rem;display:flex;align-items:center;font-size:.875rem}html[lang=en] .expertise-node{font-size:.875rem}.hero-foot{font-size:.75rem}.group-heading>p{min-height:0}}
@media(max-width:47.5rem){.header-inner{padding-block:.5rem}.hero-copy h1{font-size:clamp(2.1rem,7.7vw,3.15rem)}.hero-copy .eyebrow{font-size:.75rem}.hero-copy .text-link{font-size:.875rem}.hero-copy .actions{gap:.9rem 1.25rem}.proof-inner{grid-template-columns:1fr}.proof-name{font-size:1rem}.client-featured-grid{grid-template-columns:1fr 1fr}.client-featured{padding:1rem;min-height:18rem}.client-logo img{height:4.5rem}.client-featured h2{font-size:1.125rem}.badge-grid{gap:.75rem}.qualification-badge{padding:1rem .5rem;font-size:1rem}.qualification-badge img{height:5rem;width:5rem}.qualification-badge .badge-source{font-size:.75rem}.badge-grid.compact{gap:.5rem}.badge-grid.compact .qualification-badge{width:calc((100% - 1rem)/3);min-width:5rem}.credential-row .eyebrow{margin-bottom:1rem}.credential-list{font-size:.875rem;gap:.7rem 1.2rem}.group-service p,.group-heading>p,.reason p,.step p,.footer-links,.lab-copy>p,.lab-description p{font-size:1rem}.step p{max-width:none}.example-grid,.sitemap-columns{grid-template-columns:1fr;gap:1.5rem}.lab-tabs{justify-content:flex-start;gap:.3rem}.lab-tabs button{font-size:.875rem;padding:.7rem;flex:1}.lab-tabs button span{display:none}.lab-controls{justify-content:flex-start}.lab-controls .motion-toggle{font-size:.875rem}.logo-views button{font-size:.875rem}.lab-stage{height:27rem}.scene-note{font-size:.75rem}.scene-note #scene-type{display:none}.scene-actions{padding:1rem .9rem .6rem;gap:.5rem}.scene-actions button{flex-basis:calc(50% - .5rem);max-width:none}.scene-help{padding:.3rem 1rem 1rem;font-size:.875rem}.experience-links{padding:1rem}.lab-toolbar{padding:.75rem}.footer-top{grid-template-columns:1fr;gap:2rem}.footer-brand{grid-column:auto}.footer-bottom{align-items:flex-start;padding-bottom:6rem}.footer-links{font-size:1rem}.footer-title{font-size:1rem}.client-filter button{font-size:.875rem}.contact-detail>a{font-size:clamp(1.1rem,5.5vw,1.8rem)}.footer-utility-links{gap:1.25rem}.reading-width p,.accessible-list{font-size:1rem}.lab-mini{min-height:20rem}.lab-copy .motion-toggle{margin-top:1rem}.visual-caption{gap:.75rem;align-items:center}.hero-foot>span:last-child{display:none}}
@media(max-width:24.5rem){.wrap{width:calc(100% - 2rem)}.header-inner{gap:.5rem}.brand,.brand img,html[lang=en] .brand,html[lang=en] .brand img{width:7rem;height:3rem}.header-utilities{gap:.3rem}.language{gap:0}.language a{min-width:1.75rem;padding:.5rem .25rem}.client-featured-grid{grid-template-columns:1fr}.client-featured{min-height:14rem}.proof-names{gap:0 .8rem}.proof-name{font-size:.875rem!important}.proof-name .client-logo img{height:3.5rem}.workflow{grid-template-columns:1fr}.badge-grid{grid-template-columns:1fr}.qualification-badge img{height:6rem;width:6rem}.badge-grid.compact .qualification-badge{min-width:5rem}.badge-grid.compact .badge-source{overflow-wrap:anywhere}.capability-grid{grid-template-columns:1fr}.scene-actions button{flex-basis:100%}.header-utilities .menu-toggle{width:2.5rem;min-width:2.5rem;padding:.5rem}}
@media(forced-colors:active){.btn,.motion-toggle,.client-filter button,.logo-views button,.scene-actions button,.menu-toggle,.qualification-badge{border:1px solid ButtonText}.client-filter button[aria-pressed=true],.lab-tabs button[aria-selected=true],.logo-views button[aria-pressed=true]{outline:2px solid Highlight}.menu-toggle span{background:ButtonText}:focus-visible{outline-color:Highlight}.editorial-art,.client-logo img,.qualification-badge img{forced-color-adjust:none}.stage-grid{display:none}}
/* Contrast stays stable against both orange surfaces and moving artwork. */
.not-found h1{color:var(--orange-dark)}
.contact-banner .eyebrow{color:#5f3104}
.contact-banner .btn.secondary{border-color:#23272b}
.btn,.btn:hover,.nav-contact{border:1px solid #8b4700}
.btn.secondary{border-color:var(--control)}
.art-index{background:#fff}
.scene-note{background:#fff;padding:.4rem .6rem;width:fit-content;max-width:calc(100% - 3.5rem)}
.mini-caption{background:#f5f7f8;padding:.25rem .4rem}
.wa-float:focus-visible{outline-color:#8b4700}
@media(forced-colors:active){.nav-contact,.btn{border-color:ButtonText}.scene-note,.mini-caption{background:Canvas}}
