@font-face{font-family:Switzer;src:url(/fonts/switzer-400.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/switzer-500.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/switzer-600.woff2)format("woff2");font-weight:600;font-display:swap}:root{--bg:#e8e8e4;--surface:#dcdcd6;--ink:#0c0d0f;--muted:#4c4f54;--accent:#25d366;--accent-press:#1fb457;--accent-ink:#0c0d0f;--dark:#171717;--dark-surface:#222;--dark-ink:#efefeb;--dark-muted:#a3a5a8;--white:#f7f7f4;--stone:#c6c9c0;--font:"Switzer", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--step-small:clamp(.8125rem, .79rem + .1vw, .875rem);--step-body:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--step-lead:clamp(1.25rem, 1.1rem + .7vw, 1.625rem);--step-head:clamp(2rem, 1rem + 3.2vw, 3.75rem);--step-display:clamp(3rem, 1rem + 9vw, 9rem);--margin:clamp(1rem, 2.2vw, 2rem);--gutter:clamp(1rem, 2vw, 2rem);--section:clamp(7rem, 13vw, 13rem);--nav-h:3.75rem;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.76, 0, .24, 1);--ease-soft:cubic-bezier(.33, 1, .68, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--step-body);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.5;overflow-x:clip}h1,h2,h3,h4,p,figure,blockquote,ul,ol,dl,dd{margin:0}h1,h2,h3{text-wrap:balance;letter-spacing:-.04em;font-weight:600;line-height:.95}ul[class],ol[class]{padding:0;list-style:none}img,video,svg{max-width:100%;display:block}img{height:auto}button,input,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}p{text-wrap:pretty}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.dark :focus-visible,.field-dark :focus-visible{outline-color:var(--dark-ink)}:target{scroll-margin-top:calc(var(--nav-h) + 1rem)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wrap{padding-inline:var(--margin)}.nums{font-variant-numeric:tabular-nums}.skip{left:var(--margin);z-index:100;background:var(--ink);color:var(--bg);padding:.6rem 1rem;text-decoration:none;position:absolute;top:-4rem}.skip:focus{top:.5rem}.t-display{font-size:var(--step-display);letter-spacing:-.05em;font-weight:600;line-height:.92}.t-head{font-size:var(--step-head);letter-spacing:-.04em;font-weight:600;line-height:.98}.t-lead{font-size:var(--step-lead);letter-spacing:-.015em;line-height:1.3}.t-small{font-size:var(--step-small);line-height:1.45}.muted{color:var(--muted)}.btn{background:var(--ink);min-height:3rem;color:var(--bg);white-space:nowrap;transition:transform .14s var(--ease-out), background-color .18s ease, color .18s ease;justify-content:center;align-items:center;gap:.6em;padding:0 1.35rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn--wa{background:var(--accent);color:var(--accent-ink)}.btn--sm{min-height:2.5rem;font-size:var(--step-small);padding:0 1rem}.btn .arrow{transition:transform .24s var(--ease-out)}.link{text-underline-offset:.2em;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:.07em;transition:text-decoration-color .18s,color .18s}.link-on{text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:.07em}@media (hover:hover) and (pointer:fine){.btn:hover{background:#2a2c30}.btn--wa:hover{background:var(--accent-press)}.btn:hover .arrow{transform:translate(.25em)}.link:hover{text-decoration-color:currentColor}}.nav{z-index:50;height:var(--nav-h);padding-inline:var(--margin);background:var(--bg);font-size:var(--step-small);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:fixed;inset:0 0 auto}.nav__mark{letter-spacing:-.03em;font-size:1.125rem;font-weight:600;text-decoration:none}.nav__links{align-items:center;gap:clamp(1rem,2.4vw,2.25rem);display:flex}.nav__links a:not(.btn){text-decoration:none}.nav__links a[aria-current=page]{text-underline-offset:.3em;text-decoration:underline;text-decoration-thickness:.07em}@media (width<=47.99em){.nav__links .only-wide{display:none}}main{padding-top:var(--nav-h)}.hero{position:relative}.hero__stage{min-height:calc(100svh - var(--nav-h));padding:clamp(1.5rem, 5vh, 3rem) var(--margin) 2rem;grid-template-rows:auto 1fr auto;gap:1.5rem;display:grid;position:relative}.hero__title{font-size:var(--step-head);letter-spacing:-.04em;line-height:.98}.hero__half{display:block}.hero__half--b{text-align:right}.hero__reel{scroll-snap-type:x mandatory;margin-inline:calc(var(--margin) * -1);padding-inline:var(--margin);scrollbar-width:none;gap:.75rem;display:flex;overflow-x:auto}.hero__reel::-webkit-scrollbar{display:none}.hero__frame{scroll-snap-align:center;flex:0 0 100%}.hero__frame:not(:first-child){display:none}.hero__frame figcaption{font-size:var(--step-small);color:var(--muted);margin-top:.6rem}.frame{aspect-ratio:4/5;background:var(--dark);position:relative;overflow:hidden}.frame img{object-fit:cover;width:100%;height:100%}.frame--flow img{object-fit:contain}.hero__foot{align-items:end;gap:1.25rem;display:grid}.hero__foot p{max-width:38ch}.hero__caption{display:none}@media (width>=68.75em){.js .hero{height:250svh}.js .hero__stage{top:var(--nav-h);height:calc(100svh - var(--nav-h));padding:0;display:block;position:sticky;overflow:hidden}.js .hero__title{font-size:var(--step-head);letter-spacing:-.04em;pointer-events:none;line-height:.98;position:absolute;inset:0}.js .hero__half{width:31vw;position:absolute;top:50%;transform:translateY(-50%)}.js .hero__half--a{left:var(--margin)}.js .hero__half--b{right:var(--margin)}.js .hero__reel{width:32vw;transform:translateY(calc(var(--step,0) * -1 * (18vw + 72px)));transition:transform .8s var(--ease-in-out);will-change:transform;flex-direction:column;gap:72px;margin:0;padding:0;position:absolute;top:calc(50% - 9vw);left:34vw;overflow:visible}.js .hero__frame{flex:none;transition:opacity .4s;display:block}.js .hero__frame:not(.is-on){opacity:.16}.js .hero__frame .frame{aspect-ratio:16/9}.js .hero__frame figcaption{display:none}.js .hero__caption{width:32vw;font-size:var(--step-small);color:var(--muted);background:var(--bg);padding-top:.1rem;display:block;position:absolute;top:calc(50% + 9vw + .75rem);left:34vw}.js .hero__foot{left:var(--margin);right:var(--margin);grid-template-columns:1fr auto;position:absolute;bottom:2rem}.js .hero__foot p{max-width:min(30rem,29vw)}}@media (width>=68.75em) and (prefers-reduced-motion:reduce){.js .hero__reel{transform:translateY(calc(var(--step,0) * -1 * (18vw + 72px)));transition:none}}@media (width>=40em) and (width<=68.74em){.hero__frame .frame{aspect-ratio:16/10}.hero__foot{grid-template-columns:1fr auto}}.chat{color:#111b21;letter-spacing:0;background:#efeae2;flex-direction:column;font-size:.8125rem;line-height:1.35;display:flex;position:absolute;inset:0}.chat__bar{background:#f0f2f5;align-items:center;gap:.6rem;padding:.55rem .8rem;display:flex}.chat__avatar{color:#f7f7f4;background:#0c0d0f;border-radius:50%;place-items:center;width:1.9rem;height:1.9rem;font-size:.75rem;font-weight:600;display:grid}.chat__who{flex-direction:column;display:flex}.chat__who strong{font-size:.875rem;font-weight:600}.chat__who span{color:#54656f;font-size:.75rem}.chat__log{flex-direction:column;flex:1;justify-content:flex-end;gap:.35rem;padding:.7rem .8rem;display:flex;overflow:hidden}.msg{background:#fff;border-radius:8px;align-self:flex-start;max-width:78%;padding:.4rem .6rem .3rem}.msg--out{background:#d9fdd3;align-self:flex-end}.msg time{text-align:right;color:#55636b;margin-top:.1rem;font-size:.6875rem;display:block}.msg--typing{color:#667781}@media (prefers-reduced-motion:no-preference){.msg{animation:msg-in .36s var(--ease-out) both}}@keyframes msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.dark{background:var(--dark);color:var(--dark-ink)}.showcase{position:relative}.showcase__stage{padding:var(--section) var(--margin);gap:1.5rem;display:grid}.showcase__a{text-align:left}.showcase__b{text-align:right}.showcase__frame{aspect-ratio:1647/520;background:var(--dark);position:relative;overflow:hidden}.showcase__frame img{object-fit:contain;width:100%;height:100%;transform-origin:var(--ox,50%) var(--oy,50%);transform:scale(var(--z,1));transition:transform .9s var(--ease-in-out), transform-origin .9s var(--ease-in-out);position:absolute;inset:0}@media (width<=47.99em){.showcase__frame{aspect-ratio:1}.showcase__frame img{object-fit:cover;object-position:76% 50%;transform:none}}.showcase__notes{gap:1.25rem;max-width:34rem;display:grid}.showcase__notes p{color:var(--dark-muted)}.showcase__notes p.is-on{color:var(--dark-ink)}@media (width>=48em){.js .showcase{height:230svh}.js .showcase__stage{top:var(--nav-h);height:calc(100svh - var(--nav-h));grid-template-rows:auto 1fr auto;align-content:stretch;padding-block:clamp(1.5rem,4vh,3rem);position:sticky}.js .showcase__frame{aspect-ratio:auto;place-self:center;width:min(62vw,100%);height:100%;max-height:34vw}.js .showcase__row{align-items:end;gap:var(--gutter);grid-template-columns:minmax(0,34rem) 1fr;display:grid}.js .showcase__notes p{opacity:0;max-width:30rem;transition:opacity .5s;position:absolute}.js .showcase__notes p.is-on{opacity:1;position:relative}.js .showcase__b{opacity:0;transition:opacity .7s var(--ease-out), transform .9s var(--ease-out);transform:translateY(.25em)}.js .showcase[data-stage="1"] .showcase__b,.js .showcase[data-stage="2"] .showcase__b{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.showcase__frame img{transition:none}}.services{padding:var(--section) var(--margin);gap:3rem;display:grid}.services__intro p{max-width:30rem;margin-top:1.5rem}.services__list{gap:clamp(3rem,7vw,6rem);display:grid}.service h3{font-size:var(--step-head)}.service h3 a{text-decoration:none}.service h3 .arrow{transition:transform .24s var(--ease-out);display:inline-block}.service p{max-width:36rem;margin-top:1rem}.service .more{white-space:nowrap;font-weight:500}@media (width>=56em){.services{gap:var(--gutter);grid-template-columns:5fr 7fr;align-items:start}.services__intro{top:calc(var(--nav-h) + 12vh);position:sticky}.services__list{padding-top:22vh;padding-bottom:8vh}}@media (hover:hover) and (pointer:fine){.service h3 a{transition:color .18s}.services__list:hover .service:not(:hover) h3 a{color:var(--muted)}.service h3 a:hover .arrow{transform:translate(.15em)}}.work{padding-block:calc(var(--section) / 2) var(--section);overflow:hidden}.project{gap:1.5rem;display:grid}.project+.project{margin-top:5.5rem}.project__visual{aspect-ratio:16/9;margin-left:calc(var(--margin) * -1);width:calc(100% + var(--margin));background:var(--dark);position:relative;overflow:hidden}.project__visual img{object-fit:cover;width:100%;height:100%}.project__cluster{padding-inline:var(--margin);gap:1.25rem;display:grid}.project__detail{aspect-ratio:16/10;background:var(--dark);order:3;justify-self:end;width:70%;overflow:hidden}.project__detail img{object-fit:cover;width:100%;height:100%;transform-origin:var(--focus);transform:scale(2.6)}.project__text h3{font-size:var(--step-head)}.project__text p{max-width:34rem;margin-top:1rem}.project__place{font-size:var(--step-small);color:var(--muted);margin-top:.75rem;display:block}@media (width>=56em){.project{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}.project+.project{margin-top:140px}.project__visual{margin-left:calc(var(--margin) * -1);width:calc(100% + var(--margin));grid-column:1/9}.project:nth-of-type(odd) .project__visual{grid-column:1/10}.project__cluster{padding:0 var(--margin) 0 0;grid-column:9/13}.project:nth-of-type(odd) .project__cluster{grid-column:10/13}.project__detail{order:0;width:100%}.project__text{gap:1rem;display:grid}}@media (prefers-reduced-motion:no-preference){.project__visual img{transition:transform 1.6s var(--ease-soft)}.js .project .project__visual img{transform:scale(1.08)}.js .project.is-in .project__visual img{transform:none}}.steps{position:relative}.step{height:100svh;min-height:34rem;position:relative;overflow:hidden}.step__img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.step--light .step__img{object-fit:cover;background:var(--bg)}.step__veil{pointer-events:none;background:#0c0d0f47;position:absolute;inset:0}.step__verbwrap{pointer-events:none;place-items:center;padding-bottom:12svh;display:grid;position:absolute;inset:0}.step__verb{text-align:center;color:var(--white);display:block}.step--light .step__verb{color:var(--ink)}.step__tile{left:var(--margin);bottom:var(--margin);background:var(--bg);max-width:30rem;padding:1.25rem 1.4rem;position:absolute}.step__tile p+p{margin-top:.75rem}.steps__title{padding:var(--section) var(--margin) 3rem;gap:1.5rem;display:grid}.steps__title p{max-width:34rem}@media (width>=56em){.steps__title{gap:var(--gutter);grid-template-columns:5fr 7fr;align-items:end}.step--light .step__img{object-fit:cover;object-position:50% 52%}}@media (width<=47.99em){.step__tile{right:var(--margin)}}.config{padding-top:var(--section)}.config__head{padding:0 var(--margin) 3rem;gap:1.5rem;display:grid}.config__head p{max-width:34rem}.band{width:100%;min-height:8.25rem;padding:1.25rem var(--margin);text-align:left;background:var(--bg);color:var(--muted);transition:background-color .38s var(--ease-out), color .38s var(--ease-out);grid-template-columns:1fr auto;align-items:center;gap:1rem;display:grid}.band__line{font-size:var(--step-lead);letter-spacing:-.03em;font-weight:600;line-height:1.1}.band__more{opacity:0;max-height:0;font-size:var(--step-small);letter-spacing:0;transition:max-height .42s var(--ease-out), opacity .3s ease, margin .42s var(--ease-out);font-weight:400;line-height:1.45;display:block;overflow:hidden}.band[aria-checked=true]{color:var(--ink)}.band[aria-checked=true] .band__more{opacity:1;max-height:6em;margin-top:.5rem}.band[aria-checked=true][data-tone=dark]{background:var(--dark);color:var(--dark-ink)}.band[aria-checked=true][data-tone=white]{background:var(--white)}.band[aria-checked=true][data-tone=stone]{background:var(--stone)}.toggle{background:#b5b8b0;border-radius:999px;flex:none;width:3.6rem;height:2.1rem;transition:background-color .24s;position:relative}.toggle:after{content:"";width:1.6rem;height:1.6rem;transition:transform .28s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:.25rem;left:.25rem}.band[aria-checked=true] .toggle{background:var(--accent)}.band[aria-checked=true] .toggle:after{transform:translate(1.5rem)}.band:active .toggle:after{width:1.85rem}.config__send{padding:2.5rem var(--margin) 0;gap:1rem;display:grid}.config__send label{font-weight:500}.config__field{background:var(--white);width:100%;min-height:3.25rem;font-size:max(1rem, var(--step-body));border:0;padding:.75rem 1rem}.config__field::placeholder{color:#6d7076}.config__summary{color:var(--muted)}@media (width>=56em){.config__head{gap:var(--gutter);grid-template-columns:5fr 7fr;align-items:end}.band{grid-template-columns:10fr 2fr;min-height:20vh}.band__line{font-size:var(--step-head);letter-spacing:-.04em}.band__more{font-size:var(--step-body)}.toggle{justify-self:end;width:3.6em;height:2.1em;font-size:clamp(1rem,1.4vw,1.35rem)}.toggle:after{width:1.6em;height:1.6em;top:.25em;left:.25em}.band[aria-checked=true] .toggle:after{transform:translate(1.5em)}.config__send{align-items:end;gap:var(--gutter);grid-template-columns:5fr 4fr 3fr}}@media (hover:hover) and (pointer:fine){.band[aria-checked=false]:hover{background:var(--surface);color:var(--ink)}}.faq{padding:var(--section) var(--margin)}.faq h2{font-size:var(--step-head);max-width:14ch}.faq__list{gap:.25rem;margin-top:3rem;display:grid}.qa{margin-inline:calc(var(--margin) * -1);padding:1rem var(--margin);transition:background-color .24s}.qa[open]{background:var(--surface)}.qa summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1.5rem;font-size:1.1875rem;line-height:1.3;list-style:none;display:flex}.qa summary::-webkit-details-marker{display:none}.qa summary:after{content:"";width:.6rem;height:.6rem;transition:transform .24s var(--ease-out);border-bottom:2px solid;border-right:2px solid;flex:none;transform:translateY(-25%)rotate(45deg)}.qa[open] summary:after{transform:translateY(15%)rotate(-135deg)}.qa p{max-width:48ch;margin-top:1rem}@media (width>=56em){.faq__list{margin-top:80px;margin-left:calc((100% + var(--gutter)) / 12 * 4);gap:.5rem}.qa{margin-inline:-1.5rem;padding:1.1rem 1.5rem}.qa summary{font-size:var(--step-lead);letter-spacing:-.015em}}.footer{background:var(--accent);color:var(--accent-ink);min-height:92svh;padding:2.5rem var(--margin) 1.5rem;grid-template-rows:auto 1fr auto auto;gap:2rem;display:grid}.footer__top{font-size:var(--step-small);gap:1.25rem;display:grid}.footer__top p{max-width:26rem}.footer__top a{font-weight:500}.footer__call{align-self:end}.footer__call p{font-size:var(--step-lead);letter-spacing:-.015em;margin-bottom:1rem}.footer__number{font-size:min(var(--step-display), 10.4vw);letter-spacing:-.05em;white-space:nowrap;font-weight:600;line-height:.95;text-decoration:none;display:block}.footer__mail{font-size:var(--step-lead);letter-spacing:-.015em;margin-top:1rem;display:inline-block}.footer__meta{gap:.6rem;font-size:.8125rem;display:grid}.footer__meta nav{flex-wrap:wrap;gap:.4rem 1.1rem;display:flex}.footer__meta a{text-decoration:none}.footer__credits a{text-underline-offset:.15em;text-decoration:underline}@media (width>=56em){.footer__top{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr))}.footer__top>:first-child{grid-column:1/4}.footer__top>:nth-child(2){grid-column:4/7}.footer__top>:nth-child(3){grid-column:7/10}.footer__top>:nth-child(4){grid-column:11/13;justify-self:end}.footer__meta{align-items:start;gap:var(--gutter);grid-template-columns:1fr 1fr auto}}@media (hover:hover) and (pointer:fine){.footer__number{transition:opacity .18s}.footer__number:hover{opacity:.78}.footer__meta a:hover{text-decoration:underline}}.page-hero{padding:clamp(3rem, 10vh, 7rem) var(--margin) 0;gap:2rem;display:grid}.page-hero h1{font-size:min(var(--step-display), 9.6vw)}.page-hero h1 span{display:block}.page-hero__intro{gap:1.75rem;display:grid}.page-hero__intro p{max-width:38rem}.page-hero__actions{flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;display:flex}.crumbs{font-size:var(--step-small);color:var(--muted)}.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}@media (width>=56em){.page-hero__intro{gap:var(--gutter);grid-template-columns:5fr 7fr;align-items:end}.page-hero__intro>div{grid-column:2}}.page-figure{margin-top:clamp(3rem,8vw,6rem)}.page-figure img{width:100%;height:auto}.page-figure--dark{background:var(--dark)}.page-figure--dark img{padding:clamp(1rem,4vw,4rem) 0}.page-figure--dark figcaption{background:var(--bg)}.page-figure--chat{padding-inline:var(--margin)}.frame--wide{aspect-ratio:4/5;max-width:64rem}@media (width>=40em){.frame--wide{aspect-ratio:16/9}}.page-figure--chat figcaption{padding-inline:0}.page-figure--chat .chat{font-size:clamp(.8125rem,.7rem + .5vw,1.0625rem)}.page-figure--chat .msg{max-width:min(78%,34rem)}.page-figure figcaption{padding:.75rem var(--margin) 0;font-size:var(--step-small);color:var(--muted)}.points{padding:var(--section) var(--margin) 0;gap:clamp(2.5rem,6vw,4.5rem);display:grid}.point{gap:1rem;display:grid}.point h2{font-size:var(--step-lead);letter-spacing:-.03em;line-height:1.1}.point p{max-width:38rem}@media (width>=56em){.point{gap:var(--gutter);grid-template-columns:5fr 7fr}}.facts{margin:var(--section) var(--margin) 0;gap:2rem;display:grid}.facts h2{font-size:var(--step-lead);letter-spacing:-.03em;margin-bottom:.75rem;line-height:1.1}@media (width>=56em){.facts{gap:var(--gutter);grid-template-columns:1fr 1fr}}.fact{background:var(--surface);padding:clamp(1.5rem,3vw,2.5rem)}.fact p{max-width:36rem}.prose{padding:0 var(--margin) var(--section)}.prose>*{max-width:42rem;margin-left:auto;margin-right:auto}@media (width>=56em){.prose>*{margin-left:calc((100% + var(--gutter)) / 12 * 4);margin-right:0}}.prose h2{font-size:var(--step-lead);letter-spacing:-.03em;margin-top:3.5rem;line-height:1.15}.prose h3{letter-spacing:-.02em;margin-top:2.25rem;font-size:1.1875rem;line-height:1.25}.prose p,.prose ul,.prose table,.prose pre{margin-top:1.1rem}.prose ul{padding-left:1.2rem}.prose li+li{margin-top:.5rem}.prose table{border-collapse:collapse;width:100%;font-size:.9375rem}.prose th,.prose td{text-align:left;vertical-align:top;border-bottom:1px solid #c3c5bf;padding:.7rem .8rem}.prose th{font-weight:600}.prose pre{background:var(--dark);color:var(--dark-ink);padding:1.2rem;font-size:.875rem;line-height:1.55;overflow-x:auto}.prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}.prose p code{background:var(--surface);padding:.1em .3em}.prose .note{background:var(--surface);padding:1.25rem 1.4rem}.article-meta{font-size:var(--step-small);color:var(--muted)}.article-head{padding:clamp(2rem, 6vh, 4rem) var(--margin) 0;gap:2.5rem;display:grid}.article-head h1{font-size:var(--step-head)}.article-head .t-lead{max-width:34rem;margin-top:1.5rem}.article-hero img{width:100%;height:auto}@media (width>=56em){.article-head{column-gap:var(--gutter);min-height:calc(100svh - var(--nav-h) - 2rem);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}.article-head>div{grid-column:1/6}.article-hero{grid-column:6/13}}.article-hero figcaption,.prose__fig figcaption{font-size:var(--step-small);color:var(--muted);max-width:42rem;margin-top:.75rem}.prose .prose__fig{margin-top:2.5rem;margin-bottom:1rem}.prose__fig img{width:100%;height:auto}.prose__fig--dark img{background:var(--dark);padding:1.5rem 0}.blog-list{padding:var(--section) var(--margin);gap:2rem;display:grid}.blog-item{gap:1.5rem;text-decoration:none;display:grid}.blog-item img{width:100%;height:auto;transition:transform .9s var(--ease-soft)}.blog-item__pic{overflow:hidden}.blog-item h2{font-size:var(--step-head)}.blog-item p{max-width:40rem}@media (hover:hover) and (pointer:fine){.blog-item:hover img{transform:scale(1.03)}.blog-item:hover h2{text-underline-offset:.12em;text-decoration:underline;text-decoration-thickness:.05em}}@media (width>=56em){.blog-item{gap:var(--gutter);grid-template-columns:7fr 5fr;align-items:end}}.strip{padding:var(--section) var(--margin) 0}.strip__grid{gap:2rem;margin-top:3rem;display:grid}.strip__pic{background:var(--dark);aspect-ratio:16/9;overflow:hidden}.strip__pic img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-soft)}.strip__pic--flow img{object-fit:contain}.strip__item figcaption{font-size:var(--step-small);color:var(--muted);margin-top:.75rem}@media (width>=56em){.strip__grid{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;row-gap:2rem}.strip__item{grid-column:9/13}.strip__item--main{grid-area:span 2/1/auto/9}}@media (hover:hover) and (pointer:fine){.strip__item:hover .strip__pic img{transform:scale(1.03)}}.cta-band__pic img{width:100%;height:auto}.cta-band__pic figcaption{font-size:var(--step-small);color:var(--dark-ink);margin-top:.75rem}.cta-band__credit{color:var(--dark-muted)}.cta-band{margin-top:var(--section);padding:clamp(3rem, 8vw, 6rem) var(--margin);background:var(--dark);color:var(--dark-ink);gap:1.75rem;display:grid}.cta-band p{max-width:36rem;color:var(--dark-muted)}.cta-band h2{font-size:var(--step-head);max-width:18ch}@media (width>=56em){.cta-band{align-items:center;gap:var(--gutter);grid-template-columns:6fr 6fr}}.notfound{min-height:70svh;padding:clamp(3rem, 12vh, 8rem) var(--margin);align-content:start;gap:1.5rem;display:grid}@media (prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease-out), transform .9s var(--ease-out);transition-delay:calc(var(--i,0) * 80ms);transform:translateY(24px)}.js [data-reveal].is-in{opacity:1;transform:none}.js .project .project__visual{clip-path:inset(0 0 100%);transition:clip-path 1.2s var(--ease-in-out)}.js .project.is-in .project__visual{clip-path:inset(0)}.js [data-rise]{opacity:0;animation:rise .8s var(--ease-out) forwards;animation-delay:calc(var(--i,0) * 90ms + .12s);transform:translateY(18px)}}@keyframes rise{to{opacity:1;transform:none}}
