/* A project-led portfolio: distinct brand worlds, then the decisions behind them. */
.portfolio-section{background:#171819;color:#f4f5f1;padding:92px 0 72px}
.portfolio-heading{margin-bottom:70px}
.portfolio-heading>.eyebrow{color:#b9beb1;margin-bottom:30px;font-size:.8125rem}
.portfolio-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;align-items:end}
.portfolio-intro>h2{font-size:clamp(3.9rem,7.6vw,7rem);line-height:1;letter-spacing:-.065em}
.portfolio-intro>h2>span{font-family:Georgia,serif;font-style:italic;color:var(--mint);font-weight:400;letter-spacing:-.06em}
.portfolio-intro>p{font-size:1.05rem;line-height:1.8;color:#b5bcae;max-width:440px;padding-bottom:6px}
.portfolio-project{margin-bottom:72px}
.project-meta{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff36;padding:21px 0;font-size:.8125rem;letter-spacing:.07em;color:#bfc7b7}
.project-meta>span:first-child{color:#eef2e7;font-weight:600}
.project-cover{position:relative;height:600px;overflow:hidden;isolation:isolate}
.project-cover img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.project-cover:hover img{transform:scale(1.025)}
.cover-open{position:absolute;inset:0;z-index:3;border:0;border-radius:0;padding:0;background:none;text-align:left}
.cover-open>span{position:absolute;right:30px;bottom:30px;display:flex;gap:28px;align-items:center;padding:16px 20px;background:#171b17;color:white;font-size:.875rem;border:1px solid #ffffff35;border-radius:100px;transition:background .2s,color .2s}
.cover-open:hover>span{background:var(--mint);color:#20251a;border-color:var(--mint)}
.cover-open:focus-visible{outline:3px solid var(--mint);outline-offset:-6px}
.cover-open .icon{width:21px;height:21px}
.cover-overline{font-size:.75rem;letter-spacing:.13em;line-height:1.6}
.architecture-cover{display:grid;grid-template-columns:1.5fr 1fr;background:#eeeae0}
.architecture-cover-main{position:relative;overflow:hidden}
.architecture-cover-main:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#07192450,transparent 30%,#06111b12 55%,#04101bbc);pointer-events:none}
.architecture-cover-main>img{object-position:55% center}
.architecture-cover-main>.cover-overline{position:absolute;left:38px;top:35px;z-index:1;color:white}
.cover-wordmark{position:absolute;bottom:31px;left:36px;right:20px;font-size:clamp(2.8rem,5.9vw,5.8rem);font-weight:400;line-height:1.1;letter-spacing:-.05em;z-index:1;color:white}
.architecture-cover-detail{display:grid;grid-template-rows:1fr 1fr;min-width:0;overflow:hidden;color:#393f31}
.architecture-cover-type{padding:35px 38px 28px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:15px}
.architecture-cover-type>span:first-child{font-size:.625rem;letter-spacing:.12em}
.architecture-cover-type>p{font-family:Georgia,serif;font-size:clamp(2rem,4vw,4rem);line-height:1.08;letter-spacing:-.045em}
.architecture-cover-type>p em{font-weight:400}
.cover-rule{width:65px;height:1px;background:#4c5640;margin-top:9px}
.architecture-cover-detail>img{min-height:0;object-position:68% center}
.project-story{display:grid;grid-template-columns:1.2fr 1fr;gap:85px;padding-top:30px}
.project-discipline{font-size:.75rem;letter-spacing:.07em;color:#a8b09d;margin-bottom:13px;line-height:1.6}
.project-story h3{font-size:clamp(1.7rem,2.8vw,2.65rem);font-weight:400;line-height:1.2;letter-spacing:-.04em}
.project-story>div:last-child>p{font-size:1rem;line-height:1.8;color:#b4bcaa;max-width:490px}
.project-story .text-link{font-size:.875rem;color:#edf3e4;margin-top:14px;border-bottom:1px solid #94a380;padding-bottom:8px}
.project-story .text-link:hover{color:var(--mint);border-color:var(--mint)}
.dental-cover{display:grid;grid-template-columns:1.1fr 1fr;background:#dce6dd}
.dental-cover-identity{position:relative;padding:35px 40px;overflow:hidden;color:#2e493b}
.dental-cover-identity>.cover-overline{font-size:.6875rem;letter-spacing:.095em}
.linden-wordmark{display:block;font-family:Georgia,serif;font-size:clamp(5rem,11vw,10rem);font-weight:400;letter-spacing:-.07em;line-height:.95;margin-top:37px}
.linden-wordmark>span{display:block;font-family:Manrope,Arial,sans-serif;letter-spacing:.35em;font-size:.6875rem;line-height:1.5;margin:18px 0 0 6px}
.dental-detail-image{position:absolute;left:0;bottom:0;width:53%;height:44%;overflow:hidden}
.dental-detail-image>img{object-position:40% center}
.dental-cover-identity>p{position:absolute;right:23px;bottom:80px;width:37%;font-family:Georgia,serif;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.2;letter-spacing:-.03em}
.dental-cover-portrait{position:relative;overflow:hidden}
.dental-cover-portrait>img{object-position:79% center}
.dental-cover-portrait:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#16362d80)}
.dental-cover-portrait>span{position:absolute;left:30px;bottom:110px;color:white;font-size:1rem;line-height:1.6;z-index:1}
.industry-cover{background:#0b192b;color:white}
.industry-cover-image{position:absolute;inset:0;object-position:70% center}
.industry-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#06101ddd,#06101d20 70%),linear-gradient(0deg,#06101dee,transparent 55%);z-index:0}
.industry-cover-content{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:35px 40px 42px}
.industrial-topline{display:flex;justify-content:space-between;gap:30px;font-size:.75rem;letter-spacing:.12em;color:#d0e4ff}
.industry-cover-content>p{font-size:clamp(2.5rem,5.8vw,5.2rem);font-weight:600;line-height:1.04;letter-spacing:-.055em;margin-top:20px}
.industry-cover-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.werkform-wordmark{font-size:clamp(2.8rem,7.2vw,6.6rem);font-weight:700;letter-spacing:-.075em;line-height:1.05}
.werkform-wordmark>span{color:#83b8ff}
.industry-cover-bottom>span:last-child{font-size:.625rem;letter-spacing:.11em;line-height:2;color:#b0c9ea;margin-bottom:82px}
.portfolio-outro{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:40px 0 0;border-top:1px solid #ffffff36}
.portfolio-outro>p{font-size:clamp(1.75rem,3vw,2.7rem);font-weight:400;letter-spacing:-.04em;line-height:1.2}
.portfolio-outro>.button{background:var(--mint);color:#20251a;border-color:var(--mint)}

/* The expanded study shows the actual interface and supporting design material. */
#case-dialog{width:min(1280px,calc(100% - 40px));max-height:94svh}
#case-dialog .dialog-inner{padding:44px}
#case-dialog .dialog-inner>h2{max-width:970px;font-size:clamp(2.1rem,4.4vw,4.2rem)}
#case-dialog .dialog-description{max-width:900px;font-size:1.05rem;margin-top:23px}
.case-viewbar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff30;margin-top:35px;padding:22px 0;font-size:.875rem;color:#c0cab5}
.case-viewbar>div{display:flex;gap:4px;background:#33392e;padding:4px;border-radius:100px}
.case-viewbar button{border:0;background:none;padding:9px 19px;min-height:40px;border-radius:100px;color:#cbd5c0;font-size:.8125rem}
.case-viewbar button[aria-pressed=true]{background:var(--mint);color:#263219}
.case-preview-stage{background:#353a32;padding:26px;overflow:hidden;border-radius:3px}
.case-preview-stage .dialog-preview{margin:0 auto;border:0;border-radius:2px;width:100%;box-shadow:0 12px 40px #0003}
.case-preview-stage .dialog-preview.is-mobile{width:min(100%,360px);border:6px solid #141c16;border-radius:22px}
.case-gallery{margin-top:28px;display:grid;grid-template-columns:1.2fr 1fr;gap:26px;align-items:stretch}
.case-gallery:empty{display:none}
.case-gallery>figure{margin:0;background:#0f1c16;overflow:hidden;position:relative;min-height:280px}
.case-gallery img{width:100%;height:100%;max-height:420px;object-fit:cover}
.case-gallery figcaption{position:absolute;left:20px;bottom:17px;right:20px;color:white;font-size:.75rem;letter-spacing:.05em;text-shadow:0 1px 6px #000b}
.case-identity{padding:32px;display:flex;flex-direction:column;justify-content:space-between;gap:25px;background:#eaece2;color:#263726}
.case-identity>span{font-size:.75rem;letter-spacing:.09em}
.case-identity>strong{font-size:clamp(2rem,4.3vw,4rem);line-height:1.1;letter-spacing:-.05em;font-weight:400}
.case-identity>p{font-size:.9375rem;line-height:1.7}
.case-identity-dental>strong{font-family:Georgia,serif;font-size:5rem;letter-spacing:-.07em}
.case-identity-industry{background:#142338;color:#d6e6ff}
.case-identity-industry>strong{font-weight:700}
.case-palette{display:flex;gap:8px}
.case-palette>span{height:32px;flex:1;background:var(--palette-color);border:1px solid #0001}
#case-dialog .case-notes{margin:42px 0 12px;gap:30px;padding-top:30px;border-top:1px solid #ffffff30}
#case-dialog .case-notes h3{font-size:1.125rem;color:#e7efdc;margin-bottom:12px}
#case-dialog .case-notes p{font-size:1rem;line-height:1.8}
.is-mobile .design-nav{min-height:70px;padding:18px 20px}
.is-mobile .design-nav-items{display:none}
.is-mobile .architecture-brand{font-size:19px}
.is-mobile .architecture-brand>span{font-size:7px;margin-top:6px}
.is-mobile .architecture-image{aspect-ratio:auto;height:380px}
.is-mobile .architecture-copy{left:24px;top:65px}
.is-mobile .architecture-copy>p{font-size:9px;letter-spacing:.08em}
.is-mobile .architecture-copy h2{font-size:43px;margin-top:22px}
.is-mobile .design-cta{font-size:11px;margin-top:26px;padding:12px 17px;gap:20px}
.is-mobile .design-cta .icon{width:15px;height:15px}
.is-mobile .image-index{font-size:9px;left:24px;bottom:20px}
.is-mobile .image-caption{font-size:6px;right:20px;bottom:22px}
.is-mobile .design-bottom{padding:23px;gap:25px}
.is-mobile .design-bottom>span{font-size:19px;min-width:100px}
.is-mobile .design-bottom>p{font-size:10px;max-width:170px}
.is-mobile .design-bottom>.icon{display:none}
.is-mobile .dental-brand{font-size:29px}
.is-mobile .dental-brand>span{font-size:7px;margin-top:9px}
.is-mobile .dental-hero{aspect-ratio:auto;min-height:390px}
.is-mobile .dental-hero>img{object-position:65% center}
.is-mobile .dental-hero:after{background:linear-gradient(90deg,#e8edeaf7,#e8edeada 45%,#e8edea20)}
.is-mobile .dental-copy{width:100%;padding:47px 23px}
.is-mobile .design-eyebrow{font-size:8px;max-width:185px}
.is-mobile .dental-copy h2{font-size:40px;margin-top:25px;line-height:1.1}
.is-mobile .dental-copy>p:not(.design-eyebrow){font-size:11px;margin-top:21px}
.is-mobile .dental-bottom{font-size:8px;padding:25px 18px;gap:10px;min-height:80px}
.is-mobile .industry-brand{font-size:24px}
.is-mobile .industry-brand>small{font-size:6px;margin-top:9px}
.is-mobile .industry-hero{aspect-ratio:auto;min-height:390px}
.is-mobile .industry-copy{padding:47px 23px}
.is-mobile .industry-copy h2{font-size:38px;margin-top:25px}
.is-mobile .industry-copy>p:not(.design-eyebrow){font-size:12px;margin-top:22px}
.is-mobile .industry-bottom{font-size:7px;gap:10px;min-height:80px;padding:25px 18px}
.is-mobile .industry-bottom>.icon{width:17px;height:17px}
@media(max-width:1100px){
 .portfolio-intro{gap:60px}.project-cover{height:510px}.project-story{gap:50px}.cover-wordmark{font-size:5.7vw}.architecture-cover-type{padding:28px}.dental-cover-identity{padding:30px}.linden-wordmark{margin-top:32px}.dental-cover-identity>p{right:17px;bottom:66px;font-size:1.6rem}.industry-cover-content{padding:30px}.industry-cover-bottom>span:last-child{font-size:.6rem;margin-bottom:85px}
}
@media(max-width:800px){
 .portfolio-intro{gap:35px;grid-template-columns:1.1fr 1fr}.portfolio-intro>h2{font-size:4rem}.portfolio-intro>p{font-size:1rem}.project-cover{height:450px}.architecture-cover-type{padding:24px}.architecture-cover-type>p{font-size:2.5rem}.architecture-cover-main>.cover-overline{left:24px;top:24px;font-size:.625rem}.cover-wordmark{left:23px;bottom:25px}.cover-open>span{right:20px;bottom:20px;font-size:.8125rem;padding:13px 17px;gap:18px}.project-story{gap:35px}.project-story h3{font-size:1.8rem}.project-story>div:last-child>p{font-size:.9375rem}.dental-cover-identity>.cover-overline{font-size:.625rem}.dental-cover-identity{padding:25px}.linden-wordmark{font-size:6rem}.dental-cover-identity>p{font-size:1.35rem;bottom:65px}.dental-cover-portrait>span{font-size:.875rem;left:22px;bottom:100px}.industrial-topline{font-size:.625rem}.industry-cover-content>p{font-size:3rem}.werkform-wordmark{font-size:4rem}.industry-cover-bottom>span:last-child{display:none}.portfolio-outro>p{font-size:2rem}.portfolio-outro{gap:25px}
 #case-dialog .dialog-inner{padding:30px}.case-preview-stage{padding:18px}.case-identity{padding:25px}.case-gallery{gap:18px}.case-identity>strong{font-size:2.5rem}
}
@media(max-width:650px){
 .portfolio-section{padding:62px 0 52px}.portfolio-heading{margin-bottom:40px}.portfolio-heading>.eyebrow{font-size:.75rem;margin-bottom:24px}.portfolio-intro{display:block}.portfolio-intro>h2{font-size:clamp(3.4rem,13vw,5rem)}.portfolio-intro>p{margin-top:25px;font-size:1rem;max-width:480px;line-height:1.75}.portfolio-project{margin-bottom:45px}
 .project-meta{font-size:.6875rem;letter-spacing:.045em;padding:18px 0;gap:12px;line-height:1.7}.project-meta>span:last-child{text-align:right}
 .project-cover{height:485px}.architecture-cover{grid-template-columns:1fr;grid-template-rows:300px 185px}.architecture-cover-main>img{object-position:center 58%}.architecture-cover-main>.cover-overline{left:23px;top:23px;font-size:.625rem}.cover-wordmark{font-size:clamp(2.5rem,10.7vw,4.5rem);left:22px;bottom:21px}
 .architecture-cover-detail{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.architecture-cover-type{padding:21px;gap:10px}.architecture-cover-type>span:first-child{font-size:.5rem;letter-spacing:.05em}.architecture-cover-type>p{font-size:clamp(1.55rem,6vw,2.4rem)}.cover-rule{width:42px;margin-top:0}.architecture-cover-detail>img{object-position:68% center}
 .cover-open>span{right:14px;bottom:14px;padding:12px 15px;min-height:46px;gap:14px;font-size:.75rem}.cover-open .icon{width:18px;height:18px}
 .project-story{display:block;padding-top:23px}.project-discipline{font-size:.6875rem;margin-bottom:11px}.project-story h3{font-size:1.8rem;line-height:1.2}.project-story>div:last-child{margin-top:18px}.project-story>div:last-child>p{font-size:1rem;line-height:1.8}.project-story .text-link{font-size:.875rem;margin-top:13px}
 .dental-cover{grid-template-columns:.9fr 1fr;height:450px}.dental-cover-identity{padding:22px 15px}.dental-cover-identity>.cover-overline{font-size:.48rem;letter-spacing:.035em;line-height:1.8;display:block;max-width:125px}.linden-wordmark{font-size:clamp(3rem,13vw,5rem);margin-top:40px}.linden-wordmark>span{font-size:.48rem;letter-spacing:.18em;margin:10px 0 0 2px}.dental-detail-image{width:100%;height:32%}.dental-cover-identity>p{font-size:1.3rem;right:auto;left:16px;bottom:165px;width:90%;line-height:1.2}.dental-cover-portrait>img{object-position:79% center}.dental-cover-portrait>span{font-size:.75rem;left:16px;bottom:98px}.dental-cover .cover-open>span{font-size:.6875rem;gap:10px}
 .industry-cover{height:430px}.industry-cover-content{padding:24px 22px 85px}.industrial-topline{font-size:.55rem;letter-spacing:.065em;gap:25px;line-height:1.6}.industrial-topline>span:last-child{max-width:110px;text-align:right}.industry-cover-content>p{font-size:clamp(2.3rem,8.7vw,3.5rem);margin-top:20px}.werkform-wordmark{font-size:clamp(2.5rem,10.9vw,4rem)}.industry-cover-image{object-position:65% center}
 .portfolio-outro{display:block;padding-top:30px}.portfolio-outro>p{font-size:1.8rem}.portfolio-outro>.button{margin-top:24px;font-size:.875rem}
 #case-dialog{width:calc(100% - 16px)}#case-dialog .dialog-inner{padding:26px 18px}#case-dialog .dialog-inner>h2{font-size:2rem}#case-dialog .dialog-description{font-size:1rem;line-height:1.75}.case-viewbar{margin-top:25px;font-size:.8125rem;gap:10px;align-items:center}.case-viewbar>span{max-width:105px}.case-viewbar button{padding:8px 12px;font-size:.75rem;min-height:40px}.case-preview-stage{padding:7px;margin-inline:-8px}.case-preview-stage .dialog-preview.is-mobile{width:min(100%,320px)}.case-gallery{grid-template-columns:1fr;gap:15px;margin-top:20px}.case-gallery>figure{min-height:0;aspect-ratio:3/2}.case-gallery img{max-height:none}.case-identity{padding:25px;gap:22px}.case-identity>strong{font-size:2.5rem}.case-identity>p{font-size:1rem}#case-dialog .case-notes{grid-template-columns:1fr;gap:25px;margin-top:28px;padding-top:25px}#case-dialog .case-notes p{font-size:1rem}.case-gallery figcaption{font-size:.6875rem}
}
@media(prefers-reduced-motion:reduce){.project-cover img,.cover-open>span{transition:none}}
@media(max-width:650px){
 #case-preview.is-desktop .design-nav{min-height:7.2cqw;padding:1.8cqw 4cqw;gap:2cqw}
 #case-preview.is-desktop .design-nav-items{display:flex}
 #case-preview.is-desktop .architecture-brand{font-size:2cqw}
 #case-preview.is-desktop .architecture-brand>span{font-size:.62cqw;margin-top:.7cqw}
 #case-preview.is-desktop .architecture-image{aspect-ratio:2.35;height:auto}
 #case-preview.is-desktop .architecture-copy{left:4.5cqw;top:8cqw}
 #case-preview.is-desktop .architecture-copy>p{font-size:.82cqw}
 #case-preview.is-desktop .architecture-copy h2{font-size:5.4cqw;margin-top:2cqw}
 #case-preview.is-desktop .design-cta{font-size:.95cqw;margin-top:2.5cqw;padding:1.1cqw 1.6cqw;gap:2.8cqw}
 #case-preview.is-desktop .design-cta .icon{width:1.3cqw;height:1.3cqw}
 #case-preview.is-desktop .image-index{font-size:.65cqw;bottom:2cqw;left:4.5cqw}
 #case-preview.is-desktop .image-caption{font-size:.65cqw;bottom:2cqw;right:4.5cqw}
 #case-preview.is-desktop .design-bottom{padding:2.2cqw 4.5cqw;gap:7cqw}
 #case-preview.is-desktop .design-bottom>span{font-size:1.9cqw;min-width:20%}
 #case-preview.is-desktop .design-bottom>p{font-size:1cqw;max-width:40cqw}
 #case-preview.is-desktop .design-bottom>.icon{display:block}
 #case-preview.is-desktop .dental-brand{font-size:3.3cqw}
 #case-preview.is-desktop .dental-brand>span{font-size:.6cqw;margin-top:1cqw}
 #case-preview.is-desktop .dental-hero,#case-preview.is-desktop .industry-hero{aspect-ratio:2.35;min-height:0}
 #case-preview.is-desktop .dental-hero>img{object-position:center}
 #case-preview.is-desktop .dental-hero:after{background:linear-gradient(90deg,#e8edeaf5 5%,#e8edeae0 26%,#e8edea00 63%)}
 #case-preview.is-desktop .dental-copy{width:65%;padding:6cqw 4.5cqw}
 #case-preview.is-desktop .design-eyebrow{font-size:.77cqw;max-width:none}
 #case-preview.is-desktop .dental-copy h2,#case-preview.is-desktop .industry-copy h2{font-size:5cqw;margin-top:2cqw}
 #case-preview.is-desktop .dental-copy>p:not(.design-eyebrow){font-size:1.05cqw;margin-top:1.6cqw}
 #case-preview.is-desktop .dental-bottom{font-size:.9cqw;min-height:9.8cqw;padding:3cqw 4.5cqw}
 #case-preview.is-desktop .industry-brand{font-size:2.1cqw}
 #case-preview.is-desktop .industry-brand>small{font-size:.58cqw;margin-top:1cqw}
 #case-preview.is-desktop .industry-copy{padding:6cqw 4.5cqw}
 #case-preview.is-desktop .industry-copy>p:not(.design-eyebrow){font-size:1.1cqw;margin-top:1.8cqw}
 #case-preview.is-desktop .industry-bottom{font-size:.75cqw;min-height:0;padding:3.7cqw 4.5cqw}
 #case-preview.is-desktop .industry-bottom .icon{width:1.7cqw;height:1.7cqw}
}
