.locale-switch{display:flex;gap:9px;align-items:center;font-size:12px;white-space:nowrap}.locale-switch a{padding:4px}.locale-switch a[aria-current]{color:#0040f7;border-bottom:1px solid #0040f7}.locale-switch span{color:var(--muted)}.portfolio-intro{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:65px;align-items:center;padding-top:65px;padding-bottom:65px}.portfolio-intro h1{font-size:clamp(45px,5.1vw,72px);letter-spacing:-.055em;line-height:1.02;margin:0 0 28px}.portfolio-intro .lead{font-size:18px;max-width:690px}.intro-portrait img{width:100%;height:auto;border-radius:4px;border:1px solid #cbd0c7;display:block}.intro-portrait figcaption{font-size:11px;line-height:1.55;color:var(--muted);margin-top:13px}.intro-link{display:inline-block;margin-top:24px;font-size:13px;color:#0040f7;border-bottom:1px solid #0040f7;padding-bottom:4px}.services-before-work{padding-top:42px;padding-bottom:68px}.services-before-work h2{font-size:43px}.systems-summary a:hover{color:#0040f7}.project-index{scroll-margin-top:35px}.workflow li{min-width:0;overflow-wrap:break-word}.case-dark .locale-switch a[aria-current]{color:#b7caff;border-color:#b7caff}.case-dark .portfolio-contact{--paper:#f5f4ef;--ink:#171916;--muted:#62645f;color:var(--ink);background:var(--paper);max-width:none;padding-inline:max(24px,calc((100% - 1128px)/2))}.case-dark .contact-embed{background:#f5f4ef}.case-dark .portfolio-contact iframe{color-scheme:light}.portfolio-intro+section h3{overflow-wrap:break-word}@media(max-width:760px){.site-header{gap:12px;flex-wrap:wrap}.site-header .brand{margin-right:auto}.site-header .brand svg{width:124px}.locale-switch{gap:4px;font-size:11px}.site-header .contact-link{padding:7px 10px}.portfolio-intro{grid-template-columns:1fr 100px;gap:18px;padding-top:42px;padding-bottom:40px;align-items:start}.portfolio-intro h1{font-size:41px}.portfolio-intro .lead{font-size:16px;grid-column:1/-1}.intro-portrait{margin-top:6px}.intro-portrait figcaption{font-size:9px}.services-before-work h2{font-size:35px}.services-before-work{padding-top:28px}.locale-switch a{padding:4px 2px}.portfolio-intro h1 em{overflow-wrap:normal}}@media(max-width:470px){.portfolio-intro{grid-template-columns:1fr}.intro-portrait{display:none}.portfolio-intro h1{font-size:46px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.service-shell{max-width:1112px;margin-inline:auto}.service-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:75px;padding:70px 0 80px;align-items:center}.service-hero h1{font-size:61px;line-height:1.03;letter-spacing:-.055em;margin:24px 0}.service-lead{font-size:18px;line-height:1.75;max-width:650px}.service-hero figure img{width:100%;height:auto;display:block;border-radius:4px}.service-hero figcaption{font-size:12px;line-height:1.6;color:var(--muted);margin-top:16px}.service-hero figcaption strong{font-size:16px;font-weight:400;color:var(--ink)}.service-actions{display:flex;gap:24px;flex-wrap:wrap;align-items:center;margin-top:30px}.service-actions .button{font-size:13px}.service-problems,.service-process{display:grid;grid-template-columns:1fr 1.15fr;gap:100px;padding:65px 0;border-top:1px solid var(--line)}.service-shell h2{font-size:42px;line-height:1.1;letter-spacing:-.04em;margin:20px 0 28px}.service-shell h3{font-size:25px;line-height:1.2;letter-spacing:-.025em}.service-shell p{font-size:16px;line-height:1.8}.problem-list article{padding:0;margin:0;border:0}.problem-list article:last-child{border:0;margin-bottom:0}.problem-list h3{font-size:22px;margin-bottom:12px}.process-steps{list-style:none;margin:0;padding:0;counter-reset:steps}.process-steps li{padding:0 0 26px 46px;position:relative}.process-steps li:before{counter-increment:steps;content:counter(steps,decimal-leading-zero);position:absolute;left:0;top:1px;color:#0040f7;font-size:12px}.process-steps h3{font-size:23px;margin-bottom:10px}.service-evidence{background:#161715;color:#f6f5f0;padding:65px 0}.service-evidence .eyebrow{color:#bacaff}.service-evidence h2 em{color:#b7caff}.evidence-primary{display:grid;grid-template-columns:1fr 1.4fr;gap:55px;margin-top:45px;align-items:start}.evidence-primary h3{font-size:35px}.evidence-primary .text-link{margin:12px 0 25px;color:#b7caff}.evidence-primary h4,.secondary-evidence h4{font-size:23px;line-height:1.35;font-weight:400;margin:0 0 18px;letter-spacing:-.02em}.evidence-primary p{color:#d0d2c9;margin-bottom:18px}.evidence-primary .business-relevance{border-top:1px solid #484a43;padding-top:20px;margin-top:24px}.service-evidence .screen-open{--edge-radius:5px;border-radius:5px}.service-evidence .screen-open img{width:100%;height:auto;display:block}.evidence-workflow{font-size:13px!important;color:#d0d2c9;padding-top:35px;margin-top:25px;border-top:1px solid #484a43}.evidence-workflow span{color:#b7caff;padding:0 7px}.secondary-evidence{padding-top:65px;padding-bottom:65px}.secondary-evidence>article,.more-work-panel>article{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:0 0 55px;margin-bottom:55px;border-bottom:1px solid var(--line);align-items:start}.secondary-evidence h3{font-size:35px}.secondary-evidence .text-link{margin:12px 0 24px}.secondary-evidence p{margin-bottom:18px}.secondary-evidence .screen-open{width:100%}.secondary-evidence .screen-open img{width:100%;height:auto;display:block}.secondary-evidence .brief-evidence{grid-template-columns:260px 1fr;gap:65px}.brief-evidence>div:first-child{justify-self:center}.brief-evidence .screen-open{max-width:200px}.founder-story{background:#e9ece6;padding:65px 0}.founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px}.founder-grid p{margin-bottom:20px}.first-engagement{padding:65px 0;display:grid;grid-template-columns:1fr 1fr;gap:0 75px}.first-engagement>.eyebrow{grid-column:1/-1}.first-engagement>div{padding-top:20px}.first-engagement>div p{margin-bottom:20px}.first-engagement blockquote{grid-column:1/-1;font:italic 31px/1.35 Georgia,serif;color:#0040f7;border-top:1px solid var(--line);padding-top:30px;margin:25px 0 0;max-width:1000px}.service-faq{padding:0 0 70px}.service-faq details{border-top:1px solid var(--line);padding:23px 0}.service-faq details:last-child{border-bottom:1px solid var(--line)}.service-faq summary{cursor:pointer;font-size:20px;line-height:1.4;list-style-position:outside;margin-left:22px}.service-faq details p{max-width:820px;padding:20px 0 0 22px}.service-final{background:#0040f7;color:#fff;padding:65px 0}.service-final h2{font-size:45px;margin-top:0}.service-final h2 em{color:#fff}.service-final p{color:#e2e8ff;margin-bottom:25px}.ai-service .portfolio-contact{border-top:0}.service-evidence .screen-open.has-edge{background:transparent}.ai-service .button:focus-visible,.ai-service summary:focus-visible{outline:3px solid #0040f7;outline-offset:6px}.service-final .button:focus-visible{outline-color:#fff}@media(max-width:1190px){.service-shell{margin-inline:6%}.service-hero{gap:50px}.service-hero h1{font-size:53px}.service-problems,.service-process{gap:55px}.evidence-primary{gap:35px}}@media(max-width:760px){.service-hero{grid-template-columns:1fr;gap:32px;padding-top:42px;padding-bottom:45px}.service-hero h1{font-size:46px}.service-hero figure{max-width:250px;margin:0}.service-hero figcaption{font-size:11px}.service-problems,.service-process,.founder-grid,.first-engagement{grid-template-columns:1fr;gap:26px;padding-top:42px;padding-bottom:42px}.service-shell h2{font-size:35px}.service-section-heading h2{margin-bottom:20px}.service-evidence{padding:42px 0}.evidence-primary{grid-template-columns:1fr;gap:24px;margin-top:30px}.evidence-primary .screen-open{grid-row:1}.evidence-primary h3,.secondary-evidence h3{font-size:31px}.evidence-workflow{line-height:2!important}.secondary-evidence{padding-top:42px;padding-bottom:42px}.secondary-evidence>article,.more-work-panel>article,.secondary-evidence .brief-evidence{grid-template-columns:1fr;gap:28px;padding-bottom:35px;margin-bottom:35px}.brief-evidence>div:first-child{justify-self:start}.brief-evidence .screen-open{max-width:170px}.founder-story{padding:0}.first-engagement>.eyebrow,.first-engagement blockquote{grid-column:1}.first-engagement h2{margin:0}.first-engagement>div{padding:0}.first-engagement blockquote{font-size:25px;line-height:1.5;margin-top:0}.service-faq{padding-bottom:42px}.service-faq summary{font-size:18px}.service-final{padding:42px 0}.service-final h2{font-size:35px}.service-actions{gap:18px}.portfolio-intro h1{font-size:clamp(35px,9.6vw,44px)}}

.service-shell .eyebrow{font-size:10px;line-height:1.5;letter-spacing:.13em}.evidence-primary{row-gap:24px}.evidence-primary>.business-relevance{grid-column:1/-1;max-width:1040px;margin:0;padding-top:24px}.evidence-primary>.business-relevance:last-child{margin-bottom:0}

/* Read a section heading and its introduction in one continuous column. */
.more-work{grid-template-columns:minmax(0,1fr);row-gap:24px}
.more-work>h2{max-width:900px;text-wrap:balance}
.more-work>p:not(.eyebrow){max-width:68ch;font-size:18px;line-height:1.75}
.more-work>.systems-summary{margin-top:18px;gap:36px 70px}
.more-work>.button{grid-column:1}
.system-detail{grid-template-columns:minmax(0,1fr);gap:22px}
.system-detail>div{max-width:74ch}
.system-detail h2{max-width:900px;text-wrap:balance}
.system-detail .system-intro{margin-top:22px}
.service-problems,.service-process{grid-template-columns:minmax(0,1fr);gap:38px}
.service-section-heading{max-width:74ch}
.service-section-heading p:not(.eyebrow){max-width:68ch}
.problem-list,.process-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 64px;align-items:start}
.problem-list article{margin:0;padding-bottom:26px}
.problem-list article:last-child{border:0}
.process-steps li{padding-bottom:12px}
.founder-grid{grid-template-columns:minmax(0,1fr);gap:10px}
.founder-grid>div{max-width:74ch}
.founder-grid h2{max-width:900px;text-wrap:balance}
.first-engagement{grid-template-columns:minmax(0,1fr);gap:0}
.first-engagement>div{max-width:74ch;padding-top:0}
.first-engagement blockquote{margin-top:16px;max-width:100%}
.service-shell h2,.project-copy h3,.system-detail h2{ text-wrap:balance }
@media(max-width:760px){.more-work>p:not(.eyebrow){font-size:17px}.more-work>.systems-summary{gap:28px}.problem-list,.process-steps{grid-template-columns:1fr;gap:24px}.service-problems,.service-process{gap:28px}.first-engagement{gap:14px}.founder-grid{gap:10px}}

.more-work>.text-link{justify-self:start}

/* Problem examples are grouped by whitespace; only the section boundary separates the process. */
.service-problems .problem-list{row-gap:38px}
.service-problems .problem-list article{padding-bottom:0}
.service-problems .problem-list h3{max-width:30ch}

/* The service example uses Taidream's original cobalt, with accessible light text. */
.ai-service .service-evidence{background:#0040f7;color:#fff;--blue:#fff;--muted:#f0f3ff;--line:#ffffff55}
.ai-service .service-evidence .eyebrow,.ai-service .service-evidence h2 em,.ai-service .service-evidence .text-link,.ai-service .service-evidence p,.ai-service .evidence-workflow span{color:#fff}
.ai-service .service-evidence .text-link{border-bottom-color:#ffffff70}
.ai-service .service-evidence .business-relevance,.ai-service .service-evidence .evidence-workflow{border-top-color:#ffffff55}
.service-integrations{padding-top:0;padding-bottom:65px}
.service-integrations h2{max-width:900px;text-wrap:balance}
.integration-copy{max-width:74ch}
.integration-copy p{margin-bottom:20px}
.service-integrations>.button{margin-top:10px}
.secondary-evidence>.service-actions{margin-top:0}
.secondary-evidence>.service-actions>.text-link{margin:0}
@media(max-width:760px){.service-integrations{padding-bottom:42px}.service-integrations>.button{max-width:100%}}

.more-work-disclosure>summary{display:flex;align-items:center;gap:24px;list-style:none;cursor:pointer;background:#0040f7;color:#fff;padding:26px 30px;border-radius:5px;font-size:25px;line-height:1.25;letter-spacing:-.025em}
.more-work-disclosure>summary::-webkit-details-marker{display:none}
.more-work-disclosure>summary>span:first-child{flex:1}
.more-work-disclosure .more-count{font-size:13px;letter-spacing:0;white-space:nowrap}
.more-toggle-icon{font-size:34px;font-weight:300;line-height:1}
.more-work-disclosure .when-open{display:none}
.more-work-disclosure[open] .when-closed{display:none}
.more-work-disclosure[open] .when-open{display:inline}
.more-work-disclosure[open] .more-toggle-icon{transform:rotate(45deg)}
.more-work-panel{padding-top:60px}
.more-work-panel article:last-of-type{margin-bottom:30px}
.more-project h4{font-weight:400;font-size:23px;line-height:1.35;margin:0 0 18px;letter-spacing:-.02em}
.more-project-media{min-width:0}
.more-project.phone{grid-template-columns:280px minmax(0,1fr)}
.more-project.phone .screen-open{max-width:230px;margin:auto;padding:8px;background:#151816;border:2px solid #7c817c;border-radius:38px}
.more-project.phone .screen-open img{border-radius:28px}
.more-work-disclosure+.service-actions{margin-top:32px}
.close-more-work{background:transparent;border:1px solid #0040f7;color:#0040f7;border-radius:4px;min-height:48px;padding:12px 22px;font-size:14px}
.more-work-disclosure summary:focus-visible,.close-more-work:focus-visible{outline:3px solid #0040f7;outline-offset:6px}
@media(max-width:760px){.more-work-disclosure>summary{padding:23px 20px;font-size:21px;gap:14px}.more-work-panel{padding-top:38px}.more-project.phone{grid-template-columns:1fr}.more-work-panel>article{grid-template-columns:1fr;gap:28px}.more-project.phone .screen-open{max-width:220px}.more-work-disclosure .more-count{font-size:11px}}
