/* Softwarehaus Berlin / agency direction — original layout, October 2026. */
:root{--lime:#d4ff91;--ink:#171717;--paper:#fff;--muted:#646464;--green:#171717}
body{background:#fff;color:#171717}.container{width:min(1440px,calc(100% - 112px))}
.site-header{position:absolute;width:100%;top:0;background:transparent;backdrop-filter:none;border:0;color:#171717}.header-inner{height:105px;gap:25px}.brand-lockup{width:219px;height:44px}.header-inner>.button{border-radius:99px;font-size:11px;min-height:43px;padding:13px 20px}.desktop-nav a{font-size:12px}.desktop-nav a:hover{text-decoration:none}.desktop-nav a:after{content:"";position:absolute;bottom:7px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}.desktop-nav a:hover:after{transform:scaleX(1)}.menu-toggle{border-radius:50%;border-color:#aaa}.mobile-nav{background:#fff;border-bottom:1px solid #ddd}.language-switch{font-size:10px}.page-intro{padding-top:145px}
.agency-hero{padding-top:158px;padding-bottom:69px}.agency-topline{display:flex;justify-content:space-between;gap:20px;margin-bottom:39px;font-size:11px;line-height:1.5}.agency-topline>span:first-child{display:flex;align-items:center;gap:12px}.agency-topline>span:first-child:before{content:"";width:7px;height:7px;border-radius:50%;background:#171717}.agency-topline>span:last-child{color:#666}
.agency-hero h1{font-size:clamp(75px,9.7vw,154px);font-weight:450;letter-spacing:-.075em;line-height:1.09;margin:0}.agency-title-row{display:flex;align-items:center;gap:50px}.title-mask{display:block;overflow:clip;padding-bottom:.06em;margin-bottom:-.06em}.title-mask>span{display:block}.title-second{margin-top:0}.hero-fragment{display:block;width:1.95em;height:.87em;border-radius:999px;overflow:hidden;background:#f1f1f1;flex-shrink:0;position:relative}.hero-fragment:after{content:"";position:absolute;inset:0;border:1px solid #00000009;border-radius:inherit;pointer-events:none}.hero-fragment>img{width:100%;height:100%;object-fit:cover;object-position:85% 50%;transform:scale(1.3);transition:transform .8s cubic-bezier(.2,.7,.2,1)}.hero-fragment:hover>img{transform:scale(1.5) rotate(-3deg)}.agency-hero-bottom{display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:35px;margin-top:48px}.round-link{height:88px;width:88px;display:grid;place-items:center;border-radius:50%;background:var(--lime);color:#171717;flex-shrink:0;transition:background .25s}.round-link>.icon{width:37px;height:37px;stroke-width:1.2}.round-link:hover{background:#171717;color:var(--lime)}.agency-hero-bottom>p{font-size:16px;line-height:1.7;max-width:405px;margin:0;color:#555}.quiet-link{display:inline-flex;align-items:center;gap:20px;font-size:12px;padding-block:12px}.quiet-link:hover{text-decoration:underline;text-underline-offset:6px}.agency-hero-bottom>.quiet-link{align-self:end;margin-bottom:10px}
.engineering-film{position:relative;margin:0 28px;aspect-ratio:2.32;overflow:hidden;border-radius:28px;background:#f2f2f2;isolation:isolate;transform:translateZ(0)}.engineering-film>img{width:100%;height:112%;max-width:none;object-fit:cover;object-position:center 57%;transform:translateY(-5%);will-change:transform}.engineering-film figcaption{position:absolute;inset:36px 40px auto;display:flex;justify-content:space-between;gap:25px;color:#343434;font-size:10px;letter-spacing:.035em}.engineering-film figcaption>span:first-child{max-width:210px}
.agency-intro{display:grid;grid-template-columns:1fr 2.5fr;gap:40px 70px;padding-block:145px 120px}.agency-intro>.eyebrow{padding-top:14px;max-width:160px;line-height:1.7}.agency-intro h2{font-size:clamp(38px,4.7vw,68px);font-weight:450;line-height:1.13;letter-spacing:-.058em;max-width:950px;margin:0 0 45px}.intro-columns{display:grid;grid-template-columns:1fr auto;align-items:end;gap:50px}.intro-columns>p{max-width:490px;font-size:14px;line-height:1.85;margin:0}.outline-pill{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:17px 25px;border:1px solid #b5b5b5;border-radius:99px;font-size:11px;line-height:1.4;white-space:nowrap;transition:background .25s,color .25s,border-color .25s}.outline-pill .icon{width:18px;height:18px}.outline-pill:hover{background:#171717;color:#fff;border-color:#171717}.agency-proof{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:30px;padding-top:35px;border-top:1px solid #ddd}.agency-proof>div{display:flex;flex-direction:column;gap:12px}.agency-proof strong{font-size:59px;letter-spacing:-.065em;font-weight:450;line-height:1.1}.agency-proof span{font-size:11px;max-width:150px;color:#686868}
.agency-work{padding:115px 0 110px;background:#141414;color:#fafafa;border-radius:48px 48px 0 0}.agency-section-head{margin-bottom:68px}.agency-section-head>.eyebrow{margin-bottom:30px}.agency-section-head h2{font-size:clamp(45px,5.2vw,78px);font-weight:450;line-height:1.07;letter-spacing:-.06em;margin-bottom:27px}.agency-section-head h2>span{color:#8e8e8e}.agency-section-head>p:not(.eyebrow){font-size:14px;max-width:530px;color:#a8a8a8;line-height:1.8}.agency-work .eyebrow{color:#aaa}.agency-case{border-radius:22px;overflow:hidden;position:relative}.case-primary{background:var(--lime);color:#171717;padding:35px 45px 37px}.case-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;line-height:1.5}.case-topline>span:last-child{font-size:10px}.agency-case-main{display:grid;grid-template-columns:140px 1fr 66px;gap:30px;margin:65px 0 45px;align-items:start}.case-numeral{font-size:100px;line-height:1;letter-spacing:-.085em;font-weight:350}.agency-case-main h3{font-size:clamp(33px,3.65vw,55px);font-weight:500;line-height:1.12;max-width:740px;margin:0 0 25px}.agency-case-main p{font-size:14px;line-height:1.8;color:#444;max-width:620px;margin:0}.case-round{height:65px;width:65px;border:1px solid #888;display:grid;place-items:center;border-radius:50%;transition:background .25s,transform .25s}.case-round>.icon{width:25px;height:25px}.case-round:hover{background:#171717;color:var(--lime);transform:rotate(45deg)}.case-specifics{display:grid;grid-template-columns:1fr 1.5fr;gap:50px;margin-left:170px;border-top:1px solid #909090;padding-top:25px}.case-specifics>div>span{font-size:10px;color:#444}.case-specifics p{font-size:12px;line-height:1.8;color:#333;margin:9px 0 0}.case-tags{margin:35px 0 0 170px;display:flex;flex-wrap:wrap;gap:8px}.case-tags>span{font-size:9px;border:1px solid #909090;border-radius:99px;padding:6px 11px}
.agency-case-pair{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:25px}.case-secondary{padding:32px 36px 30px;background:#252525;display:flex;flex-direction:column}.case-secondary:last-child{background:#ededed;color:#171717}.case-secondary .case-topline{color:#bdbdbd}.case-secondary:last-child .case-topline{color:#666}.case-secondary h3{font-size:35px;font-weight:450;line-height:1.17;max-width:510px;margin:52px 0 23px}.case-secondary>p{font-size:13px;line-height:1.8;color:#bdbdbd;max-width:470px}.case-secondary:last-child>p{color:#626262}.secondary-case-link{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:25px;margin-top:auto;font-size:10px;color:var(--lime)}.secondary-case-link>.icon{width:27px;height:27px;transition:transform .25s}.case-secondary:hover .secondary-case-link>.icon{transform:translate(4px,-4px)}.case-secondary:last-child .secondary-case-link{color:#171717}.all-projects{margin-top:40px;color:#eee;border-color:#666}.all-projects:hover{background:#fff;color:#171717;border-color:#fff}
.agency-services{padding-block:130px 120px}.agency-services .agency-section-head{margin-bottom:55px}.agency-services .agency-section-head h2>span{color:#818181}.agency-service-list{border-top:1px solid #bdbdbd}.agency-service-list>a{display:grid;grid-template-columns:38px 1.05fr 1fr 45px;gap:25px;align-items:center;padding:37px 0;border-bottom:1px solid #d3d3d3;position:relative;isolation:isolate}.agency-service-list>a:before{content:"";position:absolute;inset:0 -20px;background:var(--lime);transform:scaleY(0);transform-origin:bottom;transition:transform .25s ease;z-index:-1}.agency-service-list>a:hover:before,.agency-service-list>a:focus-visible:before{transform:scaleY(1)}.service-order{font:10px monospace;color:#666;align-self:start;padding-top:9px}.agency-service-list h3{font-size:33px;font-weight:450;letter-spacing:-.05em;margin:0;max-width:370px}.agency-service-list p{font-size:12px;line-height:1.85;margin:0;max-width:390px;color:#555}.service-arrow{border:1px solid #aaa;border-radius:50%;width:43px;height:43px;display:grid;place-items:center;transition:transform .25s}.service-arrow>.icon{width:19px;height:19px}.agency-service-list>a:hover .service-arrow{transform:rotate(45deg)}.agency-service-foot{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:35px}.agency-service-foot p{font-size:12px;max-width:600px;margin:0}
.agency-ai{background:#f2f2f2;padding:120px 0;border-radius:48px 48px 0 0;overflow:hidden}.agency-ai-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:25px 90px;align-items:end}.agency-ai-heading>.eyebrow{grid-column:1/-1;margin-bottom:0}.agency-ai h2{font-size:clamp(46px,5.8vw,88px);font-weight:450;letter-spacing:-.068em;line-height:1.06;margin:0;max-width:850px}.agency-ai h2>span{color:#747474}.agency-ai-heading>p:not(.eyebrow){max-width:405px;font-size:14px;line-height:1.85;margin:0 0 3px}.agency-ai-cases{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin:75px 0 45px}.agency-ai-cases>article{border-top:1px solid #aaa;padding-top:23px}.agency-ai-cases>article>span{font:10px monospace;color:#666}.agency-ai-cases h3{font-size:27px;font-weight:500;margin:28px 0 20px}.agency-ai-cases p{font-size:13px;line-height:1.8;margin:0}
.agency-person{display:grid;grid-template-columns:.72fr 1.28fr;align-items:center;gap:110px;padding-block:135px 90px}.agency-person-photo{position:relative;max-width:430px}.agency-person-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;filter:grayscale(1);border-radius:180px 180px 20px 20px;background:#eee}.agency-person-photo>span{display:block;font-size:10px;color:#666;margin-top:18px}.agency-person h2{font-size:clamp(38px,4.3vw,65px);font-weight:450;line-height:1.1;max-width:740px;margin:30px 0}.agency-person p:not(.eyebrow){font-size:14px;line-height:1.85;max-width:640px}.agency-person .outline-pill{margin-top:8px}.agency-proposal{border-top:1px solid #ccc;padding-block:40px 65px;display:grid;grid-template-columns:1fr 1.2fr auto;gap:35px;align-items:start}.agency-proposal h2{font-size:26px;font-weight:500;line-height:1.25;margin:0}.agency-proposal p{font-size:12px;margin:0;max-width:490px}.agency-proposal .quiet-link{font-size:10px;padding-top:0}
.agency-contact{background:var(--lime);padding:85px 0 35px;border-radius:48px 48px 0 0}.agency-contact .eyebrow{color:#444}.agency-contact-link{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:25px 0 65px}.agency-contact h2{font-size:clamp(75px,10vw,150px);line-height:.98;font-weight:450;letter-spacing:-.075em;margin:0}.agency-contact .round-link{width:150px;height:150px;background:#171717;color:var(--lime)}.agency-contact .round-link>.icon{width:64px;height:64px;stroke-width:1}.agency-contact-link:hover .round-link{background:#fff;color:#171717}.agency-contact-bottom{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-top:28px;border-top:1px solid #999;font-size:12px}.agency-contact-bottom>a{font-size:17px;letter-spacing:-.02em}.site-footer{padding-top:65px;background:#141414}.site-footer .brand-lockup{width:240px;height:48px}
html[lang=en] .agency-hero h1{font-size:clamp(70px,8.7vw,140px)}
@media(prefers-reduced-motion:no-preference){.title-mask>span{animation:agency-title-in 1.15s cubic-bezier(.2,.7,.2,1) both}.title-second>span{animation-delay:.12s}.hero-fragment{animation:agency-fragment-in 1.2s cubic-bezier(.2,.7,.2,1) both}.reveal-ready{transition:transform .8s cubic-bezier(.2,.65,.2,1)}.reveal-ready:not(.is-revealed){transform:translateY(28px)}@keyframes agency-title-in{from{transform:translateY(115%)}to{transform:translateY(0)}}@keyframes agency-fragment-in{from{clip-path:inset(0 45% round 100px);opacity:0}to{clip-path:inset(0 0 round 100px);opacity:1}}}
@media(max-width:1150px){.container{width:calc(100% - 72px)}.agency-hero{padding-top:145px}.agency-title-row{gap:35px}.agency-intro{gap:40px 50px;grid-template-columns:.7fr 2.5fr}.intro-columns{display:block}.intro-columns .outline-pill{margin-top:25px}.agency-case-main{grid-template-columns:100px 1fr 55px;gap:25px}.case-numeral{font-size:80px}.case-round{width:55px;height:55px}.case-specifics,.case-tags{margin-left:125px}.agency-service-list h3{font-size:28px}.agency-service-list>a{gap:20px;grid-template-columns:30px 1fr 1fr 42px}.agency-ai-heading{gap:25px 60px}.agency-person{gap:75px}.agency-proposal{grid-template-columns:1fr 1.5fr}.agency-proposal .quiet-link{grid-column:2}}
@media(max-width:950px){.header-inner{height:90px}.agency-hero{padding-top:130px}.agency-hero h1{font-size:9.5vw}.agency-title-row{gap:30px}.agency-hero-bottom{grid-template-columns:80px 1fr;gap:25px}.round-link{width:74px;height:74px}.agency-hero-bottom>.quiet-link{display:none}.engineering-film{margin-inline:18px;aspect-ratio:1.85}.agency-intro{display:block;padding-block:95px}.agency-intro>.eyebrow{max-width:none;margin-bottom:30px}.agency-intro h2{font-size:49px;max-width:740px}.intro-columns{display:grid;grid-template-columns:1fr auto;gap:40px}.intro-columns .outline-pill{margin-top:0}.agency-proof{margin-top:45px}.agency-work{padding-block:90px;border-radius:32px 32px 0 0}.agency-section-head h2{font-size:55px}.case-primary{padding:30px}.agency-case-main{grid-template-columns:1fr 55px;gap:20px;margin-top:45px}.case-numeral{display:none}.agency-case-main h3{font-size:38px}.case-specifics,.case-tags{margin-left:0}.case-secondary{padding:28px}.case-secondary h3{font-size:28px}.agency-services{padding-block:95px}.agency-service-list>a{grid-template-columns:25px 1fr 43px;gap:13px 20px}.agency-service-list h3{font-size:31px}.agency-service-list p{grid-column:2;grid-row:2;max-width:530px}.service-arrow{grid-column:3;grid-row:1}.agency-ai{padding-block:90px;border-radius:32px 32px 0 0}.agency-ai-heading{gap:25px 40px}.agency-ai h2{font-size:50px}.agency-ai-cases{gap:28px;margin-top:55px}.agency-ai-cases h3{font-size:23px}.agency-person{padding-block:95px 70px;gap:45px;grid-template-columns:.75fr 1.25fr}.agency-person h2{font-size:43px}.agency-proposal{padding-bottom:55px}.agency-contact{border-radius:32px 32px 0 0;padding-top:65px}.agency-contact .round-link{width:115px;height:115px}.agency-contact .round-link>.icon{width:50px;height:50px}}
@media(max-width:700px){.container{width:calc(100% - 40px)}.header-inner{height:78px;gap:12px}.brand-lockup{width:180px;height:36px}.site-footer .brand-lockup{width:210px;height:42px}.page-intro{padding-top:115px}.agency-hero{padding-top:113px;padding-bottom:43px}.agency-topline{font-size:8px;gap:18px;margin-bottom:35px}.agency-topline>span:first-child{gap:8px}.agency-topline>span:first-child:before{width:5px;height:5px}.agency-topline>span:last-child{max-width:90px;text-align:right}.agency-hero h1,html[lang=en] .agency-hero h1{font-size:clamp(40px,9.7vw,67px);line-height:1.17;letter-spacing:-.07em}.agency-title-row{gap:20px}.agency-title-row>.title-mask{font-size:1.3em}.hero-fragment{width:2.03em;height:1em}.agency-hero-bottom{grid-template-columns:57px 1fr;gap:19px;margin-top:30px}.round-link{width:57px;height:57px}.round-link>.icon{width:27px;height:27px}.agency-hero-bottom>p{font-size:12px;line-height:1.8;max-width:320px}.engineering-film{margin-inline:10px;border-radius:16px;aspect-ratio:1.2}.engineering-film>img{object-position:67% 50%;height:110%;width:100%}.engineering-film figcaption{inset:20px 20px auto;gap:15px;font-size:8px}.engineering-film figcaption>span:first-child{max-width:135px}.agency-intro{padding-block:72px}.agency-intro>.eyebrow{font-size:9px;margin-bottom:25px}.agency-intro h2{font-size:37px;line-height:1.16;margin-bottom:27px}.intro-columns{display:block}.intro-columns>p{font-size:13px;line-height:1.85}.intro-columns .outline-pill{margin-top:25px}.outline-pill{font-size:10px;padding:15px 20px;gap:20px}.agency-proof{gap:20px;padding-top:25px;margin-top:38px}.agency-proof strong{font-size:38px}.agency-proof span{font-size:9px}.agency-work{padding-block:65px;border-radius:25px 25px 0 0}.agency-section-head{margin-bottom:35px}.agency-section-head>.eyebrow{font-size:9px;margin-bottom:23px}.agency-section-head h2{font-size:39px;line-height:1.1;margin-bottom:20px}.agency-section-head>p:not(.eyebrow){font-size:12px}.case-primary{padding:23px 20px;border-radius:17px}.case-topline{gap:15px;font-size:8px;align-items:flex-start}.case-topline>span:last-child{font-size:8px;max-width:100px;text-align:right}.agency-case-main{grid-template-columns:1fr;gap:20px;margin:35px 0 25px}.agency-case-main h3{font-size:32px;margin-bottom:20px}.agency-case-main p{font-size:12px;line-height:1.8}.case-round{width:42px;height:42px;justify-self:end}.case-round>.icon{width:21px;height:21px}.case-specifics{grid-template-columns:1fr;gap:22px;padding-top:23px}.case-specifics>div>span{font-size:9px}.case-specifics p{font-size:11px;margin-top:6px}.case-tags{gap:6px;margin-top:25px}.case-tags>span{font-size:8px;padding:5px 9px}.agency-case-pair{grid-template-columns:1fr;gap:15px;margin-top:15px}.case-secondary{padding:24px 23px;border-radius:17px}.case-secondary h3{font-size:30px;margin:35px 0 20px;max-width:450px}.case-secondary>p{font-size:12px}.secondary-case-link{padding-top:20px;font-size:9px}.all-projects{margin-top:30px}.agency-services{padding-block:72px}.agency-services .agency-section-head{margin-bottom:33px}.agency-service-list>a{grid-template-columns:22px minmax(0,1fr) 32px;gap:12px 10px;padding:27px 0}.agency-service-list h3{font-size:25px;line-height:1.18}.service-order{font-size:9px;padding-top:5px}.agency-service-list p{font-size:11px;line-height:1.8}.service-arrow{width:32px;height:32px}.service-arrow>.icon{width:16px;height:16px}.agency-service-list>a:before{inset:0 -10px}.agency-service-foot{display:block;margin-top:25px}.agency-service-foot p{font-size:11px;line-height:1.8;margin-bottom:22px}.agency-ai{padding-block:65px;border-radius:25px 25px 0 0}.agency-ai-heading{display:block}.agency-ai-heading>.eyebrow{font-size:9px;margin-bottom:25px}.agency-ai h2{font-size:43px;line-height:1.1;margin-bottom:25px}.agency-ai-heading>p:not(.eyebrow){font-size:13px}.agency-ai-cases{grid-template-columns:1fr;gap:27px;margin:38px 0 30px}.agency-ai-cases>article{padding-top:20px;display:grid;grid-template-columns:23px 1fr;gap:12px 16px}.agency-ai-cases>article>span{font-size:9px;padding-top:5px}.agency-ai-cases h3{font-size:25px;margin:0}.agency-ai-cases p{grid-column:2;font-size:12px}.agency-person{grid-template-columns:1fr;gap:40px;padding-block:72px 55px}.agency-person-photo{max-width:245px}.agency-person-photo img{border-radius:130px 130px 14px 14px}.agency-person-photo>span{font-size:9px}.agency-person h2{font-size:40px;margin:25px 0}.agency-person p:not(.eyebrow){font-size:13px}.agency-proposal{grid-template-columns:1fr;gap:18px;padding:30px 0 48px}.agency-proposal h2{font-size:25px}.agency-proposal p{font-size:12px}.agency-proposal .quiet-link{grid-column:1;font-size:11px}.agency-contact{padding:50px 0 27px;border-radius:25px 25px 0 0}.agency-contact .eyebrow{font-size:9px}.agency-contact-link{gap:15px;padding:15px 0 35px}.agency-contact h2{font-size:clamp(42px,11.6vw,70px);line-height:1.05;letter-spacing:-.065em}.agency-contact .round-link{width:65px;height:65px}.agency-contact .round-link>.icon{width:29px;height:29px}.agency-contact-bottom{padding-top:20px;font-size:8px;gap:20px}.agency-contact-bottom>a{font-size:12px}.site-footer{padding-top:45px}}
@media(max-width:360px){.container{width:calc(100% - 32px)}.brand-lockup{width:156px;height:32px}.header-inner{gap:9px}.agency-hero h1,html[lang=en] .agency-hero h1{font-size:34px}.agency-title-row{gap:16px}.agency-hero-bottom{gap:15px;grid-template-columns:50px 1fr}.agency-hero-bottom>p{font-size:11px}.round-link{width:50px;height:50px}.agency-intro h2{font-size:33px}.agency-section-head h2{font-size:34px}.agency-case-main h3{font-size:28px}.case-secondary h3{font-size:27px}.agency-service-list h3{font-size:22px}.agency-ai h2{font-size:38px}.agency-person h2{font-size:35px}.agency-contact h2{font-size:38px}.agency-contact .round-link{width:54px;height:54px}.agency-contact-bottom>a{font-size:11px}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1!important;transform:none!important}.engineering-film>img{will-change:auto}.magnetic{transform:none!important}}
/* Career experience uses full-width chapters rather than narrow columns. */
.enterprise-experience{padding-block:25px 130px}
.enterprise-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:22px 100px;margin-bottom:64px;max-width:none;align-items:end}
.enterprise-heading>.eyebrow{grid-column:1/-1;margin:0 0 5px;font-size:11px}
.enterprise-heading h2{font-size:clamp(38px,4.2vw,64px);font-weight:450;line-height:1.12;letter-spacing:-.055em;margin:0;max-width:670px}
.enterprise-heading>p:last-child{font-size:16px;line-height:1.8;max-width:500px;margin:0;color:#555}
.enterprise-grid{display:block;margin-bottom:40px;border-top:1px solid #c5c5c5}
.enterprise-grid>article{display:grid;grid-template-columns:50px 1fr 1.15fr;gap:55px;padding:43px 0 45px;border-bottom:1px solid #d5d5d5;align-items:start}
.enterprise-number{font:12px monospace;color:#666;padding-top:4px}
.enterprise-topic>.eyebrow{font-size:10px;margin:0 0 20px;color:#555}
.enterprise-grid h3{font-size:clamp(27px,2.5vw,39px);font-weight:450;line-height:1.23;letter-spacing:-.04em;margin:0;max-width:570px}
.enterprise-description>p{font-size:16px;line-height:1.8;margin:0;max-width:590px;color:#444}
.enterprise-description>.enterprise-role{font-size:12px;line-height:1.65;color:#666;margin-top:23px;padding:0;border:0}
.topic-option span{overflow-wrap:anywhere}
/* Services follow the large engineering image. */
.agency-services{padding-block:110px}
.agency-services .agency-section-head{margin-bottom:42px}
/* Native particle mesh with a transparent canvas, located with the AI content. */
.agency-ai{background:#101012;color:#f7f7f7;padding:90px 0 85px;overflow:hidden}
.agency-ai-stage{display:grid;grid-template-columns:.92fr 1.08fr;gap:25px;align-items:center;min-height:600px}
.agency-ai-heading{display:block;position:relative;z-index:1}
.agency-ai-heading>.eyebrow{font-size:10px;color:#c0c0c0;margin-bottom:34px}
.agency-ai h2{font-size:clamp(46px,5.1vw,80px);font-weight:450;line-height:1.1;letter-spacing:-.06em;margin:0 0 32px;max-width:640px}
.agency-ai h2>span{color:#d4ff91}
.agency-ai-heading>p:not(.eyebrow){font-size:15px;line-height:1.85;color:#c1c1c1;max-width:435px;margin:0 0 30px}
.agency-ai .outline-pill{color:#f7f7f7;border-color:#777}
.agency-ai .outline-pill:hover{background:#d4ff91;color:#171717;border-color:#d4ff91}
.agency-wave{position:relative;width:calc(100% + 110px);height:600px;margin-left:-30px;isolation:isolate}
.agency-wave canvas,.agency-wave img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.agency-wave canvas{opacity:0}
.agency-wave.wave-ready canvas{opacity:1}
.agency-wave.wave-ready .wave-fallback{visibility:hidden}
.agency-ai-cases{margin:55px 0 0;gap:55px}
.agency-ai-cases>article{border-color:#454545;padding-top:27px}
.agency-ai-cases>article>span{color:#d4ff91}
.agency-ai-cases h3{font-size:27px;color:#fff;margin:27px 0 18px}
.agency-ai-cases p{font-size:14px;line-height:1.85;color:#bcbcbc}
@media(max-width:1150px){
 .enterprise-heading{gap:20px 55px}.enterprise-grid>article{grid-template-columns:32px 1fr 1.1fr;gap:35px}.enterprise-description>p{font-size:15px}
 .agency-ai-stage{grid-template-columns:1fr 1fr;min-height:530px}.agency-wave{height:530px;width:calc(100% + 75px);margin-left:-15px}.agency-ai h2{font-size:57px}
 .agency-ai-cases{gap:35px}
}
@media(max-width:800px){
 .enterprise-experience{padding-block:10px 85px}.enterprise-heading{display:block;margin-bottom:45px}.enterprise-heading>.eyebrow{margin-bottom:24px}.enterprise-heading h2{font-size:45px;max-width:650px;margin-bottom:25px}.enterprise-heading>p:last-child{font-size:15px;max-width:600px}
 .enterprise-grid>article{grid-template-columns:30px 1fr;gap:20px 25px;padding:32px 0}.enterprise-description{grid-column:2}.enterprise-grid h3{font-size:32px;max-width:600px}.enterprise-topic>.eyebrow{margin-bottom:13px}.enterprise-description>.enterprise-role{margin-top:16px}.enterprise-grid{margin-bottom:30px}
 .agency-ai{padding-block:65px}.agency-ai-stage{grid-template-columns:1fr;gap:0;min-height:0}.agency-ai-heading>p:not(.eyebrow){max-width:570px}.agency-ai h2{font-size:60px;max-width:620px}
 .agency-wave{height:390px;width:calc(100% + 40px);margin:10px -20px -5px}.agency-ai-cases{gap:28px;margin-top:15px}.agency-ai-cases h3{font-size:23px}.agency-ai-cases p{font-size:13px}
}
@media(max-width:700px){
 .agency-services{padding-block:70px}.enterprise-experience{padding-bottom:70px}.enterprise-heading h2{font-size:37px}.enterprise-heading>p:last-child{font-size:14px}.enterprise-heading>.eyebrow{font-size:9px;line-height:1.7}
 .enterprise-grid>article{grid-template-columns:23px 1fr;gap:18px 17px}.enterprise-number{font-size:10px}.enterprise-topic>.eyebrow{font-size:9px;line-height:1.6}.enterprise-grid h3{font-size:29px;line-height:1.2;overflow-wrap:break-word}.enterprise-description>p{font-size:14px;line-height:1.85}.enterprise-description>.enterprise-role{font-size:11px}
 .agency-ai-heading>.eyebrow{font-size:9px;margin-bottom:25px}.agency-ai h2{font-size:47px;line-height:1.1;max-width:480px;margin-bottom:25px}.agency-ai-heading>p:not(.eyebrow){font-size:14px;line-height:1.85}
 .agency-wave{height:300px;margin-top:5px;margin-bottom:0}.agency-ai-cases{margin-top:8px;grid-template-columns:1fr;gap:28px}.agency-ai-cases>article{padding-top:22px;grid-template-columns:23px 1fr;gap:12px 16px}.agency-ai-cases h3{font-size:25px;margin:0}.agency-ai-cases p{font-size:13px}
}
@media(max-width:360px){.enterprise-grid h3{font-size:26px}.enterprise-heading h2{font-size:33px}.agency-ai h2{font-size:41px}.agency-wave{height:260px}}

/* Keep the keyboard skip link clipped until focus, including during section capture. */
.skip-link{top:0;transform:none;clip-path:inset(50%);width:1px;height:1px;padding:0;overflow:hidden;white-space:nowrap}
.skip-link:focus{top:15px;clip-path:none;width:auto;height:auto;padding:15px;overflow:visible;transform:none}
.enterprise-description>.enterprise-role{font-size:13px}
@media(max-width:700px){.enterprise-description>.enterprise-role{font-size:12px}}

/* A broad introduction with the contact action on the right. */
.agency-hero-bottom{grid-template-columns:minmax(0,1fr) auto;gap:55px}
.agency-hero-bottom>p{max-width:780px;font-size:19px;line-height:1.75}
.agency-hero-actions{display:flex;align-items:center;gap:35px}
.agency-hero-actions>.quiet-link{font-size:12px;white-space:nowrap}
.agency-hero-actions>.round-link{width:88px;height:88px}
/* Equal editorial space for three different business systems. */
.selected-projects{border-top:1px solid #565656}
.selected-project{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:24px 90px;padding:45px 0 48px;border-bottom:1px solid #565656;border-radius:0;overflow:visible}
.selected-project-type{grid-column:1/-1;font-size:11px;line-height:1.6;letter-spacing:.03em;color:var(--lime);margin:0}
.selected-project h3{font-size:clamp(30px,3.2vw,47px);font-weight:450;letter-spacing:-.045em;line-height:1.17;margin:0;grid-row:2/4;max-width:650px}
.selected-project h3 a{transition:color .2s}
.selected-project h3 a:hover{color:var(--lime)}
.selected-project-description{font-size:15px;line-height:1.85;color:#c0c0c0;margin:0;max-width:540px}
.selected-project-link{grid-column:2;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;color:#f5f5f5;max-width:540px;min-height:48px;width:100%}
.selected-project-link>.icon{box-sizing:content-box;width:21px;height:21px;border:1px solid #777;border-radius:50%;padding:12px;transition:background .2s,color .2s,border-color .2s}
.selected-project-link:hover>.icon,.selected-project-link:focus-visible>.icon{color:#171717;background:var(--lime);border-color:var(--lime)}
.agency-work :focus-visible{outline-color:var(--lime)}
@media(max-width:1100px){
 .agency-hero-bottom{gap:40px}.agency-hero-bottom>p{font-size:17px;max-width:690px}.agency-hero-actions>.quiet-link{display:none}
 .selected-project{gap:24px 50px}.selected-project h3{font-size:36px}
}
@media(max-width:700px){
 .agency-hero-bottom{grid-template-columns:1fr;gap:23px;margin-top:30px}
 .agency-hero-bottom>p{font-size:14px;line-height:1.85;max-width:560px}
 .agency-hero-actions{justify-content:space-between;gap:25px}.agency-hero-actions>.quiet-link{display:inline-flex;font-size:11px}.agency-hero-actions>.round-link{width:57px;height:57px}
 .selected-project{grid-template-columns:1fr;gap:22px;padding:30px 0 34px}
 .selected-project-type{font-size:10px}.selected-project h3{font-size:32px;grid-row:auto;max-width:540px}
 .selected-project-description{font-size:14px;line-height:1.85}.selected-project-link{grid-column:1;font-size:11px}
}
@media(max-width:360px){.selected-project h3{font-size:29px}}

/* Text-led introduction without a portrait column. */
.agency-person.agency-person-text,.author-panel.author-panel-text{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:70px 90px;align-items:start}
.agency-person-text h2{margin-bottom:0;max-width:600px}
.agency-person-text .agency-person-copy{padding-top:48px}
.agency-person-text .agency-person-copy p{font-size:16px;line-height:1.85}
.agency-person-copy>p:first-child,.author-panel-text>div:nth-child(2)>p:first-child{margin-top:0}
.author-panel-text h2{margin-bottom:0}
.author-panel-text>div:nth-child(2){padding-top:36px}
.author-panel-text .pills{margin-top:28px}
@media(max-width:950px){
 .agency-person.agency-person-text,.author-panel.author-panel-text{gap:40px}
}
@media(max-width:700px){
 .agency-person.agency-person-text,.author-panel.author-panel-text{grid-template-columns:minmax(0,1fr);gap:28px}
 .agency-person-text .agency-person-copy,.author-panel-text>div:nth-child(2){padding-top:0}
 .agency-person-text .agency-person-copy p{font-size:14px}
}
