@import url('base.css');
:root{--pad:clamp(24px,6vw,100px);--measure:1320px;--section-space:clamp(80px,9vw,150px)}
body{font-size:17px;line-height:1.7}h1,h2,h3{overflow-wrap:break-word}a,button,summary{touch-action:manipulation}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #147873;outline-offset:5px}a:hover{color:inherit}.wrap{max-width:var(--measure);margin:auto}.section{padding:var(--section-space) var(--pad)}.header{padding-top:32px;padding-bottom:32px;border-color:#231f1c55}.brand{width:200px}.nav{gap:36px;font-size:15px}.nav a{padding:10px 0}.nav a[aria-current=page]{border-bottom:2px solid var(--ink)}.poster-hero{padding-top:80px;padding-bottom:90px}.poster-hero h1{font-size:clamp(68px,11.8vw,184px);line-height:1.06;letter-spacing:-.045em}.poster-hero .hero-bottom{margin-top:55px;gap:55px}.poster-hero .hero-bottom .tagline{font-size:36px}.poster-work{padding-bottom:115px}.poster-work .work-grid{gap:50px}.poster-work .project:first-child{margin-top:85px}.poster-work .project img{aspect-ratio:1.55}.project figcaption{padding-top:23px;gap:16px}.project p{line-height:1.7;margin-top:15px}.project h3{font:30px var(--condensed)}.work-grid{gap:70px 50px}.split{gap:clamp(45px,8vw,120px);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.section-top{margin-bottom:55px}.section-top h2{font-size:clamp(40px,5vw,70px)}.section-top .text-link{flex-shrink:0}.section-top p{font-size:17px}.poster .intro{padding-top:var(--section-space)}.poster .intro h2{font-size:clamp(42px,4.1vw,62px);line-height:1.15;letter-spacing:-.02em}.intro p{font-size:19px;line-height:1.8}.intro p+p{margin-top:28px}.poster .services h2{font-size:clamp(38px,4.1vw,60px);line-height:1.2}.service-list details{padding:27px 0}.service-list summary{font-size:27px;line-height:1.35}.service-list summary::after{flex-shrink:0}.service-list p{padding-top:23px}.button{padding:16px 30px;line-height:1.5}.text-link{padding:10px 0}.ai p{line-height:1.8}.ai-proof a{padding:26px 0;line-height:1.4}.news-item{padding:30px 0}.news-item h3{font-size:31px;line-height:1.35}.footer{padding-top:100px}.footer h2{line-height:1.15;margin-bottom:50px}.footer-main{gap:55px}.footer-bottom{padding-bottom:10px}.footer-nav{display:flex;gap:28px;flex-wrap:wrap;margin-top:55px;font-size:14px}.footer .button{margin-top:22px}.page-hero{background:var(--coral);padding:80px var(--pad) 95px}.page-hero h1{font:clamp(60px,8.5vw,130px)/1.08 var(--slab);letter-spacing:-.04em;max-width:16ch}.page-hero .lede{font-size:21px;line-height:1.65;max-width:50ch;margin-top:38px}.page-hero .text-link{margin-top:30px}.page-hero .hero-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:85px;align-items:end}.hero-row h1{max-width:13ch}.hero-row .lede{font-size:20px;margin:0}.breadcrumb{font-size:14px;margin-bottom:30px;display:flex;gap:16px;flex-wrap:wrap}.breadcrumb a{border-bottom:1px solid}.large-heading{font:clamp(40px,5vw,72px)/1.13 var(--slab);letter-spacing:-.025em;max-width:18ch}.serif-heading{font:clamp(38px,4.5vw,64px)/1.13 var(--serif)}.body-copy p+p{margin-top:25px}.body-copy h2,.body-copy h3{font-family:var(--serif);line-height:1.3;margin:45px 0 22px}.body-copy h2{font-size:36px}.body-copy h3{font-size:29px}.body-copy p{font-size:18px;line-height:1.85}.body-copy li{margin-bottom:15px}.stats-row{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:75px;padding-top:45px}.stats-row strong{display:block;font:40px var(--serif);margin-bottom:12px}.stats-row span{font-size:14px}.browse-controls{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:55px}.field-label{display:block;margin-bottom:10px;font-size:14px;font-weight:bold}.field{width:100%;padding:14px 16px;border:1px solid #9a9183;border-radius:0;color:var(--ink);background:transparent;min-height:54px}.filter-status{font-size:14px;margin-bottom:35px}.archive-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:75px 50px}.archive-grid .project img{aspect-ratio:1.5;background:var(--sand);object-fit:contain}.archive-grid .project[hidden]{display:none}.empty-message{padding:50px 0;font:30px var(--serif)}.featured-spread{margin-top:50px}.featured-spread img{aspect-ratio:1.9;object-fit:cover}.case-head{padding-bottom:65px}.case-head h1{font-size:clamp(52px,6.5vw,96px);max-width:19ch;line-height:1.15}.case-meta{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:45px;border-top:1px solid #231f1c66;padding-top:30px;font-size:16px}.case-meta dt{font-weight:bold;margin-bottom:9px}.case-meta dd{margin:0;max-width:55ch}.case-hero-image{padding:0 var(--pad);background:var(--coral)}.case-hero-image img{max-height:760px;object-fit:contain;background:var(--cream)}.case-chapter{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:80px;border-top:1px solid var(--line);padding:80px 0}.case-chapter:first-child{border:0;padding-top:0}.case-chapter:last-child{padding-bottom:0}.case-chapter h2{font:clamp(32px,3.2vw,46px)/1.2 var(--serif)}.case-chapter .body-copy p{font-size:18px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:70px}.gallery figure{min-width:0}.gallery figure:first-child:nth-last-child(odd){grid-column:span 2}.gallery img{background:var(--sand);width:100%;max-height:800px;object-fit:contain}.gallery button{display:block;border:0;padding:0;background:transparent;width:100%;text-align:left}.gallery button:hover{outline:1px solid var(--ink);outline-offset:8px}.gallery figcaption{font-size:13px;padding-top:14px;max-width:55ch}.gallery .photo img{aspect-ratio:1.25;object-fit:cover}.next-project{background:var(--sand)}.next-project .split{align-items:center}.next-project img{aspect-ratio:1.6;object-fit:contain}.next-project h2{font:clamp(32px,4vw,55px) var(--serif);margin:15px 0 25px}.subnav{display:flex;gap:25px;flex-wrap:wrap;margin-top:35px}.subnav a{border-bottom:1px solid;font-size:15px;padding:8px 0}.service-detail{padding:90px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:100px}.service-detail h2{font:clamp(34px,3.7vw,52px)/1.17 var(--slab);margin-bottom:35px;max-width:16ch}.service-detail p{font-size:18px;line-height:1.85}.service-detail p+p{margin-top:25px}.service-detail aside{padding:10px 0 0 40px;border-left:1px solid var(--line)}.service-detail h3{font:28px var(--serif);margin-bottom:25px}.service-detail ul{margin:0 0 40px;padding-left:22px}.service-detail li{margin-bottom:14px;font-size:16px}.service-detail aside p{font-size:16px}.service-detail .quote{font:600 italic 27px/1.5 var(--serif);margin-top:35px}.service-detail .text-link{margin-top:30px}.plain-list{padding:0;list-style:none}.plain-list li{border-top:1px solid var(--line);padding:20px 0;margin:0}.team-list{margin-top:65px}.team-member{display:grid;grid-template-columns:.55fr 1.45fr;gap:75px;align-items:center;padding:65px 0;border-top:1px solid var(--line)}.team-member img{max-width:290px;max-height:380px;object-fit:contain;object-position:bottom}.team-member h3{font:38px var(--serif);margin-bottom:8px}.team-member .role{font-size:15px;margin-bottom:25px}.team-member p{font-size:17px;line-height:1.85}.studio-image img{aspect-ratio:2;object-fit:cover}.article-head{background:var(--sand)}.article-head h1{font:clamp(42px,5.6vw,82px)/1.18 var(--slab);max-width:20ch}.article-meta{display:flex;gap:20px;flex-wrap:wrap;margin-top:35px;font-size:14px}.article-body{max-width:740px;margin:auto}.article-body p{max-width:100%;font-size:19px}.article-body h2{font-size:36px;margin-top:55px}.article-body h3{font-size:30px}.article-tools{display:flex;gap:30px;align-items:center;border-top:1px solid var(--line);margin-top:60px;padding-top:25px;font-size:14px}.article-tools button{border:0;border-bottom:1px solid;padding:10px 0;background:transparent;font-size:14px}.news-archive .news-item{padding:40px 0}.news-archive .news-item h2{font:clamp(30px,3.7vw,52px)/1.2 var(--serif);max-width:24ch}.news-archive .news-item p{max-width:72ch;margin-top:18px;font-size:17px}.news-archive .news-item small{display:block;font-size:13px;margin-top:18px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px}.contact-grid h2{font:clamp(34px,4vw,54px) var(--serif);margin-bottom:30px}.contact-grid address{font-style:normal;margin:30px 0;line-height:1.8}.contact-grid .text-link{font-size:22px}.project-form{display:grid;grid-template-columns:1fr 1fr;gap:25px}.project-form .full{grid-column:span 2}.project-form textarea{min-height:160px;resize:vertical}.form-note{font-size:14px;line-height:1.7}.form-status{padding-top:18px;font-size:15px}.ink-section{background:var(--ink);color:var(--cream)}.ink-section h2{color:var(--coral)}.ink-section .button:hover{background:var(--cream);color:var(--ink)}.ink-section .plain-list li{border-color:#716960}.ai-projects{display:grid;grid-template-columns:1fr 1fr;gap:60px}.ai-projects img{aspect-ratio:1.45;object-fit:contain;background:var(--sand)}.ai-projects h3{font:30px var(--serif);margin-top:25px}.ai-projects p{margin-top:18px}.ai-projects .text-link{margin-top:20px}.comparison{margin:60px 0}.comparison-images{display:grid;grid-template-columns:1fr 1fr;gap:25px}.comparison-images img{aspect-ratio:1.5;object-fit:contain;background:var(--sand)}.comparison-images figcaption{font-size:14px;margin-top:12px}.image-dialog{border:0;max-width:94vw;max-height:94vh;padding:40px;background:var(--cream)}.image-dialog::backdrop{background:#231f1ce6}.image-dialog img{max-width:85vw;max-height:77vh;object-fit:contain}.image-dialog button{display:block;margin-left:auto;background:var(--ink);color:var(--cream);border:0;padding:12px 25px;margin-bottom:20px}.image-dialog p{font-size:14px;margin-top:18px}.not-found h1{max-width:12ch}.not-found .button{margin-top:35px}.site-map{margin-top:50px;display:flex;gap:25px;flex-wrap:wrap;font-size:14px}.site-map a{border-bottom:1px solid}.site-note{font-size:13px;margin-top:35px}.in-page-links{margin-top:35px;display:flex;flex-wrap:wrap;gap:25px}.in-page-links a{font-size:15px;border-bottom:1px solid}
@media(min-width:1700px){.header,.section,.footer,.poster-hero,.poster-work,.page-hero,.case-hero-image{padding-left:max(var(--pad),calc((100vw - 1320px)/2));padding-right:max(var(--pad),calc((100vw - 1320px)/2))}}
@media(max-width:1000px){.nav{gap:23px}.brand{width:170px}.poster-hero .hero-bottom{gap:35px}.poster-hero .hero-bottom .tagline{font-size:30px}.page-hero .hero-row{gap:45px}.service-detail{gap:55px;grid-template-columns:1.1fr .9fr}.service-detail aside{padding-left:28px}.contact-grid{gap:55px}.team-member{gap:50px}.case-chapter{gap:55px}.poster-work .project:first-child{margin-top:45px}.project figcaption{flex-direction:column}.project span{font-size:13px}}
@media(max-width:700px){.nav{display:none}.mobile-menu{display:block}.header{padding-top:24px;padding-bottom:24px}.brand{width:150px}.section{padding:75px var(--pad)}.poster-hero{padding-top:48px;padding-bottom:55px}.poster-hero h1{font-size:clamp(50px,12.6vw,80px);letter-spacing:-.04em;line-height:1.1}.poster-hero .hero-bottom{display:block;margin-top:35px}.poster-hero .hero-bottom p{font-size:17px;max-width:36ch}.poster-hero .hero-bottom .tagline{font-size:29px;margin-bottom:25px}.poster-hero .hero-bottom .button{margin-top:30px}.poster-work{padding-bottom:70px}.poster-work .work-grid{grid-template-columns:1fr;gap:45px}.poster-work .project:first-child{margin-top:0}.poster-work .project img{aspect-ratio:1.35}.split,.archive-grid,.ai-projects,.contact-grid,.page-hero .hero-row,.service-detail,.case-chapter{grid-template-columns:1fr;gap:38px}.work-grid{grid-template-columns:1fr;gap:50px}.project figcaption{flex-direction:column;gap:8px}.project h3{font-size:28px}.project span{font-size:13px}.intro p{font-size:18px}.poster .intro h2{font-size:39px}.poster .services h2{font-size:38px}.service-list summary{font-size:24px}.service-list details{padding:25px 0}.page-hero{padding-top:55px;padding-bottom:65px}.page-hero h1{font-size:clamp(48px,10.8vw,70px);line-height:1.16}.page-hero .lede,.page-hero .hero-row .lede{font-size:18px;line-height:1.8;margin-top:28px}.page-hero .hero-row .lede{margin-top:0}.case-head h1{font-size:clamp(40px,9vw,62px)}.case-meta{grid-template-columns:1fr;gap:25px;margin-top:35px}.case-meta dt{margin-bottom:6px}.case-chapter{padding:60px 0}.case-chapter h2{font-size:34px}.gallery{gap:25px;grid-template-columns:1fr;margin-top:45px}.gallery figure:first-child:nth-last-child(odd){grid-column:auto}.gallery .photo img{aspect-ratio:auto}.next-project .split{gap:30px}.browse-controls{grid-template-columns:1fr;gap:24px;margin-bottom:35px}.archive-grid{gap:50px}.filter-status{margin-bottom:30px}.service-detail{padding:65px 0}.service-detail aside{border-left:0;padding:0}.service-detail h2{font-size:34px;line-height:1.25;max-width:17ch;margin-bottom:28px}.service-detail p{font-size:17px}.service-detail .quote{font-size:24px}.team-member{grid-template-columns:1fr;gap:35px;padding:50px 0}.team-member img{max-width:220px;max-height:300px}.team-member h3{font-size:34px}.team-member .role{margin-bottom:20px}.stats-row{gap:35px;margin-top:50px}.stats-row>div{width:100%}.stats-row strong{font-size:34px}.article-head h1{font-size:39px;line-height:1.2}.article-body p{font-size:18px}.article-body h2{font-size:31px}.article-meta{gap:12px}.news-archive .news-item h2{font-size:32px}.news-archive .news-item p{font-size:16px}.contact-grid .text-link{font-size:19px}.project-form{grid-template-columns:1fr;gap:24px}.project-form .full{grid-column:auto}.comparison-images{grid-template-columns:1fr;gap:30px}.footer{padding-top:65px}.footer h2{font-size:clamp(58px,13vw,88px);margin-bottom:35px}.footer-main{gap:35px;flex-direction:column}.footer .text-link{font-size:17px}.footer-nav{gap:20px;margin-top:35px}.footer-bottom{flex-direction:column;margin-top:40px;gap:14px}.poster .ai-proof{padding:0}.news{grid-template-columns:1fr;gap:40px}.news-item h3{font-size:27px}.image-dialog{padding:20px}.body-copy h2{font-size:31px}.body-copy p{font-size:17px}.subnav{gap:12px 22px}.large-heading{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
button.button{background:transparent;color:var(--ink)}button.button:hover{background:var(--ink);color:var(--cream)}
@media print{.header,.footer,.article-tools,.next-project{display:none}body{background:#fff;color:#000}.page-hero,.article-head{background:#fff;padding:30px}.section{padding:30px}.article-body{max-width:100%}}
.footer-links{align-content:flex-start;align-items:flex-start;row-gap:12px}
@media(max-width:900px){.service-detail{grid-template-columns:1fr;gap:40px}.service-detail aside{border-left:0;border-top:1px solid var(--line);padding:35px 0 0}.service-detail h2{max-width:22ch}.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:35px}.footer-main .footer-links{grid-column:span 2}.case-chapter{grid-template-columns:1fr;gap:30px}}
@media(max-width:700px){.footer-main{display:flex;flex-direction:column}.footer-main .footer-links{grid-column:auto}}
