html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}@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{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid}}}@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;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::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{-moz-text-size-adjust:100%;text-size-adjust:100%;tab-size:4;line-height:var(--leading-compact);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]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color: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}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;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font: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(currentcolor, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none;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}::-webkit-calendar-picker-indicator{line-height:1}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance: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{.start{inset-inline-start:var(--spacing)}.table{display:table}.grow{flex-grow: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}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--paper:#f2f2ee;--paper-rgb:242 242 238;--ink-rgb:17 17 15;--surface-rgb:247 247 243;--on-dark:var(--paper);--on-dark-2:rgb(var(--paper-rgb) / .7);--on-dark-3:rgb(var(--paper-rgb) / .54);--paper-warm:#ebe7dc;--surface:#f7f7f3;--ink:#11110f;--muted:#5f5d57;--line:#11110f29;--line-dark:#f2f2ee38;--acid:#c7ff31;--on-acid:#11110f;--gutter:clamp(20px, 4vw, 75px);--header-bar:60px;--header-pad:clamp(16px, 2vw, 32px);--header-edge:var(--gutter);--header-block-padding:var(--header-pad);--header-height:calc(var(--header-bar) + var(--header-block-padding) * 2);--section-y:112px;--section-eyebrow-gap:20px;--section-copy-gap:24px;--section-content-gap:56px;--radius:8px;--radius-sm:6px;--type-caption:13px;--type-body-large:16px;--type-lead:19px;--type-title-sm:24px;--type-title:28px;--tracking-label:.08em;--tracking-label-tight:.04em;--tracking-label-wide:.12em;--tracking-tight:-.025em;--tracking-title:-.045em;--tracking-display:-.06em;--leading-display:.96;--leading-tight:1.1;--leading-snug:1.3;--leading-normal:1.4;--leading-compact:1.5;--leading-body:1.6;--motion-medium:.4s;--motion-slow:.55s;--motion-long:1.1s;--control-lg:52px;--control-md:44px;--control-sm:32px;--z-behind:-1;--z-header:50;--z-floating:70;--z-texture:90;--z-overlay:100;--z-dialog:101;--z-skip:110;--z-modal-overlay:120;--z-modal:121;--z-loader:9999;--shadow-float:0 12px 36px rgb(var(--ink-rgb) / .16);--shadow-float-dark:0 12px 32px #00000059;--shadow-glow-acid:0 12px 32px color-mix(in srgb, var(--acid) 32%, transparent);--shadow-sheet:-18px 0 48px rgb(var(--ink-rgb) / .16);--shadow-dialog:0 32px 100px #00000054;--motion-fast:.16s;--motion-base:.24s;--motion-reveal:.8s;--motion-distance:24px;--motion-stagger:55ms;--motion-ease:cubic-bezier(.22, 1, .36, 1);--motion-spring:cubic-bezier(.2, 1.35, .3, 1);--type-display:clamp(32px, 14px + 5.4vw, 88px);--type-section:clamp(32px, 16px + 3.1vw, 72px);--type-case-title:clamp(32px, 2.3vw, 40px);--type-copy-lead:clamp(15px, 1vw, 19px);--type-copy-section:var(--type-body-large);--type-body:15px;--type-body-small:14px;--type-label:12px;--type-micro:11px;--shadow-card:0 14px 40px #11110f1a;--shadow-card-hover:0 22px 52px #11110f29}@view-transition{navigation:auto}::view-transition-group(project-connectsea){animation-duration:var(--motion-slow);animation-timing-function:var(--motion-ease)}::view-transition-group(site-header){z-index:var(--z-overlay);animation-duration:var(--motion-base)}::view-transition-old(site-header){mix-blend-mode:normal;animation:none}::view-transition-new(site-header){mix-blend-mode:normal;animation:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-exo), Arial, sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}main{width:100%;overflow-x:clip}section[id]{scroll-margin-top:0}#top{scroll-margin-top:var(--header-height)}:where(a,button,summary,[tabindex]):focus-visible{outline:2px solid var(--ink);outline-offset:4px}.dark-section :where(a,button,summary,[tabindex]):focus-visible{outline-color:var(--paper)}.section-shell{width:min(100%,1912px);padding-inline:var(--gutter);margin-inline:auto}.dark-section{background:var(--ink);color:var(--paper)}.eyebrow{font-family:var(--font-geist-mono), monospace;letter-spacing:var(--tracking-label);text-transform:uppercase;font-size:var(--type-label);margin:0;line-height:16px}.site-header{z-index:var(--z-header);width:min(100%,1912px);height:var(--header-bar);padding-inline:var(--header-edge);background:var(--paper);view-transition-name:site-header;grid-template-columns:1fr auto 1fr;align-items:center;margin-inline:auto;display:grid;position:relative}.wordmark{justify-self:start;place-items:center start;width:57px;min-height:52px;display:grid}.wordmark img{width:52px;height:auto}.site-header nav{align-items:center;gap:clamp(24px,3vw,56px);display:flex}.site-header nav a,.site-header .nav-button{min-width:44px;min-height:var(--control-md);font-family:var(--font-exo), Arial, sans-serif;font-size:var(--type-body);letter-spacing:normal;justify-content:center;align-items:center;font-weight:400;line-height:20px;display:inline-flex;position:relative}.site-header nav a:after{content:"";transform-origin:100%;height:1px;transition:transform var(--motion-base) var(--motion-ease);background:currentColor;position:absolute;bottom:7px;left:0;right:0;transform:scaleX(0)}.site-header nav a:is(:hover,:focus-visible):after{transform-origin:0;transform:scaleX(1)}.home-main{--hero-edge:var(--gutter);--hero-header-block-padding:var(--header-block-padding);--hero-header-height:var(--header-height)}.home-main>.site-header{height:var(--hero-header-height);padding-block:var(--hero-header-block-padding);padding-inline:var(--header-edge);color:var(--ink);background:0 0;position:absolute;inset-block-start:0;inset-inline:0}.hero.section-shell{width:100%;max-width:none;padding-inline:0}.hero{text-align:left;min-height:100svh;padding-block:0}.hero-content{isolation:isolate;text-align:left;background:#d7d8cf;width:100%;min-height:100svh;margin:0;display:block;position:relative;overflow:hidden}.hero-copy{z-index:2;width:min(62%,1040px);min-height:inherit;padding:calc(var(--hero-header-height) + clamp(28px, 3vw, 52px)) var(--hero-edge) clamp(36px, 4vw, 72px);color:var(--ink);flex-direction:column;justify-content:center;align-items:flex-start;display:flex;position:relative}.hero-copy>.eyebrow{margin-bottom:clamp(16px,1.25vw,24px)}.hero h1{letter-spacing:var(--tracking-title);text-transform:uppercase;text-wrap:balance;overflow-wrap:anywhere;width:100%;max-width:940px;font-size:clamp(31px,12px + 3.45vw,78px);font-weight:500;line-height:var(--leading-display);align-self:start;margin:0}.hero-title-line,.hero-title-line>span{max-width:100%;display:block}.hero-description{width:100%;max-width:560px;color:rgb(var(--ink-rgb) / .76);text-wrap:pretty;font-size:clamp(15px,.9vw,17px);line-height:var(--leading-body);align-self:start;margin:clamp(18px,1.4vw,26px) 0 0}.hero-actions{justify-content:flex-start;align-items:center;gap:16px;margin-top:clamp(20px,1.5vw,28px);display:flex}.hero .button-primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.hero .button-primary:is(:hover,:focus-visible){background:var(--acid);border-color:var(--acid)}.hero .text-link{color:var(--ink)}.hero :where(a,button):focus-visible{outline-color:var(--ink)}.hero-media{isolation:isolate;z-index:0;border-radius:inherit;pointer-events:none;background:#d7d8cf;width:100%;height:100%;min-height:0;position:absolute;inset:0;overflow:hidden}.hero-video,.hero-raster-canvas{width:100%;height:100%;position:absolute;inset:0}.hero-video{z-index:0;object-fit:cover;object-position:100% 50%;transform-origin:100%;transform:scale(1.15)}.hero-raster-canvas{z-index:1;opacity:0}.hero-media[data-render-mode=video]:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(90deg, rgb(var(--paper-rgb) / .68) 0%, rgb(var(--paper-rgb) / .38) 40%, rgb(var(--paper-rgb) / 0) 64%);position:absolute;inset:0}.hero-media[data-render-mode=webgl] .hero-raster-canvas{opacity:1}@media (min-width:981px) and (max-aspect-ratio:8/5){.hero-media[data-render-mode=video]:after{background:linear-gradient(90deg, rgb(var(--paper-rgb) / .88) 0%, rgb(var(--paper-rgb) / .64) 46%, rgb(var(--paper-rgb) / 0) 78%)}.hero-copy{min-height:min(100svh,940px)}}.hero-media[data-render-mode=webgl] .hero-video{opacity:0}@media (max-width:980px){.hero{min-height:100svh;padding-block:0}.hero-content{min-height:100svh}.hero-copy{width:100%;min-height:inherit;padding:calc(var(--hero-header-height) + clamp(20px, 4vw, 36px)) var(--hero-edge) clamp(32px, 6vw, 48px);justify-content:flex-start}.hero-media[data-render-mode=video]:after,.hero-media[data-render-mode=webgl]:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(180deg, rgb(var(--paper-rgb) / .92) 0%, rgb(var(--paper-rgb) / .82) 34%, rgb(var(--paper-rgb) / .58) 54%, rgb(var(--paper-rgb) / 0) 76%);position:absolute;inset:0}.hero-copy>.eyebrow{margin-bottom:clamp(14px,2.5vw,20px)}.hero h1{max-width:760px}.hero-description{max-width:46ch}.hero-media{width:100%;height:100%}.hero-video{object-position:82% 50%;transform-origin:82%}}.button{border-radius:var(--radius);min-height:var(--control-lg);transition:transform var(--motion-base) var(--motion-ease), background-color var(--motion-fast) ease, color var(--motion-fast) ease, border-color var(--motion-fast) ease;font-size:var(--type-body-small);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-weight:600;line-height:20px;display:inline-flex}.button-primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.button:is(:hover,:focus-visible){transform:translateY(-2px)}.button:active{transform:translateY(0)}.button-primary:is(:hover,:focus-visible){background:var(--acid);color:var(--on-acid);border-color:var(--acid)}.action-icon{display:inline-flex}.action-icon svg{transition:transform var(--motion-base) var(--motion-ease)}.button:is(:hover,:focus-visible) .lucide-arrow-right{transform:translate(3px)}.button:is(:hover,:focus-visible) .lucide-arrow-up-right{transform:translate(3px,-2px)}.text-link{min-height:var(--control-md);transition:color var(--motion-fast) ease;font-size:var(--type-body);align-items:center;gap:8px;font-weight:500;line-height:20px;display:inline-flex}.text-link:is(:hover,:focus-visible){color:var(--muted)}.text-link:is(:hover,:focus-visible) .lucide-arrow-down{transform:translateY(3px)}.nav-button{color:inherit;cursor:pointer;font:inherit;background:0 0}.site-header .nav-button{min-height:var(--control-md);padding:12px 0;position:relative}.site-header .nav-button:after{content:"";transform-origin:100%;height:1px;transition:transform var(--motion-fast) ease;background:currentColor;position:absolute;bottom:8px;left:0;right:0;transform:scaleX(0)}.site-header .nav-button:is(:hover,:focus-visible):after{transform-origin:0;transform:scaleX(1)}.about-screen{z-index:var(--z-modal-overlay);background:var(--ink);color:var(--paper);visibility:hidden;pointer-events:none;transition:transform var(--motion-reveal) cubic-bezier(.76, 0, .24, 1), visibility 0s linear var(--motion-reveal);display:block;position:fixed;inset:0;overflow-y:auto;transform:translate(100%)}.about-screen.is-open{visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0)}.connect{display:block}.site-footer{background:var(--ink)}.work,.clarity,.approach{padding-block:var(--section-y)}.work{background:var(--paper)}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.project{min-width:0}.project-link{border-radius:var(--radius);cursor:pointer;display:block}.project-link :where(*){cursor:pointer}.project-visual{aspect-ratio:16/9;border-radius:var(--radius);background:var(--surface);place-items:center;display:grid;position:relative;overflow:hidden}.project-hover-name,.project-hover-service{z-index:3;border-radius:var(--radius);opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #ffffff47;align-items:center;max-width:calc(100% - 88px);padding:8px 12px;display:inline-flex;position:absolute;left:clamp(12px,1.2vw,18px)}.project-hover-name{background:rgb(var(--paper-rgb) / .94);color:var(--ink);font-size:var(--type-body-small);transition:opacity var(--motion-fast) ease, transform var(--motion-medium) var(--motion-ease);margin:0;font-weight:500;line-height:1;bottom:clamp(12px,1.2vw,18px);transform:translateY(8px)}.project-hover-service{background:rgb(var(--ink-rgb) / .48);color:#ffffffd6;font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label);text-transform:uppercase;transition:opacity var(--motion-fast) ease, transform var(--motion-medium) var(--motion-ease);line-height:1;top:clamp(12px,1.2vw,18px);transform:translateY(-8px)}.project:is(:hover,:focus-within) :is(.project-hover-name,.project-hover-service){opacity:1;transform:none}.project:is(:hover,:focus-within) .project-hover-service{transition-delay:35ms}.project-visual>span:not(.project-expand-indicator):not(.project-hover-service):not(.project-status){color:#fffffff2;letter-spacing:var(--tracking-display);font-size:clamp(32px,5vw,82px);font-weight:600;line-height:1}.project-visual.acid>span:not(.project-expand-indicator):not(.project-hover-service):not(.project-status){color:var(--ink)}.project-visual.violet{background:#5a38ff}.project-visual.pink{background:#ff4169}.project-visual.acid{background:#e4f548}.project-visual.olive{background:#7c8a42}.project-visual.orange{background:#ff7335}.project-visual.blue{background:#355a91}.project-visual.ten80{background:#f1f04a}.project-visual.acerta{background:#a8b6d8}.project-visual.asterisco{background:#e5f5eb}.project-expand-indicator{z-index:3;border-radius:var(--radius);background:rgb(var(--ink-rgb) / .5);color:#fff;opacity:0;width:32px;height:32px;transition:opacity var(--motion-fast) ease, transform var(--motion-medium) var(--motion-ease);pointer-events:auto;cursor:pointer;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #ffffff47;place-items:center;display:grid;position:absolute;top:clamp(12px,1.2vw,18px);right:clamp(12px,1.2vw,18px);transform:translateY(-8px)}.project-status{z-index:3;border-radius:var(--radius);background:rgb(var(--paper-rgb) / .94);color:var(--ink);font-family:var(--font-geist-mono), monospace;font-size:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;align-items:center;padding:8px 12px;font-weight:500;line-height:1;display:inline-flex;position:absolute;top:clamp(12px,1.2vw,18px);right:clamp(12px,1.2vw,18px)}.project:is(:hover,:focus-within) .project-expand-indicator{opacity:1;transform:none}.practice{isolation:isolate;background:var(--paper-warm);position:relative}.practice-raster{z-index:0;width:100%;height:100vh;pointer-events:none;opacity:0;height:100svh;transition:opacity var(--motion-slow) ease;margin-bottom:-100vh;display:block;position:sticky;top:0;-webkit-mask-image:linear-gradient(#0000,#000 12% 88%,#0000);mask-image:linear-gradient(#0000,#000 12% 88%,#0000)}.practice-raster[data-active=true]{opacity:.5}.practice-pin{z-index:1;height:200vh;position:relative}.practice-sticky{height:100vh;height:100svh;padding-block:clamp(64px, 9vh, var(--section-y)) clamp(28px, 5vh, 52px);flex-direction:column;display:flex;position:sticky;top:0;overflow:hidden}.practice-intro,.practice-track{width:min(100%,1912px);padding-inline:var(--gutter);margin-inline:auto}.practice-intro{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.practice-intro .eyebrow{margin-bottom:var(--section-eyebrow-gap)}.practice-intro h2{max-width:900px;font-size:var(--type-section);letter-spacing:var(--tracking-title);text-wrap:balance;margin:0;font-weight:400;line-height:1}.practice-intro>p{max-width:440px;color:var(--muted);font-size:var(--type-copy-lead);line-height:var(--leading-body);text-wrap:pretty;margin:0}.practice-track{will-change:transform;flex:1;gap:clamp(16px,1.6vw,28px);min-height:0;margin-top:clamp(28px,5vh,56px);list-style:none;display:flex}.practice-card{border:1px solid rgb(var(--ink-rgb) / .06);border-radius:var(--radius);background:rgb(var(--surface-rgb) / .72);scale:var(--card-scale,1);transform-origin:bottom;transition:background-color var(--motion-slow) var(--motion-ease), border-color var(--motion-slow) var(--motion-ease), box-shadow var(--motion-slow) var(--motion-ease), scale var(--motion-slow) var(--motion-ease);flex-direction:column;flex:0 0 clamp(340px,56vw,960px);padding:clamp(24px,2.6vw,44px);display:flex;position:relative;overflow:hidden}.practice-ascii{z-index:0;pointer-events:none;display:block;position:absolute;inset:0}.practice-card-meta{z-index:1;justify-content:flex-start;align-items:flex-start;gap:16px;display:flex;position:relative}.practice-card-body{z-index:1;position:relative}.practice-card-tag{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);line-height:var(--leading-body);letter-spacing:var(--tracking-label);text-transform:uppercase;transition:color var(--motion-slow) var(--motion-ease)}.practice-card-body{margin-top:auto}.practice-card h3{max-width:720px;letter-spacing:var(--tracking-title);text-wrap:balance;margin:0;font-size:clamp(34px,3.4vw,60px);font-weight:400;line-height:1}.practice-card>.practice-card-body>p{max-width:600px;color:var(--muted);font-size:clamp(16px,1.15vw,19px);line-height:var(--leading-body);text-wrap:pretty;transition:color var(--motion-slow) var(--motion-ease);margin:20px 0 0}.practice-card-skills{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.practice-card-skills li{border:1px solid var(--line);border-radius:var(--radius);font-size:clamp(13px,.95vw,15px);line-height:var(--leading-normal);transition:border-color var(--motion-slow) var(--motion-ease), transform var(--motion-slow) var(--motion-ease), opacity var(--motion-slow) ease;padding:9px 14px}.practice-card.is-active{background:color-mix(in srgb, var(--acid) 92%, transparent);border-color:var(--acid);box-shadow:var(--shadow-card)}.practice-card.is-active h3{color:var(--on-acid)}.practice-card.is-active .practice-card-tag,.practice-card.is-active .practice-card-body>p{color:color-mix(in srgb, var(--on-acid) 70%, transparent)}.practice-card.is-active .practice-card-skills li{border-color:color-mix(in srgb, var(--on-acid) 28%, transparent);color:var(--on-acid)}.practice-tools{z-index:1;width:min(100%,1912px);padding:28px var(--gutter) var(--section-y);grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr);gap:clamp(32px,5vw,96px);margin-inline:auto;display:grid;position:relative}.practice-tools:before{content:"";top:0;left:var(--gutter);right:var(--gutter);background:var(--line);height:1px;position:absolute}.practice-tools-heading{flex-direction:column;gap:12px;display:flex}.practice-tools-heading .eyebrow{color:var(--muted);font-size:var(--type-micro)}.practice-tools-heading>p:last-child{max-width:300px;color:var(--muted);font-size:var(--type-body-small);line-height:var(--leading-body)}.practice-tool-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.practice-tool-group{min-width:0}.practice-tool-group-title{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);line-height:var(--leading-body);letter-spacing:var(--tracking-label-tight);text-transform:uppercase}.practice-tool-list{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.practice-tool{border:1px solid var(--line);border-radius:var(--radius);background:rgb(var(--surface-rgb) / .6);min-height:42px;font-size:var(--type-caption);line-height:var(--leading-normal);transition:border-color var(--motion-fast) ease, background-color var(--motion-fast) ease, transform var(--motion-fast) ease;align-items:center;gap:9px;padding:8px 13px;display:inline-flex}.practice-tool:hover{border-color:var(--ink);background:var(--surface);transform:translateY(-1px)}.practice-tool-icon{object-fit:contain;flex:none;width:20px;height:20px}.practice-tool small{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label-tight)}footer{border-top:1px solid var(--line-dark);color:var(--on-dark-2);width:100%;font-family:var(--font-geist-mono), monospace;letter-spacing:var(--tracking-label);text-transform:uppercase;font-size:var(--type-micro);justify-content:space-between;align-items:center;gap:28px;margin-top:24px;padding:20px 0 clamp(20px,2vw,28px);line-height:16px;display:flex}.footer-contact-details,.footer-actions{flex-wrap:wrap;align-items:center;gap:18px 24px;display:flex}.footer-contact-details span{color:var(--on-dark-3)}.footer-actions a{min-height:var(--control-md);font:inherit;color:inherit;align-items:center;gap:6px;display:inline-flex}.footer-actions :is(a,button):is(:hover,:focus-visible){color:var(--acid)}.footer-actions a{font-size:var(--type-label)}.noise-overlay{z-index:var(--z-texture);pointer-events:none;opacity:.0557813;mix-blend-mode:multiply;image-rendering:auto;filter:contrast(110%);width:100%;height:100%;position:fixed;inset:0}.motion-word-clip{clip-path:inset(-.14em -.14em -.24em);display:inline-block}.motion-word{transform-origin:0 100%;display:inline-block}html.motion-ready .motion-word{transition:transform var(--motion-reveal) var(--motion-ease);transition-delay:calc(var(--word-order,0) * var(--motion-stagger));transform:translateY(calc(100% + .4em))rotate(3deg)}html.motion-ready .is-visible .motion-word{transform:none}html.motion-ready [data-reveal=fade-up]{opacity:0;transform:translateY(var(--motion-distance));transition:opacity var(--motion-reveal) ease, transform var(--motion-reveal) var(--motion-ease);transition-delay:var(--reveal-delay,0s)}html.motion-ready [data-reveal=fade-up].is-visible{opacity:1;transform:none}html.motion-ready [data-reveal=stagger]>*{opacity:0;transform:translateY(var(--motion-distance));transition:opacity var(--motion-reveal) ease, transform var(--motion-reveal) var(--motion-ease)}html.motion-ready [data-reveal=stagger].is-visible>*{opacity:1;transform:none}html.motion-ready [data-reveal=stagger].is-visible>:nth-child(2){transition-delay:.1s}html.motion-ready [data-reveal=hero]>.hero-copy>:is(.eyebrow,.hero-description,.hero-actions){opacity:0;transition:opacity var(--motion-reveal) ease, transform var(--motion-reveal) var(--motion-ease);transform:translateY(18px)}html.motion-ready [data-reveal=hero].is-visible>.hero-copy>:is(.eyebrow,.hero-description,.hero-actions){opacity:1;transform:none}html.motion-ready [data-reveal=hero] .motion-word{transition-duration:var(--motion-reveal);transition-delay:calc(80ms + var(--word-order,0) * var(--motion-stagger))}html.motion-ready [data-reveal=hero].is-visible>.hero-copy>.hero-description{transition-delay:.26s}html.motion-ready [data-reveal=hero].is-visible>.hero-copy>.hero-actions{transition-delay:.36s}html.motion-ready [data-reveal=project] .project-visual{clip-path:inset(0 0 16% round var(--radius));opacity:0;transition:clip-path var(--motion-reveal) var(--motion-ease), opacity var(--motion-slow) ease, translate var(--motion-reveal) var(--motion-ease), transform var(--motion-slow) var(--motion-ease);transition-delay:var(--reveal-delay,0s);translate:0 24px}html.motion-ready [data-reveal=project].is-visible .project-visual{clip-path:inset(0 round var(--radius));opacity:1;translate:0}html.motion-ready [data-reveal=project] .project-image{transition:transform var(--motion-long) var(--motion-ease), translate var(--motion-slow) var(--motion-ease);transition-delay:var(--reveal-delay,0s), 0s;transform:scale(1.12)}html.motion-ready [data-reveal=project].is-visible .project-image{transform:scale(1)}@media (max-width:1100px){:root{--section-y:88px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-card{flex-basis:clamp(320px,62vw,860px)}}@media (max-width:820px){.hero-content{background:var(--paper);flex-direction:column;display:flex}.hero-copy{background:var(--paper);flex:none;min-height:0}.hero-media{flex:1 0 auto;height:auto;min-height:clamp(260px,42svh,520px);position:relative;inset:auto}.hero-media:after{display:none}.hero-video{object-position:70% 50%;transform-origin:70%}.project-grid{grid-template-columns:1fr}.practice-intro{flex-direction:column;align-items:flex-start;gap:24px}.practice-tools{grid-template-columns:1fr;gap:24px}.work-intro{flex-wrap:wrap}.practice-raster{display:none}.practice-pin{height:auto}.practice-sticky{height:auto;padding-block:var(--section-y) 0;position:static;overflow:visible}.practice-track{flex-direction:column;transform:none!important}.practice-card{flex-basis:auto;min-height:420px;scale:1}footer{align-items:flex-start}}@media (max-width:560px){:root{--section-y:80px;--section-content-gap:44px}.site-header nav{gap:14px}.site-header nav :is(a,.nav-button){min-width:36px;font-size:var(--type-label)}.wordmark{width:48px}.wordmark img{width:47px}.hero{--hero-center-shift:0px;min-height:100svh;padding-block:0}.hero-content{min-height:100svh}:root{--header-bar:56px}.hero-copy{padding:calc(var(--hero-header-height) + 18px) var(--hero-edge) 28px}.hero h1{letter-spacing:var(--tracking-title);overflow-wrap:normal;max-width:100%;line-height:1}.hero-description{max-width:350px;font-size:var(--type-body);line-height:var(--leading-compact)}.hero-actions{flex-wrap:wrap;gap:8px 10px;width:100%}.hero-actions .button{width:auto;padding-inline:14px}.hero-media{aspect-ratio:auto;min-height:clamp(230px,36svh,420px)}.hero-video{object-position:70% 50%;transform-origin:70%}.project-grid{gap:8px}.hero .eyebrow{max-width:280px;font-size:var(--type-micro);line-height:var(--leading-body)}.practice-intro>p,.practice-card .practice-card-body>p{font-size:var(--type-body)}.practice-card{min-height:0;padding:24px}.practice-card h3{font-size:var(--type-title)}.practice-card-skills li{font-size:var(--type-caption)}.practice-tools{grid-template-columns:1fr;gap:24px}.practice-tools-heading>p:last-child{max-width:420px;font-size:var(--type-caption)}.practice-tool-groups{grid-template-columns:1fr;gap:24px}footer{flex-direction:column;padding-top:32px}.footer-contact-details,.footer-actions{flex-direction:column;align-items:flex-start;gap:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation:auto!important;animation-timeline:none!important}html.motion-ready [data-reveal],html.motion-ready [data-reveal]>*,html.motion-ready [data-reveal=hero] .hero-title-line>span{opacity:1!important;transform:none!important}}.header-preferences{justify-self:end;align-items:center;gap:8px;margin-left:20px;display:flex}.sound-toggle{border:1px solid var(--line);border-radius:var(--radius);width:38px;height:38px;color:var(--ink);cursor:pointer;transition:color var(--motion-fast) ease, background-color var(--motion-fast) ease, transform var(--motion-fast) ease;place-items:center;display:grid}.sound-toggle:is(:hover,:focus-visible){background:var(--ink);color:var(--paper);transform:translateY(-1px)}.sound-toggle[aria-pressed=false]{color:var(--muted)}.language-switch{--language-option-width:40px;isolation:isolate;border:1px solid var(--line);border-radius:var(--radius);gap:2px;padding:3px;display:flex;position:relative}.language-switch:before{content:"";z-index:0;width:var(--language-option-width);border-radius:var(--radius-sm);background:var(--ink);transition:transform var(--motion-base) var(--motion-ease);position:absolute;top:3px;bottom:3px;left:3px;transform:translate(0)}.language-switch[data-language=en]:before{transform:translateX(calc(var(--language-option-width) + 2px))}.language-switch button{z-index:1;min-width:var(--language-option-width);border-radius:var(--radius-sm);min-height:38px;font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);cursor:pointer;transition:color var(--motion-fast) ease;background:0 0;justify-content:center;align-items:center;padding:6px 10px;line-height:1;display:inline-flex;position:relative}.language-switch button[aria-pressed=true]{color:var(--paper);background:0 0}.language-switch button[aria-pressed=false]:hover{background:rgb(var(--ink-rgb) / .05)}.language-switch button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.mobile-menu-trigger{display:none}[data-slot=sheet-overlay]{z-index:var(--z-modal-overlay);background:rgb(var(--ink-rgb) / .48);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);position:fixed;inset:0}.mobile-menu-sheet{z-index:var(--z-modal)!important;width:min(88vw,420px)!important;max-width:none!important;height:100dvh!important;padding:max(22px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left))!important;background:var(--paper)!important;color:var(--ink)!important;box-shadow:var(--shadow-sheet)!important;border:0!important;flex-direction:column!important;gap:0!important;display:flex!important;position:fixed!important;inset-block:0!important;inset-inline:auto 0!important}.mobile-menu-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-bottom:20px;display:flex}.mobile-menu-heading [data-slot=sheet-title]{font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:400;line-height:1}.mobile-menu-close{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;place-items:center;width:44px;height:44px;margin:-8px;display:grid}.mobile-menu-nav{align-content:start;margin-top:30px;display:grid}.mobile-menu-nav :is(a,button){border-bottom:1px solid var(--line);min-height:64px;color:var(--ink);cursor:pointer;letter-spacing:var(--tracking-title);text-align:start;justify-content:space-between;align-items:center;padding-block:14px;font-size:clamp(28px,8vw,38px);font-weight:400;line-height:1;display:flex}.mobile-menu-preferences{justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:28px;display:flex}@media (max-width:820px){:root{--header-bar:56px}.site-header{grid-template-columns:minmax(0,1fr) auto;gap:16px}.site-header>nav,.site-header>.header-preferences{display:none}.mobile-menu-trigger{min-width:44px;min-height:var(--control-md);cursor:pointer;font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label);text-transform:uppercase;justify-content:center;align-items:center;gap:8px;padding:8px 0 8px 12px;line-height:1;display:inline-flex}}@media (max-width:420px){.mobile-menu-trigger span{display:none}.mobile-menu-sheet{width:calc(100vw - 16px)!important}}[data-slot=dialog-overlay]{z-index:var(--z-overlay);background:rgb(var(--ink-rgb) / .6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:fixed;inset:0}[data-slot=dialog-content].contact-dialog{z-index:var(--z-modal);background:var(--ink);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--paper);transition:opacity var(--motion-medium) ease, clip-path var(--motion-reveal) var(--motion-ease);clip-path:inset(0);border:0;border-radius:0;outline:none;padding:0;display:block;position:fixed;inset:0;overflow:hidden;transform:none}[data-slot=dialog-content].contact-dialog:is([data-starting-style],[data-ending-style]){opacity:0;clip-path:inset(100% 0 0)}[data-slot=dialog-overlay]:has(+.contact-dialog){z-index:var(--z-modal-overlay);background:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none}.contact-dialog-inner{width:min(100%,1912px);height:100%;padding:clamp(20px, 2.2vw, 36px) var(--gutter) max(16px, env(safe-area-inset-bottom));grid-template-rows:auto minmax(0,1fr);margin-inline:auto;display:grid}.contact-dialog-header{border-bottom:1px solid var(--line-dark);justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;display:flex}.contact-dialog-header .eyebrow{color:var(--on-dark-2)}.contact-dialog-close{border:1px solid var(--line-dark);border-radius:var(--radius);width:44px;height:44px;color:var(--paper);cursor:pointer;transition:background-color var(--motion-fast) ease, color var(--motion-fast) ease, transform var(--motion-fast) ease;flex:none;place-items:center;margin:-8px -8px -8px 0;display:grid}.contact-dialog-close:is(:hover,:focus-visible){background:var(--acid);color:var(--on-acid);transform:rotate(90deg)}.contact-dialog-body{grid-template-columns:minmax(0,.82fr) minmax(440px,1.18fr);align-content:center;gap:clamp(40px,6vw,112px);padding-block:clamp(36px,6vh,72px);display:grid}.contact-dialog-intro [data-slot=dialog-title]{max-width:660px;color:var(--paper);font-size:clamp(42px,5.5vw,78px);font-weight:400;line-height:var(--leading-display);letter-spacing:var(--tracking-display)}.contact-dialog-intro [data-slot=dialog-description]{max-width:500px;color:var(--on-dark-2);font-size:var(--type-body-large);line-height:var(--leading-body);margin-top:24px}.contact-dialog-options{align-content:start;gap:18px;display:grid}.contact-channels{gap:10px;display:grid}.contact-dialog-options[data-brief-open] .contact-channels{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-channel{border:1px solid var(--line-dark);border-radius:var(--radius);min-height:112px;color:var(--paper);text-align:left;cursor:pointer;transition:border-color var(--motion-fast) ease, background-color var(--motion-fast) ease, color var(--motion-fast) ease, opacity var(--motion-fast) ease;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;padding:20px;display:grid}.contact-channel>span{color:var(--on-dark-2);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label);text-transform:uppercase}.contact-channel strong{max-width:210px;font-size:var(--type-lead);font-weight:400;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);grid-column:1;align-self:end}.contact-channel svg{transition:transform var(--motion-base) var(--motion-ease);grid-area:1/2/span 2;align-self:end}.contact-channel-primary{border-color:var(--acid);background:var(--acid);color:var(--on-acid)}.contact-channel-primary>span{color:rgb(var(--ink-rgb) / .65)}.contact-dialog-options[data-brief-open] .contact-channel{min-height:96px;padding:16px}.contact-dialog-options[data-brief-open] .contact-channel strong{font-size:var(--type-body)}.contact-channel:is(:hover,:focus-visible){border-color:var(--paper);background:var(--paper);color:var(--ink)}.contact-channel:is(:hover,:focus-visible)>span{color:rgb(var(--ink-rgb) / .65)}.contact-channel:is(:hover,:focus-visible) svg{transform:translate(3px,-3px)}.contact-dialog :where(a,button):focus-visible{outline:2px solid var(--acid);outline-offset:3px}[data-slot=dialog-content].cv-dialog{z-index:var(--z-dialog);border-radius:var(--radius);background:var(--paper);width:min(1060px,100vw - 48px);max-width:none;height:min(980px,100dvh - 48px);max-height:calc(100dvh - 48px);color:var(--ink);box-shadow:var(--shadow-dialog);border:1px solid #ffffff2e;outline:none;flex-direction:column;gap:0;padding:0;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.cv-dialog-header{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:24px;padding:22px 26px;display:flex}.cv-dialog-heading .eyebrow{font-size:var(--type-micro);color:var(--muted)}.cv-dialog [data-slot=dialog-title]{font-size:var(--type-title);line-height:var(--leading-tight);letter-spacing:var(--tracking-title);margin-top:8px;font-weight:400}.cv-dialog [data-slot=dialog-description]{font-size:var(--type-label);color:var(--muted);margin-top:8px}.cv-dialog-actions{flex-shrink:0;align-items:center;gap:10px;padding-top:4px;display:flex}.cv-switch{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);align-items:center;gap:2px;padding:3px;display:inline-flex}.cv-switch-label{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;padding:0 6px 0 10px}.cv-switch-option{border-radius:var(--radius-sm);min-height:34px;color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:var(--type-label);letter-spacing:var(--tracking-label);cursor:pointer;transition:background-color var(--motion-fast) ease, color var(--motion-fast) ease;background:0 0;border:0;padding:0 14px}.cv-switch-option:hover{color:var(--ink)}.cv-switch-option[data-active=true]{background:var(--ink);color:var(--paper)}.cv-downloads{align-items:center;gap:8px;display:flex}.cv-dialog .cv-download{min-height:var(--control-md);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label);text-transform:uppercase;white-space:nowrap;transition:border-color var(--motion-fast) ease, background-color var(--motion-fast) ease, color var(--motion-fast) ease;justify-content:center;align-items:center;gap:8px;padding:0 14px;text-decoration:none;display:inline-flex}.cv-dialog .cv-download:hover{border-color:var(--ink);background:var(--ink);color:var(--paper)}.cv-close{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;place-items:center;width:44px;height:44px;display:grid}.cv-close:hover{background:var(--ink);color:var(--paper)}.cv-dialog :where(a,button):focus-visible{outline-color:var(--ink)}.cv-dialog-body{background:#e4e2dd;flex:1;min-height:0;position:relative}.cv-frame{opacity:0;border:0;width:100%;height:100%}.cv-frame[data-ready=true]{opacity:1}.cv-status{text-align:center;color:var(--muted);font-size:var(--type-body-small);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:32px;display:flex;position:absolute;inset:0}.cv-status button{cursor:pointer}@media (max-width:560px){.site-header{padding-inline:var(--gutter);grid-template-columns:minmax(0,1fr) auto;gap:12px}.mobile-menu-sheet .sound-toggle{width:34px;height:34px}.language-switch{--language-option-width:30px;padding:2px}.language-switch:before{top:2px;bottom:2px;left:2px}.language-switch button{min-width:30px;min-height:34px;font-size:var(--type-micro);padding-inline:4px}[data-slot=dialog-content].cv-dialog{border:0;border-radius:0;width:100%;height:100dvh;max-height:100dvh}.cv-dialog-header{padding:max(20px, env(safe-area-inset-top)) 20px 16px;flex-wrap:wrap;gap:16px}.cv-dialog-heading{padding-right:48px}.cv-dialog [data-slot=dialog-title]{font-size:var(--type-title)}.cv-dialog-actions{flex-wrap:wrap;gap:10px;width:100%;padding-top:0}.cv-downloads{flex:100%}.cv-dialog .cv-download{flex:1}.cv-close{top:max(20px, env(safe-area-inset-top));position:absolute;right:20px}[data-slot=dialog-content].contact-dialog{overscroll-behavior:contain;overflow-y:auto}.contact-dialog-inner{height:auto;min-height:100dvh;padding-top:max(20px, env(safe-area-inset-top))}.contact-dialog-header{padding-bottom:16px}.contact-dialog-body{padding-block:36px max(32px, env(safe-area-inset-bottom));grid-template-columns:1fr;align-content:start;gap:32px}.contact-dialog-intro [data-slot=dialog-title]{font-size:clamp(40px,12vw,58px)}.contact-dialog-options[data-brief-open] .contact-channels{grid-template-columns:1fr}}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}.work{padding-top:clamp(72px,8vw,128px)}.work-intro{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px;display:flex}.work-intro .eyebrow{margin-bottom:14px}.work-intro h2{font-size:clamp(28px,14px + 2.6vw,48px);line-height:var(--leading-tight);letter-spacing:var(--tracking-title);font-weight:400}.project-card-content{min-width:0}@media (max-width:560px){.work{padding-top:72px}.work-intro{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:24px}}.project-image{object-fit:cover;width:100%;height:100%;transition:transform var(--motion-base) var(--motion-ease);position:absolute;inset:0}.skip-link{top:12px;left:var(--gutter);z-index:var(--z-skip);background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:12px 20px;position:fixed;transform:translateY(-160%)}.skip-link:focus{outline-color:var(--acid);transform:none}:root[data-accent=blue]{--acid:#2f6bff;--on-acid:#f4f6ff}:root[data-accent=amber]{--acid:#f5a623;--on-acid:#11110f}:root[data-accent=poppy]{--acid:#ff5a2b;--on-acid:#fff6f2}:root[data-accent=navy]{--acid:#1b3f8f;--on-acid:#eef3ff}:root[data-accent=midnight]{--acid:#12275e;--on-acid:#e9efff}:root[data-accent=navy] :is(.dark-section,.home-footer,.about,.about-screen,.contact-dialog,.all-projects-pocket){--acid:#7b9bef;--on-acid:#0a1836}:root[data-accent=midnight] :is(.dark-section,.home-footer,.about,.about-screen,.contact-dialog,.all-projects-pocket){--acid:#6f8fe0;--on-acid:#08132c}:root[data-accent=blue] :is(.dark-section,.home-footer,.about,.about-screen,.contact-dialog,.all-projects-pocket){--acid:#7da4ff;--on-acid:#0b1533}.text-link:is(:hover,:focus-visible) .lucide-arrow-right{transform:translate(3px)}.button:is(:hover,:focus-visible) .lucide-arrow-down{transform:translateY(3px)}.practice{padding-bottom:calc(var(--section-y) / 2)}.clarity{padding-top:calc(var(--section-y) / 2)}[data-slot=dialog-overlay]{transition:opacity var(--motion-base) ease}[data-slot=dialog-content].cv-dialog{transition:opacity var(--motion-base) ease, transform var(--motion-base) var(--motion-ease)}[data-slot=dialog-overlay]:is([data-starting-style],[data-ending-style]){opacity:0}[data-slot=dialog-content].cv-dialog:is([data-starting-style],[data-ending-style]){opacity:0;transform:translate(-50%,calc(8px - 50%))}@media (max-width:560px){.practice-intro h2{font-size:var(--type-section)}.hero-actions .text-link{min-height:var(--control-lg)}}.workflow{background:var(--paper);padding-block:var(--section-y);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:0 clamp(20px,2.5vw,40px);display:grid}.workflow-heading{text-align:left;grid-column:1/span 5;justify-items:start;max-width:560px;display:grid;position:sticky;top:120px}.workflow-heading .eyebrow{margin-bottom:var(--section-eyebrow-gap)}.workflow-heading h2{max-width:560px;font-size:var(--type-section);line-height:var(--leading-display);letter-spacing:var(--tracking-display);text-wrap:balance;font-weight:400}.workflow-heading>p:last-child{max-width:500px;color:var(--muted);font-size:var(--type-body-large);line-height:var(--leading-body);text-wrap:pretty;margin-top:28px}.workflow-track{border-top:1px solid var(--line);grid-column:7/-1;list-style:none}.workflow-step{border-bottom:1px solid var(--line);min-width:0;min-height:clamp(220px,24vh,280px);transition:background-color var(--motion-medium) var(--motion-ease), box-shadow var(--motion-medium) var(--motion-ease);grid-template-columns:clamp(72px,7vw,104px) minmax(0,1fr);align-content:center;align-items:start;gap:clamp(20px,3vw,44px);padding-block:clamp(24px,3vw,36px);display:grid;position:relative;overflow:hidden}.workflow-step:before{content:"";background:color-mix(in srgb, var(--ink) 22%, transparent);transform-origin:0;width:100%;height:1px;transition:transform var(--motion-reveal) var(--motion-ease);position:absolute;top:-1px;left:0}.workflow-step.is-visible:before{transform:none}.workflow-step-meta{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.workflow-step-meta,.workflow-step-body{z-index:1;transition:translate var(--motion-slow) var(--motion-spring);position:relative}.workflow-node{font-family:var(--font-geist-mono), monospace;font-size:clamp(38px,4vw,58px);font-weight:400;line-height:var(--leading-display);letter-spacing:var(--tracking-display);transition:color var(--motion-fast) ease, transform var(--motion-slow) var(--motion-spring)}.workflow-phase{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:1}.workflow-step-body{align-self:start}html.motion-ready .workflow-step:before{transform:scaleX(0)}html.motion-ready .workflow-step.is-visible:before{transform:scaleX(1)}html.motion-ready .workflow-step-body{opacity:0;clip-path:inset(0 0 100%);transition:opacity var(--motion-slow) ease, transform var(--motion-reveal) var(--motion-ease), clip-path var(--motion-reveal) var(--motion-ease), translate var(--motion-slow) var(--motion-spring);transition-delay:.1s;transform:translateY(28px)}html.motion-ready .workflow-step.is-visible .workflow-step-body{opacity:1;clip-path:inset(0);transform:none}.workflow-step h3{max-width:540px;font-size:clamp(28px,3vw,44px);line-height:var(--leading-tight);letter-spacing:var(--tracking-title);text-wrap:balance;font-weight:400}.workflow-step p{max-width:540px;color:var(--muted);font-size:var(--type-body);line-height:var(--leading-body);text-wrap:pretty;margin-top:18px}.rotating-word{vertical-align:bottom;height:1.12em;transition:width var(--motion-slow) var(--motion-ease);margin-bottom:-.12em;display:inline-block;position:relative;overflow:hidden}.rotating-word-measure{white-space:nowrap;visibility:hidden;pointer-events:none;display:inline-block;position:absolute;top:0;left:0}.rotating-word-item{white-space:nowrap;padding-bottom:.12em;line-height:1;display:block}.rotating-word-item.is-entering{animation:rotating-word-in var(--motion-slow) var(--motion-ease) both}.rotating-word-item.is-leaving{animation:rotating-word-out var(--motion-medium) var(--motion-ease) both;position:absolute;top:0;left:0}@keyframes rotating-word-in{0%{opacity:0;filter:blur(6px);transform:translateY(100%)}to{opacity:1;filter:none;transform:none}}@keyframes rotating-word-out{0%{opacity:1;filter:none;transform:none}to{opacity:0;filter:blur(6px);transform:translateY(-100%)}}.workflow-step-outcome{border-radius:var(--radius);background:linear-gradient(112deg, transparent 12%, #ffffff42 43%, transparent 68%) 72% 0 / 230% 100%, var(--acid);min-height:clamp(240px,27vh,300px);transition:background-position var(--motion-reveal) var(--motion-ease);border:0;margin-inline:-28px;padding-inline:28px}.workflow-step-outcome:before{background:color-mix(in srgb, var(--on-acid) 24%, transparent);width:calc(100% - 56px);top:0;left:28px}.workflow-step-outcome{color:var(--on-acid)}.workflow-step-outcome .workflow-phase,.workflow-step-outcome p{color:color-mix(in srgb, var(--on-acid) 70%, transparent)}@media (min-width:1101px){.workflow-step-outcome h3{max-width:none;letter-spacing:var(--tracking-display);font-size:clamp(28px,2.65vw,40px)}}@media (max-width:1100px){.workflow-heading{grid-column:1/span 5}.workflow-track{grid-column:6/-1}.workflow-step{grid-template-columns:72px minmax(0,1fr);min-height:230px}}@media (max-width:820px){.workflow{grid-template-columns:1fr}.workflow-heading{grid-column:1;max-width:680px;position:static}.workflow-heading h2{max-width:680px}.workflow-track{grid-column:1;margin-top:clamp(52px,8vw,72px)}.workflow-step{grid-template-columns:80px minmax(0,1fr);min-height:220px}}@media (max-width:560px){.workflow-heading h2{font-size:var(--type-section)}.workflow-heading>p:last-child{font-size:var(--type-body);margin-top:22px}.workflow-track{margin-top:48px}.workflow-step{grid-template-columns:1fr;gap:24px;min-height:0;padding-block:26px 32px}.workflow-step-meta{flex-direction:row;justify-content:space-between;align-items:baseline}.workflow-step-body{align-self:auto}.workflow-step h3{font-size:var(--type-title)}.workflow-step-outcome{margin-inline:-12px;padding-inline:12px}.workflow-step-outcome:before{width:calc(100% - 24px);left:12px}}@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){.workflow-step:not(.workflow-step-outcome):hover{background-color:rgb(var(--ink-rgb) / .04);box-shadow:inset 0 0 0 1px rgb(var(--ink-rgb) / .04)}.workflow-step:hover .workflow-step-meta,.workflow-step:hover .workflow-step-body{translate:6px}.workflow-step-outcome:hover{box-shadow:0 16px 38px #6d910f33, inset 0 0 0 1px rgb(var(--ink-rgb) / .08)}.practice-tool-icon{transition:translate var(--motion-medium) var(--motion-spring), rotate var(--motion-medium) var(--motion-spring)}.practice-tool:hover .practice-tool-icon{translate:0 -3px;rotate:-6deg}}@media (max-width:820px){:root{--motion-distance:16px;--motion-stagger:40ms}}@media (prefers-reduced-motion:reduce){html.motion-ready [data-reveal],html.motion-ready [data-reveal]>*,html.motion-ready .motion-word,html.motion-ready [data-reveal=project] :is(.project-visual,.project-image,.project-info){opacity:1!important;clip-path:none!important;transform:translate(0,0)rotate(0)!important}.practice-raster{display:none}.workflow-step:before{transform:none!important}.workflow-step-body{opacity:1!important;clip-path:none!important;transform:none!important}.workflow-step-outcome{background-position:50% 0,0 0;animation:none!important}.motion-word-clip{clip-path:none}}.all-projects-action{justify-content:flex-end;margin-top:16px;display:flex}.all-projects-toggle{min-height:var(--control-md);color:var(--ink);cursor:pointer;font-size:var(--type-label);transition:color var(--motion-fast) ease;background:0 0;border:0;border-radius:0;align-items:center;gap:10px;padding:8px 0;font-weight:500;line-height:1;display:inline-flex}.all-projects-toggle:is(:hover,:focus-visible){color:var(--muted);background:0 0}.all-projects-count{min-width:24px;font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label);opacity:.68;border-left:1px solid;justify-content:center;align-items:center;padding-left:10px;display:inline-flex}.all-projects-toggle-icon{transition:transform var(--motion-base) var(--motion-ease);flex:none}.all-projects-toggle:is(:hover,:focus-visible) .all-projects-toggle-icon{transform:translate(3px)}[data-slot=dialog-content].all-projects-pocket{z-index:var(--z-modal);background:var(--ink);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--paper);transition:opacity var(--motion-medium) ease, clip-path var(--motion-reveal) var(--motion-ease);clip-path:inset(0);border:0;border-radius:0;outline:none;gap:0;padding:0;display:block;position:fixed;inset:0;overflow:hidden;transform:none}[data-slot=dialog-content].all-projects-pocket:is([data-starting-style],[data-ending-style]){opacity:0;clip-path:inset(100% 0 0)}.all-projects-pocket+[data-slot=dialog-overlay]{z-index:var(--z-modal-overlay);background:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none}[data-slot=dialog-overlay]:has(+.all-projects-pocket){z-index:var(--z-modal-overlay);background:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none}.all-projects-pocket-inner{width:min(100%,1912px);height:100%;padding:clamp(20px, 2.2vw, 36px) var(--gutter) max(16px, env(safe-area-inset-bottom));grid-template-rows:auto minmax(0,1fr);margin-inline:auto;display:grid}.all-projects-pocket-heading{border-bottom:1px solid var(--line-dark);justify-content:space-between;align-items:center;gap:24px;padding-bottom:clamp(14px,1.8vh,22px);display:flex}.all-projects-pocket-heading [data-slot=dialog-title]{color:var(--on-dark-2);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);font-weight:400;line-height:var(--leading-normal);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0}.all-projects-pocket-heading [data-slot=dialog-description]{color:var(--paper);font-size:clamp(18px,1.6vw,26px);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);margin-top:7px}.all-projects-close{width:var(--control-md);height:var(--control-md);border:1px solid var(--line-dark);border-radius:var(--radius);color:var(--paper);cursor:pointer;transition:background-color var(--motion-fast) ease, border-color var(--motion-fast) ease, color var(--motion-fast) ease;flex:none;place-items:center;display:grid}.all-projects-close:is(:hover,:focus-visible){background:var(--acid);border-color:var(--acid);color:var(--on-acid)}.all-projects-list{grid-auto-rows:minmax(0,1fr);min-height:0;display:grid}.all-projects-row{border-bottom:1px solid var(--line-dark);min-height:0;transition:color var(--motion-fast) ease, padding-inline var(--motion-base) var(--motion-ease), background-color var(--motion-fast) ease;grid-template-columns:34px clamp(64px,6.2vw,96px) minmax(150px,1fr) minmax(110px,.45fr) 76px 18px;align-items:center;gap:clamp(12px,1.65vw,26px);padding-block:clamp(4px,.7vh,8px);display:grid}a.all-projects-row:is(:hover,:focus-visible){background:var(--acid);color:var(--on-acid);padding-inline:12px}.all-projects-number,.all-projects-discipline,.all-projects-status{font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);line-height:var(--leading-normal);letter-spacing:var(--tracking-label);text-transform:uppercase}.all-projects-number,.all-projects-discipline{color:var(--on-dark-3)}a.all-projects-row:is(:hover,:focus-visible) :is(.all-projects-number,.all-projects-discipline){color:rgb(var(--ink-rgb) / .62)}.all-projects-thumb{aspect-ratio:16/9;border-radius:var(--radius);background:#2d2d29;place-items:center;width:clamp(64px,6.2vw,96px);display:grid;position:relative;overflow:hidden}.all-projects-thumb img{object-fit:cover;width:100%;height:100%}.all-projects-thumb>span{font-size:var(--type-title-sm);font-weight:500}.all-projects-thumb.neutral{background:#2d2d29}.all-projects-name{letter-spacing:var(--tracking-title);font-size:clamp(19px,1.7vw,29px);line-height:1}.all-projects-status,.all-projects-row>svg{justify-self:end}.all-projects-row.is-disabled{opacity:.52}.case-main{--case-gutter:var(--gutter);--case-top:clamp(16px, 1.6vw, 28px);--type-case-body:1rem;--type-case-summary:1.25rem}.case-main .site-header{width:100%;max-width:1912px;height:var(--header-height);padding-block:var(--header-block-padding);padding-inline:var(--header-edge);will-change:transform;transition:transform var(--motion-medium) var(--motion-ease), opacity var(--motion-base) ease, visibility 0s linear;border-bottom:0;position:sticky;top:0}.case-main.is-header-hidden .site-header{visibility:hidden;opacity:0;pointer-events:none;transition-delay:0s,0s,.36s;transform:translateY(-100%)}.case-shell{width:min(100%,1912px);padding:var(--case-top) var(--case-gutter) clamp(64px, 7vw, 112px);grid-template-columns:minmax(300px,1fr) minmax(0,1.9fr);align-items:start;gap:clamp(28px,2.8vw,46px);margin-inline:auto;display:grid}.case-sidebar{grid-column:1;min-width:0;position:static}.case-main.is-story-sticky .case-sidebar{top:calc(var(--header-height) + var(--case-top));max-height:calc(100svh - var(--header-height) - var(--case-top) * 2);overscroll-behavior:contain;scrollbar-width:none;transition:top var(--motion-medium) var(--motion-ease), max-height var(--motion-medium) var(--motion-ease);position:sticky;overflow-y:auto}.case-main.is-story-sticky .case-sidebar::-webkit-scrollbar{display:none}.case-main.is-story-sticky.is-header-hidden .case-sidebar{top:var(--case-top);max-height:calc(100svh - var(--case-top) * 2)}.case-intro>.eyebrow{color:var(--muted);margin-bottom:14px}.case-intro h1{font-size:var(--type-case-title);letter-spacing:var(--tracking-title);text-transform:uppercase;overflow-wrap:anywhere;margin:0;font-weight:400;line-height:1}.case-summary{max-width:500px;color:var(--ink);font-size:var(--type-case-summary);line-height:var(--leading-normal);letter-spacing:var(--tracking-tight);text-wrap:pretty;margin-top:clamp(14px,1.4vw,20px)}.case-copy{gap:1em;display:grid}.case-intro+.case-copy{margin-top:clamp(16px,1.5vw,24px)}.case-copy p{color:#363530;font-size:var(--type-case-body);line-height:var(--leading-body);text-wrap:pretty}.case-details{margin-top:clamp(16px,1.5vw,24px);display:grid}.case-details>div{grid-template-columns:minmax(88px,.4fr) minmax(0,1fr);gap:16px;padding-block:7px;display:grid}.case-details dt{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:var(--type-label);line-height:var(--leading-compact);letter-spacing:var(--tracking-label);text-transform:uppercase}.case-details dd{font-size:var(--type-body-small);line-height:var(--leading-compact);margin:0}.case-role-list{flex-wrap:wrap;gap:7px;display:flex}.case-role-list span{border:1px solid var(--line);border-radius:var(--radius);font-family:var(--font-geist-mono), monospace;font-size:var(--type-label);line-height:var(--leading-snug);letter-spacing:var(--tracking-label-tight);text-transform:uppercase;align-items:center;padding:6px 10px;display:inline-flex}.case-media-column{grid-column:2;gap:8px;min-width:0;display:grid}.case-hero,.case-gallery{min-width:0}.case-hero{margin:0 0 8px}.case-gallery{gap:8px;display:grid}.case-gallery-item{scroll-margin-top:calc(var(--header-height) + var(--case-top));border-radius:var(--radius);background:#fff;margin:0;overflow:hidden}.case-gallery-item img{width:100%;height:auto}.case-gallery-item--cropped img{transform:scale(var(--case-image-scale));transform-origin:50%}.case-gallery-grid{background:0 0;overflow:visible}.case-gallery-grid--dark{border-radius:var(--radius);background:#040707;padding:clamp(20px,4.2vw,50px);overflow:hidden}.case-gallery-grid--takes,.case-gallery-grid--printed{background:#000}.case-gallery-grid--printed .case-grid{width:50%;margin-inline:auto}.case-gallery-grid--dark .case-grid img{border-radius:0}.case-gallery-item--light,.case-gallery-item--dark{aspect-ratio:16/9;place-items:center;padding:clamp(36px,7vw,75px);display:grid}.case-gallery-item--light{background:#fff}.case-gallery-item--dark{background:#000}.case-gallery-item--light img,.case-gallery-item--dark img{width:min(62%,588px);height:auto}.case-grid{grid-template-columns:repeat(var(--case-grid-columns), minmax(0, 1fr));gap:8px;display:grid}.case-grid img{object-fit:cover;border-radius:var(--radius);background:#fff;height:100%;min-height:0}.case-gallery-split{background:0 0;overflow:visible}.case-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.case-split-symbol{aspect-ratio:595/397;border-radius:var(--radius);background:#fff;place-items:center;min-height:0;display:grid;overflow:hidden}.case-split-symbol img{width:clamp(58px,7vw,84px);height:auto}.case-split>img{border-radius:var(--radius);background:#fff;width:100%;height:auto}.brand-concept-panel{background:#fff;justify-content:center;align-items:center;width:100%;min-height:248px;padding:clamp(48px,6.25vw,75px) clamp(28px,4.2vw,50px);display:flex}.brand-concept-list{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:24px;width:100%;display:grid}.brand-concept{grid-template-columns:54px minmax(0,1fr);align-items:center;gap:16px;min-width:0;display:grid}.brand-concept-ring{border:1px solid #00000047;border-radius:50%;place-items:center;width:54px;height:54px;display:grid;overflow:hidden}.brand-concept-global{width:20px!important;height:20px!important}.brand-concept-uorkaut-icon{object-fit:contain;width:25px!important;height:25px!important}.brand-concept-asterisco-icon{object-fit:contain;width:24px!important;height:24px!important}.brand-concept-panel--asterisco .brand-concept-ring{border-color:#18372d55}.brand-concept-panel--asterisco .brand-concept-copy h2{color:#17372c}.brand-concept-panel--asterisco .brand-concept-copy p{color:#355047}.brand-concept-list--uorkaut{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-concept-panel--ten80{min-height:426px}.brand-concept-list--ten80{grid-template-columns:minmax(0,1fr) minmax(120px,.46fr) minmax(0,1fr);gap:clamp(24px,4vw,64px)}.brand-concept--ten80{grid-template-columns:54px minmax(0,1fr)}.brand-concept-ten80-icon{object-fit:contain;width:20px!important;height:20px!important}.brand-concept-ten80-icon--star{width:23px!important;height:23px!important}.brand-concept-ten80-logo{place-items:center;display:grid}.brand-concept-ten80-logo img{width:min(100%,180px);height:auto}.brand-concept-ten80-variations{grid-column:1/-1;gap:16px;width:100%;margin-top:12px;display:grid}.brand-concept-ten80-variations-title{color:#cacaca;font-size:var(--type-label);line-height:var(--leading-snug);letter-spacing:.005em;text-align:center;margin:0}.brand-concept-ten80-variations-grid{justify-content:center;align-items:center;gap:clamp(34px,8.5vw,128px);width:100%;display:flex}.brand-concept-ten80-variations-grid img{object-fit:contain;flex:0 auto;max-width:22%;height:auto;display:block}.brand-concept-symbol{width:36px;height:36px;display:block;position:relative;overflow:hidden;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:36px 36px;mask-size:36px 36px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.brand-concept-symbol--sea{-webkit-mask-image:url(/projects/connectsea/concept/sea-mask.svg);mask-image:url(/projects/connectsea/concept/sea-mask.svg)}.brand-concept-symbol--connection{-webkit-mask-image:url(/projects/connectsea/concept/connection-mask.svg);mask-image:url(/projects/connectsea/concept/connection-mask.svg)}.brand-concept-symbol img{max-width:none;position:absolute}.brand-concept-symbol--sea img{width:45.9898px;height:42.5889px;top:-3.4313px;left:-5.1328px}.brand-concept-symbol--connection img{width:87.0894px;height:78.4268px;top:-21.0918px;left:-25.6484px}.brand-concept-copy{gap:4px;min-width:0;display:grid}.brand-concept-copy h2{color:#5f5f5f;font-size:var(--type-body);font-weight:600;line-height:var(--leading-snug);letter-spacing:.005em;margin:0}.brand-concept-copy p{color:#3f3f3f;font-size:var(--type-caption);font-weight:400;line-height:var(--leading-body);text-wrap:pretty;margin:0}.case-navigation-section{width:min(100%,1912px);padding:0 var(--case-gutter) clamp(72px, 8vw, 128px);margin-inline:auto}.case-navigation-heading{border-top:1px solid var(--line);justify-content:flex-start;align-items:center;gap:24px;padding-top:24px;display:flex}.case-navigation-heading>.eyebrow{color:var(--muted)}.case-navigation-section--back{padding-top:24px}.case-back-to-projects{min-height:var(--control-md);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);font-family:var(--font-geist-mono), monospace;font-size:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;transition:background-color var(--motion-fast) ease, border-color var(--motion-fast) ease, color var(--motion-fast) ease;align-items:center;gap:9px;padding:12px 14px;line-height:1;display:inline-flex}.case-back-to-projects:is(:hover,:focus-visible){border-color:var(--ink);background:var(--ink);color:var(--paper)}.case-end{padding:clamp(64px, 7vw, 112px) var(--case-gutter) calc(clamp(84px, 8vw, 128px) + 40px)}.case-project-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:24px;display:grid}.case-project-preview{border:1px solid var(--line);border-radius:var(--radius);min-width:0;min-height:104px;transition:background-color var(--motion-fast) ease, border-color var(--motion-fast) ease;grid-template-columns:clamp(96px,8vw,124px) minmax(0,1fr);align-items:center;gap:clamp(12px,1.5vw,22px);padding:12px;display:grid}.case-project-preview:is(:hover,:focus-visible){border-color:rgb(var(--ink-rgb) / .28);background:#ffffff75}.case-project-preview-thumb{aspect-ratio:16/9;border-radius:var(--radius);background:#292924;grid-area:1/1;width:100%;display:block;overflow:hidden}.case-project-preview-thumb img{object-fit:cover;width:100%;height:100%;transition:transform var(--motion-slow) var(--motion-ease)}.case-project-preview:is(:hover,:focus-visible) .case-project-preview-thumb img{transform:scale(1.035)}.case-project-preview-content{grid-area:1/2;align-content:center;gap:10px;min-width:0;display:grid}.case-project-direction{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label);text-transform:uppercase;justify-self:start;align-items:center;gap:7px;line-height:1;display:inline-flex}.case-project-preview-meta{gap:5px;min-width:0;display:grid}.case-project-preview-title{letter-spacing:var(--tracking-tight);font-size:clamp(19px,1.6vw,25px);line-height:1}.case-project-preview-discipline{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);line-height:var(--leading-snug);letter-spacing:var(--tracking-label);text-transform:uppercase}.case-project-preview.is-next{grid-template-columns:minmax(0,1fr) clamp(96px,8vw,124px)}.case-project-preview.is-next .case-project-preview-thumb{grid-column:2}.case-project-preview.is-next .case-project-preview-content{text-align:right;grid-column:1;justify-items:end}.case-project-preview.is-next .case-project-direction{justify-self:end}.case-end-inner{width:min(100%,1912px);margin-inline:auto}.case-floating-nav{z-index:var(--z-floating);right:clamp(20px,3vw,48px);bottom:max(20px, env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:var(--radius);background:rgb(var(--paper-rgb) / .92);box-shadow:var(--shadow-float);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-base) ease, transform var(--motion-medium) var(--motion-ease), visibility 0s linear var(--motion-medium);align-items:center;padding:3px;display:flex;position:fixed;transform:translateY(14px)}.case-floating-nav.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:none}.case-floating-nav a{border-radius:var(--radius);min-height:38px;color:var(--ink);transition:background-color var(--motion-fast) ease, color var(--motion-fast) ease;justify-content:center;align-items:center;display:inline-flex}.case-floating-nav a:is(:hover,:focus-visible){background:var(--ink);color:var(--paper)}.case-floating-top{width:38px}.case-contact-link{border-top:1px solid var(--line-dark);text-align:left;cursor:pointer;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:clamp(28px,5vw,80px);width:100%;padding-block:clamp(28px,3.5vw,52px);display:grid}.case-contact-kicker{color:var(--on-dark-3);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);letter-spacing:var(--tracking-label);text-transform:uppercase;grid-column:1/-1;line-height:1}.case-contact-title{max-width:1120px;color:var(--paper);font-size:clamp(46px,5.8vw,92px);font-weight:400;line-height:var(--leading-display);letter-spacing:var(--tracking-display);transition:color var(--motion-base) ease}.case-contact-action{border:1px solid var(--acid);border-radius:var(--radius);background:var(--acid);color:var(--on-acid);font-size:var(--type-label);white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:8px 12px;line-height:1;display:inline-flex}.case-contact-action svg{transition:transform var(--motion-base) var(--motion-ease)}.case-contact-link:is(:hover,:focus-visible) .case-contact-title{color:var(--acid)}.case-contact-link:is(:hover,:focus-visible) .case-contact-action{border-color:var(--paper);color:var(--paper);background:0 0}.case-contact-link:is(:hover,:focus-visible) .case-contact-action svg{transform:translate(4px,-4px)}@media (max-width:980px){.all-projects-row{grid-template-columns:32px 76px minmax(150px,1fr) 88px 18px}.all-projects-thumb{width:76px}.all-projects-discipline{display:none}.case-shell{flex-direction:column;grid-template-columns:1fr;gap:clamp(32px,6vw,52px);display:flex}.case-sidebar,.case-sidebar-inner,.case-media-column{display:contents}.case-intro,.case-copy,.case-details,.case-hero,.case-gallery{width:100%;max-width:760px}.case-intro{order:1}.case-hero{order:2;max-width:none;margin:0}.case-copy{order:3}.case-details{order:4}.case-gallery{order:5;max-width:none}.case-copy,.case-details{max-width:680px}}@media (max-width:820px){.brand-concept-list{grid-template-columns:1fr;gap:24px}.brand-concept-list--ten80{grid-template-columns:1fr;gap:28px}.brand-concept-ten80-logo{order:-1}.brand-concept-ten80-variations{grid-column:auto;margin-top:0}.brand-concept-ten80-variations-grid{grid-template-columns:1.45fr .66fr 1.56fr .69fr;gap:clamp(8px,2vw,24px);display:grid}.brand-concept-ten80-variations-grid img{justify-self:center;width:auto;max-width:100%;max-height:clamp(38px,10vw,56px)}.brand-concept{grid-template-columns:48px minmax(0,1fr);gap:14px}.brand-concept-ring{width:48px;height:48px}}@media (max-width:560px){.case-grid{gap:6px}.case-grid[style*="3"],.case-grid[style*="4"],.case-grid[style*="6"]{grid-template-columns:repeat(2,minmax(0,1fr))}[data-slot=dialog-content].all-projects-pocket{overscroll-behavior:contain;overflow-y:auto}.all-projects-pocket-inner{height:auto;min-height:100dvh;padding-top:max(20px, env(safe-area-inset-top))}.all-projects-list{display:block}.all-projects-row{grid-template-columns:30px 72px minmax(0,1fr) 18px;gap:12px;min-height:92px}.all-projects-thumb{width:72px}.all-projects-name{font-size:var(--type-title-sm)}.all-projects-status{font-size:var(--type-micro);grid-column:3;justify-self:start;margin-top:-20px}.all-projects-row>svg{grid-area:1/4}.case-intro h1{font-size:var(--type-case-title)}.case-summary{font-size:var(--type-case-summary);line-height:var(--leading-normal)}.case-copy p{font-size:var(--type-case-body);line-height:var(--leading-body)}.case-details>div{grid-template-columns:88px minmax(0,1fr)}.case-contact-link{grid-template-columns:1fr;align-items:start}.case-contact-action{justify-self:start}.case-contact-title{font-size:clamp(34px,11vw,48px)}.case-project-navigation{grid-template-columns:1fr}.case-project-navigation>span[aria-hidden]{display:none}.case-project-preview,.case-project-preview.is-next{grid-template-columns:80px minmax(0,1fr);gap:12px;min-height:92px;padding:10px}.case-project-preview.is-next .case-project-preview-thumb{grid-column:1}.case-project-preview.is-next .case-project-preview-content{text-align:left;grid-column:2;justify-items:start}.case-project-preview.is-next .case-project-direction{justify-self:start}.case-project-preview-title{font-size:var(--type-lead)}.case-floating-nav{right:20px}.brand-concept-panel{min-height:0;padding:40px 28px}.brand-concept-list{gap:28px}.brand-concept-copy p{font-size:var(--type-caption)}}@media (prefers-reduced-motion:reduce){[data-slot=dialog-content]:is(.all-projects-pocket,.contact-dialog){transition:none}}@media (hover:none),(pointer:coarse){.project-hover-name,.project-hover-service,.project-expand-indicator{opacity:1;transform:none}.project-hover-name{font-size:var(--type-label)}.project-expand-indicator{width:32px;height:32px}}footer.home-footer{width:100%;color:var(--paper);background:var(--ink);font-family:var(--font-exo), Arial, sans-serif;font-size:var(--type-body);line-height:var(--leading-compact);letter-spacing:normal;text-transform:none;border-top:0;margin:0;padding:0;display:block}.home-footer{isolation:isolate;position:relative;overflow:hidden}.home-footer-shader{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.home-footer-inner{z-index:1;min-height:min(92svh,900px);padding-top:var(--section-y);grid-template-rows:1fr auto auto;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(20px,2.5vw,40px);padding-bottom:clamp(24px,2.4vw,36px);display:grid;position:relative}.home-footer-heading{grid-area:1/1/auto/span 7;align-self:center}.home-footer-contacts{grid-area:2/1/auto/span 7}.home-footer-bloom{pointer-events:none;grid-area:1/8/span 2/-1;min-height:420px;margin-bottom:clamp(24px,3vw,48px)}.home-footer-eyebrow{margin-bottom:var(--section-eyebrow-gap);color:var(--on-dark-2)}.home-footer-title{letter-spacing:var(--tracking-title);margin:0;font-size:clamp(40px,5.6vw,92px);font-weight:500;line-height:1}.home-footer-title-line{display:block}@media (min-width:981px){.home-footer-title-line{white-space:nowrap}}.home-footer-title-line.is-muted{color:var(--acid)}.home-footer-contacts{flex-wrap:wrap;gap:24px clamp(18px,2.25vw,40px);margin-top:clamp(48px,5vw,80px);padding-bottom:clamp(24px,3vw,48px);display:flex}.home-footer-contact-group{flex-wrap:wrap;gap:8px;display:flex}.home-footer-label{color:var(--on-dark-3);font-size:var(--type-body);margin-bottom:10px;font-weight:500;line-height:20px;display:block}.home-footer-value{isolation:isolate;min-height:var(--control-lg);border-radius:var(--radius);background:var(--acid);color:var(--on-acid);letter-spacing:var(--tracking-tight);transition:transform var(--motion-base) var(--motion-ease), box-shadow var(--motion-base) var(--motion-ease);align-items:center;gap:10px;padding:0 24px;font-size:clamp(16px,1.2vw,19px);font-weight:500;display:inline-flex;position:relative;overflow:hidden}.home-footer-value:after{content:"";z-index:var(--z-behind);pointer-events:none;background:linear-gradient(105deg,#0000 30%,#ffffff8c 50%,#0000 70%);position:absolute;inset:0;transform:translate(-120%)}.home-footer-value.is-secondary{background:var(--paper);color:var(--ink)}.home-footer-value.is-secondary:is(:hover,:focus-visible){box-shadow:var(--shadow-float-dark)}.home-footer-value.is-secondary:after{background:linear-gradient(105deg, transparent 30%, color-mix(in srgb, var(--acid) 55%, transparent) 50%, transparent 70%)}.home-footer-value:is(:hover,:focus-visible){box-shadow:var(--shadow-glow-acid);transform:translateY(-2px)}.home-footer.is-in-view .home-footer-contact-group .home-footer-contact .home-footer-value:after{animation:home-footer-shine 9s cubic-bezier(.45, 0, .2, 1) var(--motion-medium) infinite both}.home-footer.is-in-view .home-footer-contact-group .home-footer-contact:nth-child(2) .home-footer-value:after{animation-delay:1.1s}.home-footer .home-footer-contact .home-footer-value:is(:hover,:focus-visible):after,.home-footer.is-in-view .home-footer-contact .home-footer-value:is(:hover,:focus-visible):after,.home-footer.is-in-view .home-footer-contact-group .home-footer-contact:nth-child(2) .home-footer-value:is(:hover,:focus-visible):after{animation:home-footer-shine-once var(--motion-reveal) cubic-bezier(.45, 0, .2, 1) both}@keyframes home-footer-shine{0%{transform:translate(-120%)}12%,to{transform:translate(120%)}}@keyframes home-footer-shine-once{0%{transform:translate(-120%)}to{transform:translate(120%)}}.home-footer-pills{flex-wrap:wrap;gap:8px;display:flex}.home-footer-pill{min-width:52px;height:var(--control-lg);border-radius:var(--radius);color:var(--paper);font-size:var(--type-body-small);transition:background-color var(--motion-fast) ease, color var(--motion-fast) ease, border-color var(--motion-fast) ease, transform var(--motion-base) var(--motion-ease);background:#ffffff1a;border:1px solid #ffffff24;justify-content:center;align-items:center;padding:0 16px;font-weight:600;display:inline-flex}.home-footer-pill svg{width:18px;height:18px}.home-footer-pill:is(:hover,:focus-visible){background:var(--acid);color:var(--on-acid);border-color:var(--acid);transform:translateY(-2px)}.home-footer-bottom{border-top:1px solid var(--line-dark);flex-wrap:wrap;grid-area:3/1/auto/-1;justify-content:space-between;align-items:center;gap:8px 32px;margin-top:clamp(40px,5vw,72px);padding-top:24px;display:flex}.home-footer-copyright,.home-footer-cnpj{color:var(--on-dark-2);text-shadow:0 0 12px var(--ink), 0 0 4px var(--ink);font-size:var(--type-body-small);margin:0;line-height:22px}@media (max-width:980px){.home-footer-inner{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);min-height:0}.home-footer-heading,.home-footer-contacts,.home-footer-bloom,.home-footer-bottom{grid-area:auto/1}.home-footer-contacts{flex-direction:column;padding-bottom:0}.home-footer-bloom{min-height:clamp(240px,70vw,360px);margin:16px 0 0}.home-footer-bottom{margin-top:0}}@media (prefers-reduced-motion:reduce){.rotating-word{transition:none}.rotating-word-item.is-entering,.rotating-word-item.is-leaving{animation:none}.rotating-word-item.is-leaving{display:none}}.about-v2{isolation:isolate;flex-direction:column;min-height:100svh;padding-top:clamp(72px,7vw,88px);padding-bottom:calc(clamp(72px,7vw,88px) - clamp(16px,1.8vw,24px));display:flex;position:relative;overflow:hidden}.about-v2-shader{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.about-v2>.section-shell{z-index:1;flex-direction:column;flex:1;display:flex;position:relative}.about-v2-meta{color:var(--on-dark-2);justify-content:space-between;gap:16px;padding-bottom:24px;display:flex}.about-v2-body{flex:1;grid-template-rows:auto auto auto;grid-template-columns:repeat(12,minmax(0,1fr));align-content:center;gap:clamp(24px,3.2vh,40px) clamp(20px,2.5vw,40px);padding-block:clamp(24px,3vh,44px);display:grid}.about-v2-title{max-width:960px;font-size:var(--type-section);font-weight:400;line-height:var(--leading-display);letter-spacing:var(--tracking-title);text-wrap:balance;grid-column:1/span 7;align-self:end;margin:0}.about-v2-portrait{aspect-ratio:4/3;border-radius:var(--radius);background:#0b3a66;grid-area:1/8/span 3/-1;place-self:center end;width:min(100%,650px);margin:0;overflow:hidden}.about-v2-portrait img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.about-v2-intro{grid-column:1/span 6;align-self:start;min-width:0;max-width:820px}.about-v2-lead{max-width:780px;color:var(--paper);font-size:clamp(19px,1.65vw,27px);line-height:var(--leading-normal);letter-spacing:var(--tracking-tight);text-wrap:pretty;margin:0}.about-v2-copy{max-width:620px;color:var(--on-dark-2);font-size:clamp(14px,1vw,16px);line-height:var(--leading-body);text-wrap:pretty;margin:22px 0 0}.about-v2-credentials{grid-column:1/span 7;align-self:start;min-width:0}.about-v2-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,48px);max-width:420px;margin:0;display:grid}.about-v2-facts>div{min-width:0}.about-v2-facts dd{color:var(--paper);letter-spacing:var(--tracking-tight);margin:0;font-size:clamp(24px,2vw,34px);font-weight:600;line-height:1}.about-v2-facts dt{max-width:220px;color:var(--on-dark-3);font-family:var(--font-geist-mono), monospace;font-size:var(--type-micro);line-height:var(--leading-compact);letter-spacing:var(--tracking-label);text-transform:uppercase;margin-top:10px}.about-v2-cv{-webkit-appearance:none;appearance:none;cursor:pointer;min-height:var(--control-md);color:var(--paper);font-family:var(--font-geist-mono), monospace;font-size:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;background:0 0;border:0;align-items:center;gap:10px;margin-top:clamp(18px,2.4vh,28px);padding:0;line-height:1;display:inline-flex}.about-v2-cv span{color:var(--acid);transition:transform var(--motion-base) var(--motion-ease)}@media (hover:hover){.about-v2-cv:hover span{transform:translate(3px,-3px)}}.about-marquee{z-index:1;width:min(calc(100% - 2 * var(--gutter)), calc(1912px - 2 * var(--gutter)));margin:clamp(20px,2vw,28px) auto 0;padding:clamp(16px,1.8vw,24px) 0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.about-marquee-track{width:max-content;animation:60s linear infinite about-marquee;display:flex}.about-marquee:hover .about-marquee-track,.about-marquee.is-paused .about-marquee-track{animation-play-state:paused}.about-marquee-list{align-items:center;gap:clamp(44px,5vw,76px);margin:0;padding:0 clamp(44px,5vw,76px) 0 0;list-style:none;display:flex}.about-marquee-logo{width:calc(clamp(36px, 3.2vw, 52px) * var(--brand-scale,1));height:calc(clamp(30px, 2.6vw, 42px) * var(--brand-scale,1));background:var(--paper);opacity:.72;-webkit-mask:var(--brand-mask) center / contain no-repeat;-webkit-mask:var(--brand-mask) center / contain no-repeat;mask:var(--brand-mask) center / contain no-repeat;transition:background-color var(--motion-base) ease, opacity var(--motion-base) ease, transform var(--motion-medium) var(--motion-ease)}.about-marquee-logo:hover{background:var(--acid);opacity:1;transform:scale(1.1)}@keyframes about-marquee{to{transform:translate(-50%)}}@media (max-width:980px){.about-v2-body{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) minmax(220px,.55fr)}.about-v2-title{grid-column:1/-1}.about-v2-intro{grid-column:1}.about-v2-credentials{grid-column:1/-1}.about-v2-portrait{grid-area:2/2;width:100%;max-width:420px}.about-v2-copy{max-width:680px}}@media (max-width:560px){.about-v2{min-height:0}.about-v2-meta .eyebrow{font-size:var(--type-micro);letter-spacing:var(--tracking-label)}.about-v2-body{grid-template-columns:1fr;gap:32px;padding-block:24px 40px}.about-v2-title,.about-v2-intro,.about-v2-credentials,.about-v2-portrait{grid-area:auto/1}.about-v2-portrait{justify-self:start;width:min(86vw,380px)}.about-v2-lead{font-size:var(--type-lead)}.about-v2-copy{font-size:var(--type-body)}.about-v2-facts{gap:16px}.about-marquee-logo{width:calc(32px * var(--brand-scale,1));height:calc(27px * var(--brand-scale,1))}.about-marquee-list{gap:38px;padding-right:38px}}@media (prefers-reduced-motion:reduce){.home-footer-value:after{animation:none!important}.about-marquee-logo{transition:none}.about-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.about-marquee-track{animation:none}}.home-footer-title{font-size:var(--type-section)}html.entry-loading body{overflow:hidden}.site-loader{z-index:var(--z-loader);background:var(--paper);will-change:transform;place-items:center;display:grid;position:fixed;inset:0}.site-loader[data-state=done]{transition:transform var(--motion-reveal) cubic-bezier(.76, 0, .24, 1);transform:translateY(-100%)}.site-loader-mark{width:clamp(132px,16vw,240px);position:relative}.site-loader-mark svg{width:100%;height:auto;display:block}.site-loader-ghost path{fill:color-mix(in srgb, var(--ink) 9%, transparent)}.site-loader-fill{clip-path:inset(100% 0 0);position:absolute;inset:0}.site-loader-fill path{fill:var(--ink)}.site-loader-label,.site-loader-counter{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:var(--tracking-label-wide);text-transform:uppercase;position:absolute;bottom:clamp(18px,4vh,38px)}.site-loader-label{left:var(--gutter);font-size:var(--type-micro)}.site-loader-counter{right:var(--gutter);font-size:var(--type-caption);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-label)}@media (prefers-reduced-motion:reduce){.site-loader[data-state=done]{transition:none}}.site-loader-retry{max-width:min(32rem, calc(100vw - 2 * var(--gutter)));text-align:center;color:var(--ink);justify-items:center;gap:1rem;display:grid;position:absolute;bottom:clamp(64px,10vh,110px)}.site-loader-retry p{margin:0;font-size:1rem;line-height:1.5}.site-loader-retry button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:999px;padding:.7rem 1.2rem}.site-loader-retry button:focus-visible{outline-offset:3px;outline:2px solid}
