@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.block{display:block}.grid{display:grid}.hidden{display:none}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.sepia{--tw-sepia:sepia(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:block;font-weight:300 700;src:url(/_astro/fredoka-latin-wght-normal.DM6njrJ3.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:block;font-weight:500;src:url(/_astro/barlow-condensed-latin-500-normal.BgYH2mbd.woff2)format("woff2")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:block;font-weight:600;src:url(/_astro/barlow-condensed-latin-600-normal.DepVgxBB.woff2)format("woff2")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:block;font-weight:700;src:url(/_astro/barlow-condensed-latin-700-normal.v1xN8_Wq.woff2)format("woff2")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:block;font-weight:800;src:url(/_astro/barlow-condensed-latin-800-normal.BKzMuPgK.woff2)format("woff2")}:root{--paper:#efe9da;--paper-light:#faf7ed;--paper-dim:#ded8ca;--ink:#11110f;--ink-soft:#3e3d38;--smoke:#77766f;--smoke-light:#c9c4b8;--red:#c74732;--red-dark:#963322;--red-field:#d45240;--yellow:#e4c74a;--green:#4f6a52;--traffic-close:#ff5f57;--traffic-minimize:#febc2e;--traffic-zoom:#28c840;--line:2px;--font-display:"Fredoka Variable", sans-serif;--font-body:"Barlow Condensed", sans-serif;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-snap:cubic-bezier(.34, 1.45, .64, 1);--shadow-soft:0 14px 34px #11110f2e;--shadow-deep:0 28px 60px #00000057;--gate-hold-first:.72s;--gate-hold-nav:.16s;--gate-open:.62s;--gate-open-delay:.12s;--gate-close:.42s;--gate-card-out:.16s}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);scroll-padding-top:7rem}body{background:var(--ink);min-width:320px;color:var(--ink);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1.15rem;font-weight:500;line-height:1.5;overflow-x:hidden}::selection{background:var(--red);color:var(--paper-light)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--paper);border-left:1px solid var(--ink)}::-webkit-scrollbar-thumb{border:3px solid var(--paper);background:var(--ink);border-radius:99px}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1.5px}button,a,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--red);outline-offset:4px}img,svg{max-width:100%;display:block}p,h1,h2,h3,ul,ol,dl,figure{margin:0}ul,ol{padding:0;list-style:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-shell{z-index:1;border:var(--line) solid var(--ink);background:var(--paper);border-radius:30px;width:min(100% - 12px,1800px);margin:6px auto;position:relative;overflow:clip}.skip-link{z-index:200;border:2px solid var(--ink);background:var(--yellow);font-family:var(--font-display);transition:transform .18s var(--ease-out);border-radius:999px;padding:.7rem 1rem;font-weight:700;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.film-gate{z-index:100;pointer-events:none;height:100lvh;display:none;position:fixed;inset:0 0 auto;overflow:hidden}.js .film-gate{grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);transition:visibility linear;display:grid}.js .film-gate[data-state=open]{visibility:hidden;transition-delay:calc(var(--gate-open-delay) + var(--gate-open) + 80ms)}.film-scrim{z-index:0;background:var(--ink);opacity:0;grid-area:1/1/-1/-1;transition:opacity .2s ease-in}.film-shutter{z-index:1;background:var(--ink);min-height:0;transition:transform var(--gate-open) var(--ease-out);position:relative}.film-shutter-top{grid-area:1/1}.film-shutter-bottom{grid-area:3/1}.film-shutter:after{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='16' viewBox='0 0 40 16'%3E%3Crect x='12' y='4' width='16' height='8' rx='2' fill='%23faf7ed'/%3E%3C/svg%3E");background-position:50%;background-repeat:space no-repeat;background-size:2.5rem 1rem;width:100%;height:1rem;position:absolute;left:0}.film-shutter-top:after{bottom:0}.film-shutter-bottom:after{top:0}.film-slot{z-index:2;opacity:1;filter:blur();transition:opacity var(--gate-card-out) ease, filter var(--gate-card-out) ease;grid-area:2/1;place-items:center;display:grid;position:relative}.film-card{border-top:2px solid var(--paper-light);border-bottom:2px solid var(--paper-light);background:var(--ink);width:100%;color:var(--paper-light);font-family:var(--font-display);text-align:center;text-transform:uppercase;justify-items:center;padding:1.35rem 1.5rem 1.1rem;display:grid}.film-card small{color:var(--yellow);letter-spacing:.16em;font-size:.72rem;font-weight:700}.film-card strong{letter-spacing:-.025em;margin-top:.3rem;font-size:clamp(1.35rem,4vw,2.5rem);line-height:1}.js .film-gate[data-state=open] .film-shutter-top{transition-delay:var(--gate-open-delay);transform:translateY(-103%)}.js .film-gate[data-state=open] .film-shutter-bottom{transition-delay:var(--gate-open-delay);transform:translateY(103%)}.js .film-gate[data-state=open] .film-slot{opacity:0;filter:blur(8px)}.js .film-gate[data-state=closed] .film-shutter{transition-duration:var(--gate-close);transition-delay:0s}.js .film-gate[data-state=closed] .film-scrim{opacity:.2;transition-duration:.18s;transition-delay:.24s}.js .film-gate[data-state=closed] .film-slot{opacity:1;filter:blur();transition-duration:.26s,0s;transition-delay:80ms,0s}.site-header{z-index:30;justify-content:space-between;align-items:center;gap:2rem;padding:clamp(1rem,2vw,1.65rem) clamp(1rem,4vw,4.5rem);display:flex;position:relative}.studio-mark{color:var(--ink);transform-origin:35% 100%;transition:transform .34s var(--ease-snap);align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.studio-mark:hover{transform:translateY(-2px)rotate(-1deg)}.studio-mark.is-pressed{transform:translateY(2px)rotate(0)}.studio-mark svg{width:3.2rem;height:3.2rem;overflow:visible}.mark-disc{fill:var(--ink);stroke:var(--ink);stroke-width:2px}.mark-eye,.mark-smile{fill:var(--paper-light);stroke:var(--paper-light);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.mark-smile{fill:none}.studio-mark span{line-height:.86;display:grid}.studio-mark strong{font-family:var(--font-body);letter-spacing:.035em;font-size:1.4rem;font-weight:800}.studio-mark small{letter-spacing:.09em;margin-top:.3rem;font-size:.72rem;font-weight:800}.desktop-nav{align-items:center;gap:.35rem;display:flex}.desktop-nav a,.mobile-menu-button,.mobile-nav nav a,.pill-link{border:2px solid var(--ink);background:var(--paper-light);min-height:44px;color:var(--ink);font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;transition:background .2s ease, color .2s ease, transform .34s var(--ease-snap);border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.78em 1.15em .52em;font-size:.82rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.desktop-nav a:hover,.pill-link:hover{background:var(--yellow);transform:translateY(-3px)rotate(-1deg)}.desktop-nav .nav-contact{background:var(--ink);color:var(--paper-light)}.desktop-nav .nav-contact:hover{background:var(--red);color:var(--paper-light)}.pill-link .arrow-icon{width:1.2rem}.pill-link-inverse{border-color:var(--paper-light);color:var(--paper-light);background:0 0}.pill-link-inverse:hover{border-color:var(--yellow);color:var(--ink)}.mobile-nav{display:none}.hero-title,.section-intro h2,.practice-section h2,.about-section h2,.contact-section h2,.case-section h2,.mobile-proof h2,.case-next h2{font-family:var(--font-display);letter-spacing:-.04em;text-wrap:balance;font-weight:700;line-height:.87}.hero-title{text-transform:uppercase;max-width:11ch;font-size:clamp(4rem,7.5vw,6rem)}.section-intro h2,.practice-section h2,.about-section h2,.contact-section h2{text-transform:uppercase;font-size:clamp(3.4rem,7vw,6rem)}.title-line{display:block}.title-outline{color:var(--paper-light);-webkit-text-stroke:clamp(2px, .045em, 4px) var(--ink);paint-order:stroke fill;text-shadow:0 5px #11110f1f}.work-section .title-outline,.case-next .title-outline{color:var(--ink);-webkit-text-stroke-color:var(--paper-light);text-shadow:none}.pop{transform-origin:50% 100%;display:inline-block}.button{--fill:var(--ink);--fill-text:var(--paper-light);border:2px solid var(--ink);min-height:50px;font-family:var(--font-display);letter-spacing:.01em;white-space:nowrap;isolation:isolate;transform-origin:50% 100%;transition:transform .38s var(--ease-snap), color .22s ease, box-shadow .32s var(--ease-out);border-radius:999px;justify-content:center;align-items:center;gap:.65rem;padding:.86em 1.3em .62em;font-size:.95rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.button:before{z-index:-1;content:"";border-radius:inherit;background:var(--fill);transform-origin:50% 100%;transition:transform .32s var(--ease-out);position:absolute;inset:-1px;transform:scaleY(0)}.button:hover,.button:focus-visible{color:var(--fill-text);transform:translateY(-4px)rotate(-1deg);box-shadow:0 9px 20px #11110f2e}.button:hover:before,.button:focus-visible:before{transform:scaleY(1)}.button.is-pressed{transition-duration:.12s,.22s,.12s;transition-timing-function:var(--ease-out), ease, var(--ease-out);transform:scaleX(1.05)scaleY(.88)translateY(4px);box-shadow:0 3px 7px #11110f24}@media (hover:hover){.button:hover .arrow-icon{animation:1.1s ease-in-out .2s infinite arrow-beckon}}.button-dark{--fill:var(--red);background:var(--ink);color:var(--paper-light)}.button-paper{--fill:var(--ink);background:var(--paper-light);color:var(--ink)}.button-light{--fill:var(--yellow);--fill-text:var(--ink);border-color:var(--paper-light);background:var(--paper-light);color:var(--ink)}.button-large{min-height:50px;padding-inline:1.5rem;font-size:1.05rem}.arrow-icon{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:1.65rem;transform:rotate(var(--arrow-rotate,0deg));transition:transform .26s var(--ease-out);flex:none}a:hover .arrow-icon{transform:rotate(var(--arrow-rotate,0deg)) translateX(4px)}.hero{grid-template-columns:minmax(0,.92fr) minmax(31rem,1.08fr);align-items:center;gap:clamp(1.5rem,3vw,3rem);min-height:calc(100svh - 14.5rem);padding:clamp(.65rem,1.6vw,1.6rem) clamp(1rem,4vw,4.5rem) clamp(2.2rem,3.6vw,3.4rem);display:grid;position:relative}.hero-copy{z-index:3;max-width:49rem;padding-top:clamp(.2rem,1.4vw,1.15rem);position:relative}.hero-copy>p{max-width:35rem;margin-top:1.7rem;font-size:clamp(1.2rem,1.7vw,1.55rem);line-height:1.42}.hero-actions,.case-actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.hero-actions:has(>.button+.button),.case-actions:has(>.button+.button),.about-links:has(>.button+.button){grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,28rem);display:grid}.hero-actions:has(>.button+.button) .button,.case-actions:has(>.button+.button) .button,.about-links:has(>.button+.button) .button{width:100%}.proof-seals{flex-wrap:wrap;gap:.8rem 1.4rem;margin-top:2.4rem;display:flex}.proof-seals li{letter-spacing:.055em;text-transform:uppercase;align-items:center;gap:.55rem;font-size:.82rem;font-weight:700;display:inline-flex}.proof-seals svg{fill:none;width:2.1rem;height:2.1rem;stroke:var(--ink);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.proof-seals .ink{fill:var(--ink);stroke:none}.hero-stage{width:100%;position:relative;overflow:visible}.hero-cel{aspect-ratio:3/2;border:2px solid var(--ink);background:var(--paper-light);box-shadow:var(--shadow-soft);border-radius:52px 26px 46px 22px;position:relative;overflow:hidden}.hero-cel>img{object-fit:cover;object-position:center;width:100%;max-width:none;height:100%;position:absolute;inset:0}.has-film{position:relative}.film-static{z-index:2;pointer-events:none;opacity:1;transition:opacity .15s;position:absolute;inset:0;overflow:hidden}.film-static:before{content:"";width:100%;height:calc(100% + 4096px);animation:1.6s steps(8,end) infinite film-dirt;animation-play-state:var(--loop-state,running);background:url(/assets/film-dirt.png) 0 0/512px 4096px;position:absolute;top:0;left:0}.has-film:hover>.film-static,.has-film:focus-visible>.film-static{opacity:0}.stage-notes{--note-headroom:96px;z-index:5;pointer-events:none;position:absolute;inset:0}.stage-note{width:auto;height:clamp(1.6rem,2.7vw,2.6rem);fill:var(--ink);stroke:var(--ink);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;opacity:0;transform-origin:50% 65%;position:absolute;top:0;left:0}.stage-sign{z-index:4;border:2px solid var(--ink);background:var(--paper-light);font-family:var(--font-display);text-transform:uppercase;border-radius:12px 16px 11px 15px;align-items:center;gap:.45rem;padding:.72em .9em .5em;font-size:clamp(.75rem,1.2vw,1rem);font-weight:700;line-height:1;display:flex;position:absolute;bottom:-1.1rem;left:-.6rem;transform:rotate(-4deg);box-shadow:0 8px 18px #11110f29}.stage-sign i{background:var(--red);width:1.4rem;height:1.4rem;color:var(--paper-light);border-radius:50%;place-items:center;font-style:normal;font-weight:700;line-height:1;display:grid}.stage-sign i span{line-height:1;display:block;transform:translateY(-.07em)}.stage-sign-red{background:var(--red);color:var(--paper-light)}.stage-sign-red i{background:var(--paper-light);color:var(--red)}.scroll-cue{z-index:5;font-family:var(--font-display);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:.6rem;font-size:.78rem;font-weight:700;line-height:1;text-decoration:none;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-cue .arrow-icon{width:1.4rem;animation:scroll-hop 1.8s var(--ease-out) infinite}.scroll-cue:hover .arrow-icon{transform:rotate(var(--arrow-rotate,0deg))}.wave-divider{z-index:4;height:clamp(3rem,6vw,6rem);margin-top:-1px;margin-bottom:-3px;position:relative;overflow:hidden}.wave-divider:after{content:"";background:var(--ink);pointer-events:none;height:4px;position:absolute;bottom:0;left:0;right:0}.wave-divider svg{width:200%;max-width:none;height:calc(100% + 4px);animation:32s linear infinite wave-roll;animation-play-state:var(--loop-state,running);display:block;position:absolute;top:0;left:0}.wave-divider path{fill:var(--ink)}.work-section{background:var(--ink);color:var(--paper-light);padding:clamp(4rem,8vw,8rem) clamp(1rem,4vw,4.5rem) clamp(5rem,9vw,9rem);position:relative}.section-intro{grid-template-columns:minmax(0,1.2fr) minmax(16rem,.8fr);align-items:end;gap:3rem;max-width:87rem;margin:0 auto clamp(4rem,8vw,8rem);display:grid}.section-intro p{max-width:30rem;color:var(--paper-dim);font-size:clamp(1.2rem,1.7vw,1.55rem);line-height:1.42}.feature-project{border:2px solid var(--paper-light);background:var(--paper);max-width:95rem;color:var(--ink);box-shadow:var(--shadow-deep);border-radius:30px 24px 33px 26px;grid-template-columns:minmax(22rem,1fr) minmax(26rem,1fr);gap:clamp(1.5rem,3vw,3rem);margin:0 auto;padding:clamp(1rem,2vw,1.5rem);display:grid}.feature-illustration{grid-template-rows:minmax(0,1fr) auto;justify-items:center;min-height:0;display:grid;position:relative}.feature-still{border:2px solid var(--ink);background:var(--paper-light);border-radius:22px 18px 26px 20px;width:100%;height:100%;min-height:0;overflow:hidden}.feature-illustration img{object-fit:cover;object-position:42% 50%;width:100%;height:100%;min-height:22rem}.feature-caption{z-index:2;border:2px solid var(--ink);background:var(--yellow);width:max-content;max-width:calc(100% - 1.4rem);font-family:var(--font-display);letter-spacing:.06em;text-align:center;text-transform:uppercase;border-radius:999px;margin:-1.1rem auto 0;padding:.72em 1em .5em;font-size:.78rem;font-weight:700;line-height:1;position:relative}.feature-proof{padding:clamp(.5rem,2vw,1.5rem) clamp(.25rem,1vw,1rem)}.project-title-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.project-title-row h3,.reel-copy h3{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(3.4rem,6vw,6rem);font-weight:700;line-height:.9}.project-title-row .pill-link{min-height:40px;padding:.55em .9em .4em;font-size:.75rem}.project-lede{max-width:45rem;margin:1rem 0 1.5rem;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.35}.screen-window{border:2px solid var(--ink);background:var(--ink);box-shadow:var(--shadow-soft);border-radius:14px;text-decoration:none;display:block;position:relative;overflow:hidden}.screen-window>.film-static{top:2.1rem}.screen-window>img{aspect-ratio:16/10;object-fit:cover;object-position:center top;filter:grayscale()contrast(1.06)brightness(.96)sepia(.14);width:100%;transition:filter .7s var(--ease-out)}@media (hover:hover){.screen-window:hover>img,.screen-window:focus-visible>img{filter:none}}.screen-bar{z-index:3;border-bottom:2px solid var(--ink);background:var(--paper-light);height:2.1rem;color:var(--ink);align-items:center;gap:8px;padding:0 .7rem 0 12px;display:flex;position:relative}.screen-bar span{border:1.5px solid var(--ink);background:var(--traffic-close);transform-origin:50% 100%;border-radius:50%;flex:none;width:12px;height:12px;position:relative;box-shadow:inset -1px -1.5px #11110f3d}.screen-bar span:nth-child(2){background:var(--traffic-minimize)}.screen-bar span:nth-child(3){background:var(--traffic-zoom)}.screen-bar span:before{content:"";background:var(--paper-light);border-radius:50%;width:3.5px;height:2.5px;position:absolute;top:1px;left:2px;transform:rotate(-32deg)}@media (hover:hover){.screen-window:hover .screen-bar span{animation:light-squash .56s var(--ease-snap) both}.screen-window:hover .screen-bar span:nth-child(2){animation-delay:70ms}.screen-window:hover .screen-bar span:nth-child(3){animation-delay:.14s}}.screen-bar b{font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;margin-left:auto;font-size:.68rem;font-weight:700}.screen-action,.screen-hint{z-index:4;border:2px solid var(--ink);background:var(--yellow);color:var(--ink);font-family:var(--font-display);transition:transform .32s var(--ease-out);border-radius:999px;align-items:center;gap:.6rem;padding:.65rem .9rem .55rem;font-size:.82rem;font-weight:700;line-height:1;display:flex;position:absolute;bottom:1rem;right:1rem;box-shadow:0 7px 16px #11110f33}.screen-window:hover .screen-action{transform:translateY(-3px)rotate(-1deg)}.screen-action .arrow-icon{width:1.3rem}.screen-hint{background:var(--paper-light);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;transition:opacity .26s;left:1rem;right:auto}.screen-window:hover .screen-hint{opacity:0}.project-facts{border-top:2px solid var(--ink);grid-template-columns:repeat(3,1fr);margin-top:1.5rem;display:grid}.project-facts li{padding:1rem 1rem 0 0}.project-facts li+li{border-left:1px solid #11110f80;padding-left:1rem}.project-facts strong,.project-facts span{display:block}.project-facts strong{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:700}.project-facts span{color:var(--ink-soft);margin-top:.4rem;font-size:1rem;line-height:1.32}.project-reel{border-top:2px solid var(--paper-light);max-width:95rem;margin:clamp(5rem,10vw,10rem) auto 0}.reel-project{border-bottom:2px solid var(--paper-light);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,5vw,6rem);padding:clamp(2.5rem,5vw,5.5rem) 0;display:grid}.reel-project:nth-child(2n) .reel-stage{order:2}.reel-stage{position:relative}.reel-scene{aspect-ratio:5/4;border:2px solid var(--paper-light);background:var(--paper-light);border-radius:52px 24px 46px 20px;position:relative;overflow:hidden;box-shadow:0 16px 34px #00000047}.reel-scene img{z-index:1;object-fit:cover;width:100%;height:100%;position:relative}.reel-seal{z-index:5;aspect-ratio:1;border-radius:50%;width:clamp(5.5rem,9vw,8rem);position:absolute;top:-1.3rem;right:-1.1rem;box-shadow:0 8px 14px #0000004d}.reel-seal svg{width:100%;height:100%;animation:22s linear infinite slow-turn;animation-play-state:var(--loop-state,running);display:block;overflow:visible}.seal-disc{fill:var(--yellow);stroke:var(--ink);stroke-width:2.5px}.seal-dot{fill:var(--ink)}.reel-seal text{fill:var(--ink);font-family:var(--font-display);letter-spacing:0;font-size:15px;font-weight:700}.tone-red .seal-disc{fill:var(--red)}.tone-red .reel-seal text,.tone-red .seal-dot,.tone-smoke .seal-disc{fill:var(--paper-light)}.reel-copy{max-width:42rem}.reel-copy p{max-width:36rem;color:var(--paper-dim);margin-top:1.2rem;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.4}.reel-copy ul{flex-wrap:wrap;gap:.5rem;margin-top:1.6rem;display:flex}.reel-copy li,.case-status{border:1px solid var(--paper-light);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.42rem .7rem .34rem;font-size:.72rem;font-weight:600}.case-status{color:var(--smoke-light);border-style:dashed;margin-top:1.3rem;display:inline-block}.practice-section{border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);background:var(--yellow);padding:clamp(2.75rem,5.5vw,4.5rem) clamp(1rem,4vw,4.5rem)}.practice-inner{max-width:72rem;margin:0 auto}.practice-section h2{text-align:center;max-width:16ch;margin:0 auto}.practice-stage{width:min(100%,54rem,71.1111vh);box-shadow:var(--shadow-soft);border-radius:22px 30px 24px 32px;margin:clamp(1.35rem,2.2vw,2rem) auto 0;position:relative}.practice-frame{border:2px solid var(--ink);border-radius:inherit;background:var(--paper-light);position:relative;overflow:hidden;transform:translateZ(0)}.practice-frame>.film-static{z-index:1;top:1.3rem;bottom:1.3rem}.practice-stage img{aspect-ratio:16/9;object-fit:cover;object-position:center 58%;width:100%;display:block}.film-strip{z-index:2;contain:paint;isolation:isolate;background-color:var(--ink);height:1.3rem;position:absolute;left:0;right:0;overflow:hidden;transform:translateZ(0)}.film-sprockets{width:calc(100% + 2.6rem);animation:1.6s linear infinite strip-roll;animation-play-state:var(--loop-state,running);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='21' viewBox='0 0 42 21'%3E%3Crect x='15' y='6.5' width='12' height='8' rx='1.15' fill='%23faf7ed'/%3E%3C/svg%3E");background-position:0;background-repeat:repeat-x;background-size:2.6rem 1.3rem;position:absolute;top:0;bottom:0;left:-2.6rem;transform:translate(0)}.film-strip-top{top:0}.film-strip-bottom{bottom:0}.practice-track{grid-template-columns:repeat(3,1fr);gap:1.5rem 2rem;margin-top:1.6rem;display:grid}.practice-beat{text-align:center;padding-top:1.9rem;position:relative}.practice-beat:before{content:"";background:var(--ink);width:2px;height:1.6rem;position:absolute;top:0;left:50%;transform:translate(-50%)}.practice-beat:after{content:"";border:2px solid var(--ink);background:var(--paper-light);border-radius:50%;width:.7rem;height:.7rem;position:absolute;top:1.3rem;left:50%;transform:translate(-50%)}.practice-beat h3{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(1.5rem,2.5vw,2.15rem);font-weight:700;line-height:1}.practice-beat p{max-width:24rem;margin:.75rem auto 0;font-size:1.15rem;line-height:1.4}.about-section{background:var(--paper);grid-template-columns:minmax(19rem,.8fr) minmax(24rem,1.2fr);align-items:center;gap:clamp(3rem,8vw,8rem);padding:clamp(5rem,10vw,10rem) clamp(1rem,7vw,8rem);display:grid}.about-portrait{aspect-ratio:1;width:100%;max-width:30rem;margin-inline:auto;padding:9%;position:relative}.portrait-disc{aspect-ratio:1;border:3px solid var(--ink);background:var(--paper-light);width:100%;box-shadow:var(--shadow-soft);border-radius:50%;position:relative;overflow:hidden}.portrait-disc img{object-fit:cover;width:100%;height:100%}.portrait-ring{width:100%;height:100%;animation:36s linear infinite slow-turn;animation-play-state:var(--loop-state,running);position:absolute;inset:0;overflow:visible}.portrait-ring text{fill:var(--ink);font-family:var(--font-display);letter-spacing:0;font-size:23px;font-weight:700}.about-copy{max-width:50rem}.about-copy .about-lede{margin-top:2rem;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.35}.about-copy>p:not(.about-lede){max-width:65ch;color:var(--ink-soft);margin-top:1.3rem;font-size:1.18rem}.about-links{flex-wrap:wrap;gap:.6rem;margin-top:2rem;display:flex}.contact-section{--contact-inline:clamp(1rem, 7vw, 8rem);--hand-size:clamp(36rem, 46vw, 52rem);--hand-elbow-x:93%;--hand-elbow-y:96%;--hand-rot-a:-13deg;--hand-rot-b:15deg;padding:clamp(5rem, 9vw, 9rem) var(--contact-inline) 0;background:var(--red-field);color:var(--paper-light);grid-template-columns:minmax(0,1.1fr) minmax(22rem,.95fr);align-items:end;gap:clamp(2rem,5vw,5rem);display:grid;position:relative;overflow:hidden}.contact-section h2{color:var(--ink)}.contact-section :focus-visible{outline-color:var(--paper-light)}.contact-section ::selection{background:var(--ink);color:var(--paper-light)}.contact-section.has-film:hover>.film-static,.contact-section.has-film:focus-visible>.film-static{opacity:1}.contact-section>.film-static{z-index:4}.contact-copy{z-index:5;max-width:40rem;padding-bottom:clamp(5rem,9vw,9rem);position:relative}.contact-copy>p{max-width:35rem;color:var(--ink);margin-top:1.6rem}@supports (color:color-mix(in lab, red, red)){.contact-copy>p{color:color-mix(in oklch, var(--ink) 86%, var(--red-field))}}.contact-copy>p{font-size:clamp(1.25rem,2vw,1.6rem)}.contact-section .button{margin-top:2rem}.contact-section .button-dark{--fill:var(--yellow);--fill-text:var(--ink)}.contact-stage{z-index:3;min-height:clamp(24rem,34vw,36rem);width:calc(100% + var(--contact-inline));margin-right:calc(-1 * var(--contact-inline));pointer-events:none;align-self:stretch;position:relative;overflow:visible}.contact-hand{right:calc(var(--hand-size) * -.07);bottom:calc(var(--hand-size) * -.03);width:var(--hand-size);max-width:none;transform:rotate(var(--hand-rot-a));transform-origin:var(--hand-elbow-x) var(--hand-elbow-y);animation:2.7s cubic-bezier(.37,0,.63,1) .62s infinite alternate hand-swing;animation-play-state:var(--loop-state,running);margin:0;position:absolute}.site-footer,.case-footer{background:var(--ink);color:var(--paper-light);grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;padding:2rem clamp(1rem,4vw,4.5rem);display:grid}.studio-mark-inverse{color:var(--paper-light)}.studio-mark-inverse .mark-disc{fill:var(--paper-light);stroke:var(--paper-light)}.studio-mark-inverse .mark-eye,.studio-mark-inverse .mark-smile{fill:var(--ink);stroke:var(--ink)}.studio-mark-inverse .mark-smile{fill:none}.site-footer p{color:var(--smoke-light);text-align:center;font-size:.95rem;line-height:1.3}.site-footer .footer-signoff{color:var(--paper-light);font-family:var(--font-display);justify-self:end;font-size:1.05rem;font-weight:700}.js [data-loop]{--loop-state:paused}.js [data-loop].is-live{--loop-state:running}.js [data-loop].is-live .film-static:before,.js [data-loop].is-live .film-sprockets,.js [data-loop].is-live .portrait-ring,.js [data-loop].is-live .contact-hand,.js [data-loop].is-live .reel-seal svg,.js [data-loop].is-live.wave-divider svg{will-change:transform}.js .pop{opacity:0;transform:translateY(.3em)scale(.7)rotate(-6deg)}.js body.is-ready .pop{animation:word-pop .64s var(--ease-snap) both;animation-delay:calc(var(--gate-open-delay) + var(--gate-open) * .72 + var(--i,0) * .11s)}.js .fade-up{opacity:0;transform:translateY(18px)}.js body.is-ready .fade-up{animation:fade-up .62s var(--ease-out) both;animation-delay:calc(var(--gate-open-delay) + var(--gate-open) + .18s + var(--i,0) * .11s)}.js .cel-enter{transform-origin:50% 80%;transform:translate(125%)rotate(2.2deg)}.js body.is-ready .cel-enter{animation:cel-enter .84s linear calc(var(--gate-open-delay) + var(--gate-open) * .6) both}.js .stage-sign{opacity:0}.js body.is-ready .stage-sign{animation:sign-drop .7s var(--ease-snap) calc(var(--gate-open-delay) + var(--gate-open) + .56s) both}.js [data-reveal]{opacity:0;transition:opacity .48s var(--ease-out), transform .56s var(--ease-out);transition-delay:calc(var(--i,0) * 90ms);transform:translateY(28px)rotate(-.6deg)}.js [data-reveal].is-visible{opacity:1;transform:none}.case-shell{background:var(--paper)}.case-hero{grid-template-columns:minmax(20rem,.85fr) minmax(28rem,1.15fr);align-items:center;gap:clamp(2rem,4vw,4rem);padding:clamp(2rem,5vw,5rem) clamp(1rem,5vw,5rem) clamp(3rem,6vw,6rem);display:grid}.case-heading{padding-top:1rem}.back-link{margin-bottom:2rem}.case-hero .hero-title{max-width:none;font-size:clamp(4rem,8vw,6rem)}.case-heading>p{max-width:34rem;margin-top:1.7rem;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.38}.case-stage .hero-cel{aspect-ratio:7/5;border-radius:26px 54px 30px 48px}.case-stage .stage-sign{left:auto;right:-.6rem;transform:rotate(3deg)}.case-meta{border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);grid-column:1/-1;grid-template-columns:repeat(4,1fr);margin-top:3rem;display:grid}.case-meta div{min-height:7rem;padding:1.15rem 1rem}.case-meta div+div{border-left:1px solid #11110f8c}.case-meta dt{font-family:var(--font-display);letter-spacing:.07em;text-transform:uppercase;font-size:.75rem;font-weight:700}.case-meta dd{margin:.6rem 0 0;font-size:1.12rem;line-height:1.3}.case-wave{background:var(--paper)}.case-body{--case-inline:clamp(1rem, 5vw, 5rem);--case-rule:#4a4943;padding:clamp(4rem, 8vw, 8rem) var(--case-inline);background:var(--ink);color:var(--paper-light);grid-template-columns:13rem minmax(0,1fr);gap:clamp(2rem,5vw,6rem);display:grid}.case-nav{z-index:20;align-self:start;gap:.35rem;display:grid;position:sticky;top:2rem}.case-nav span{color:#aaa599;font-family:var(--font-display);letter-spacing:.07em;text-transform:uppercase;margin-bottom:.5rem;font-size:.72rem;font-weight:700}.case-nav a{color:#d6d0c3;transition:color .18s ease, transform .22s var(--ease-out);padding:.45rem 0 .45rem 1.1rem;text-decoration:none;position:relative}.case-nav a:before{content:"";opacity:.5;width:.5rem;height:.5rem;transition:transform .22s var(--ease-snap), background .18s ease, opacity .18s ease;border:1.5px solid;border-radius:50%;position:absolute;top:50%;left:0;transform:translateY(-50%)scale(.7)}.case-nav a:hover,.case-nav a[aria-current]{color:var(--yellow);transform:translate(4px)}.case-nav a[aria-current]:before{opacity:1;background:var(--yellow);transform:translateY(-50%)scale(1)}.case-content{min-width:0;max-width:78rem}.case-section{border-bottom:1px solid #4a4943;padding:clamp(3.5rem,7vw,7rem) 0}.case-opening{padding-top:0}.case-section h2,.mobile-proof h2,.case-next h2{max-width:15ch;font-size:clamp(3rem,6vw,5.5rem)}.mobile-proof h2{max-width:12ch;font-size:clamp(2.6rem,4.6vw,4.4rem)}.case-columns{grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);margin-top:2.5rem;display:grid}.case-lede{color:var(--paper-light);font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.38}.case-columns>div p,.case-section>p:not(.case-lede){max-width:68ch;color:var(--smoke-light)}.case-columns>div p+p{margin-top:1.2rem}.case-screen{border-bottom:1px solid #4a4943;padding:clamp(4rem,8vw,8rem) 0}.case-screen figcaption{color:var(--smoke-light);grid-template-columns:.35fr .65fr;gap:2rem;margin-top:1.25rem;display:grid}.case-screen figcaption strong,.case-proof-pair figcaption strong{color:var(--paper-light);font-family:var(--font-display);font-size:1.05rem}.case-proof-pair{border-bottom:1px solid #4a4943;grid-template-columns:1fr 1fr;gap:clamp(1.25rem,3vw,2.5rem);padding:clamp(4rem,8vw,8rem) 0;display:grid}.case-proof-pair figure:nth-child(2){padding-top:clamp(2rem,5vw,5rem)}.case-proof-pair figcaption{color:var(--smoke-light);gap:.45rem;padding:1rem .25rem 0;display:grid}.case-proof-pair .screen-window>img{aspect-ratio:4/3}.decision-row{border-top:2px solid var(--paper-light);border-bottom:2px solid var(--paper-light);grid-template-columns:repeat(3,1fr);margin-top:3rem;display:grid}.decision-row>div{padding:1.5rem}.decision-row>div+div{border-left:1px solid #77736a}.decision-row strong,.decision-ledger strong{font-family:var(--font-display);font-size:1.15rem}.decision-row p,.decision-ledger p{color:var(--smoke-light);margin-top:.65rem}.mobile-proof{border:2px solid var(--ink);background:var(--yellow);color:var(--ink);box-shadow:var(--shadow-deep);border-radius:44px 28px 52px 30px;grid-template-columns:.95fr 1.05fr;align-items:center;gap:3rem;margin:clamp(4rem,8vw,8rem) 0;padding:clamp(2.5rem,5vw,5rem);display:grid;overflow:hidden}.mobile-copy p{max-width:34rem;margin-top:1.5rem;font-size:1.25rem}.phone-stage{place-items:center;min-height:40rem;padding:0 2rem 4.75rem 0;display:grid;position:relative}.phone-shell{z-index:2;border:3px solid var(--ink);background:var(--ink);border-radius:2.6rem;width:min(19rem,80%);padding:.6rem;position:relative;transform:rotate(4deg);box-shadow:0 24px 45px #11110f40;container-type:inline-size}.phone-cluster{z-index:0;width:min(19rem,80%);position:relative;transform:rotate(4deg)}.phone-cluster .phone-shell{z-index:1;width:100%;transform:none}.phone-screen{border-radius:2rem;position:relative;overflow:hidden}.phone-shell img{width:100%}.phone-screen .thumb-arc{z-index:5;pointer-events:none;width:0;height:0;position:absolute;bottom:-13cqi;right:0;overflow:visible}.phone-screen .thumb-arc:before{content:"";aspect-ratio:1;box-sizing:border-box;border:2px dashed var(--red);background:var(--red);border-radius:50%;width:286cqi;position:absolute;bottom:0;right:0}@supports (color:color-mix(in lab, red, red)){.phone-screen .thumb-arc:before{background:color-mix(in srgb, var(--red) 17%, transparent)}}.phone-screen .thumb-arc:before{transform:translate(50%,50%)}.phone-shell .thumb-label{z-index:5;pointer-events:none;color:var(--red);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:clamp(.58rem,2.8cqi,.72rem);font-weight:700;position:absolute;bottom:-2.85rem;right:.35rem}.knowledge-section .case-lede,.operations-section .case-lede{max-width:48rem;margin-top:1.8rem}.system-map{aspect-ratio:2;margin-top:4rem;position:relative}.system-map>svg{z-index:0;fill:none;stroke:#8f8a7e;stroke-width:2px;stroke-dasharray:8 10;width:100%;height:100%;position:absolute;inset:0}.system-wire{animation:2.6s linear infinite wire-flow;animation-play-state:var(--loop-state,running)}.system-node{z-index:1;top:var(--y);left:var(--x);border:2px solid var(--paper-light);background:var(--ink);text-align:center;border-radius:48% 52% 44% 56%/53% 44% 56% 47%;place-content:center;width:12rem;min-height:6.5rem;padding:1rem;display:grid;position:absolute;transform:translate(-50%,-50%)}.system-node span{font-family:var(--font-display);font-size:1.05rem;font-weight:700}.system-node small{opacity:.8;margin-top:.3rem}.node-tone-red{background:var(--red)}.node-tone-yellow{border-color:var(--ink);background:var(--yellow);color:var(--ink)}.node-tone-green{background:var(--green)}.operations-frame{margin-top:3rem;padding-bottom:5.5rem;position:relative}.admin-callout{z-index:5;border:2px solid var(--ink);background:var(--paper-light);width:min(18rem,30%);color:var(--ink);border-radius:12px 16px 13px 15px;padding:1rem;position:absolute;box-shadow:0 12px 25px #0000004d}.admin-callout span{font-family:var(--font-display);font-weight:700}.admin-callout p{margin-top:.35rem;font-size:.95rem;line-height:1.3}.callout-a{bottom:1.5rem;left:3%;rotate:-3deg}.callout-b{background:var(--yellow);bottom:.5rem;left:36%;rotate:1deg}.callout-c{background:var(--red);color:var(--paper-light);bottom:2rem;right:2%;rotate:3deg}.decision-ledger{border-top:2px solid var(--paper-light);border-left:2px solid var(--paper-light);grid-template-columns:1fr 1fr;margin-top:3rem;display:grid}.decision-ledger>div{border-right:2px solid var(--paper-light);border-bottom:2px solid var(--paper-light);min-height:13rem;padding:clamp(1.5rem,3vw,2.5rem)}.case-next{justify-content:space-between;align-items:end;gap:3rem;padding:clamp(5rem,9vw,9rem) 0 clamp(2rem,5vw,4rem);display:flex}.case-next p{max-width:32rem;color:var(--smoke-light);margin-top:1.2rem;font-size:1.25rem}.case-footer{grid-template-columns:1fr auto}.case-footer a{justify-self:start}.case-footer a:last-child{justify-self:end}.site-footer .studio-mark{justify-self:start}@keyframes word-pop{0%{opacity:0;transform:translateY(.3em)scale(.7)rotate(-6deg)}60%{opacity:1;transform:translateY(-.04em)scale(1.06)rotate(1.2deg)}to{opacity:1;transform:none}}@keyframes light-squash{0%{transform:none}35%{transform:translateY(1px)scale(1.22,.78)}65%{transform:translateY(-1.5px)scale(.9,1.16)}to{transform:none}}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes cel-enter{0%{animation-timing-function:var(--ease-out);transform:translate(125%)rotate(2.2deg)}70%{animation-timing-function:var(--ease-out);transform:translate(-1.6%)rotate(-.6deg)}87%{animation-timing-function:var(--ease-out);transform:translate(.4%)rotate(.15deg)}to{transform:none}}@keyframes sign-drop{0%{opacity:0;transform:translateY(-14px)rotate(4deg)}to{opacity:1;transform:rotate(-4deg)}}.js body.is-ready .case-stage .stage-sign{animation-name:sign-drop-right}@keyframes sign-drop-right{0%{opacity:0;transform:translateY(-14px)rotate(-4deg)}to{opacity:1;transform:rotate(3deg)}}@keyframes arrow-beckon{0%,to{transform:rotate(var(--arrow-rotate,0deg)) translateX(4px)}50%{transform:rotate(var(--arrow-rotate,0deg)) translateX(7.5px)}}@keyframes scroll-hop{0%,to{transform:translateY(0) rotate(var(--arrow-rotate,0deg))}55%{transform:translateY(6px) rotate(var(--arrow-rotate,0deg))}}@keyframes slow-turn{to{transform:rotate(360deg)}}@keyframes hand-swing{0%{transform:rotate(var(--hand-rot-a))}to{transform:rotate(var(--hand-rot-b))}}@keyframes film-dirt{to{transform:translateY(-4096px)}}@keyframes wave-roll{to{transform:translate(-50%)}}@keyframes strip-roll{to{transform:translate(2.6rem)}}@keyframes wire-flow{to{stroke-dashoffset:-36px}}@media (hover:none){.case-shell .screen-window>img{filter:none}.screen-hint{display:none}}@media (width<=1100px){.hero{grid-template-columns:minmax(0,.95fr) minmax(25rem,1.05fr)}.proof-seals{max-width:26rem}.feature-project{grid-template-columns:.8fr 1.2fr}.case-body{--case-nav-block:1rem;padding-top:calc(clamp(4rem, 8vw, 8rem) - var(--case-nav-block));grid-template-columns:1fr}.case-nav{margin:0 calc(-1 * var(--case-inline));padding:calc(var(--case-nav-block) + env(safe-area-inset-top,0px)) var(--case-inline) var(--case-nav-block);overscroll-behavior-x:contain;scrollbar-width:none;background:linear-gradient(var(--case-rule), var(--case-rule)) bottom center / calc(100% - 2 * var(--case-inline)) 1px no-repeat, var(--ink);flex-wrap:nowrap;gap:0 1.2rem;display:flex;top:0;overflow-x:auto}.case-nav::-webkit-scrollbar{display:none}.case-nav span{display:none}.case-nav a{flex:none;padding-block:.5rem}html:has(.case-nav){scroll-padding-top:5.75rem}.system-node{width:10rem}}@media (width<=1024px){html{scroll-padding-top:5rem}body{font-size:1.08rem}.site-shell{border-radius:22px;width:calc(100% - 8px);margin:4px auto}.desktop-nav{display:none}.mobile-nav{display:block;position:relative}.mobile-menu-button{cursor:pointer;align-items:center;gap:.45rem;display:flex}.mobile-menu-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:1.2rem}.mobile-menu-button[aria-expanded=true]{background:var(--ink);color:var(--paper-light)}.mobile-nav nav{border:2px solid var(--ink);background:var(--paper);min-width:12rem;box-shadow:var(--shadow-soft);border-radius:16px;gap:.4rem;padding:.65rem;display:grid;position:absolute;top:calc(100% + .6rem);right:0}.mobile-nav nav a{align-items:center;display:flex}.site-header{padding-bottom:1rem}.hero{grid-template-columns:1fr;gap:.2rem;min-height:auto;padding-top:0;padding-bottom:clamp(2.4rem,7vw,3.6rem)}.hero-copy{display:contents}.hero-copy>.hero-title{order:1;margin-block:-.06em -.04em}.hero-stage{order:2;margin:1.05rem 0 0}.hero-copy>p{order:3;margin-top:1.7rem}.hero-actions{order:4;margin-top:.9rem}.proof-seals{order:5;margin-top:1.15rem}.hero-title{max-width:10ch;font-size:clamp(3.8rem,13vw,6rem)}.hero-cel>img{object-position:60% 45%}.stage-notes{--note-headroom:12px}.stage-sign{bottom:-1rem;left:.25rem}.scroll-cue{display:none}.section-intro,.feature-project,.reel-project,.about-section,.contact-section,.case-hero,.mobile-proof{grid-template-columns:1fr}.section-intro{gap:1.5rem}.feature-illustration img{aspect-ratio:7/5;height:auto;min-height:0}.feature-still{height:auto}.project-facts{grid-template-columns:1fr}.project-facts li+li{border-top:1px solid #11110f80;border-left:0;padding-left:0}.project-facts li{padding:1rem 0}.reel-project:nth-child(2n) .reel-stage{order:0}.reel-seal{width:5.25rem;top:-.9rem;right:.4rem}.practice-stage{width:min(100%,42rem)}.practice-track{grid-template-columns:1fr;gap:1.75rem;margin-top:2.5rem}.practice-beat{text-align:left;padding-top:0;padding-left:1.6rem}.practice-beat:before{width:2px;height:auto;top:.35rem;bottom:-1.75rem;left:.33rem;transform:none}.practice-beat:last-child:before{bottom:0}.practice-beat:after{top:.25rem;left:0;transform:none}.practice-beat p{max-width:32rem;margin-left:0}.about-portrait{width:min(26rem,85vw)}.contact-section{--hand-size:min(32rem, 90vw);--hand-rot-a:-9deg;--hand-rot-b:11deg}.contact-copy{padding-bottom:1.5rem}.contact-stage{min-height:28rem;margin-top:0}.site-footer{grid-template-columns:1fr 1fr}.site-footer>p:not(.footer-signoff){display:none}.case-hero .case-stage{order:0;margin:0}.case-stage .stage-sign{right:.5rem}.case-stage .hero-cel>img{object-position:45% 50%}.case-meta{grid-template-columns:1fr 1fr}.case-meta div:nth-child(3){border-top:1px solid #11110f8c;border-left:0}.case-meta div:nth-child(4){border-top:1px solid #11110f8c}.case-columns,.decision-row,.decision-ledger,.case-screen figcaption,.case-proof-pair{grid-template-columns:1fr}.case-proof-pair figure:nth-child(2){padding-top:0}.decision-row>div+div{border-top:1px solid #77736a;border-left:0}.mobile-proof{border-radius:30px 22px 34px 24px}.phone-stage{min-height:0;padding:1rem 1rem 4rem}.phone-shell .thumb-label{bottom:-2.55rem;right:.25rem}.system-map{aspect-ratio:auto;grid-template-columns:1fr 1fr;gap:1rem;display:grid}.system-node{width:auto;position:static;transform:none}.node-catalog{grid-column:1/-1}.system-map>svg{display:none}.operations-frame{gap:.75rem;padding-bottom:0;display:grid}.admin-callout{width:auto;position:static;rotate:none}.case-next{flex-direction:column;align-items:start}}@media (width<=520px){.site-header{gap:1rem;padding-inline:.8rem}.studio-mark{gap:.5rem}.studio-mark svg{width:2.65rem;height:2.65rem}.studio-mark strong{font-size:1.05rem}.studio-mark small{font-size:.59rem}.mobile-menu-button{min-height:42px;padding-inline:.85rem}.hero{padding-inline:.85rem}.hero-title{font-size:clamp(3.2rem,16vw,5rem)}.hero-copy>p{font-size:1.18rem}.hero-actions,.case-actions:has(>.button+.button),.about-links:has(>.button+.button){grid-template-columns:1fr;width:100%;display:grid}.hero-actions .button{width:100%}.proof-seals{grid-template-columns:1fr;gap:.7rem;display:grid}.stage-sign{font-size:.72rem}.work-section,.practice-section,.about-section,.contact-section{padding-inline:.85rem}.case-body{--case-inline:.85rem}.section-intro h2,.practice-section h2,.about-section h2,.contact-section h2{font-size:clamp(3rem,15vw,4.8rem)}.feature-project{border-radius:20px;padding:.7rem}.project-title-row{display:grid}.project-title-row h3,.reel-copy h3{font-size:3.3rem}.project-title-row .pill-link{justify-self:start}.screen-action{font-size:.7rem;bottom:.5rem;right:.5rem}.screen-hint{display:none}.practice-stage{width:100%}.about-section{gap:3.5rem}.contact-section .button{overflow-wrap:anywhere;width:100%;font-size:.86rem}.contact-section{--contact-inline:.85rem;--hand-size:min(24rem, 98vw);--hand-rot-a:-8deg;--hand-rot-b:10deg;gap:.3rem}.contact-copy{padding-bottom:0}.contact-stage{min-height:22.25rem;margin-top:0}.site-footer{grid-template-columns:1fr}.site-footer .footer-signoff{display:none}.case-hero{padding-inline:.85rem}.case-hero .hero-title{font-size:clamp(4rem,21vw,6rem)}.case-meta{grid-template-columns:1fr}.case-meta div+div,.case-meta div:nth-child(3),.case-meta div:nth-child(4){border-top:1px solid #11110f8c;border-left:0}.case-section h2,.mobile-proof h2,.case-next h2{font-size:clamp(2.8rem,14vw,4.5rem)}.case-screen figcaption{gap:.5rem}.mobile-proof{padding:1.5rem 1rem 2.25rem}.phone-stage{padding:1rem .5rem 3.75rem}.phone-shell .thumb-label{font-size:.62rem;bottom:-2.35rem;right:.15rem}.system-map{grid-template-columns:1fr}.decision-ledger>div{min-height:0}.case-footer{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.film-gate{display:none!important}.stage-notes{display:none}.film-static:before{animation:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}[data-motion][data-motion-state=pending]{opacity:0}[data-motion][data-motion-state=pending]:focus-within{opacity:1}[data-motion=title],[data-motion=title] .title-line,[data-motion=title] .motion-word,[data-motion=action],[data-motion=stamp]{transform-origin:50% 85%}[data-motion=cel]{transform-origin:50% 80%}[data-motion=title] .motion-word{display:inline-block}[data-loop]:not(.hero-stage){--loop-state:paused}[data-loop]:not(.hero-stage).is-live{--loop-state:running}.motion-paused [data-loop]:not(.hero-stage){--loop-state:paused!important}.reel-stage[data-motion]>.reel-seal{transform-origin:50%}.contact-stage:is([data-motion-state=pending],[data-motion-state=running]) .contact-hand{animation-play-state:paused}.practice-beat[data-motion-group]:before{--connector-start:0 1;transform-origin:0}.practice-beat[data-motion-group]:after{transform-origin:50%}.practice-beat[data-motion-group]:has(>[data-motion-state=pending]):before{scale:var(--connector-start)}.practice-beat[data-motion-group]:has(>[data-motion-state=pending]):after{scale:0}.practice-beat[data-motion-group]:has(>[data-motion-state=running]):before{animation:practice-connector .44s var(--ease-out) var(--motion-group-delay,0s) both}.practice-beat[data-motion-group]:has(>[data-motion-state=running]):after{animation:practice-dot .46s var(--ease-out) calc(var(--motion-group-delay,0s) + .18s) both}.site-footer .footer-signoff[data-motion-state=running]{transform-origin:100% 100%}@keyframes practice-connector{0%{scale:var(--connector-start)}to{scale:1}}@keyframes practice-dot{0%{scale:0}62%{scale:1.28 .9}82%{scale:.95 1.07}to{scale:1}}@media (width<=1024px){.practice-beat[data-motion-group]:before{--connector-start:1 0;transform-origin:top}}@media (prefers-reduced-motion:reduce){[data-motion][data-motion-state]{opacity:1!important}[data-motion][data-loop]{--loop-state:paused!important}[data-motion] .motion-word,.practice-beat[data-motion-group]:before,.practice-beat[data-motion-group]:after{animation:none!important}.practice-beat[data-motion-group]:before,.practice-beat[data-motion-group]:after{scale:1!important}}@media print{[data-motion],[data-motion] .motion-word{opacity:1!important;animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
