@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;500;600;700;800&display=swap');
:root{--cyan:#00afd0;--ink:#0b1317;--paper:#f4f5f1;--muted:#6b787b;--line:#d5ddda;--gutter:clamp(24px,5vw,88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Open Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:300;line-height:1.04;letter-spacing:-.06em}h1{font-size:clamp(65px,7vw,110px)}h2{font-size:clamp(44px,5vw,80px);margin-bottom:35px}h1 b,h2 b{font-weight:800}p{font-size:14px;line-height:1.85}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;color:inherit}img{max-width:100%;display:block}small{display:block;font-size:9px;letter-spacing:.17em;line-height:1.7;font-weight:600}section,footer{padding:100px var(--gutter)}.site-header{position:sticky;top:0;z-index:30;height:88px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px var(--gutter);background:#0b1317f2;color:#fff;border-bottom:1px solid #ffffff20;backdrop-filter:blur(20px)}.logo{width:205px;height:auto}.site-header .logo{filter:invert(1) hue-rotate(180deg)}nav{display:flex;align-items:center;gap:28px;font-size:11px}nav>a{padding:10px 0}nav>a:hover,nav summary:hover{color:var(--cyan)}.contact-link{background:var(--cyan);color:var(--ink);padding:13px 20px!important;border-radius:30px}nav .contact-link:hover{color:var(--ink);background:white}.menu{display:none}.work-nav{position:relative}.work-nav summary{list-style:none;cursor:pointer;padding:14px 0}.work-nav summary::-webkit-details-marker{display:none}.work-nav summary span{color:var(--cyan);margin-left:5px}.work-dropdown{position:absolute;top:100%;left:-25px;width:310px;background:#101d23;border:1px solid #2a414b;padding:15px;box-shadow:0 20px 40px #0004}.work-dropdown a{display:flex;justify-content:space-between;padding:13px 12px;font-size:12px;border-bottom:1px solid #ffffff12}.work-dropdown a:last-child{border-bottom:0}.work-dropdown a:hover{background:#ffffff08;color:var(--cyan)}.work-dropdown small{font-size:9px;color:#83a0ac}.hero{position:relative;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:0;min-height:min(820px,calc(100svh - 88px));overflow:hidden;background:var(--ink);color:#fff;padding-top:55px;padding-bottom:110px;isolation:isolate}.hero-copy{position:relative;z-index:2;pointer-events:none}.hero-copy>*{pointer-events:auto}.hero-copy small{color:#97b5be;font-size:8px;letter-spacing:.2em}.hero h1{font-size:clamp(75px,8.2vw,145px);margin:38px -150px 30px 0;line-height:.95;letter-spacing:-.075em}.hero h1 strong{color:var(--cyan);font-weight:800}.hero p{color:#b7c8ce;line-height:1.8;margin:35px 0 0}.circle-link{display:inline-flex;align-items:center;gap:24px;font-size:11px;margin-top:30px}.circle-link span{display:grid;place-items:center;width:48px;height:48px;border:1px solid #52717e;border-radius:50%;font-size:20px;transition:.25s}.circle-link:hover span{background:var(--cyan);color:var(--ink);border-color:var(--cyan);transform:rotate(45deg)}.hero-foot{position:absolute;left:var(--gutter);right:var(--gutter);bottom:26px;padding-top:20px;border-top:1px solid #ffffff22;display:flex;justify-content:space-between;font-size:7px;letter-spacing:.15em;color:#90a8b2}.idea-art{position:relative;width:115%;margin-left:-10%;transform:translate(var(--art-x,0px),var(--art-y,0px));transition:transform .4s ease-out}.idea-art svg{width:100%;overflow:visible}.art-blueprint{transform-origin:50% 50%;animation:blueprint-drift 28s ease-in-out infinite alternate}.art-ribbon{transform-origin:50% 50%;animation:ribbon-breathe 9s ease-in-out infinite alternate;filter:drop-shadow(0 30px 30px #0005)}.art-points{opacity:.7}.art-coordinate,.art-caption{position:absolute;font-size:7px;letter-spacing:.2em;color:#648592}.art-coordinate{left:10%;bottom:4%}.art-caption{right:8%;bottom:4%;color:var(--cyan)}@keyframes ribbon-breathe{to{transform:translateY(-12px) rotate(2deg)}}@keyframes blueprint-drift{to{transform:rotate(-4deg)}}.dark{background:var(--ink);color:#fff}.dark small{color:var(--cyan)}.about{background:#10232c}.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:13%;margin-top:40px}.about h2{font-size:clamp(62px,6.5vw,100px);margin:0}.about em{color:var(--cyan);font-style:normal}.about p{color:#b0c5ce;font-size:13px}.about .lead{font-size:23px;color:white;line-height:1.55}.script{display:block;color:var(--cyan);font-size:12px;letter-spacing:.25em;text-transform:uppercase;margin-top:30px}.discipline{display:flex;gap:25px;align-items:center;border-top:1px solid #ffffff20;margin-top:70px;padding-top:25px;font-size:9px;color:#9bb9c6}.discipline i{color:var(--cyan);font-style:normal;font-size:18px}.section-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:10%;align-items:end}.section-heading p{color:var(--muted);font-size:13px;padding-bottom:20px}.category-list{border-top:1px solid #9aaba8;margin-top:45px}.category-link{display:flex;align-items:center;gap:30px;padding:30px 12px 30px 0;border-bottom:1px solid var(--line);transition:padding .3s,background .3s}.category-number{font-size:10px;color:#6b858c;align-self:start;margin-top:8px}.category-link>div{flex:1}.category-link h3{font-size:clamp(25px,3.1vw,47px);font-weight:500;letter-spacing:-.05em;margin:0 0 6px}.category-link p{font-size:11px;color:var(--muted);margin:0}.category-count{font-size:10px;display:flex;gap:35px;align-items:center;color:#607a82}.category-count b{font-size:32px;font-weight:300;color:var(--cyan)}.category-link:hover{padding-left:20px;background:#00afd008}.category-link:hover h3{color:#00869f}.statement{padding-top:10px}.statement h2{max-width:850px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:50px}.process-grid article{border-top:2px solid var(--cyan);padding-top:25px}.process-grid h3{font-size:24px;font-weight:500;letter-spacing:-.04em;margin:30px 0 15px}.process-grid p{font-size:12px;color:var(--muted)}.process-grid small{color:#00829b}.services{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;background:#10232c}.services h2{font-size:clamp(45px,4.2vw,68px)}.services h2 b{color:var(--cyan)}.service-list details{border-top:1px solid #ffffff25}.service-list details:last-child{border-bottom:1px solid #ffffff25}.service-list summary{display:flex;gap:22px;align-items:center;padding:28px 0;cursor:pointer;list-style:none}.service-list summary::-webkit-details-marker{display:none}.service-list summary span{font-size:10px;color:var(--cyan)}.service-list summary h3{font-size:21px;font-weight:400;margin:0;flex:1}.service-list summary b{font-weight:300;color:var(--cyan);font-size:25px;transition:.2s}.service-list details[open] summary b{transform:rotate(45deg)}.service-list details p{padding-left:37px;font-size:12px;color:#a8c2ce;margin-bottom:28px}.brands{background:white}.brands h2{margin-top:25px}.brand-list{display:grid;grid-template-columns:repeat(6,1fr);margin-top:50px}.brand-list img{height:110px;width:100%;padding:28px;object-fit:contain;border-bottom:1px solid #e9eeeb}.lab-teaser{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%}.lab-teaser>div{position:relative;z-index:2}.lab-teaser h2{margin:25px 0 0}.lab-teaser p{color:#a5bdc7}.text-link{display:inline-block;border-bottom:1px solid var(--cyan);padding-bottom:10px;margin-top:20px;font-size:12px}.lab-orbit{width:450px;height:450px;border:1px solid #00afd030;border-radius:50%;position:absolute;right:-150px;top:-100px;box-shadow:0 0 0 50px #00afd006,0 0 0 100px #00afd005}footer{background:var(--cyan);padding-bottom:25px}footer h2{font-size:clamp(65px,9vw,140px);margin:30px 0}footer .email{font-size:22px;border-bottom:1px solid #0b1317;padding-bottom:12px;display:inline-block}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:25px;margin-top:85px;font-size:12px}.footer-grid .logo{width:180px;mix-blend-mode:multiply}.footer-grid a{display:block;margin-bottom:9px}.footer-grid p{font-size:12px}.bottom{display:flex;justify-content:space-between;margin-top:45px;border-top:1px solid #08788e;padding-top:22px;font-size:7px;letter-spacing:.13em}.archive-intro{padding-top:80px;max-width:1500px;margin:auto}.archive-intro h1{margin:30px 0}.archive-intro>p{color:var(--muted)}.category-page{max-width:1650px;margin:auto;padding-top:45px}.back-link{font-size:11px;color:var(--muted)}.category-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin:55px 0 65px;padding-bottom:40px;border-bottom:1px solid var(--line)}.category-heading h1{font-size:clamp(50px,6vw,95px);font-weight:600;margin:22px 0;max-width:1000px}.category-heading p{color:var(--muted);font-size:13px;margin:0}.total{font-size:70px;letter-spacing:-.07em;font-weight:300;color:#a0b5b9;line-height:1}.total small{font-size:8px;letter-spacing:.12em;text-align:right;margin-top:12px}.archive-layout{display:grid;grid-template-columns:190px 1fr;gap:50px}.archive-layout aside{align-self:start;position:sticky;top:125px;display:flex;flex-direction:column;gap:0}.archive-layout aside a{font-size:10px;display:flex;justify-content:space-between;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);color:var(--muted)}.archive-layout aside a.active{font-weight:700;color:#007d95}.archive-layout aside span{font-size:8px}.gallery-area{min-width:0;position:relative}.search-label{display:flex;align-items:center;gap:20px;font-size:10px;color:var(--muted);margin-bottom:45px;padding-bottom:20px;border-bottom:1px solid var(--line)}.search-label input{background:none;border:0;min-width:0;flex:1;padding:10px;font-size:12px;border-bottom:1px solid #b2c1bd;border-radius:0}.gallery-area>#project-count{display:block;font-size:10px;color:#819397;margin:-25px 0 30px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 26px}.project{display:block;border:0;background:none;padding:0;text-align:left;min-width:0}.project[hidden]{display:none}.photo{position:relative;background:#e8edeb;border:1px solid #dbe3e0;width:100%;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;overflow:hidden}.photo img{width:100%;height:100%;object-fit:contain}.photo span{position:absolute;right:12px;bottom:12px;padding:9px 14px;border-radius:22px;font-size:9px;background:#fff;color:var(--ink);box-shadow:0 2px 10px #0001;transition:.2s}.project:hover .photo span{background:var(--cyan)}.project-caption{padding:18px 0 0}.project-caption h2{font-size:21px;font-weight:600;letter-spacing:-.035em;margin:0 0 6px;line-height:1.25}.project-caption p{font-size:11px;line-height:1.6;margin:0;color:var(--muted)}.lab-page .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.empty-state{font-size:13px;padding:30px 0;color:var(--muted)}dialog{border:0;padding:0;width:min(1100px,94vw);max-height:94svh;overflow:auto;background:var(--paper)}dialog::backdrop{background:#061016e6;backdrop-filter:blur(8px)}.detail-image{width:100%;height:62svh;object-fit:contain;background:#101b20}.close{position:absolute;top:15px;right:15px;background:white;border:0;padding:12px 20px;border-radius:30px;font-size:11px}.detail-copy{padding:35px 40px}.detail-copy h2{font-size:40px;margin:15px 0}.detail-copy p{color:var(--muted);font-size:13px}.detail-copy small{color:#007b94}.detail-copy a{font-size:12px;border-bottom:1px solid var(--cyan);padding-bottom:8px}.project-navigation{display:flex;justify-content:space-between;align-items:center;padding:0 40px 30px;gap:20px;font-size:10px}.project-navigation button{background:none;border:1px solid var(--line);padding:12px 16px;font-size:11px}.project-open{overflow:hidden}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;transform:scaleX(var(--progress,0));transform-origin:left;background:var(--cyan);z-index:50}:focus-visible{outline:3px solid #007d95;outline-offset:5px}.site-header :focus-visible,.dark :focus-visible{outline-color:var(--cyan)}::selection{background:var(--cyan);color:var(--ink)}
@media(min-width:1500px){.archive-layout{grid-template-columns:210px 1fr}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){nav{gap:20px;font-size:10px}.site-header .logo{width:175px}.hero{min-height:680px}.hero h1{font-size:9vw}.hero-copy small{max-width:300px}.brand-list{grid-template-columns:repeat(4,1fr)}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.archive-layout{grid-template-columns:150px 1fr;gap:30px}.category-heading h1{font-size:65px}.lab-page .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){html{scroll-padding-top:80px}section,footer{padding:65px var(--gutter)}.site-header{height:72px}.site-header .logo{width:155px}.menu{display:block;background:none;border:0;color:white;font-size:12px;padding:10px 0 10px 15px}nav{display:none;position:absolute;left:0;right:0;top:72px;background:#0b1317;max-height:calc(100svh - 72px);overflow:auto;padding:22px var(--gutter) 30px;flex-direction:column;align-items:stretch;gap:5px;border-bottom:1px solid #ffffff25}nav.open{display:flex}nav>a,nav .work-nav summary{font-size:17px;padding:15px 0}.contact-link{text-align:center;margin-top:12px}.work-dropdown{position:static;width:100%;box-shadow:none;padding:8px 10px;margin-bottom:12px}.work-dropdown a{font-size:12px;padding:12px 8px}.hero{display:block;min-height:0;padding-top:40px;padding-bottom:85px}.hero h1{font-size:clamp(65px,15vw,112px);margin:28px 0;letter-spacing:-.075em}.hero-copy small{font-size:7px;max-width:100%}.hero p{font-size:13px;margin-top:25px}.circle-link{margin-top:20px;font-size:10px}.circle-link span{width:42px;height:42px}.idea-art{width:112%;margin:-5px -6% 0;max-height:410px}.idea-art svg{max-height:410px}.art-caption,.art-coordinate{font-size:6px}.hero-foot{font-size:6px;bottom:22px;padding-top:15px}.hero-foot>a{display:none}.about-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.about h2{font-size:65px}.about .lead{font-size:22px}.about p{font-size:12px}.discipline{font-size:7px;gap:12px;flex-wrap:wrap;margin-top:40px}.discipline i{font-size:14px}.section-heading{grid-template-columns:1fr;gap:0}.section-heading h2{font-size:49px;margin-top:22px}.section-heading p{padding:0;font-size:12px}.category-list{margin-top:25px}.category-link{padding:24px 0;gap:16px}.category-number{font-size:8px}.category-link h3{font-size:26px}.category-link p{font-size:9px;line-height:1.6;max-width:230px}.category-count{font-size:8px;gap:15px;white-space:nowrap}.category-count b{font-size:25px}.category-link:hover{padding-left:8px}.statement{padding-top:10px}.statement h2{font-size:46px}.process-grid{grid-template-columns:1fr;gap:22px;margin-top:30px}.process-grid article{padding-top:20px}.process-grid h3{margin:18px 0 12px;font-size:26px}.process-grid p{font-size:12px}.services{grid-template-columns:1fr;gap:15px}.services h2{font-size:45px}.service-list summary{padding:24px 0;gap:18px}.service-list summary h3{font-size:19px}.service-list details p{font-size:11px;padding-left:31px}.brand-list{grid-template-columns:repeat(3,1fr);margin-top:30px}.brand-list img{height:90px;padding:19px}.brands h2{font-size:47px}.lab-teaser{grid-template-columns:1fr;gap:30px}.lab-teaser h2{font-size:59px}.lab-teaser p{font-size:12px}.lab-orbit{right:-270px;top:0}footer h2{font-size:clamp(61px,12vw,90px)}footer .email{font-size:17px}.footer-grid{margin-top:60px;font-size:10px;gap:30px 18px}.footer-grid p{font-size:10px}.footer-grid .logo{width:145px}.bottom{font-size:6px;letter-spacing:.07em;margin-top:35px}.category-page{padding-top:30px}.category-heading{margin:40px 0 35px;padding-bottom:30px;gap:20px;align-items:start}.category-heading h1{font-size:43px;line-height:1.08;margin:18px 0}.category-heading p{font-size:11px}.total{font-size:42px;padding-top:30px}.total small{font-size:6px;letter-spacing:.05em}.archive-layout{display:block}.archive-layout aside{position:static;flex-direction:row;gap:15px;overflow:auto;margin:0 -24px 35px;padding:0 24px 14px}.archive-layout aside a{white-space:nowrap;font-size:10px;gap:10px;padding:12px 0}.search-label{font-size:9px;gap:12px;flex-wrap:wrap}.search-label input{font-size:11px}.project-grid,.lab-page .project-grid{grid-template-columns:1fr;gap:32px}.project-caption h2{font-size:23px}.project-caption p{font-size:11px}.photo{aspect-ratio:4/3}.archive-intro{padding-top:50px}.archive-intro h1{font-size:56px}.archive-intro>p{font-size:12px}.detail-image{height:50svh}.detail-copy{padding:25px}.detail-copy h2{font-size:31px}.detail-copy p{font-size:12px}.project-navigation{padding:0 25px 25px;gap:10px}.project-navigation button{font-size:10px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.idea-art{transform:none}}
/* Readable interface and portfolio typography. */
p{font-size:17px}small{font-size:12px;letter-spacing:.12em}nav{font-size:14px}.work-dropdown{width:345px}.work-dropdown a{font-size:15px;padding:14px 12px}.work-dropdown small{font-size:12px}.hero-copy small{font-size:12px}.hero p{font-size:18px}.circle-link{font-size:15px}.hero-foot{font-size:11px}.about p{font-size:17px}.about .lead{font-size:25px}.discipline{font-size:12px}.section-heading p{font-size:17px}.category-number{font-size:14px}.category-link p{font-size:16px}.category-count{font-size:14px}.process-grid p{font-size:16px}.service-list summary span{font-size:14px}.service-list details p{font-size:16px}.text-link{font-size:16px}.footer-grid,.footer-grid p{font-size:15px}.bottom{font-size:11px}.back-link{font-size:15px}.category-heading p{font-size:18px;line-height:1.7}.total small{font-size:12px}.archive-layout{grid-template-columns:245px minmax(0,1fr);gap:45px}.archive-layout aside a{font-size:16px;line-height:1.45;padding:18px 0;color:#52646a}.archive-layout aside span{font-size:13px;padding-top:2px}.search-label{font-size:15px;gap:22px;line-height:1.5;color:#52646a}.search-label input{font-size:17px;padding:12px}.gallery-area>#project-count{font-size:14px;color:#52646a}.project-caption h2{font-size:25px}.project-caption p{font-size:16px;line-height:1.65}.photo span{font-size:14px;padding:11px 17px}.empty-state{font-size:16px}.detail-copy small{font-size:12px}.detail-copy p{font-size:17px}.detail-copy a{font-size:16px}.close{font-size:14px}.project-navigation,.project-navigation button{font-size:14px}
@media(min-width:1500px){.archive-layout{grid-template-columns:255px minmax(0,1fr)}}
@media(max-width:1100px){nav{font-size:13px;gap:20px}.archive-layout{grid-template-columns:210px minmax(0,1fr);gap:30px}.archive-layout aside a{font-size:15px}.search-label{flex-wrap:wrap;gap:12px}.search-label input{flex-basis:230px}.category-heading p{font-size:17px}}
@media(max-width:760px){p{font-size:16px}small{font-size:12px}nav>a,nav .work-nav summary{font-size:19px}.menu{font-size:15px}.work-dropdown a{font-size:15px}.work-dropdown{width:100%}.hero-copy small{font-size:10px;line-height:1.7}.hero p{font-size:17px}.circle-link{font-size:14px}.hero-foot{font-size:10px}.about p{font-size:16px}.about .lead{font-size:23px}.discipline{font-size:10px;line-height:1.8}.section-heading p{font-size:16px}.category-number{font-size:12px}.category-link p{font-size:14px;max-width:230px}.category-count{font-size:12px;gap:10px}.category-link h3{font-size:25px}.process-grid p{font-size:16px}.service-list summary span{font-size:12px}.service-list details p{font-size:15px}.lab-teaser p{font-size:16px}.text-link{font-size:15px}.footer-grid,.footer-grid p{font-size:14px}.footer-grid{grid-template-columns:1fr;gap:25px}.bottom{font-size:10px;line-height:1.6}.category-heading p{font-size:16px}.total small{font-size:10px}.back-link{font-size:14px}.archive-layout{display:block}.archive-layout aside a{font-size:15px;padding:14px 0}.archive-layout aside span{font-size:12px}.search-label{font-size:14px;display:block}.search-label input{width:100%;font-size:16px;margin-top:8px;padding:13px 0}.gallery-area>#project-count{font-size:14px}.project-caption h2{font-size:25px}.project-caption p{font-size:16px}.photo span{font-size:13px}.archive-intro>p{font-size:16px}.detail-copy p{font-size:16px}.detail-copy a{font-size:15px}.project-navigation,.project-navigation button{font-size:13px}.project-navigation button{padding:12px}}
