@charset "UTF-8";
:root{--paper:#f7f7f4;--ink:#111;--muted:#626262;--line:#d8d8d3;--dark:#191919}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.55}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--ink);outline-offset:5px}img{display:block;max-width:100%;height:auto}.shell{max-width:1440px;margin:auto;padding:0 5%}.header{height:118px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.logo{display:block;position:relative;overflow:hidden;width:116px;height:59px;flex-shrink:0;mix-blend-mode:multiply}.logo img{position:absolute;width:182px;height:182px;max-width:none;left:-33px;top:-62px}nav{display:flex;gap:32px;font-size:14px}.menu-toggle{display:none;background:none;border:0}.eyebrow{display:block;font-size:11px;letter-spacing:.16em;line-height:1.7;font-weight:600}.hero{padding:75px 0 70px}.hero h1{font-size:clamp(60px,8vw,116px);letter-spacing:-.065em;line-height:1.02;font-weight:500;margin:35px 0}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:32px}.hero p,.page-heading>p{font-size:clamp(18px,2vw,24px);line-height:1.45;color:var(--muted)}.button{display:inline-flex;justify-content:center;align-items:center;gap:20px;padding:17px 27px;background:var(--ink);color:#fff;border:1px solid var(--ink);font-size:15px;cursor:pointer;line-height:1.3}.button:hover{background:#333;text-decoration:none}.section{border-top:1px solid var(--line);padding:40px 0 70px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px}h2{font-size:clamp(27px,3vw,42px);line-height:1.18;letter-spacing:-.04em;font-weight:500}h3{font-weight:500}.section-top h2{font-size:26px;margin:0}.text-link{font-size:14px;white-space:nowrap}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 28px}.home-grid .project-card:first-child{grid-column:span 2}.home-grid .project-card:first-child .project-visual{aspect-ratio:2/1}.project-visual{aspect-ratio:4/3;overflow:hidden;background:#e6e6e1}.project-visual img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.project-card a:hover img{transform:scale(1.025)}.project-card a:hover{text-decoration:none}.card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.card-meta h3{font-size:21px;margin:5px 0}.card-meta .eyebrow{color:var(--muted);font-size:10px}.placeholder{position:relative;display:flex;flex-direction:column;justify-content:center;padding:8%;background:#deded7;color:#222}.placeholder.web{background:#232323;color:#fff}.placeholder.print{background:#d2d0c9}.placeholder strong{font-size:clamp(30px,4vw,65px);font-weight:500;line-height:1.05;letter-spacing:-.05em;max-width:85%}.project-type{font-size:14px;margin-bottom:14px}.placeholder-label,.placeholder-bottom{position:absolute;font-size:9px;letter-spacing:.18em;left:8%}.placeholder-label{top:8%}.placeholder-bottom{bottom:8%}.intro-split{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:20px 0 40px}.intro-split h2{margin:0}.service-row{display:grid;grid-template-columns:40px 1fr 1fr 25px;gap:20px;align-items:center;padding:25px 0;border-top:1px solid var(--line)}.service-row>span{font-size:12px}.service-row h3{font-size:25px;letter-spacing:-.03em;margin:0}.service-row p{font-size:15px;color:var(--muted);margin:0}.service-row:hover{text-decoration:none}.about-band{max-width:760px;padding:50px 0 90px}.about-band p{color:var(--muted);max-width:550px}.cta{background:var(--dark);color:white;padding:45px;display:flex;justify-content:space-between;gap:20px;font-size:clamp(25px,3vw,42px);line-height:1.2;letter-spacing:-.03em;margin:50px 0}.cta:hover{text-decoration:none;background:#292929}footer{display:flex;justify-content:space-between;gap:24px;padding:30px 0;margin-top:65px;border-top:1px solid var(--line);font-size:11px}.page-heading{padding:70px 0 50px}.page-heading h1{font-size:clamp(48px,7vw,94px);font-weight:500;line-height:1.04;letter-spacing:-.06em;margin:30px 0}.page-heading p{max-width:740px}.filters{border-top:1px solid var(--line);padding:25px 0 40px;flex-wrap:wrap}.filters a[aria-current]{text-decoration:underline;text-underline-offset:8px}.case-cover{width:100%;max-height:720px;object-fit:cover}.project-facts{display:flex;gap:65px;border-block:1px solid var(--line);margin:30px 0;padding:15px 0;flex-wrap:wrap}.project-facts .eyebrow{margin-bottom:8px;color:var(--muted)}.case-text{display:grid;grid-template-columns:1fr 2fr;gap:15px 65px;padding:35px 0}.case-text h2{font-size:30px}.case-text p{color:var(--muted)}.case-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px}.case-gallery figure{margin:0 0 30px}.case-gallery img{width:100%}figcaption{font-size:13px;color:var(--muted);padding-top:10px}.demo-note{font-size:14px!important;border-left:2px solid #888;padding-left:15px}.about-intro{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-bottom:70px}.about-intro h2{margin-top:0}.about-intro p{color:var(--muted)}.brand-panel{background:#e4e4dd;min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center}.brand-panel>span{font-size:clamp(45px,7vw,95px);letter-spacing:-.09em}.brand-panel small{font-size:9px;letter-spacing:.3em}.service-detail{padding:45px 0;border-top:1px solid var(--line);scroll-margin-top:25px}.service-detail p{max-width:650px;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:100px;border-top:1px solid var(--line);padding:50px 0}.contact-layout aside h2{font-size:30px}.contact-layout aside p{color:var(--muted)}.contact-layout aside .eyebrow{margin-top:45px}.field{margin-bottom:25px}.field label{display:block;font-size:14px;margin-bottom:10px}input,textarea,select{width:100%;border:0;border-bottom:1px solid #888;border-radius:0;background:transparent;padding:12px 0;color:var(--ink)}textarea{border:1px solid #888;padding:12px;resize:vertical}.errorlist{list-style:none;padding:0;font-size:14px;color:#991a1a}.privacy-note{font-size:12px;color:var(--muted);max-width:400px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.faq{padding:25px 0}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer}.faq p{color:var(--muted);max-width:700px}.empty{padding:35px 0;color:var(--muted)}.skip{position:absolute;left:20px;top:-100px;background:white;padding:12px;z-index:9}.skip:focus{top:15px}@media(max-width:760px){.shell{padding:0 6%}.header{height:auto;min-height:95px;flex-wrap:wrap;padding:18px 0}.menu-toggle:not([hidden]){display:block;margin-left:auto}nav{gap:20px;font-size:13px}nav#navigation{width:100%;justify-content:space-between}.menu-toggle:not([hidden])~nav#navigation{display:none}.menu-toggle:not([hidden])~nav#navigation.open{display:flex}.hero{padding:45px 0}.hero h1{font-size:clamp(48px,10vw,76px)}.hero-bottom{align-items:flex-start;flex-direction:column;gap:10px}.section{padding:30px 0 45px}.section-top{align-items:flex-start}.section-top h2{font-size:22px}.projects-grid,.about-intro,.contact-layout,.case-text{grid-template-columns:1fr}.home-grid .project-card:first-child{grid-column:auto}.home-grid .project-card:first-child .project-visual{aspect-ratio:4/3}.intro-split{grid-template-columns:1fr;gap:20px}.service-row{grid-template-columns:25px 1fr 20px;gap:12px}.service-row h3{font-size:22px}.service-row p{grid-column:2;grid-row:2}.service-row>span:last-child{grid-column:3;grid-row:1}.cta{padding:28px;font-size:28px}.about-band{padding-bottom:30px}footer{flex-wrap:wrap;margin-top:45px}.page-heading{padding:45px 0 30px}.page-heading h1{font-size:clamp(44px,10vw,72px)}.contact-layout{gap:25px}.about-intro{gap:30px}.brand-panel{min-height:260px}.project-facts{gap:20px}.case-text{gap:0}.case-gallery{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.service-links {display:flex; align-items:center; flex-wrap:wrap; gap:1.5rem; margin-top:2rem}
.comparison {max-width:960px; margin:2rem auto}
.comparison-images {display:grid; grid-template-columns:1fr 1fr; gap:1rem}
.comparison figure {margin:0}
.comparison img {width:100%}
.comparison.enhanced .comparison-images {position:relative; display:block; background:#eee}
.comparison.enhanced figure:nth-child(2) {position:absolute; inset:0; clip-path:inset(0 calc(100% - var(--split, 50%)) 0 0)}
.comparison.enhanced figure:nth-child(2) img {width:100%; height:100%; object-fit:contain; background:#eee}
.comparison.enhanced figcaption {position:absolute; bottom:.6rem; right:.6rem; background:#111; color:white; padding:.15rem .55rem}
.comparison.enhanced figure:nth-child(2) figcaption {left:.6rem; right:auto}
.comparison label {font-size:.9rem}
.comparison input {accent-color:#222; width:100%}
