@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,figure,dl,dd{margin:0}img,svg{max-width:100%;display:block}img{height:auto}button,input,textarea,select{font:inherit}[hidden]{display:none!important}a{color:inherit;text-decoration:none}}@layer base{:root{color-scheme:light;--paper:#f8f9f6;--white:#fff;--ink:#192d34;--muted:#5b686a;--ocean:#102f3a;--teal:#356c65;--line:#dce1db;--sage:#d9e6d3;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--gutter:clamp(22px, 4.8vw, 76px);--section-space:clamp(72px, 8vw, 112px)}html{scroll-behavior:smooth;scroll-padding-top:28px}body{background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}::selection{color:var(--ocean);background:#c9ded0}:focus-visible{outline-offset:5px;border-radius:2px;outline:3px solid #3c827a}h1,h2,h3{letter-spacing:-.045em;text-wrap:balance;overflow-wrap:anywhere;hyphens:auto;font-weight:500;line-height:1.12}:lang(zh) :is(h1,h2,h3),:lang(ja) :is(h1,h2,h3){letter-spacing:-.02em;line-height:1.25}h1{font-size:clamp(44px,5.7vw,76px)}h2{font-size:clamp(30px,3.25vw,44px)}h3{letter-spacing:-.025em;font-size:22px}p{text-wrap:pretty}.container{width:min(100% - var(--gutter) * 2, 1280px);margin-inline:auto}.arrow{vertical-align:middle;flex-shrink:0;display:inline-block}.text-link{align-items:center;gap:15px;padding-block:8px;font-size:13px;font-weight:500;line-height:1.5;display:inline-flex}.text-link .arrow,.button .arrow{transition:transform .2s}.text-link:hover .arrow,.button:hover .arrow{transform:translate(3px)}.text-link:hover{color:var(--teal)}.button{border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;gap:27px;min-height:49px;padding:14px 21px;font-size:13px;font-weight:500;line-height:1.5;transition:background-color .2s;display:inline-flex}.button-dark{background:var(--ocean);color:#fff}.button-dark:hover{background:#24515a}.skip-link{z-index:100;background:var(--ocean);color:#fff;padding:12px 20px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@layer components{.site-header{border-bottom:1px solid var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:25px;min-height:96px;display:flex}.brand-link{flex-shrink:0;display:inline-flex}.brand{align-items:center;gap:9px;display:inline-flex}.brand-mark{color:var(--ocean)}.brand-name{letter-spacing:-.055em;font-size:26px;font-weight:650;line-height:1}.brand-design{font-family:var(--mono);letter-spacing:.32em;margin-top:5px;padding-left:2px;font-size:8px;font-weight:400;line-height:1.5;display:block}.desktop-nav{gap:clamp(16px,2.2vw,32px);margin-left:auto;display:flex}.desktop-nav a{color:var(--muted);padding-block:12px;font-size:12px;position:relative}.desktop-nav a[aria-current=page]{color:var(--ink)}.desktop-nav a[aria-current=page]:after{content:"";background:var(--teal);border-radius:50%;width:4px;height:4px;position:absolute;bottom:2px;left:calc(50% - 2px)}.desktop-nav a:hover{color:var(--teal)}.header-contact{border:1px solid #b9c4bd;border-radius:3px;align-items:center;gap:25px;padding:9px 15px;font-size:12px;display:inline-flex}.header-contact:hover{border-color:var(--teal);background:#ecf0e9}.mobile-menu{display:none}.language-switcher{flex-shrink:0;position:relative}.language-switcher summary{cursor:pointer;border:1px solid #b9c4bd;border-radius:3px;align-items:center;gap:8px;min-height:40px;padding:9px 10px;font-size:12px;list-style:none;display:flex}.language-switcher summary::-webkit-details-marker{display:none}.language-switcher[open] summary{border-color:var(--teal);background:#ecf0e9}.language-chevron{font-size:14px;line-height:1}.language-switcher nav{z-index:40;border:1px solid var(--line);background:var(--paper);border-radius:3px;width:210px;padding:6px;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 10px 25px #192d3414}.language-switcher nav a{border-radius:2px;justify-content:space-between;align-items:center;gap:16px;min-height:40px;padding:9px 12px;font-size:13px;display:flex}.language-switcher nav a:hover,.language-switcher nav a[aria-current=page]{color:var(--teal);background:#eaf0e6}.ocean-art{isolation:isolate;background:var(--ocean);aspect-ratio:1/1.025;border-radius:3px;position:relative;overflow:hidden}.ocean-art>svg{width:100%;height:100%;position:absolute;inset:0}.section{padding-block:var(--section-space)}.section-heading{justify-content:space-between;align-items:end;gap:28px;display:flex}.section-heading .text-link{flex-shrink:0;margin-bottom:2px}.section-intro{color:var(--muted);margin-top:17px;font-size:14px}.client-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:29px;margin-top:42px;display:grid}.client-card{flex-direction:column;min-width:0;display:flex}.client-art-link{border-radius:3px;display:block;position:relative;overflow:hidden}.client-visual{aspect-ratio:1.45;isolation:isolate;border-radius:3px;justify-content:center;align-items:center;padding:32px;display:flex;position:relative;overflow:hidden}.visual-blue{--art-ink:#294c64;color:var(--art-ink);background:#e2e9ed}.visual-sage{--art-ink:#3f665b;color:var(--art-ink);background:#e4eadf}.visual-papaya{--art-ink:#a64c35;color:var(--art-ink);background:#f1e5db}.visual-placeholder-label{color:var(--art-ink);font-size:11px;position:absolute;bottom:18px;left:23px}.visual-wordmark{z-index:1;letter-spacing:-.04em;font-size:clamp(30px,3.1vw,46px);font-weight:500;line-height:1.15;position:relative}.client-title{margin-top:22px;font-size:25px}.client-title a{justify-content:space-between;align-items:center;display:flex}.client-card>p{color:var(--muted);margin-top:12px;margin-bottom:20px;font-size:13px;line-height:1.7}.client-links{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:auto;padding-top:15px;display:flex}.client-links a{align-items:center;gap:9px;min-height:24px;font-size:11px;font-weight:500;display:inline-flex}.client-links a:hover{color:var(--teal);text-underline-offset:4px;text-decoration:underline}.client-links .arrow{width:15px;height:15px}.client-screenshot{aspect-ratio:1.45;border:1px solid var(--line);background:#e2e9ed;border-radius:3px;overflow:hidden}.client-screenshot img{object-fit:cover;object-position:top;width:100%;height:100%}.contact-cta{border-top:1px solid var(--line);background:#edf1e9;padding-block:76px}.contact-cta-inner{justify-content:space-between;align-items:center;gap:40px;display:flex}.contact-cta h2{font-size:clamp(32px,3.4vw,46px)}.contact-cta .button{min-width:200px}.site-footer{padding-top:62px}.footer-top{grid-template-columns:1fr .45fr .45fr;gap:70px;padding-bottom:58px;display:grid}.footer-identity p{color:var(--muted);margin-top:21px;font-size:12px;line-height:1.8}.footer-location{display:block}.footer-top nav{flex-direction:column;align-items:start;gap:7px;font-size:12px;display:flex}.footer-heading{letter-spacing:0;margin-bottom:14px;font-size:14px}.footer-top nav>a{align-items:center;gap:10px;min-height:24px;padding-block:2px;display:inline-flex}.footer-top nav>a:hover{color:var(--teal)}.footer-top nav .arrow{width:13px;height:13px}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;padding-block:24px;font-size:10px;display:flex}.footer-version{font-family:var(--mono);white-space:nowrap}}@layer pages{.hero{border-bottom:1px solid var(--line);grid-template-columns:1.12fr 1fr;align-items:center;gap:clamp(35px,5vw,80px);padding-top:61px;padding-bottom:61px;display:grid}.hero-copy{padding-block:24px 8px}.hero h1{letter-spacing:-.058em;font-size:clamp(44px,5.55vw,76px);font-weight:500;line-height:1.06}.hero-description{color:var(--muted);margin-top:27px;font-size:clamp(15px,1.3vw,17px);line-height:1.8}.hero-actions{flex-wrap:wrap;align-items:center;gap:27px;margin-top:31px;display:flex}.capabilities-section{border-block:1px solid var(--line);padding-block:var(--section-space);background:#eef1ec}.capabilities-layout{grid-template-columns:1fr 1.1fr;gap:90px;display:grid}.capabilities-intro h2{font-size:clamp(31px,3.1vw,41px)}.capabilities-intro>p{color:var(--muted);margin-top:24px;font-size:14px;line-height:1.8}.capabilities-intro>.text-link{margin-top:22px}.capability{border-top:1px solid #cfd8d0;align-items:start;gap:22px;padding-block:25px;display:flex}.capability:last-child{padding-bottom:0}.capability h3{letter-spacing:-.025em;font-size:20px}.capability p{color:var(--muted);margin-top:11px;font-size:12px;line-height:1.8}.philosophy-section{background:var(--ocean);color:#f1f4e9;padding-block:93px}.philosophy-layout{grid-template-columns:1.2fr 1fr;align-items:center;gap:110px;display:grid}.philosophy-layout>p{color:#c0ceca;font-size:16px;line-height:1.85}.philosophy-section h2{font-size:clamp(31px,3.6vw,48px);line-height:1.18}.page-hero{padding-top:81px;padding-bottom:65px}.page-hero>p{color:var(--muted);margin-top:28px;font-size:17px;line-height:1.8}.about-mission{margin-top:28px}.about-mission h2{letter-spacing:0;font-size:17px;line-height:1.5}.about-mission p{color:var(--muted);margin-top:8px;font-size:clamp(15px,1.3vw,17px);line-height:1.8}.portfolio-section{padding-bottom:var(--section-space)}.portfolio-section .client-grid{margin-top:28px}.detail-hero{padding-top:31px}.breadcrumbs{color:var(--muted);font-size:11px}.breadcrumbs ol{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";color:#87958f;margin-right:12px}.breadcrumbs a:hover{color:var(--teal);text-decoration:underline}.detail-title-row{justify-content:space-between;align-items:end;gap:35px;margin-top:49px;display:flex}.detail-title-row h1{font-size:clamp(49px,6.5vw,88px)}.detail-description{color:var(--muted);margin-top:19px;font-size:18px}.detail-title-row .button{margin-bottom:3px}.detail-visual{margin-top:42px}.detail-visual .client-visual,.detail-visual .client-screenshot{aspect-ratio:2.5}.detail-visual .visual-wordmark{font-size:clamp(53px,8.2vw,108px)}.client-overview{grid-template-columns:1fr 1fr;gap:100px;padding-block:80px;display:grid}.overview-copy>p{color:var(--muted);font-size:15px;line-height:1.9}.overview-copy>p+p{margin-top:21px}.overview-copy>.content-note{border-left:2px solid #91afa1;padding-left:16px;font-size:12px}.client-facts{border-top:1px solid var(--line);margin-top:31px}.client-facts>div{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr;gap:20px;padding-block:18px;display:grid}.client-facts dt{color:var(--muted);font-size:12px;font-weight:500}.client-facts dd{font-size:12px}.client-facts a{align-items:center;gap:8px;display:inline-flex}.client-facts .arrow{width:14px;height:14px}.client-capabilities{padding-top:8px;padding-bottom:70px}.capability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:37px;display:grid}.capability-grid>article{border-top:1px solid var(--line);padding-top:25px}.capability-grid h3{margin-top:0;font-size:23px}.capability-grid p{color:var(--muted);margin-top:13px;font-size:13px;line-height:1.8}.client-pagination{border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding-block:24px 55px;display:flex}.about-layout{grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding-block:4px 75px;display:grid}.about-layout .ocean-art{aspect-ratio:.94}.about-copy h2{margin-bottom:27px}.about-copy>p{color:var(--muted);margin-top:18px;font-size:14px;line-height:1.9}.about-copy .text-link{margin-top:23px}.contact-page-hero{padding-bottom:52px}.contact-layout{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:75px;padding-bottom:100px;display:grid}.contact-panel{background:#eaf0e6;border:1px solid #d4ded0;border-radius:3px;min-width:0;padding:44px}.contact-panel h2{font-size:31px}.contact-panel>p{color:var(--muted);margin-top:18px;font-size:14px}.contact-form{margin-top:30px}.contact-field-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;display:grid}.contact-field{min-width:0;margin-bottom:20px}.contact-field label{margin-bottom:7px;font-size:13px;font-weight:500;display:block}.contact-field input,.contact-field textarea,.contact-field select{background:var(--white);width:100%;min-width:0;min-height:48px;color:var(--ink);border:1px solid #acbdb1;border-radius:3px;padding:11px 12px;font-size:16px;line-height:1.5;display:block}.contact-field textarea{resize:vertical}.contact-field-hint,.contact-privacy{color:#4a6254;font-size:12px}.contact-field-hint{margin-top:6px}.contact-privacy{margin-block:18px}.contact-decoy{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact-challenge{min-height:65px}.contact-form .button{cursor:pointer}.contact-form .button:disabled{cursor:wait;opacity:.6}.contact-status{overflow-wrap:anywhere;margin-top:20px;font-size:14px}.contact-status:empty{display:none}.contact-status[data-state=error]{color:#87392d}.contact-retry{color:var(--ocean);cursor:pointer;background:0 0;border:0;padding:8px 0;text-decoration:underline}#contact-another{margin-top:24px}.contact-clients{padding-top:4px}.contact-clients h2{font-size:22px}.contact-clients>p{color:var(--muted);margin-top:18px;margin-bottom:26px;font-size:13px;line-height:1.8}.contact-clients>a{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding-block:15px;font-size:17px;display:flex}.contact-clients>a:last-child{border-bottom:1px solid var(--line)}.contact-clients small{color:var(--muted);font:9px/1.5 var(--mono);margin-top:4px;display:block}.contact-clients>a:hover{color:var(--teal)}.not-found{text-align:center;padding-block:75px 100px}.error-number{font:500 clamp(110px, 18vw, 220px)/1 var(--font);letter-spacing:-.08em;color:#d6e3d9;margin:26px 0}.not-found h1{font-size:clamp(39px,4vw,56px)}.not-found>p{color:var(--muted);margin-top:22px;font-size:15px}.not-found .hero-actions{justify-content:center}}@layer responsive{@media (width>=1500px){.hero{padding-top:75px;padding-bottom:60px}}@media (width<=1050px){.header-contact{display:none}.hero{gap:35px}.hero-actions{gap:14px}.hero-actions .text-link{gap:8px;font-size:12px}.hero-actions .button{gap:15px;padding-inline:15px}.client-grid{gap:22px}.capabilities-layout{gap:50px}.philosophy-layout{gap:55px}.client-links{flex-direction:column;align-items:start;gap:12px}.about-layout{gap:45px}.client-overview{gap:55px}.contact-layout{gap:40px}}@media (width<=900px){.header-inner{gap:12px;position:relative}.desktop-nav{display:none}.language-switcher{margin-left:auto}.mobile-menu{display:block}.mobile-menu summary{cursor:pointer;align-items:center;gap:12px;min-height:40px;padding:9px 0 9px 6px;font-size:12px;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.menu-symbol{font-size:22px;font-weight:300;line-height:1;transition:transform .2s}.mobile-menu[open] .menu-symbol{transform:rotate(45deg)}.mobile-menu nav{z-index:30;top:calc(100% + 1px);left:calc(var(--gutter) * -1);right:calc(var(--gutter) * -1);background:var(--paper);border-bottom:1px solid var(--line);padding:10px var(--gutter) 20px;position:absolute;box-shadow:0 12px 18px #192d340a}.mobile-menu nav a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:15px 0;font-size:16px;display:flex}.mobile-menu nav a[aria-current=page]{color:var(--teal)}}@media (width<=760px){.header-inner{min-height:82px}.brand-name{font-size:24px}.desktop-nav{gap:23px;margin-right:0}.header-contact{display:none}.hero{gap:30px;padding-top:40px}.hero h1{font-size:clamp(36px,6vw,46px)}.hero-copy{padding-block:5px}.hero-description{margin-top:23px;font-size:14px}.hero-actions{margin-top:22px}.hero .ocean-art{aspect-ratio:.71}.section-heading{gap:22px}.client-grid{grid-template-columns:1fr;gap:42px}.client-visual{aspect-ratio:1.85}.visual-wordmark{font-size:57px}.client-title{font-size:27px}.client-card>p{font-size:14px}.client-links{flex-direction:row;padding-top:16px}.client-links a{font-size:12px}.capabilities-layout,.philosophy-layout{grid-template-columns:1fr;gap:35px}.philosophy-section{padding-block:70px}.philosophy-section h2{font-size:clamp(32px,5.6vw,43px)}.contact-cta{padding-block:55px}.contact-cta-inner{flex-direction:column;align-items:start;gap:28px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-identity{grid-column:1/-1}.footer-identity p{margin-top:14px}.page-hero{padding-top:60px;padding-bottom:48px}.page-hero h1{font-size:clamp(40px,7.2vw,58px)}.page-hero>p{font-size:15px}.detail-title-row{flex-direction:column;align-items:start;gap:27px;margin-top:37px}.detail-visual .client-visual{aspect-ratio:1.7}.client-overview{grid-template-columns:1fr;gap:30px;padding-block:55px}.capability-grid{grid-template-columns:1fr;gap:28px}.capability-grid h3{margin-top:0}.about-layout{grid-template-columns:1fr;gap:43px;padding-bottom:55px}.about-layout .ocean-art{aspect-ratio:1.25}.contact-layout{grid-template-columns:1fr;gap:40px;padding-bottom:70px}.contact-panel{padding:30px}}@media (width<=540px){:root{--gutter:22px}.contact-panel{padding:24px 18px}.contact-field-row{grid-template-columns:minmax(0,1fr);gap:0}.header-inner{min-height:78px;position:relative}.menu-label{display:none}.hero{grid-template-columns:1fr;gap:35px;padding-top:43px;padding-bottom:28px}.hero h1{font-size:clamp(44px,11vw,60px)}.hero-description{margin-top:24px;font-size:15px}.hero-actions{gap:22px;margin-top:27px}.hero .ocean-art{aspect-ratio:1.2}.section-heading{flex-direction:column;align-items:start;gap:14px}.section-heading h2{font-size:33px}.section-heading .text-link{font-size:12px}.section-intro{margin-top:10px;font-size:13px}.section .client-grid{margin-top:29px}.client-visual{aspect-ratio:1.5}.visual-wordmark{font-size:45px}.capability{gap:16px}.capability h3{font-size:20px}.capability p{font-size:13px}.footer-top{row-gap:35px;padding-bottom:39px}.page-hero>p{margin-top:23px;font-size:15px}.desktop-break{display:none}.detail-title-row h1{font-size:55px}.detail-description{font-size:16px}.detail-visual .client-visual{aspect-ratio:1.35}.detail-visual .visual-wordmark{font-size:51px}.client-facts>div{grid-template-columns:76px 1fr;gap:10px}.client-pagination .text-link{gap:8px;font-size:11px}.contact-panel h2{font-size:28px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}}
