.studio-canvas-page{--canvas-gap:.75rem;--canvas-row:5.25rem}.canvas-section{padding:0 var(--page-pad) 4rem;scroll-margin-top:4.5rem}.canvas-dock{z-index:30;margin:0 calc(var(--page-pad) * -1) 1.25rem;padding:.7rem var(--page-pad);border-bottom:1px solid var(--hairline);background:color-mix(in srgb, var(--ghost) 92%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;display:grid;position:sticky;top:4.5rem}.canvas-dock>p,.canvas-dock>span{color:var(--mid);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.68rem}.canvas-dock>span{justify-self:end}.canvas-dock>div{gap:.35rem;display:flex}.canvas-dock button{border:1px solid var(--hairline);border-radius:var(--radius-pill);background:var(--paper);min-height:2.5rem;color:var(--piano);cursor:pointer;padding:.45rem .95rem;font-size:.8rem;transition:background .16s,color .16s,border-color .16s}.canvas-dock button:hover{border-color:var(--piano)}.canvas-dock button[aria-pressed=true]{border-color:var(--piano);background:var(--piano);color:var(--ghost)}.canvas-dock button:focus-visible{outline:2px solid var(--piano);outline-offset:2px}.canvas-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:var(--canvas-row);gap:var(--canvas-gap);display:grid;position:relative}.canvas-tile{--tile-fg:var(--piano);--tile-soft:color-mix(in srgb, var(--tile-fg) 82%, transparent);grid-column:var(--col) / span var(--span-c);grid-row:var(--row) / span var(--span-r);clip-path:inset(0 round 1.1rem);isolation:isolate;will-change:transform;background:var(--tile-bg);min-width:0;color:var(--tile-fg);border-radius:1.1rem;grid-template-rows:auto minmax(0,1fr) auto;padding:1.25rem;transition:transform .22s cubic-bezier(.2,.8,.2,1);display:grid;position:relative;overflow:hidden}.canvas-tile:hover{transform:translateY(-3px)}.tone-ink{--tile-bg:var(--piano);--tile-fg:var(--ghost)}.tone-paper{--tile-bg:var(--paper);box-shadow:inset 0 0 0 1px var(--hairline)}.tone-ember{--tile-bg:var(--ember)}.tone-sky{--tile-bg:var(--sky)}.tone-violet{--tile-bg:var(--violet);--tile-fg:#fff}.tone-signal{--tile-bg:var(--signal)}.tone-butter{--tile-bg:var(--butter)}.tone-lilac{--tile-bg:var(--lilac)}.tone-mint{--tile-bg:var(--mint)}.tone-blush{--tile-bg:var(--blush)}.tone-navy{--tile-bg:var(--navy);--tile-fg:var(--ghost)}.tone-blue{--tile-bg:var(--blue);--tile-fg:var(--ghost)}.tone-ocean{--tile-bg:var(--ocean)}.tone-teal{--tile-bg:var(--teal)}.tone-green{--tile-bg:var(--green)}.tone-yellow{--tile-bg:var(--yellow)}.tone-pink{--tile-bg:var(--pink)}.tone-sand{--tile-bg:var(--sand)}.tone-plum{--tile-bg:var(--plum);--tile-fg:var(--ghost)}.tone-ember,.tone-violet,.tone-blue,.tone-pink{--tile-soft:var(--tile-fg)}.canvas-tile .tile-open{z-index:5;border-radius:inherit;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;position:absolute;inset:0}.canvas-tile .tile-open:focus-visible{outline:3px solid var(--tile-fg);outline-offset:-6px}.canvas-tile .tile-meta{color:var(--tile-soft);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:1rem;font-size:.64rem;display:flex}.canvas-tile .tile-meta span:last-child{flex-shrink:0}.tile-art{min-height:0;position:relative}.tile-art.is-image{margin-inline:-1.25rem;overflow:hidden}.tile-art.is-image img{object-fit:contain;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0;transform:translate(6%)scale(1.12)}.canvas-tile:hover .tile-art.is-image img{transform:translate(3%)scale(1.16)}.tile-capital-one .tile-art.is-image img{transform:translate(3%,-3%)scale(.92)}.tile-capital-one:hover .tile-art.is-image img{transform:translate(2%,-4%)scale(.96)rotate(-1deg)}.canvas-grid.is-works .tile-morph .tile-art.is-image img{transform:translate(4%,5%)scale(.98)}.canvas-grid.is-works .tile-morph:hover .tile-art.is-image img{transform:translate(3%,4%)scale(1.02)}.tile-art.is-price{align-items:flex-end;gap:.5rem;padding-bottom:.75rem;display:flex}.tile-art.is-price strong{letter-spacing:-.05em;font-family:Plus Jakarta Sans,Helvetica Neue,Arial,sans-serif;font-size:clamp(3rem,5vw,4.75rem);font-weight:500;line-height:.85}.tile-art.is-price span{color:var(--tile-soft);font-size:.75rem}.tile-art.is-glyph{letter-spacing:-.04em;opacity:.9;font-size:clamp(2.5rem,4.4vw,4.5rem);font-weight:600;line-height:1;position:absolute;top:50%;right:1.5rem;transform:translateY(-50%)}.tile-about .tile-art.is-glyph{font-size:clamp(2.75rem,4vw,3.75rem);top:3.4rem;left:1.5rem;right:auto;transform:none}.tile-builds .tile-art.is-glyph{font-size:clamp(1.9rem,2.6vw,2.6rem);top:3.2rem;transform:none}.canvas-tile .tile-copy h1,.canvas-tile .tile-copy h2{letter-spacing:-.035em;text-wrap:balance;margin:0 0 .65rem;font-family:Plus Jakarta Sans,Helvetica Neue,Arial,sans-serif;font-size:clamp(1.45rem,2vw,2rem);font-weight:500;line-height:1}.canvas-tile .tile-copy h1{letter-spacing:-.05em;max-width:23ch;font-size:clamp(2.1rem,3.3vw,3.5rem);line-height:.95}.canvas-grid.is-contact .tile-contact .tile-copy h2,.canvas-grid.is-contact .tile-client .tile-copy h2{letter-spacing:-.045em;font-size:clamp(2.4rem,3.8vw,3.75rem);line-height:.98}.canvas-grid.is-contact .tile-contact .tile-copy h2{max-width:58%}.canvas-grid.is-about .tile-about .tile-art.is-glyph{font-size:clamp(5rem,10vw,10rem)}.canvas-tile .tile-copy{grid-row:3;position:relative}.canvas-tile:has(.is-glyph) .tile-copy{max-width:calc(100% - 4.5rem)}:is(.tile-about:has(.is-glyph) .tile-copy,.tile-builds:has(.is-glyph) .tile-copy){max-width:none}.canvas-tile .tile-copy p{max-width:34rem;color:var(--tile-soft);text-wrap:pretty;margin:0;font-size:.8rem;line-height:1.55}.canvas-tile:not(.is-muted) .tile-copy p{max-width:min(34rem,100% - 3.6rem)}.tile-intro .tile-copy{align-self:end}.tile-flow{--lift:0px;z-index:0;pointer-events:none;clip-path:inset(calc(var(--clip-t) - var(--lift)) var(--clip-r) calc(var(--clip-b) + var(--lift)) var(--clip-l) round 1.1rem);transition:transform .22s cubic-bezier(.2,.8,.2,1),clip-path .22s cubic-bezier(.2,.8,.2,1);animation:.52s .42s both flow-in;position:absolute}.canvas-tile:hover .tile-flow{--lift:3px;transform:translateY(var(--lift))}.canvas-tile>:not(.tile-flow):not(.tile-open){z-index:1;position:relative}.canvas-tile>.tile-hint:not(.tile-flow){z-index:1;font-size:.66rem;position:absolute;bottom:1.1rem;right:1.25rem}.canvas-tile>.tile-art.is-glyph{position:absolute}.flow-shape{color:var(--flow-bg);transform:rotate(var(--rotate));display:block;position:absolute;overflow:visible}.flow-ink{--flow-bg:var(--piano)}.flow-paper{--flow-bg:var(--ghost)}.flow-ember{--flow-bg:var(--ember)}.flow-sky{--flow-bg:var(--sky)}.flow-violet{--flow-bg:var(--violet)}.flow-signal{--flow-bg:var(--signal)}.flow-butter{--flow-bg:var(--butter)}.flow-lilac{--flow-bg:var(--lilac)}.flow-mint{--flow-bg:var(--mint)}.flow-blush{--flow-bg:var(--blush)}.flow-navy{--flow-bg:var(--navy)}.flow-blue{--flow-bg:var(--blue)}.flow-ocean{--flow-bg:var(--ocean)}.flow-teal{--flow-bg:var(--teal)}.flow-green{--flow-bg:var(--green)}.flow-yellow{--flow-bg:var(--yellow)}.flow-pink{--flow-bg:var(--pink)}.flow-sand{--flow-bg:var(--sand)}.flow-plum{--flow-bg:var(--plum)}@keyframes flow-in{0%{opacity:0}to{opacity:1}}.canvas-tile.is-muted{grid-template-rows:auto 1fr;padding:.85rem 1rem}.canvas-tile.is-muted .tile-art,.canvas-tile.is-muted .tile-copy p,.canvas-tile.is-muted .tile-hint{display:none}.canvas-tile.is-muted .tile-copy{align-self:end}.canvas-tile.is-muted .tile-copy h1,.canvas-tile.is-muted .tile-copy h2{letter-spacing:-.02em;-webkit-line-clamp:1;-webkit-box-orient:vertical;margin:0;font-size:1.05rem;line-height:1.25;display:-webkit-box;overflow:hidden}@media (max-width:1100px){.studio-canvas-page{--canvas-row:4.5rem}.canvas-dock{grid-template-columns:1fr auto}.canvas-dock>div{scrollbar-width:none;grid-area:2/1/auto/-1;overflow-x:auto}}@media (max-width:760px){.canvas-section{scroll-margin-top:4.25rem}.canvas-dock{grid-template-columns:1fr;padding-block:.6rem;top:4.25rem}.canvas-dock>p,.canvas-dock>span{display:none}.canvas-dock>div{margin-inline:calc(var(--page-pad) * -1);padding-inline:var(--page-pad);grid-row:auto}.canvas-dock>div::-webkit-scrollbar{display:none}.canvas-dock button{flex:none}.canvas-grid{grid-template-columns:1fr;grid-auto-rows:auto;gap:.6rem}.canvas-tile{grid-area:auto/1;min-height:13rem}.canvas-tile.has-image{min-height:23rem}.canvas-tile.tile-intro{min-height:22rem}.canvas-tile.tile-about{min-height:17rem}.tile-morph .tile-art.is-image img,.canvas-grid.is-works .tile-morph .tile-art.is-image img{transform:scale(1.04)}.canvas-grid.is-contact .tile-contact .tile-copy h2{max-width:65%}.canvas-grid.is-contact .tile-contact,.canvas-grid.is-contact .tile-client{min-height:17rem}.tile-capital-one .tile-art.is-image img,.tile-capital-one:hover .tile-art.is-image img{transform:scale(.92)}.tile-mt-zion{--tile-fg:var(--piano);--tile-soft:var(--piano)}.canvas-tile>.tile-art.is-glyph{font-size:2.6rem;top:3.2rem;transform:none}.canvas-tile:has(.is-glyph) .tile-copy{max-width:none}.tile-client>.tile-art.is-glyph,.tile-products>.tile-art.is-glyph{font-size:3.6rem;top:2.7rem}.canvas-tile.is-muted{min-height:0}.canvas-tile.is-muted .tile-copy{margin-top:.4rem}.canvas-tile:hover{transform:none}}@media (prefers-reduced-motion:reduce){.tile-flow{transition:none;animation:none}.canvas-tile:hover .tile-flow{--lift:0px;transform:none}.canvas-tile,.tile-art.is-image img{transition:none}}.tile-card{--band:19rem;--card-soft:color-mix(in srgb, var(--tile-fg) 82%, transparent);--card-accent:var(--tile-bg);background:var(--ghost);width:min(60rem,100% - 3rem);max-width:none;max-height:calc(100svh - 3rem);color:var(--piano);border:0;border-radius:1.1rem;margin:auto;padding:0;overflow:hidden}.tile-card.tone-paper,.tile-card.tone-ink{--card-accent:var(--ember)}.tile-card.tone-butter{--card-accent:var(--piano)}.tile-card.tone-ember,.tile-card.tone-violet,.tile-card.tone-blue,.tile-card.tone-pink{--card-soft:var(--tile-fg)}.tile-card::backdrop{background:#090909b8}.card-panel{overscroll-behavior:contain;max-height:calc(100svh - 3rem);overflow-y:auto}.card-band{min-height:var(--band);background:var(--tile-bg);color:var(--tile-fg);grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1.5rem 2rem;padding:1.1rem 2rem 2rem;display:grid;position:relative;overflow:hidden}.tile-card.tone-paper .card-band{box-shadow:inset 0 -1px 0 var(--hairline)}.kind-work .card-band{--band:24rem}.card-band-shapes{pointer-events:none;position:absolute;inset:0}.card-band-shape{left:var(--x);top:var(--y);width:calc(var(--size) * var(--band));height:auto;aspect-ratio:var(--ratio);color:var(--flow-bg);transform:translate(-50%, -50%) rotate(var(--rotate));position:absolute;overflow:visible}.kind-work .card-band-shape:first-child{top:58%;left:74%}.kind-work .card-band-shape.is-top-right:first-child{transform:rotate(var(--rotate));top:-1.25rem;left:auto;right:-1.25rem}.card-topline{z-index:1;grid-column:1/-1;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:relative}.card-topline>span{color:var(--card-soft);letter-spacing:.06em;font-size:.65rem}.card-topline button{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--tile-bg) 70%, transparent);min-height:2.75rem;color:inherit;font:inherit;cursor:pointer;border:1px solid;flex-shrink:0;align-items:center;gap:.75rem;padding:.5rem .9rem;font-size:.75rem;display:flex}.card-topline button:focus-visible{outline-offset:3px;outline:2px solid}.card-heading{z-index:1;align-self:end;position:relative}.card-heading h2{letter-spacing:-.045em;text-wrap:balance;overflow-wrap:anywhere;margin:0 0 1rem;font-family:Plus Jakarta Sans,Helvetica Neue,Arial,sans-serif;font-size:clamp(2.4rem,4.4vw,4rem);font-weight:500;line-height:.95}.card-heading>p{max-width:32rem;color:var(--card-soft);margin:0;font-size:.88rem;line-height:1.6}.card-heading>.card-price{max-width:none;color:var(--tile-fg);align-items:flex-end;gap:.6rem;margin:0 0 .75rem;display:flex}.card-price strong{letter-spacing:-.06em;font-family:Plus Jakarta Sans,Helvetica Neue,Arial,sans-serif;font-size:clamp(4rem,8vw,6.5rem);font-weight:500;line-height:.8}.card-price span{color:var(--card-soft);padding-bottom:.3rem;font-size:.8rem}.card-figure{z-index:1;object-fit:contain;grid-area:2/2;align-self:center;width:100%;max-height:19rem;position:relative;transform:translate(6%)scale(1.12)}.card-gallery{z-index:1;touch-action:pan-y;-webkit-user-select:none;user-select:none;grid-area:2/2;align-self:center;gap:.75rem;margin:0;display:grid;position:relative}.card-gallery-stage{aspect-ratio:4/3;border-radius:.8rem;overflow:hidden;box-shadow:0 1.2rem 2.4rem -1.4rem #09090c8c}.card-gallery-stage img{object-fit:cover;width:100%;height:100%;animation:.26s both gallery-in;display:block}.card-gallery-stage.is-cutout{box-shadow:none;border-radius:0;overflow:visible}.card-gallery-stage.is-cutout img{object-fit:contain;transform:scale(1.08)}.card-gallery-controls{color:var(--card-soft);letter-spacing:.06em;font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:.75rem;font-size:.72rem;display:flex}.card-gallery-controls button{width:2.5rem;height:2.5rem;color:var(--tile-fg);font:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:50%;place-items:center;font-size:.95rem;display:grid}.card-gallery-controls button:hover{background:color-mix(in srgb, var(--tile-fg) 12%, transparent)}.card-gallery-controls button:focus-visible{outline:2px solid var(--tile-fg);outline-offset:2px}.card-gallery-preload{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}@keyframes gallery-in{0%{opacity:0}to{opacity:1}}.card-glyph{z-index:1;letter-spacing:-.05em;font-size:clamp(5rem,11vw,9rem);font-weight:600;line-height:.8;position:absolute;bottom:2rem;right:2rem}.card-body{gap:2rem;padding:2rem;display:grid}.card-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;display:grid}.card-section h3,.card-services h3{margin:0 0 .9rem;font-size:1rem;font-weight:600}.card-section p,.card-section li,.card-services p{color:var(--mid);font-size:.86rem;line-height:1.65}.card-section p{margin:0}.card-section ul{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.card-section li{padding-left:1.35rem;position:relative}.card-section li:before{content:"";background:var(--card-accent);border-radius:.12rem;width:.5rem;height:.5rem;position:absolute;top:.5em;left:0}.kind-plan .card-section:first-child li:before{content:"✓";width:auto;height:auto;color:var(--piano);background:0 0;font-weight:700;top:0}.card-services{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;display:grid}.card-services section{border-top:2px solid var(--piano);padding-top:1rem}.card-services p{margin:0}.card-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.card-steps li{border-top:2px solid var(--piano);padding-top:1rem}.card-steps span{color:var(--mid);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.6rem;font-size:.66rem;display:block}.card-steps p{margin:0;font-size:.95rem;line-height:1.5}.card-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.card-plans button{border:1px solid var(--hairline);background:var(--paper);color:var(--piano);font:inherit;text-align:left;cursor:pointer;border-radius:.8rem;grid-template-columns:1fr auto;align-content:start;gap:.35rem 1rem;padding:1rem;transition:border-color .16s,background .16s;display:grid}.card-plans button:hover{border-color:var(--piano)}.card-plans button[aria-pressed=true]{border-color:var(--piano);background:var(--piano);color:var(--ghost);cursor:default}.card-plans button:focus-visible{outline:2px solid var(--piano);outline-offset:3px}.card-plans span,.card-plans strong{font-size:.95rem;font-weight:600}.card-plans small{color:var(--mid);grid-column:1/-1;font-size:.72rem;line-height:1.45}.card-plans button[aria-pressed=true] small{color:#b8b8c0}.card-email{border-bottom:1px solid var(--piano);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1.5rem;display:flex}.card-email a{letter-spacing:-.04em;overflow-wrap:anywhere;font-family:Plus Jakarta Sans,Helvetica Neue,Arial,sans-serif;font-size:clamp(1.7rem,4vw,2.8rem);font-weight:500}.card-email a:hover{color:var(--mid)}.card-email button{border:1px solid var(--piano);border-radius:var(--radius-pill);background:var(--paper);min-height:2.75rem;color:var(--piano);font:inherit;cursor:pointer;padding:.5rem 1rem;font-size:.75rem}.card-email button:focus-visible{outline:2px solid var(--piano);outline-offset:3px}.card-email a:focus-visible{outline:2px solid var(--piano);outline-offset:3px}.card-signin:focus-visible{outline:2px solid var(--piano);outline-offset:3px}.card-signin{border:1px solid var(--hairline);background:var(--paper);border-radius:.8rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:1.1rem 1.25rem;display:flex}.card-signin span{color:var(--mid);font-size:.8rem}.card-signin strong{font-size:.9rem;font-weight:600}.card-signin:hover{border-color:var(--piano)}.card-note{border-left:3px solid var(--card-accent);background:var(--paper);border-radius:0 .6rem .6rem 0;padding:1.1rem 1.25rem}.card-note span{letter-spacing:.06em;text-transform:uppercase;margin-bottom:.4rem;font-size:.66rem;display:block}.card-note p{color:var(--mid);margin:0;font-size:.84rem;line-height:1.6}.card-actions{display:grid}.card-actions a{border-top:1px solid var(--piano);justify-content:space-between;gap:1rem;padding:1rem 0;font-size:.85rem;display:flex}.card-actions a:last-child{border-bottom:1px solid var(--piano)}.card-actions a:hover{color:var(--mid)}.card-actions a.is-primary{border-radius:var(--radius-pill);background:var(--piano);color:var(--ghost);border:0;margin-bottom:.75rem;padding:1.05rem 1.35rem;font-weight:600}.card-actions a.is-primary:only-child{margin-bottom:0}.card-actions a.is-primary:hover{color:var(--ghost);background:#2a2a30}.card-actions a.is-primary+a{border-top:1px solid var(--piano)}.card-actions a:focus-visible{outline:2px solid var(--piano);outline-offset:3px}@media (max-width:760px){.tile-card{--band:13rem;width:calc(100% - 1rem);max-height:calc(100svh - 1rem)}.card-panel{max-height:calc(100svh - 1rem)}.kind-work .card-band{--band:15rem}.card-band{grid-template-rows:auto auto auto;grid-template-columns:1fr;padding:.9rem 1.15rem 1.5rem}.card-figure{grid-area:2/1;max-height:14rem;transform:none}.card-gallery{grid-area:2/1}.kind-work .card-heading{grid-row:3}.card-heading h2{font-size:clamp(2.2rem,11vw,3.2rem)}.card-heading>p{max-width:none}.card-glyph{font-size:4.5rem;top:3.5rem;bottom:auto;right:1.15rem}.kind-about .card-heading{padding-top:4rem}.card-band-shape{width:calc(var(--size) * var(--band) * .7)}.card-band-shape:first-child{top:40%;left:96%}.kind-work .card-band-shape:first-child{top:40%;left:80%}.card-band-shape:nth-child(2){display:none}.card-body{gap:1.5rem;padding:1.25rem 1.15rem 1.5rem}.card-columns,.card-services,.card-steps,.card-plans{grid-template-columns:1fr}.card-services{gap:1.1rem}.card-plans button{padding:.8rem .9rem}}@media (prefers-reduced-motion:reduce){.card-gallery-stage img{animation:none}.card-plans button{transition:none}}
