/* StrangeCalibur's workshop: product evidence, editorial rhythm, a little ink. */
:root{--paper:#f6f3eb;--ink:#242725;--muted:#5f665e;--line:#d0d0c4;--blue:#294fb8;--accent:#af4931;--page:min(1360px,calc(100% - 104px))}
body::before{display:none}p{line-height:1.7}.site-header{padding:23px 0;border-bottom:1px solid var(--line)}.brand-sub{font-size:9px;letter-spacing:1px}.site-header nav{font-size:13px;gap:32px}.site-header nav a{min-height:44px}.site-footer{margin-top:40px}.button-link{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:15px 21px;background:var(--blue);color:white;font-size:13px;line-height:1.4;min-height:48px;border:1px solid var(--blue)}.button-link:hover{background:#193d94;color:white!important}.button-link span{font-size:20px;line-height:1}.wide-link{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:24px 0;font-size:17px;margin:38px 0 60px}.wide-link:hover{color:var(--blue)}.eyebrow,.work-number,.status-labels,.peek-label,.image-caption{font-family:var(--sans);font-size:10px;line-height:1.6;letter-spacing:1.3px}.workshop-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:center;padding:65px 0 72px;min-height:595px}.workshop-dot{display:inline-block;width:7px;height:7px;background:var(--accent);margin-right:8px;border-radius:50%}.hero-copy h1{font-size:clamp(54px,5.55vw,86px);letter-spacing:-3.9px;line-height:1.05;max-width:none;margin:23px 0 27px}.hero-copy h1 em{color:var(--blue)}.hero-copy>p:not(.eyebrow){font-size:16px;max-width:500px;color:var(--muted);line-height:1.8}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:31px;font-size:13px}.hero-actions>a:last-child{padding:14px 0;border-bottom:1px solid var(--ink)}.workshop-peek{position:relative;padding:0 0 63px 12px;min-width:0}.peek{display:block;position:relative;padding:12px;background:#e9e7dc;border:1px solid #c5c7bd;box-shadow:6px 10px 0 #e2e0d5}.peek:hover{border-color:var(--blue)}.peek-label{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px;text-transform:uppercase;color:#464f49}.peek-label>span{font-size:8px;letter-spacing:.5px}.peek img{width:100%;height:auto;aspect-ratio:1.64;object-fit:cover;object-position:top;background:#e6e4dd}.peek-0{transform:rotate(-2deg);width:99%;z-index:1}.peek-1{width:63%;margin:-65px -15px 0 auto;transform:rotate(3deg);z-index:2;background:#eceee3}.peek-1 .peek-label>span{display:none}.peek-note{position:absolute;bottom:8px;left:17px;font:italic 17px var(--serif);color:#6c6c61}.process-strip{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:1px;text-transform:uppercase}.process-strip>span:nth-child(even){color:var(--accent);font-size:19px}.editorial-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin:74px 0 42px}.editorial-heading h2{font:440 clamp(39px,4.4vw,64px)/1.08 var(--serif);letter-spacing:-2.3px;margin-top:15px}.editorial-heading h2 em{color:var(--blue)}.editorial-heading>p{max-width:300px;font-size:14px;color:var(--muted);line-height:1.8;padding-bottom:3px}.work-piece{min-width:0;position:relative;display:flex;flex-direction:column}.work-piece-copy{padding:25px 0 26px}.work-number{text-transform:uppercase;color:var(--accent);margin-bottom:17px}.work-piece h3{font:450 39px/1.12 var(--serif);letter-spacing:-1.3px;margin:0 0 12px}.work-piece h3 a:hover{color:var(--blue)}.work-piece p{font-size:14px;line-height:1.8;color:var(--muted);max-width:470px}.work-piece .work-question{font-size:21px;line-height:1.45;color:var(--ink);margin-bottom:14px}.status-labels{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 14px;letter-spacing:.5px;text-transform:uppercase;font-size:9px}.status-labels span{border:1px solid #b9c0b3;padding:5px 8px;background:#eff0e6}.status-labels span:first-child{border-color:#90a395;color:#355342}.case-link{display:inline-flex;align-items:center;gap:30px;font-size:13px;border-bottom:1px solid var(--ink);padding:10px 0;min-height:44px}.case-link:hover{color:var(--blue)}.case-link span{font-size:20px}.work-piece-image{display:block;background:#e4e5dc;border:1px solid #c0c5b9;padding:15px 15px 0;order:-1}.work-piece-image>img{width:100%;height:auto;aspect-ratio:1.58;object-fit:contain;background:#111619}.work-kaiyan .work-piece-image>img{background:#faf9f4}.work-piece-image:hover{border-color:var(--blue)}.image-caption{display:flex;justify-content:space-between;padding:13px 0 12px;font-size:8px;text-transform:uppercase;color:#596350;letter-spacing:1px}.work-piece-large{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.3fr);gap:55px;align-items:center;padding:30px 0 49px;border-bottom:1px solid var(--line);margin-bottom:25px}.work-piece-large .work-piece-image{order:initial;padding:17px 17px 0}.work-piece-large .work-piece-copy{padding:0}.work-piece-large h3{font-size:53px}.work-piece-large .work-question{font-size:25px;max-width:420px}.work-piece-large .work-piece-image>img{aspect-ratio:1.6}.work-continuum.work-piece-large{grid-template-columns:minmax(0,1.3fr) minmax(280px,.75fr)}.work-continuum.work-piece-large .work-piece-image{grid-column:1;grid-row:1}.work-continuum.work-piece-large .work-piece-copy{grid-column:2;grid-row:1}.supporting-pieces{display:grid;grid-template-columns:1fr 1fr;gap:25px 50px;margin:44px 0}.supporting-pieces .work-piece:nth-child(even){padding-top:80px}.work-keyboard .work-piece-image{background:#e6daca}.work-hearth .work-piece-image{background:#dbe2d4}.work-prism .work-piece-image{background:#dce1ea}.work-kaiyan .work-piece-image{background:#eae1ce}.recurring-problems{border-top:1px solid var(--ink);margin-top:48px}.recurring-problems .editorial-heading{margin-top:32px}.question-list{border-top:1px solid var(--line)}.question-list>a{display:grid;grid-template-columns:25px 1fr 1fr 25px;gap:28px;padding:29px 0;border-bottom:1px solid var(--line);align-items:start}.question-list>a>span{color:var(--accent);font-size:10px;margin-top:6px}.question-list h3{font:450 28px/1.25 var(--serif);letter-spacing:-.5px;max-width:390px}.question-list p{font-size:14px;color:var(--muted);max-width:450px}.question-list b{font-weight:400;font-size:25px;color:var(--blue)}.question-list>a:hover h3{color:var(--blue)}.lab-shelf{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 28px}.lab-object{min-width:0}.lab-object>img,.lab-type-art{width:100%;height:auto;aspect-ratio:1.55;object-fit:contain;background:#dedfd6;border:1px solid var(--line);padding:9px}.lab-object>div:not(.lab-type-art){padding:16px 0}.lab-object h3{font:450 28px/1.15 var(--serif);letter-spacing:-.7px;margin:7px 0 10px}.lab-object p{font-size:12px;color:var(--muted);line-height:1.7}.lab-object:hover h3{color:var(--blue)}.lab-type-art{display:flex;flex-direction:column;justify-content:space-between;background:#343d3b;color:#ecebdb;padding:24px}.lab-type-art>span{font:11px monospace;letter-spacing:2px}.lab-type-art strong{font:italic 34px/1.1 var(--serif);white-space:pre-line}.work-together{display:grid;grid-template-columns:1.2fr 1fr;gap:14px 70px;margin:65px 0 85px}.work-together>.eyebrow{grid-column:1/-1}.work-together h2{font:450 clamp(50px,5.8vw,85px)/1.04 var(--serif);letter-spacing:-3px}.work-together h2 em{color:var(--blue)}.work-together>div{align-self:end;padding-bottom:5px}.work-together p:not(.eyebrow){max-width:410px;color:var(--muted);font-size:15px;margin-bottom:24px}.lab-header{display:grid;grid-template-columns:1fr 1fr;gap:0 80px;margin:65px 0 40px;align-items:end}.lab-header>.eyebrow{grid-column:1/-1}.lab-header h1{font-size:clamp(60px,7vw,100px);margin-bottom:0}.lab-header>p:last-child{max-width:500px;color:var(--muted);font-size:17px;padding-bottom:7px}.lab-page .index-section{padding:25px 0}.lab-page .index-name{font-size:27px}.lab-page .index-project{min-height:114px}.lab-page .index-name small{color:var(--muted);font-size:10px;margin-top:9px}.lab-page .index-description{font-size:13px}.lab-page .tier-filters{gap:26px}.lab-page .category-filters button{font-size:12px}.lab-page .tier-filters button{min-height:44px}.lab-page .search input{font-size:14px}.lab-page .index-thumbnail{z-index:4}.story-page .story-deck{font-size:22px}.story-page:not(.case-study) .story-layout{padding-top:48px}.story-page:not(.case-study) .story-header{padding-bottom:35px}.story-page:not(.case-study) .story-body p{font-size:16px}.story-page:not(.case-study) .story-status p{font-size:14px}
/* Case studies offer a short story first, with implementation detail on demand. */
.case-header{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:end;padding:27px 0 39px}.case-header h1{font-size:clamp(65px,7.4vw,110px);line-height:1;letter-spacing:-4px;margin:19px 0 24px;max-width:none}.case-subtitle{font:440 clamp(26px,3vw,39px)/1.25 var(--serif);letter-spacing:-.9px;max-width:590px}.case-introduction>p{font-size:17px;color:var(--muted);line-height:1.8;max-width:550px}.case-introduction .story-launch{display:inline-flex;font-size:13px;color:white;max-width:340px;margin-top:8px}.case-navigation{display:flex;gap:30px;flex-wrap:wrap;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:5px 0;font-size:11px}.case-navigation a{min-height:44px;display:flex;align-items:center;border-bottom:1px solid transparent}.case-navigation a:hover{border-color:var(--blue)}.case-study .evidence-lead{margin-top:32px}.case-study .evidence-image{padding:12px 12px 36px;background:#e3e6dc}.case-study .evidence-lead img{max-height:720px}.case-study .evidence-figure figcaption>p{font-size:14px;line-height:1.65}.case-study .evidence-kind{font-size:9px}.case-study .media-source summary{min-height:38px}.case-at-a-glance{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--line);margin:48px 0 0}.case-at-a-glance>div{padding:27px 26px 30px 0}.case-at-a-glance>div+div{padding-left:26px;border-left:1px solid var(--line)}.case-at-a-glance .eyebrow{color:var(--blue)}.case-at-a-glance p{font-size:16px;line-height:1.8;margin-top:15px;color:#475146}.case-ownership{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;margin:0;padding:24px 0 28px;border-bottom:1px solid var(--line)}.case-ownership dt{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:8px}.case-ownership dd{font-size:12px;line-height:1.8;margin:0;max-width:390px;color:var(--muted)}.case-in-use,.case-decisions,.case-evolution,.case-technical,.case-today{padding:68px 0 0;scroll-margin-top:24px}.case-section-title h2{font:450 clamp(32px,3.7vw,52px)/1.15 var(--serif);letter-spacing:-1.5px;margin:15px 0 28px;max-width:760px}.case-section-title .eyebrow{color:var(--accent)}.case-narrative>article{display:grid;grid-template-columns:.8fr 1.3fr;gap:70px;padding:26px 0 31px;border-top:1px solid var(--line)}.case-narrative h3{font:450 28px/1.28 var(--serif);max-width:340px;letter-spacing:-.7px}.case-narrative p{font-size:16px;line-height:1.85;color:#50594d;max-width:740px}.case-narrative p+p{margin-top:16px}.case-gallery{display:grid;grid-template-columns:1fr 1fr;gap:40px 30px;margin:28px 0 55px}.case-gallery img{width:100%;aspect-ratio:1.48;object-fit:contain}.case-gallery .evidence-phone img{width:auto;max-height:660px;aspect-ratio:auto}.case-gallery>.evidence-figure:last-child:nth-child(odd){grid-column:1/-1;max-width:1000px;margin:auto}.case-gallery>.evidence-figure:last-child:nth-child(odd) img{aspect-ratio:auto;max-height:620px}.case-diagrams{background:#e9eddf;border:1px solid #c5cdba;padding:32px 36px 28px;margin-top:38px}.case-diagrams .workflow-figure{border:0;padding:0;margin:0}.case-diagrams .workflow-steps li:not(:last-child)::after{background:#e9eddf}.case-diagrams .workflow-steps{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}.case-diagrams .workflow-intro h2{font-size:39px}.case-diagrams .workflow-intro>p{font-size:14px}.case-diagrams .workflow-steps h3{font-size:25px}.case-diagrams .workflow-steps p{font-size:13px}.decision-list{border-top:1px solid var(--ink)}.decision-list article{display:grid;grid-template-columns:35px .8fr 1.25fr;gap:30px;padding:30px 0;border-bottom:1px solid var(--line)}.decision-list article>span{font-size:11px;color:var(--accent);padding-top:5px}.decision-list h3{font:450 27px/1.25 var(--serif);letter-spacing:-.6px}.decision-list p{font-size:15px;line-height:1.85;color:#50594d;max-width:750px}.case-evolution ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));list-style:none;padding:0;margin:32px 0 0;border-top:1px solid var(--line);gap:32px}.case-evolution li{padding:29px 0 0;position:relative}.case-evolution li::before{content:'';width:7px;height:7px;position:absolute;top:-4px;background:var(--accent);border-radius:50%}.case-evolution h3{font:450 26px/1.2 var(--serif);letter-spacing:-.5px;margin:16px 0}.case-evolution p{font-size:14px;line-height:1.85;color:var(--muted)}.case-evolution .eyebrow{font-size:9px}.section-deck{color:var(--muted);font-size:15px;margin-top:-10px;margin-bottom:25px}.technical-details{border-top:1px solid var(--ink)}.technical-details details,.full-roadmap{border-bottom:1px solid var(--line)}.technical-details summary,.full-roadmap>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:77px;padding:22px 0;font-size:18px}.technical-details summary::-webkit-details-marker,.full-roadmap>summary::-webkit-details-marker{display:none}.technical-details summary>span,.full-roadmap>summary>span{font-size:26px;font-weight:300;color:var(--blue)}.technical-details details[open] summary>span,.full-roadmap[open]>summary>span{transform:rotate(45deg)}.technical-details details>div{padding:0 0 30px;max-width:900px;font-size:15px;line-height:1.85;color:var(--muted)}.technical-details details>div p+p{margin-top:14px}.full-roadmap .roadmap-group{max-width:900px;padding-bottom:25px}.roadmap-group h3{font:450 28px var(--serif);margin:20px 0}.roadmap-group h4{font-size:15px;margin:20px 0 9px}.roadmap-group p{font-size:14px;color:var(--muted)}.case-today{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;margin-top:70px;padding:32px 0 40px;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.case-today h3{font-size:14px;margin:0 0 12px}.case-today p,.case-today li{font-size:15px;line-height:1.85;color:var(--muted)}.case-today h3:not(:first-child){margin-top:27px}.case-today ul{padding-left:20px;margin:0}.case-today li+li{margin-top:8px}.case-next{padding:49px 0 0}.case-next>div{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:25px 0}.case-next h2{font:450 34px/1.1 var(--serif);letter-spacing:-1px;display:flex;justify-content:space-between}.case-next p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:500px;margin-top:15px}.case-next>div>a{border-bottom:1px solid var(--line);padding-bottom:24px}.case-audio{background:#e3e6d9;padding:30px 36px;margin:40px 0}.case-audio h2{font:450 36px/1.2 var(--serif);margin:12px 0}.case-audio p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:850px}.case-audio audio{width:100%;margin-top:23px}.contact-introduction>p:not(.eyebrow){font-size:16px;max-width:420px}.contact-main{gap:70px}.contact-page .letter-panel{margin-top:45px}.contact-page .back-link{margin-bottom:35px}
@media(min-width:1600px){.workshop-hero{padding-top:80px;padding-bottom:80px}.hero-copy h1{font-size:90px}}
@media(max-width:1100px){:root{--page:calc(100% - 64px)}.workshop-hero{min-height:510px;gap:25px;padding:55px 0}.hero-copy h1{font-size:64px;letter-spacing:-3px}.hero-copy>p:not(.eyebrow){font-size:14px}.peek-1{margin-top:-35px;margin-right:0}.peek-label>span{display:none}.work-piece-large,.work-continuum.work-piece-large{gap:32px;grid-template-columns:1fr 1.3fr}.work-continuum.work-piece-large{grid-template-columns:1.3fr 1fr}.work-piece-large h3{font-size:43px}.work-piece-large .work-question{font-size:23px}.work-piece p{font-size:13px}.supporting-pieces{gap:20px 35px}.case-header{gap:35px}.case-introduction>p{font-size:15px}.case-narrative>article{gap:40px}.case-today{gap:40px}.case-diagrams{padding:27px}.case-diagrams .workflow-steps li,.case-diagrams .workflow-steps li+li{padding:22px 15px}.case-diagrams .workflow-steps li:first-child{padding-left:0}}
@media(max-width:800px){:root{--page:calc(100% - 40px)}.site-header nav{gap:21px}.site-header nav>a:first-child{display:flex}.brand-sub{font-size:8px;letter-spacing:.5px}.workshop-hero{grid-template-columns:1fr;padding:38px 0 30px;gap:37px}.hero-copy h1{font-size:clamp(58px,8.8vw,79px);max-width:none;letter-spacing:-3.5px}.hero-copy>p:not(.eyebrow){font-size:16px;max-width:600px}.workshop-peek{width:100%;max-width:600px;justify-self:center;padding-bottom:28px}.peek-0{width:88%}.peek-1{width:55%;margin-top:-100px;margin-right:0}.peek-note{bottom:0;font-size:14px}.process-strip{font-size:9px;letter-spacing:.5px;gap:8px}.editorial-heading{margin-top:50px}.editorial-heading h2{font-size:44px}.editorial-heading>p{font-size:12px;max-width:240px}.work-piece-large,.work-continuum.work-piece-large{grid-template-columns:1fr;gap:20px}.work-piece-large .work-piece-image,.work-continuum.work-piece-large .work-piece-image{order:-1;grid-column:auto;grid-row:auto}.work-continuum.work-piece-large .work-piece-copy{grid-column:auto;grid-row:auto}.work-piece-large .work-piece-copy{padding:5px 0}.work-piece p{max-width:650px;font-size:14px}.work-piece-large .work-question{max-width:none;font-size:25px}.work-piece-large h3{font-size:46px}.supporting-pieces{gap:28px}.supporting-pieces .work-piece:nth-child(even){padding-top:50px}.supporting-pieces h3{font-size:31px}.supporting-pieces .work-question{font-size:19px}.supporting-pieces .work-piece p:not(.work-question){font-size:13px}.work-piece-image{padding:10px 10px 0}.image-caption{font-size:7px}.question-list>a{grid-template-columns:20px 1fr 25px;gap:18px}.question-list p{grid-column:2;grid-row:2;max-width:600px}.question-list b{grid-column:3;grid-row:1}.lab-shelf{grid-template-columns:repeat(2,1fr);gap:25px}.work-together{gap:15px 40px}.work-together h2{font-size:60px}.work-together p:not(.eyebrow){font-size:14px}.lab-header{gap:25px;grid-template-columns:1fr 1fr}.lab-header>p:last-child{font-size:14px}.case-header{display:block;padding-top:14px}.case-header h1{font-size:77px}.case-subtitle{max-width:670px;font-size:32px}.case-introduction{margin-top:27px}.case-introduction>p{max-width:700px;font-size:16px}.case-navigation{gap:14px;font-size:10px}.case-at-a-glance>div{padding:21px 20px 23px 0}.case-at-a-glance>div+div{padding-left:20px}.case-at-a-glance p{font-size:14px}.case-ownership{gap:22px}.case-narrative>article{grid-template-columns:1fr 1.5fr;gap:30px}.case-narrative h3{font-size:24px}.case-narrative p{font-size:15px}.case-diagrams .workflow-intro{display:block}.case-diagrams .workflow-intro h2{font-size:34px;margin-bottom:18px}.case-diagrams .workflow-steps{display:block}.case-diagrams .workflow-steps li,.case-diagrams .workflow-steps li+li{padding:22px 0;border-left:0}.case-diagrams .workflow-steps li+li{border-top:1px solid var(--line)}.case-diagrams .workflow-steps li:not(:last-child)::after{content:'↓';top:auto;bottom:-12px;right:10px}.decision-list article{grid-template-columns:25px 1fr;gap:14px 20px}.decision-list p{grid-column:2}.decision-list h3{font-size:27px}.case-today{grid-template-columns:1fr;gap:0;margin-top:45px}.case-evolution ol{grid-template-columns:1fr 1fr;gap:28px}.case-evolution li:nth-child(n+3){border-top:1px solid var(--line)}.case-next h2{font-size:29px}.case-gallery{gap:30px 20px}.case-study .evidence-figure figcaption>p{font-size:12px}.contact-main{gap:35px}.contact-introduction>p:not(.eyebrow){font-size:14px}}
@media(max-width:540px){:root{--page:calc(100% - 36px)}.site-header{padding:13px 0;gap:14px;flex-wrap:wrap}.site-header nav{width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:5px;gap:12px;font-size:12px}.brand{font-size:19px}.brand-sub{font-size:8px;letter-spacing:.7px}.brand>svg{width:35px;height:35px}.site-header nav a{min-height:36px}.workshop-hero{padding-top:29px;gap:30px}.hero-copy>.eyebrow{font-size:8px;letter-spacing:.8px}.hero-copy h1{font-size:clamp(43px,10.7vw,61px);letter-spacing:-2.1px;margin:19px 0 23px;line-height:1.08}.hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.8}.hero-copy>p br{display:none}.hero-actions{gap:20px;margin-top:24px;font-size:12px}.button-link{font-size:12px;padding:13px 16px;gap:23px}.workshop-peek{padding-left:0;padding-bottom:34px}.peek{padding:7px;box-shadow:4px 6px 0 #e2e0d5}.peek-label{font-size:8px;margin-bottom:6px}.peek-0{width:94%;transform:rotate(-1deg)}.peek-1{margin-top:-35px;width:61%;transform:rotate(2deg)}.peek-note{font-size:12px;left:0;bottom:3px}.process-strip{display:grid;grid-template-columns:1fr 18px 1fr;padding:17px 0;gap:10px 7px;font-size:9px}.process-strip>span:nth-child(4){display:none}.process-strip>span:nth-child(5){grid-column:1}.process-strip>span:nth-child(even){font-size:16px}.editorial-heading{display:block;margin:42px 0 28px}.editorial-heading h2{font-size:40px;letter-spacing:-1.5px;margin-top:13px}.editorial-heading>p{font-size:13px;max-width:350px;margin-top:23px}.editorial-heading>p br{display:none}.work-piece-large,.work-continuum.work-piece-large{padding:0 0 33px;margin-bottom:30px;gap:20px}.work-piece-large .work-piece-image{padding:8px 8px 0}.work-piece-large h3{font-size:42px}.work-piece-large .work-question{font-size:23px}.work-piece p{font-size:14px}.work-number{font-size:9px;margin-bottom:12px}.status-labels{font-size:8px;margin-top:17px;gap:6px}.status-labels span{padding:5px 7px}.supporting-pieces{display:block;margin-top:37px}.supporting-pieces .work-piece:nth-child(even){padding-top:0}.supporting-pieces .work-piece{margin-bottom:33px}.supporting-pieces h3{font-size:36px}.supporting-pieces .work-question{font-size:22px}.supporting-pieces .work-piece p:not(.work-question){font-size:14px}.work-piece-copy{padding:20px 0 0}.image-caption{font-size:8px;padding:10px 0}.case-link{font-size:13px}.recurring-problems{margin-top:30px}.question-list>a{gap:13px;padding:24px 0}.question-list h3{font-size:26px}.question-list p{font-size:13px}.question-list b{font-size:21px}.lab-shelf{gap:23px 17px}.lab-object>img,.lab-type-art{aspect-ratio:1.2;padding:5px}.lab-object h3{font-size:24px}.lab-object p{font-size:11px}.lab-object .eyebrow{font-size:8px}.lab-type-art{padding:13px}.lab-type-art strong{font-size:25px}.lab-type-art>span{font-size:8px;letter-spacing:1px}.wide-link{font-size:15px;padding:21px 0;margin:27px 0 45px}.work-together{display:block;margin:40px 0 55px}.work-together h2{font-size:61px;letter-spacing:-2.5px;margin:17px 0 26px}.work-together p:not(.eyebrow){font-size:14px;margin-bottom:21px}.site-footer{margin-top:25px}.lab-header{display:block;margin:36px 0 20px}.lab-header h1{font-size:64px;letter-spacing:-3px;margin:18px 0 26px;max-width:none}.lab-header>p:last-child{font-size:14px;max-width:none}.lab-page .index-name{font-size:25px;padding:0}.lab-page .index-description{font-size:12px}.lab-page .index-project{padding:20px 0}.lab-page .index-category{font-size:8px}.lab-page .category-filters{gap:4px 17px;justify-content:flex-start}.lab-page .category-filters button{font-size:11px}.lab-page .tier-filters{gap:20px}.lab-page .tier-filters button{font-size:10px}.case-study .back-link{margin:21px 0 4px;font-size:11px}.case-header{padding:17px 0 26px}.case-header>.eyebrow,.case-header>div>.eyebrow{font-size:8px;letter-spacing:.7px}.case-header h1{font-size:64px;letter-spacing:-3px;margin:18px 0}.case-subtitle{font-size:29px;line-height:1.25}.case-introduction>p{font-size:15px}.case-introduction{margin-top:23px}.case-navigation{gap:0 18px;font-size:10px;padding:6px 0}.case-navigation a{min-height:35px}.case-study .evidence-lead{margin-top:23px}.case-study .evidence-image{padding:6px 6px 31px}.case-study .evidence-figure figcaption{padding-top:13px}.case-study .evidence-figure figcaption>p{font-size:12px}.case-study .image-open{font-size:9px;bottom:9px}.case-at-a-glance{display:block;margin-top:25px}.case-at-a-glance>div,.case-at-a-glance>div+div{border-left:0;padding:22px 0}.case-at-a-glance>div+div{border-top:1px solid var(--line)}.case-at-a-glance p{font-size:15px;line-height:1.8;margin-top:12px}.case-at-a-glance .eyebrow{font-size:9px}.case-ownership{display:block;padding:12px 0}.case-ownership>div{padding:12px 0}.case-ownership dd{font-size:12px}.case-in-use,.case-decisions,.case-evolution,.case-technical{padding-top:42px}.case-section-title h2{font-size:35px;letter-spacing:-1.2px;margin:12px 0 23px}.case-narrative>article{display:block;padding:24px 0}.case-narrative h3{font-size:27px;max-width:none;margin-bottom:17px}.case-narrative p{font-size:15px;line-height:1.85}.case-gallery{display:block;margin:16px 0 35px}.case-gallery>.evidence-figure{margin-bottom:30px!important}.case-gallery img{aspect-ratio:auto}.case-diagrams{padding:22px 18px;margin-top:20px}.case-diagrams .workflow-intro h2{font-size:31px}.case-diagrams .workflow-intro>p{font-size:13px}.case-diagrams .workflow-steps h3{font-size:27px}.case-diagrams .workflow-steps p{font-size:13px}.case-diagrams .workflow-steps{margin-top:23px}.decision-list article{gap:12px 14px;padding:25px 0;grid-template-columns:20px 1fr}.decision-list h3{font-size:26px}.decision-list p{font-size:14px;line-height:1.85}.case-evolution ol{display:block;margin-top:28px}.case-evolution li{padding:24px 0}.case-evolution li+li{border-top:1px solid var(--line)}.case-evolution h3{font-size:27px;margin:12px 0}.case-evolution p{font-size:14px}.technical-details summary,.full-roadmap>summary{font-size:16px;min-height:70px}.technical-details details>div{font-size:14px}.section-deck{font-size:14px;margin-top:-5px}.case-today{padding-top:26px;margin-top:38px}.case-today p,.case-today li{font-size:14px}.case-next>div{display:block;margin:22px 0}.case-next>div>a{display:block;margin-bottom:27px}.case-next h2{font-size:31px}.case-next p:not(.eyebrow){font-size:14px}.case-audio{padding:25px 20px;margin:25px 0}.case-audio h2{font-size:29px}.case-audio p:not(.eyebrow){font-size:13px}.story-page:not(.case-study) .story-header h1{font-size:49px;letter-spacing:-2px}.story-page .story-deck{font-size:18px}.contact-introduction>p:not(.eyebrow){font-size:15px}.contact-introduction>p:nth-last-of-type(1){display:block}.contact-page .letter-panel{margin-top:29px}.contact-page .contact-introduction h1{font-size:65px}.contact-page .letter-heading{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.site-header nav,.site-footer,.case-navigation,.case-next,.media-source{display:none}details>div{display:block!important}:root{--page:100%}body{background:white}.case-header{display:block}.case-header h1{font-size:50px}.case-gallery{display:block}.evidence-figure{break-inside:avoid;margin-bottom:20px}.case-in-use,.case-decisions,.case-evolution,.case-technical{padding-top:30px}}
.background-link{display:inline-block;font-size:12px;border-bottom:1px solid var(--line);padding:10px 0;color:var(--muted);margin-top:8px;min-height:44px}.background-link:hover{color:var(--blue);border-color:var(--blue)}
.lab-object h3,.lab-type-art strong,.case-header h1{overflow-wrap:anywhere}
.question-list>article{display:grid;grid-template-columns:25px 1fr 1fr;gap:28px;padding:29px 0;border-bottom:1px solid var(--line);align-items:start}.question-list>article>span{color:var(--accent);font-size:10px;margin-top:6px}.question-list nav{display:flex;flex-wrap:wrap;gap:4px 20px;margin-top:12px}.question-list nav a{font-size:11px;color:var(--blue);padding:10px 0;min-height:38px}.question-list nav a:hover{text-decoration:underline;text-underline-offset:4px}.architecture-map{margin:35px 0 50px;padding:32px 36px;background:#e7ebdf;border:1px solid #c5cdba}.architecture-map>div:first-child{max-width:900px}.architecture-map h2{font:450 39px/1.13 var(--serif);letter-spacing:-1px;margin:14px 0 18px}.architecture-map>div:first-child>p:last-child{font-size:15px;color:var(--muted);max-width:780px}.map-core{background:#2b3a36;color:#f3f3e8;text-align:center;padding:21px;font:450 25px/1.3 var(--serif);margin:30px auto 0;max-width:670px}.map-core>span{display:block;font:12px/1.7 var(--sans);margin-top:8px;color:#d7dfce}.map-domains{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:30px;border-top:1px solid #93a08c;padding-top:20px}.map-domains::before{content:'';position:absolute;top:-31px;left:50%;width:1px;height:30px;background:#93a08c}.map-domains>div{border:1px solid #abb6a1;background:#f4f5ed;padding:19px 21px}.map-domains h3{font:450 24px var(--serif);margin-bottom:9px}.map-domains p{font-size:12px;color:var(--muted)}.architecture-caption{margin-top:22px;font-size:11px;color:var(--muted);max-width:780px}.music-architecture{background:#e7e8e3}.music-inputs{display:grid;grid-template-columns:1fr 65px 1fr;align-items:center;text-align:center;max-width:670px;margin:28px auto 0}.music-inputs>div{padding:18px;background:#f7f5ed;border:1px solid #bcc4b6}.music-inputs h3,.music-layers h3{font:450 25px/1.2 var(--serif);margin-bottom:8px}.music-inputs p,.music-layers p{font-size:12px;color:var(--muted)}.music-inputs>span{font-size:25px;color:#526b53}.music-architecture .map-core{margin-top:20px}.music-layers{text-align:center;max-width:670px;margin:20px auto 0}.music-layers>div{padding:20px;border:1px solid #aeb8a6}.music-layers>span{display:block;font-size:23px;margin:6px 0;color:var(--blue)}
@media(max-width:800px){.question-list>article{grid-template-columns:20px 1fr;gap:14px 20px}.question-list>article>div{grid-column:2}.architecture-map{padding:26px}.architecture-map h2{font-size:34px}.map-domains{gap:12px}.map-domains>div{padding:16px}.map-domains h3{font-size:23px}}
@media(max-width:540px){.question-list>article{gap:13px;padding:24px 0}.question-list nav{gap:0 15px}.question-list nav a{font-size:10px}.architecture-map{padding:23px 18px;margin:28px 0 35px}.architecture-map h2{font-size:31px}.architecture-map>div:first-child>p:last-child{font-size:14px}.map-core{font-size:23px;padding:19px 12px}.map-core>span{font-size:11px}.map-domains{grid-template-columns:1fr 1fr;gap:10px;padding-top:16px}.map-domains>div{padding:14px 12px}.map-domains h3{font-size:18px;overflow-wrap:normal}.map-domains p{font-size:11px}.music-inputs{grid-template-columns:1fr 22px 1fr}.music-inputs>div{padding:17px 8px}.music-inputs h3,.music-layers h3{font-size:23px}.music-inputs p,.music-layers p{font-size:11px}.music-inputs>span{font-size:15px}}

@media(max-width:380px){.map-domains{grid-template-columns:1fr}.map-domains h3{font-size:23px}}

/* Give visitors a concrete result and a clear route into a collaboration. */
.work-piece .work-result{font-size:13px;line-height:1.7;border-left:2px solid #8ba48d;padding:1px 0 1px 15px;margin-top:20px;color:#3e5141;max-width:470px}.work-result>span,.case-result>span{display:block;font-size:9px;letter-spacing:1px;text-transform:uppercase;margin-bottom:5px;color:#465e44}.case-introduction>.case-result{font-size:14px;line-height:1.7;border-left:2px solid #8ba48d;padding:2px 0 2px 16px;margin:20px 0 0;color:#3e5141}.ownership-details{border-bottom:1px solid var(--line)}.ownership-details>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 0;font-size:13px;cursor:pointer;list-style:none;min-height:56px}.ownership-details>summary::-webkit-details-marker{display:none}.ownership-details>summary>span{font-size:23px;font-weight:300;color:var(--blue);transition:transform .15s}.ownership-details[open]>summary>span{transform:rotate(45deg)}.ownership-details>dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin:0;padding:5px 0 26px}.ownership-details dt{font-size:11px;color:var(--blue);margin-bottom:10px}.ownership-details dd{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.work-together .engagement-note{font-size:12px;margin:0 0 24px}.work-together .button-link{gap:20px}
@media(max-width:800px){.ownership-details>dl{grid-template-columns:1fr;gap:23px;max-width:680px}.work-piece .work-result{font-size:13px}.case-introduction>.case-result{font-size:14px}}
@media(max-width:540px){.work-piece .work-result{margin-top:18px;padding-left:12px}.ownership-details>summary{font-size:12px}.ownership-details dd{font-size:13px}.case-introduction>.case-result{font-size:14px;padding-left:13px}.work-together .button-link{font-size:12px}}

.contact-page .contact-main{grid-template-areas:"intro letter" "process letter";gap:32px 80px;align-items:start}.contact-introduction{grid-area:intro}.contact-page .letter-panel{grid-area:letter}.contact-process{grid-area:process;max-width:550px;border-top:1px solid var(--line);padding-top:25px}.contact-process h2{font:450 30px/1.25 var(--serif);letter-spacing:-.7px;margin:0 0 21px}.contact-process ol{list-style:none;counter-reset:contact-step;margin:0;padding:0}.contact-process li{counter-increment:contact-step;position:relative;padding:0 0 22px 34px}.contact-process li::before{content:"0" counter(contact-step);position:absolute;left:0;top:3px;font-size:9px;letter-spacing:1px;color:var(--accent)}.contact-process strong{display:block;font-size:14px;font-weight:500;line-height:1.6;margin-bottom:5px}.contact-process li>span{display:block;font-size:13px;line-height:1.8;color:var(--muted);max-width:440px}.contact-approach{border-top:1px solid var(--line);padding-top:24px;color:var(--muted)}.contact-approach h3{font:450 25px/1.3 var(--serif);letter-spacing:-.5px;color:var(--ink);margin:0 0 16px}.contact-approach p{font-size:14px;line-height:1.85;margin:0 0 16px}.contact-approach p:last-child{margin-bottom:0}.contact-project-context{font-size:12px;line-height:1.7;color:var(--muted);padding:17px 0 0}.contact-project-context a,.contact-fallback a,.contact-page noscript a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.contact-fallback{font-size:12px;line-height:1.7;color:var(--muted);border-top:1px solid var(--line);margin-top:20px;padding-top:15px}.contact-alternative .text-link{display:inline-flex;font-size:13px;min-height:44px;align-items:center;margin-top:12px;color:var(--blue)}.contact-page .message-caption{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;align-items:start;line-height:1.7}.contact-page #character-count{white-space:nowrap}.contact-page noscript p{font-size:12px;line-height:1.7;color:var(--muted)}
@media(max-width:1100px){.contact-page .contact-main{gap:30px 45px}.contact-process h2{font-size:28px}}
@media(max-width:800px){.contact-page .contact-main{gap:25px 30px}.contact-process h2{font-size:26px}.contact-page .message-caption{grid-template-columns:1fr;gap:5px}.contact-page #character-count{justify-self:end}}
@media(max-width:540px){.contact-page .contact-main{display:flex;flex-direction:column;gap:0}.contact-introduction,.contact-page .letter-panel,.contact-process{width:100%;min-width:0}.contact-process{margin-top:38px;padding-top:24px}.contact-process h2{font-size:29px}.contact-process strong{font-size:14px}.contact-process li>span{font-size:13px}.contact-project-context{font-size:12px}.contact-page .message-caption{font-size:11px}.contact-page .background-link{margin-top:0}}
