.entrance{--scene-duration:4s;--intro-seek:0;--logo-dx:0px;--logo-dy:0px;--logo-scale:1;--logo-mid-dx:0px;--logo-mid-dy:0px;--logo-mid-scale:1;z-index:1000;isolation:isolate;pointer-events:none;color:#00467c;position:fixed;inset:0;overflow:hidden;container-type:size}.entrance-air{z-index:0;background:#fff;position:absolute;inset:0}.entrance-space{z-index:1;perspective:900px;perspective-origin:50% 46%;position:absolute;inset:0;overflow:hidden}.entrance-field{transform-style:preserve-3d;transform-origin:50% 46%;position:absolute;inset:0}.entrance-word{left:calc(var(--x)*1%);top:calc(var(--y)*1%);transform:translate(-50%,-50%) translateZ(calc(var(--z)*1px)) rotate(calc(var(--angle)*1deg));font:400 clamp(12px,calc(var(--size)*1vw),100px)/1.3 var(--font);white-space:nowrap;letter-spacing:.035em;opacity:0;color:#00467c;will-change:opacity;filter:blur(var(--softness,0px));position:absolute}.entrance-word>span{will-change:transform;display:block}.entrance-word-english{letter-spacing:-.025em;font-family:Arial,sans-serif;font-weight:400}.entrance-word-deep{color:#758792}.entrance-word-near{font-weight:500}.entrance-word:nth-child(10){font-family:Georgia,serif;font-style:italic}.entrance-brand{z-index:2;position:absolute;inset:0}.entrance-logo{width:min(64%,485px);position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.entrance-logo-flight{transform-origin:0 0;opacity:0;will-change:transform,opacity}.entrance-logo-flight img{width:100%;height:auto;display:block}.entrance-tagline{color:#00467c;white-space:nowrap;letter-spacing:.12em;opacity:0;will-change:opacity,translate;margin:0;font-size:clamp(14px,1.6vw,19px);font-weight:400;position:absolute;top:calc(46% + 58px);left:50%;transform:translate(-50%)}.entrance-skip{z-index:3;pointer-events:auto;color:#526773;font:12px/1.5 var(--font);opacity:.8;background:0 0;border:0;align-items:center;gap:20px;min-height:44px;padding:12px 4px;display:flex;position:absolute;bottom:24px;right:36px}.entrance-skip:hover{color:#00467c;opacity:1}.entrance-skip:focus-visible{opacity:1;outline-offset:5px;outline:2px solid #00467c;animation:none!important}html:not([data-entrance]) .entrance:not(.entrance-demo){display:none}html[data-entrance] .site-header .brand-logo{visibility:hidden}.entrance[data-playing] .entrance-field{animation:entrance-dive var(--scene-duration) both}.entrance[data-playing] .entrance-word{animation:entrance-word-veil var(--scene-duration) both}.entrance[data-playing] .entrance-word-near{animation-name:entrance-word-near}.entrance[data-playing] .entrance-word-deep{animation-name:entrance-word-deep}.entrance[data-playing] .entrance-word>span{animation:entrance-float var(--scene-duration) both}.entrance-demo[data-playing] .entrance-air{animation:entrance-air-open var(--scene-duration) both}.entrance[data-playing][data-landing=measured] .entrance-logo-flight{animation:adweb-logo-landing var(--scene-duration) both}.entrance[data-playing]:not(.entrance-demo) :is(.entrance-field,.entrance-word,.entrance-word>span,.entrance-tagline,.entrance-skip){animation-duration:var(--scene-duration)}.entrance[data-playing]:not(.entrance-demo) .entrance-air{opacity:1;animation:none}.entrance[data-playing] .entrance-tagline{animation:entrance-tagline var(--scene-duration) both}.entrance[data-playing] :is(.entrance-field,.entrance-word,.entrance-word>span,.entrance-air,.entrance-logo-flight,.entrance-tagline,.entrance-skip){animation-delay:calc(var(--intro-seek)*-1ms)}.entrance[data-playing] .entrance-word{animation-delay:calc(var(--cue,0s) - var(--intro-seek)*1ms)}.entrance[data-playing] .entrance-skip{animation:entrance-skip-away var(--scene-duration) both;animation-delay:calc(var(--intro-seek)*-1ms)}.entrance[data-held] :is(.entrance-field,.entrance-word,.entrance-word>span,.entrance-air,.entrance-logo-flight,.entrance-tagline,.entrance-skip){animation-play-state:paused}.entrance-demo{pointer-events:none;display:grid;position:absolute}.entrance-demo[data-finished]{display:none}@keyframes entrance-dive{0%{animation-timing-function:cubic-bezier(.2,.1,.35,1);transform:translateZ(-90px)rotateY(-2deg)}15%{animation-timing-function:cubic-bezier(.65,0,.3,1);transform:translateZ(-20px)rotateY(0)}39%,to{transform:translateZ(650px)rotateY(1deg)}}@keyframes entrance-word-veil{0%{opacity:0}8%,29%{opacity:var(--tone);animation-timing-function:cubic-bezier(.5,0,.3,1)}41%,to{opacity:0}}@keyframes entrance-float{0%{transform:translate3d(calc(var(--drift)*-7px),10px,0)}24%{transform:translate3d(calc(var(--drift)*7px),-10px,0)}to{transform:translate3d(calc(var(--drift)*12px),-20px,0)}}@keyframes adweb-logo-landing{0%,37%{opacity:0;animation-timing-function:cubic-bezier(.22,1,.36,1);transform:translateY(16px)scale(.96)}48%,72%{opacity:1;animation-timing-function:cubic-bezier(.76,0,.18,1);transform:translate(0,0)scale(1)}88%{opacity:1;transform:translate3d(var(--logo-mid-dx),var(--logo-mid-dy),0) scale(var(--logo-mid-scale));animation-timing-function:cubic-bezier(.18,.65,.25,1)}to{opacity:1;transform:translate3d(var(--logo-dx),var(--logo-dy),0) scale(var(--logo-scale))}}@keyframes entrance-tagline{0%,40%{opacity:0;animation-timing-function:cubic-bezier(.22,1,.36,1);translate:0 8px}51%,62%{opacity:1;animation-timing-function:ease-out;translate:0}71%,to{opacity:0;translate:0 -4px}}@keyframes entrance-air-open{0%,70%{opacity:1;animation-timing-function:cubic-bezier(.4,0,.3,1)}90%,to{opacity:0}}@supports (font-size:1cqw){.entrance-word{font-size:clamp(12px,calc(var(--size)*1cqw),100px)}.entrance-tagline{font-size:clamp(14px,1.6cqw,19px)}}@media (width<=700px){.entrance-word{font-size:clamp(13px,calc(var(--size)*1.45vw),48px)}.entrance-word:nth-child(10){top:96%;left:43%}.entrance-word:nth-child(n+17){display:none}.entrance-word:first-child{left:24%}.entrance-word:nth-child(3){left:73%}.entrance-word:nth-child(8){left:80%}.entrance-word:nth-child(9){left:24%}.entrance-logo{width:78%}.entrance-tagline{letter-spacing:.055em;font-size:14px;top:calc(46% + 43px)}.entrance-skip{bottom:18px;right:22px}.entrance-space{perspective:750px}}@media (prefers-reduced-motion:reduce){.entrance:not(.entrance-demo){display:none!important}.entrance-demo *{animation:none!important}.entrance-demo .entrance-space{display:none}.entrance-demo .entrance-logo-flight,.entrance-demo .entrance-tagline{opacity:1}}.entrance-demo{--scene-duration:3.8s}.entrance:not(.entrance-demo)[data-landing=arrived] .entrance-logo-flight{opacity:1;transform:translate3d(var(--logo-dx), var(--logo-dy), 0) scale(var(--logo-scale));animation:none}*{box-sizing:border-box}:root{--blue:#00467c;--ink:#131719;--paper:#f1f2f0;--muted:#666c70;--radius:18px;--font:"Chiron GoRound TC","PingFang TC","Microsoft JhengHei",sans-serif}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--paper);color:var(--ink);font-family:var(--font);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.04' filter='url(%23n)'/%3E%3C/svg%3E");margin:0;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}a,button{touch-action:manipulation}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline-offset:5px;outline:3px solid #d08a16}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2{color:var(--blue);letter-spacing:-.035em;font-weight:650;line-height:1.12}h1{font-size:clamp(40px,5.25vw,80px)}h2{font-size:clamp(34px,4.6vw,64px)}h3{font-size:24px;line-height:1.4}p{margin-bottom:20px}.quiet,.eyebrow{color:var(--muted);font-size:13px}.eyebrow{letter-spacing:.04em}.skip{z-index:100;background:#fff;padding:14px;position:fixed;top:-100px;left:24px}.skip:focus{top:20px}.site-header{z-index:50;background:#fff;border-radius:18px;align-items:center;gap:20px;min-height:50px;margin:16px 40px 0;padding:10px 20px;display:flex;position:sticky;top:16px}.wordmark{letter-spacing:-1px;color:inherit;white-space:nowrap;font-family:Arial,sans-serif;font-size:21px;font-weight:800}.desktop-nav{gap:20px;margin-left:auto;font-size:14px;font-weight:650;display:flex}.desktop-nav a:hover{color:var(--blue)}#menu-toggle{background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:32px;height:30px;margin-left:auto;padding:4px;display:flex}#menu-toggle span{background:#121212;width:28px;height:1.5px;transition:transform .18s}#menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.3px)rotate(45deg)}#menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.3px)rotate(-45deg)}#menu-panel{background:#fff;border-radius:18px;width:440px;max-width:100%;padding:26px;position:absolute;top:64px;right:0;box-shadow:0 10px 28px #002a4518}#menu-panel[hidden]{display:none}#menu-panel a{color:var(--blue);border-bottom:1px dashed #ccc;align-items:center;gap:18px;padding:18px 0;font-size:24px;display:flex}#menu-panel a span{margin-left:auto}#menu-panel small{color:#777;font-size:12px}.hero{grid-template-columns:minmax(0,3.5fr) minmax(220px,1fr);gap:30px 24px;max-width:1600px;margin:auto;padding:82px 40px 0;display:grid}.hero h1{white-space:nowrap;align-self:start;margin:0;font-size:clamp(40px,5vw,80px)}.hero-intro{text-align:right;align-self:start;font-size:14px;line-height:1.35}.hero-intro p{margin-bottom:0}.hero-image{border-radius:var(--radius);height:clamp(470px,48vw,760px);min-height:430px;overflow:hidden}.hero-image img{object-fit:cover;object-position:center;width:100%;height:100%;animation:.6s ease-out reveal}.hero-side{flex-direction:column;justify-content:space-between;padding:20px 0 0;display:flex}.service-index a{color:var(--blue);justify-content:space-between;font-weight:650;line-height:1.5;transition:padding .2s;display:flex}.service-index a:hover{padding-left:8px}.service-index a span{color:#989fa3;font-weight:400}.hero-side-bottom p{font-size:13px}.button{background:var(--blue);color:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:36px;min-height:56px;padding:4px 4px 4px 20px;font-size:17px;font-weight:700;transition:background .2s;display:flex}.button:hover{background:#002f54}.button span{color:var(--blue);background:#fff;border-radius:13px;flex:none;place-items:center;width:48px;height:48px;font-family:Arial;font-size:25px;display:grid}.section{max-width:1600px;margin:0 auto;padding:100px 40px 0}.chapter{grid-template-columns:1fr 2.35fr;gap:30px;display:grid}.chapter-label{font-size:15px;font-weight:650}.chapter-label span{color:#7d898e;border-right:1px solid #9faeb5;margin-right:7px;padding-right:7px;font-family:Arial}.lede{max-width:730px;font-size:19px;line-height:1.8}.method{color:var(--blue);margin-top:35px;font-size:24px;font-weight:600}.section-heading{grid-template-columns:1fr 1.9fr 1fr;align-items:end;gap:25px;margin-bottom:50px;display:grid}.section-heading .chapter-label{align-self:start}.section-heading h2{margin:0}.section-heading>.text-link{text-align:right}.text-link{text-underline-offset:4px;font-size:15px;font-weight:600;text-decoration:underline}.project-row{grid-template-columns:1fr 2.35fr;gap:10px;min-height:430px;margin-bottom:18px;display:grid}.project-info{border-radius:var(--radius);background:#fff;flex-direction:column;padding:25px;display:flex}.project-info h3{margin-bottom:12px;font-size:24px}.project-info p{font-size:14px;line-height:1.65}.project-info dl{margin:auto 0 25px;padding-top:50px;font-size:13px}.project-info dl>div{align-items:baseline;gap:6px;margin-bottom:8px;display:flex}.project-info dt{color:#78838a;flex:1;gap:5px;display:flex}.project-info dt:after{content:"";border-bottom:1px dashed #c4c9cb;flex:1}.project-info dd{text-align:right;max-width:65%;margin:0}.project-image{border-radius:var(--radius);min-height:430px;position:relative;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.project-row:hover .project-image img{transform:scale(1.025)}.image-label{background:#ffffffdc;border-radius:4px;padding:4px 8px;font-size:11px;position:absolute;bottom:18px;right:18px}.service-list{border-top:1px dashed #acb5ba;margin-top:38px}.service-list a{border-bottom:1px dashed #acb5ba;align-items:center;gap:20px;padding:22px 0;display:flex}.service-list h3{color:var(--blue);margin:0;font-size:32px}.service-list a>span{margin-left:auto;font-size:25px}.service-list small{color:#8a9398;font-family:Arial}.service-list+.quiet{margin-top:24px}.article-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.article-card{border-radius:var(--radius);background:#fff;padding:36px;display:block}.article-card h3,.article-card h2{color:var(--blue);font-size:32px;line-height:1.35}.article-card p{max-width:55ch}.article-card .text-link{margin-top:50px;display:block}.footer{background:var(--blue);color:#fff;margin-top:100px;padding:65px 40px 30px}.footer>.eyebrow{color:#c7d7e4}.footer-grid{justify-content:space-between;align-items:end;gap:30px;display:flex}.footer h2{color:#fff;margin:0;font-size:clamp(40px,5.5vw,78px)}.button-light{color:var(--blue);background:#fff;min-width:280px}.button-light:hover{background:#dae7ee}.button-light span{background:var(--blue);color:#fff}.footer-bottom{border-top:1px dashed #7898b0;justify-content:space-between;align-items:center;gap:25px;margin-top:60px;padding-top:25px;font-size:13px;display:flex}.listing{min-height:55vh;padding-top:95px}.listing h1,.listing>.lede{margin-bottom:50px}.detail{max-width:1600px;margin:auto;padding:75px 40px 0}.detail-intro{text-align:center;max-width:1050px;margin:0 auto 50px}.detail-intro>.text-link{margin-bottom:40px;display:inline-block}.detail-intro h1{font-size:clamp(38px,5.5vw,76px);line-height:1.2}.detail-intro>.lede{margin:0 auto}.detail-cover{margin:0 0 75px}.detail-cover img{object-fit:cover;border-radius:var(--radius);width:100%;max-height:780px}figcaption{color:#626b71;margin-top:10px;font-size:13px}.reading-grid{grid-template-columns:220px minmax(0,760px);justify-content:center;gap:70px;display:grid}.reading-aside{border-top:1px dashed #a4afb4;padding-top:20px;font-size:14px}.reading-aside dt{color:#7b858b;margin-top:24px}.reading-aside dd{margin:8px 0 30px}.reading-aside>a{text-decoration:underline}.prose{overflow-wrap:anywhere;font-size:18px;line-height:1.95}.prose h2{letter-spacing:-.02em;margin:42px 0 20px;font-size:32px;line-height:1.4}.prose h2:first-child{margin-top:0}.prose h3{color:var(--blue);margin:32px 0 15px}.prose a{color:var(--blue);text-decoration:underline}.prose p{margin-bottom:25px}.prose blockquote{border-left:3px solid var(--blue);margin:30px 0;padding-left:25px}.gallery{grid-template-columns:1fr 1fr;gap:25px;margin-top:70px;display:grid}.gallery figure{margin:0}.gallery img{object-fit:contain;border-radius:var(--radius);width:100%;height:auto}.source-note{overflow-wrap:anywhere;border-top:1px dashed #9eacb4;max-width:760px;margin:70px auto 0;padding-top:25px}.source-note p{color:#616a70;font-size:14px}.related{border-top:1px dashed #9eacb4;justify-content:space-between;align-items:center;gap:30px;margin:70px auto 0;padding-top:40px;display:flex}.related h2{margin:0;font-size:36px}.not-found{min-height:55vh;padding:120px 40px}.contact-preview{background:#fff;border-radius:18px;max-width:700px;padding:30px}.review-links{gap:15px;margin:40px 0;display:grid}.review-links>a{color:var(--blue);background:#fff;border-radius:12px;padding:20px}@keyframes reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (width>=1600px){.hero h1{font-size:80px}}@media (width<=1000px){.desktop-nav{gap:12px;font-size:12px}.hero{grid-template-columns:minmax(0,3fr) minmax(200px,1fr);padding-top:70px}.hero h1{white-space:normal;font-size:48px}.hero-image{height:520px}.hero-intro{font-size:13px}.reading-grid{grid-template-columns:160px minmax(0,680px);gap:35px}.section-heading{grid-template-columns:1fr 2.2fr}.section-heading>.text-link{text-align:left;grid-column:2}.project-row{grid-template-columns:1fr 1.8fr}.project-info{padding:20px}.project-info h3{font-size:21px}}@media (width<=700px){.site-header{margin:12px 20px 0;padding:12px 18px;top:12px}.desktop-nav{display:none}.wordmark{font-size:20px}#menu-panel{width:100%;top:65px}.hero{flex-direction:column;gap:22px;padding:65px 20px 0;display:flex}.hero h1{white-space:normal;letter-spacing:-.05em;max-width:100%;font-size:42px;line-height:1.2}.hero h1 span{display:block}.hero-intro{text-align:left;order:3;font-size:15px;line-height:1.6}.hero-image{border-radius:16px;order:2;height:430px;min-height:0}.hero-image img{object-position:85% center}.hero-side{order:4;gap:32px;padding:0}.service-index{grid-template-columns:1fr 1fr;gap:8px 28px;display:grid}.hero-side-bottom{flex-direction:column;display:flex}.hero-side-bottom p{font-size:14px}.hero-side-bottom .quiet{font-size:12px}.button{max-width:100%;min-height:54px;font-size:16px}.section{padding:75px 20px 0}.chapter{grid-template-columns:1fr;gap:30px}.section-heading{grid-template-columns:1fr;gap:25px;margin-bottom:30px}.section-heading h2{font-size:40px}.section-heading>.text-link{grid-column:1}h2{font-size:36px}.lede{font-size:17px}.project-row{grid-template-columns:1fr;gap:8px;min-height:0}.project-info{order:2;padding:24px}.project-info dl{margin:30px 0 20px;padding-top:0}.project-image{order:1;height:300px;min-height:0}.service-list h3{font-size:27px}.article-cards{grid-template-columns:1fr}.article-card{padding:28px}.article-card h3,.article-card h2{font-size:29px}.footer{margin-top:75px;padding:45px 20px 25px}.footer-grid{flex-direction:column;align-items:stretch;gap:32px}.footer h2{font-size:44px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:15px;margin-top:45px}.listing{padding-top:65px}.listing h1{font-size:43px}.detail{padding:55px 20px 0}.detail-intro{text-align:left;margin-bottom:35px}.detail-intro h1{font-size:39px}.detail-intro>.text-link{margin-bottom:25px}.detail-cover{margin-bottom:35px}.detail-cover img{object-position:60% center;height:340px}.reading-grid{grid-template-columns:1fr;gap:30px}.reading-aside{flex-wrap:wrap;gap:12px 25px;display:flex}.reading-aside>p{max-width:100%;margin:0}.reading-aside dl{width:100%;margin:0}.reading-aside dt{margin-top:15px}.reading-aside dd{margin-bottom:10px}.prose{font-size:17px}.prose h2{font-size:29px}.gallery{grid-template-columns:1fr;gap:30px;margin-top:45px}.source-note{margin-top:45px}.related{flex-direction:column;align-items:stretch;margin-top:45px}.related h2{font-size:30px}.not-found{padding:85px 20px}.not-found h1{font-size:39px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
