.phero{padding-block:4.5rem 2.5rem}.phero h1{max-width:14ch;text-wrap:balance}.phero .lead{font-size:clamp(1.1875rem,1.6vw,1.4375rem);line-height:1.4;color:var(--ink);margin:1.75rem 0 0;max-width:52ch}.phero .crumb{font-size:.875rem;color:var(--mute);margin-bottom:1.5rem}.phero .byline{margin-top:1.25rem;font-size:.875rem;color:var(--mute)}.page-icon{position:fixed;z-index:-1;top:10vh;right:calc(1.5rem + 10vw);width:clamp(25vw,calc((800px - 100vw)*9999),50vw);height:auto;aspect-ratio:1;color:var(--accent);fill:var(--accent);stroke:none;opacity:.25;pointer-events:none}.prose{max-width:66ch;font-size:1.0625rem}.prose p,.prose li{font-size:1.0625rem}.prose h2{font-size:clamp(1.375rem,2vw,1.75rem);letter-spacing:-.02em;margin:2.5rem 0 .875rem}.prose h3{margin:2rem 0 .625rem}.prose ul,.prose ol{padding-left:1.2em}.prose img{max-width:100%;height:auto;border-radius:.625rem;border:1px solid var(--rule)}.prose img.shot{background:var(--soft);border:.3125rem solid var(--soft);border-radius:.625rem;box-shadow:0 0 0 1px var(--rule);forced-color-adjust:none}.prose blockquote{margin:1.75rem 0;padding-left:1.25rem;border-left:2px solid var(--ink);color:var(--ink)}.prose pre{background:var(--soft);border:1px solid var(--rule);border-radius:.625rem;padding:1rem 1.125rem;overflow-x:auto;font-size:.875rem;line-height:1.5}.prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}.pic{display:block}.pic img{display:block;width:100%;height:auto;background:var(--soft);border:.3125rem solid var(--soft);border-radius:.625rem;box-shadow:0 0 0 1px var(--rule);forced-color-adjust:none}.pic .pic-mobile{display:none}.pic-desktop-only{display:block}.motion{position:relative}.motion picture{display:contents}.motion .motion-toggle{position:absolute;right:.75rem;bottom:.75rem;z-index:1;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;min-width:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:50%;background:#0000008c;color:#fff;cursor:pointer;transition:background-color .2s ease}.motion .motion-toggle svg{width:1.5rem;height:1.5rem;fill:currentColor}.motion .motion-toggle .i-play,.motion .motion-toggle[hidden]{display:none}.motion .motion-toggle:hover,.motion .motion-toggle:focus-visible{background:#000c;color:#fff}.motion .motion-toggle:hover *,.motion .motion-toggle:focus-visible *{color:#fff}.motion .motion-toggle:focus-visible{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px #000c}.motion.is-paused .motion-toggle .i-pause{display:none}.motion.is-paused .motion-toggle .i-play{display:block}.motion img,.motion video{display:block;width:100%;height:auto;aspect-ratio:var(--mo-ar, auto);background:var(--soft);border:.3125rem solid var(--soft);border-radius:.625rem;box-shadow:0 0 0 1px var(--rule);forced-color-adjust:none}@media(max-width:900px){.pic.pic-pair .pic-desktop{display:none}.pic.pic-pair .pic-mobile{display:block}.pic.pic-single img{max-height:70vh;object-fit:cover;object-position:top}.pic-desktop-only{display:none}.motion img,.motion video{aspect-ratio:var(--mo-ar-m, var(--mo-ar, auto));max-height:none}}.blk{margin:0 0 3.5rem}.blk .blk-title{font-size:clamp(1.5rem,2.4vw,1.875rem);margin-bottom:1.25rem}.blk figure{margin:0}.blk figcaption,.blk .caption{font-size:.875rem;color:var(--mute);margin-top:.625rem}.blk-image-pair .pair,.blk-gallery .gallery{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media(max-width:900px){.blk-image-pair .pair{gap:.75rem}.blk-gallery .gallery{grid-template-columns:1fr 1fr;gap:.75rem}}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:2rem 0 0}.stat{padding-top:1.125rem;border-top:2px solid currentColor;position:relative}.stat b{display:block;font-size:clamp(2.5rem,4.4vw,4rem);font-weight:800;letter-spacing:-.04em;line-height:1}.stat b small{font-size:.42em;font-weight:600;letter-spacing:-.01em;margin-left:.25rem;opacity:.7}.stat .was{font-size:.875rem;margin-top:.5rem;opacity:.7}.stat .was s{opacity:.8}.stat .lbl{font-weight:600;margin-top:.625rem;font-size:.9375rem}.stat .note{font-size:.8125rem;opacity:.7;margin-top:.25rem}.stat .tier{position:absolute;right:0;top:1.375rem;font-size:.6875rem;font-weight:700;border:1px solid currentColor;border-radius:.25rem;padding:.0625rem .3125rem;opacity:.6}@media(max-width:900px){.stats{grid-template-columns:1fr;gap:1.5rem}}.quote{margin:0;font-size:clamp(1.25rem,2vw,1.625rem);line-height:1.35;color:var(--ink);font-weight:500;max-width:36ch;letter-spacing:-.01em}.quote p{margin:0;max-width:none}.quote cite{display:block;font-style:normal;font-size:.9375rem;color:var(--mute);margin-top:1rem;font-weight:400}.callout{border-left:2px solid var(--ink);padding:.5rem 0 .5rem 1.25rem;margin:0 0 2.5rem;color:var(--ink);max-width:66ch}.callout .callout-title{display:block;font-weight:680;margin-bottom:.375rem}.callout .prose p:last-child{margin-bottom:0}.callout.callout-result{border-color:var(--accent)}.callout.callout-aside{border-color:var(--rule);color:var(--body)}.btn{font:inherit;display:inline-block;padding:.875rem 1.375rem;border:1.5px solid var(--ink);border-radius:62.4375rem;font-weight:620;color:var(--ink);line-height:1;text-decoration:none;transition:background .15s,color .15s;cursor:pointer}.btn:hover,.btn.fill{background:var(--ink);color:var(--paper)}.btn.fill:hover{background:var(--fill-hover-bg, var(--accent));border-color:var(--fill-hover-border, var(--accent));color:var(--fill-hover-fg, var(--paper))}.cta-band{padding:4rem 1.5rem;border-top:1px solid var(--rule);margin-top:3rem}.cta-band h2{margin-bottom:1.25rem;max-width:20ch}.cta-band .cta-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}.related{padding:4rem 1.5rem;border-top:1px solid var(--rule)}.related h2{font-size:clamp(1.5rem,2.4vw,1.875rem);margin-bottom:2rem}.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.case-card{display:block;text-decoration:none;color:var(--body)}.case-card .thumb{aspect-ratio:1.6;overflow:hidden;margin-bottom:.75rem;background:var(--soft);padding:.3125rem;border-radius:.625rem;box-shadow:0 0 0 1px var(--rule);forced-color-adjust:none}.case-card .thumb img{border-radius:.3125rem}.case-card .thumb img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;background:var(--soft);transition:transform .35s ease}.case-card:hover .thumb img{transform:scale(1.03)}.case-card .nm{font-weight:800;color:var(--link);font-size:1.25rem;letter-spacing:-.02em;line-height:inherit;transition:color .25s ease}.case-card:hover .nm{color:var(--link-hover)}.case-card .cl{font-size:.9375rem;color:var(--mute);margin-top:.25rem}.case-card .meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .5rem;margin-top:.5rem;font-size:.75rem;font-weight:620;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}.case-card .meta .yr{font-variant-numeric:tabular-nums}.case-card .meta .client+.yr:before{content:"\b7";margin-right:.5rem}.case-card .sum{margin:.375rem 0 0;color:var(--body);font-size:.9375rem;line-height:1.45}.case-card .sum{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4;overflow:hidden}@media(max-width:900px){.cases-grid{grid-template-columns:1fr}}.split{padding:3.5rem 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:3fr 8fr;gap:1.5rem}.split .l h2{position:sticky;top:5.5rem;font-size:clamp(1.5rem,2.4vw,1.875rem)}.split .l .small{margin-top:.75rem}@media(max-width:900px){.split{grid-template-columns:1fr;gap:1rem;padding:2.5rem 0}.split .l h2{position:static}}.steps{list-style:none;padding:0;margin:0;counter-reset:s}.steps li{counter-increment:s;display:grid;grid-template-columns:3ch 1fr;gap:1rem;padding:1.125rem 0;border-top:1px solid var(--rule)}.steps li:last-child{border-bottom:1px solid var(--rule)}.steps li:before{content:counter(s,decimal-leading-zero);font-weight:800;color:var(--ink);letter-spacing:-.02em;font-size:1.25rem;line-height:1.3}.steps b{display:block;color:var(--ink);font-weight:620;margin-bottom:.25rem;grid-column:2}.steps p{margin:0;font-size:1rem;grid-column:2}.phero .note-title{max-width:18ch;font-size:clamp(2.125rem,4.6vw,4rem)}.article{padding-bottom:3rem}.article .lead{font-size:clamp(1.1875rem,1.6vw,1.375rem);line-height:1.4;color:var(--ink);margin:0 0 2.25rem;max-width:60ch}