@import url('https://api.fontshare.com/v2/css?f[]=sora@300,400,500,600,700,800&display=swap');
/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */@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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Inter", "Helvetica Neue", "Arial", system-ui, sans-serif;--font-mono:"Courier New", Courier, monospace;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-xl:36rem;--container-3xl:48rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-bold:700;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-md:12px;--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);--color-studio-bg:var(--bg-color);--color-studio-ink:var(--ink-color);--color-studio-border:var(--border-color);--ease-architectural:cubic-bezier(.16, 1, .3, 1)}}@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%;-moz-tab-size:4;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]){-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}:-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}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-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}:root,html[data-theme=light]{--body-bg:#fff;--text-color:#0f0f0f;--muted-color:#0f0f0f9e;--line-color:#0f0f0f24;--bg-color:var(--body-bg);--ink-color:var(--text-color);--border-color:var(--line-color);--header-bg-rgb:230, 230, 230}html[data-theme=dark]{--body-bg:#0b0b0b;--text-color:#f5f5f5;--muted-color:#f5f5f59e;--line-color:#f5f5f529;--bg-color:var(--body-bg);--ink-color:var(--text-color);--border-color:var(--line-color);--header-bg-rgb:28, 28, 28}html,body{background-color:var(--body-bg);color:var(--text-color);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.35s;--tw-ease:var(--ease-in-out);transition-duration:.35s;transition-timing-function:var(--ease-in-out)}:is(html,body) ::selection{background-color:var(--color-studio-ink)}:is(html,body)::selection{background-color:var(--color-studio-ink)}:is(html,body) ::selection{color:var(--color-studio-bg)}:is(html,body)::selection{color:var(--color-studio-bg)}html.custom-cursor-enabled,html.custom-cursor-enabled body{cursor:none!important}main,section,footer,.page,.hero,.works,.about,.services,.contact,.our-services,.what-we-do,.projects-section,.render-marquee-section{color:inherit;transition:background-color .35s,color .35s;background-color:#0000!important}hr,.border-studio-border,.border-t,.border-b,.border-l,.border-r,.border,.divider,.border-line,[class*=divider],[class*=line]{transition:border-color .35s;border-color:var(--line-color)!important}html.custom-cursor-enabled a,html.custom-cursor-enabled button,html.custom-cursor-enabled img,html.custom-cursor-enabled picture,html.custom-cursor-enabled figure,html.custom-cursor-enabled .project-card,html.custom-cursor-enabled .service-card,html.custom-cursor-enabled .render-item,html.custom-cursor-enabled .img-wrap,html.custom-cursor-enabled .reveal-image,html.custom-cursor-enabled [data-hover-project],html.custom-cursor-enabled .project-image-wrap,html.custom-cursor-enabled [style*="cursor: zoom-in"],html.custom-cursor-enabled [style*="cursor: pointer"]{cursor:none!important}.muted,.subtitle,.description,.caption,.eyebrow,.opacity-40,.opacity-50,.opacity-60{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.35s;transition-duration:.35s;color:var(--muted-color)!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-8{top:calc(var(--spacing) * 8)}.right-0{right:calc(var(--spacing) * 0)}.right-4{right:calc(var(--spacing) * 4)}.right-8{right:calc(var(--spacing) * 8)}.left-0{left:calc(var(--spacing) * 0)}.left-4{left:calc(var(--spacing) * 4)}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-\[200\]{z-index:200}.z-\[210\]{z-index:210}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.mb-20{margin-bottom:calc(var(--spacing) * 20)}.mb-24{margin-bottom:calc(var(--spacing) * 24)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.aspect-\[4\/5\]{aspect-ratio:4/5}.aspect-\[16\/9\]{aspect-ratio:16/9}.h-12{height:calc(var(--spacing) * 12)}.h-\[2px\]{height:2px}.h-full{height:100%}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-12{width:calc(var(--spacing) * 12)}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[11ch\]{max-width:11ch}.max-w-\[12ch\]{max-width:12ch}.max-w-\[15ch\]{max-width:15ch}.max-w-\[30ch\]{max-width:30ch}.max-w-\[32ch\]{max-width:32ch}.max-w-\[40ch\]{max-width:40ch}.max-w-\[50ch\]{max-width:50ch}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.origin-left{transform-origin:0}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-12{gap:calc(var(--spacing) * 12)}.gap-16{gap:calc(var(--spacing) * 16)}.gap-20{gap:calc(var(--spacing) * 20)}.gap-px{gap:1px}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.rounded-full{border-radius:3.40282e38px}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-studio-border,.border-studio-border\/10{border-color:var(--color-studio-border)}@supports (color:color-mix(in lab,red,red)){.border-studio-border\/10{border-color:color-mix(in oklab,var(--color-studio-border) 10%,transparent)}}.border-studio-ink,.border-studio-ink\/10{border-color:var(--color-studio-ink)}@supports (color:color-mix(in lab,red,red)){.border-studio-ink\/10{border-color:color-mix(in oklab,var(--color-studio-ink) 10%,transparent)}}.border-studio-ink\/20{border-color:var(--color-studio-ink)}@supports (color:color-mix(in lab,red,red)){.border-studio-ink\/20{border-color:color-mix(in oklab,var(--color-studio-ink) 20%,transparent)}}.border-transparent{border-color:#0000}.bg-studio-bg{background-color:var(--color-studio-bg)}.bg-studio-ink,.bg-studio-ink\/5{background-color:var(--color-studio-ink)}@supports (color:color-mix(in lab,red,red)){.bg-studio-ink\/5{background-color:color-mix(in oklab,var(--color-studio-ink) 5%,transparent)}}.bg-studio-ink\/10{background-color:var(--color-studio-ink)}@supports (color:color-mix(in lab,red,red)){.bg-studio-ink\/10{background-color:color-mix(in oklab,var(--color-studio-ink) 10%,transparent)}}.bg-studio-ink\/95{background-color:var(--color-studio-ink)}@supports (color:color-mix(in lab,red,red)){.bg-studio-ink\/95{background-color:color-mix(in oklab,var(--color-studio-ink) 95%,transparent)}}.bg-transparent{background-color:#0000}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing) * 4)}.p-12{padding:calc(var(--spacing) * 12)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-12{padding-inline:calc(var(--spacing) * 12)}.px-16{padding-inline:calc(var(--spacing) * 16)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-20{padding-block:calc(var(--spacing) * 20)}.py-24{padding-block:calc(var(--spacing) * 24)}.py-32{padding-block:calc(var(--spacing) * 32)}.py-40{padding-block:calc(var(--spacing) * 40)}.py-48{padding-block:calc(var(--spacing) * 48)}.pt-12{padding-top:calc(var(--spacing) * 12)}.pt-32{padding-top:calc(var(--spacing) * 32)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pb-32{padding-bottom:calc(var(--spacing) * 32)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-\[0\.8\]{--tw-leading:.8;line-height:.8}.leading-\[0\.9\]{--tw-leading:.9;line-height:.9}.leading-\[0\.85\]{--tw-leading:.85;line-height:.85}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-studio-bg{color:var(--color-studio-bg)}.text-studio-ink{color:var(--color-studio-ink)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-8{text-underline-offset:8px}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.opacity-100{opacity:1}.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,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.duration-\[1500ms\]{--tw-duration:1.5s;transition-duration:1.5s}.\[will-change\:transform\]{will-change:transform}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:-translate-y-1:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:border-studio-ink:is(:where(.group):hover *){border-color:var(--color-studio-ink)}.group-hover\:bg-studio-ink:is(:where(.group):hover *){background-color:var(--color-studio-ink)}.group-hover\:pl-4:is(:where(.group):hover *){padding-left:calc(var(--spacing) * 4)}.group-hover\:text-studio-bg:is(:where(.group):hover *){color:var(--color-studio-bg)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:brightness-110:is(:where(.group):hover *){--tw-brightness:brightness(110%);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,)}.group-hover\:grayscale-0:is(:where(.group):hover *){--tw-grayscale:grayscale(0%);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,)}}.selection\:bg-studio-ink ::selection{background-color:var(--color-studio-ink)}.selection\:bg-studio-ink::selection{background-color:var(--color-studio-ink)}.selection\:text-studio-bg ::selection{color:var(--color-studio-bg)}.selection\:text-studio-bg::selection{color:var(--color-studio-bg)}.selection\:text-white ::selection{color:var(--color-white)}.selection\:text-white::selection{color:var(--color-white)}@media(hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-studio-ink:hover,.hover\:border-studio-ink\/100:hover{border-color:var(--color-studio-ink)}.hover\:bg-studio-ink:hover{background-color:var(--color-studio-ink)}.hover\:tracking-\[0\.2em\]:hover{--tw-tracking:.2em;letter-spacing:.2em}.hover\:text-studio-bg:hover{color:var(--color-studio-bg)}.hover\:opacity-60:hover{opacity:.6}.hover\:opacity-100:hover{opacity:1}.hover\:grayscale-0:hover{--tw-grayscale:grayscale(0%);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,)}}@media(min-width:40rem){.sm\:flex{display:flex}.sm\:gap-20{gap:calc(var(--spacing) * 20)}}@media(min-width:48rem){.md\:right-8{right:calc(var(--spacing) * 8)}.md\:left-8{left:calc(var(--spacing) * 8)}.md\:mt-0{margin-top:calc(var(--spacing) * 0)}.md\:flex{display:flex}.md\:hidden{display:none}.md\:aspect-\[16\/10\]{aspect-ratio:16/10}.md\:w-64{width:calc(var(--spacing) * 64)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}.md\:items-start{align-items:flex-start}.md\:gap-20{gap:calc(var(--spacing) * 20)}.md\:p-12{padding:calc(var(--spacing) * 12)}.md\:px-8{padding-inline:calc(var(--spacing) * 8)}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media(min-width:64rem){.lg\:mb-20{margin-bottom:calc(var(--spacing) * 20)}.lg\:aspect-\[4\/5\]{aspect-ratio:4/5}.lg\:w-1\/2{width:50%}.lg\:w-1\/3{width:33.3333%}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:gap-24{gap:calc(var(--spacing) * 24)}.lg\:gap-32{gap:calc(var(--spacing) * 32)}.lg\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}.text-xs-caps{--tw-font-weight:var(--font-weight-medium);font-size:11px;font-weight:var(--font-weight-medium);--tw-tracking:.08em;letter-spacing:.08em;text-transform:uppercase}.img-grayscale-hover{--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,);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.8s;--tw-ease:var(--ease-architectural);transition-duration:.8s;transition-timing-function:var(--ease-architectural)}@media(hover:hover){.img-grayscale-hover:is(:where(.group):hover *){--tw-grayscale:grayscale(0%);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,)}}.perspective-1000{perspective:1000px}}html{scroll-behavior:auto}body{overflow-x:hidden}section{scroll-margin-top:140px}html{scrollbar-gutter:stable}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:rgba(var(--ink-color),.1);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:rgba(var(--ink-color),.2)}.custom-cursor{pointer-events:none;z-index:1000000;will-change:transform;mix-blend-mode:difference;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0;transform:translate(-100px,-100px)}.pixel-grid{background:#fff;width:12px;height:12px;transition:transform .28s cubic-bezier(.16,1,.3,1);display:block;position:relative}.pixel{display:none!important}.custom-cursor.is-hovering .pixel-grid{transform:scale(2.35)}.custom-cursor.is-clicking .pixel-grid{transform:scale(.82)}@media(max-width:767px){html,body,a,button,img,picture,figure,[style*="cursor: zoom-in"],[style*="cursor: pointer"]{cursor:auto!important}.custom-cursor{display:none!important}}.services-list{border-top:1px solid #ffffff24;flex-direction:column;display:flex}@media(min-width:1024px){.services-list{border-bottom:1px solid #ffffff24;flex-direction:row;gap:1px;min-height:clamp(420px,52vw,680px)}.service-item{will-change:flex-grow;border-right:1px solid #ffffff1f;flex:1 1 0;min-width:0;padding:clamp(28px,3vw,56px);transition:flex-grow 1.1s cubic-bezier(.16,1,.3,1),opacity .7s,background-color .7s;position:relative;overflow:hidden}.services-list:hover .service-item{opacity:.45;flex-grow:.72}.services-list:hover .service-item:hover{opacity:1;flex-grow:2.4}.service-content{z-index:2;max-width:420px;position:relative}.service-preview{opacity:0;clip-path:inset(0 0 0 100%);pointer-events:none;width:min(48vw,620px);height:clamp(220px,28vw,420px);transition:opacity .8s,transform 1.1s cubic-bezier(.16,1,.3,1),clip-path 1.1s cubic-bezier(.16,1,.3,1);display:block;position:absolute;bottom:clamp(24px,3vw,56px);right:clamp(24px,3vw,56px);transform:translate(48px)scale(.96)}.service-item:hover .service-preview{opacity:1;clip-path:inset(0);transform:translate(0)scale(1)}.service-preview img{object-fit:cover;filter:grayscale();width:100%;height:100%;transition:filter .8s,transform 1.2s cubic-bezier(.16,1,.3,1);transform:scale(1.03)}.service-item:hover .service-preview img{filter:grayscale(0%);transform:scale(1.01)}}@media(max-width:1024px){.service-item{border-bottom:1px solid #ffffff1f;padding:32px 0}.service-preview{display:none}}.render-marquee-section{-webkit-user-select:none;user-select:none;width:100%;overflow:hidden}.carousel-viewport{width:100%;padding:12px 0 40px;overflow:hidden}.render-track{will-change:transform;align-items:flex-end;gap:clamp(18px,1.8vw,32px);width:max-content;display:flex;transform:translate(0)}.render-item{background:rgba(var(--ink-color),.035);border-radius:2px;flex:none;height:clamp(260px,28vw,520px);position:relative;overflow:hidden}.render-item--wide{width:clamp(460px,38vw,740px);height:clamp(260px,29vw,500px)}.render-item--panorama{width:clamp(540px,46vw,860px);height:clamp(220px,24vw,430px)}.render-item--square{width:clamp(310px,28vw,520px);height:clamp(310px,28vw,520px)}.render-item--portrait{width:clamp(250px,22vw,410px);height:clamp(360px,34vw,640px)}.render-item--tall{width:clamp(210px,18vw,340px);height:clamp(400px,39vw,700px)}.render-item--detail{width:clamp(340px,30vw,560px);height:clamp(240px,22vw,390px)}.render-item img{object-fit:cover;pointer-events:none;width:100%;height:100%;transition:opacity .4s;display:block;transform:scale(1);filter:none!important}.render-track:hover .render-item{opacity:.75}.render-track .render-item:hover{opacity:1}@media(max-width:767px){.render-track{gap:16px}.render-item--wide{width:76vw;height:54vw}.render-item--panorama{width:84vw;height:48vw}.render-item--square{width:62vw;height:62vw}.render-item--portrait,.render-item--tall{width:52vw;height:78vw}.render-item--detail{width:68vw;height:48vw}}.render-scrollbar-container{background:rgba(var(--ink-color),.1);width:min(100% - 80px,1400px);height:1px;margin:0 auto;position:relative;overflow:hidden}.render-scrollbar-thumb{background:var(--ink-color);will-change:transform;width:25%;height:100%;position:absolute;top:0;left:0}[data-theme=dark] .render-scrollbar-container{background:#ffffff1a}[data-theme=dark] .render-scrollbar-thumb{background:#fff}.reveal,.reveal-image{opacity:0;will-change:opacity,transform;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);transform:translateY(28px)}.reveal-image{clip-path:inset(8% 0 0);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1),clip-path 1s cubic-bezier(.16,1,.3,1);transform:translateY(36px)scale(.985)}.reveal.is-visible,.reveal-image.is-visible{opacity:1;clip-path:inset(0);transform:translateY(0)scale(1)}.reveal,.reveal-image{transition-delay:var(--delay,0s)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal-image{opacity:1;clip-path:none;transition:none;transform:none}.custom-cursor{transition:none}}@media(min-width:1024px){.project-row{align-items:stretch;gap:clamp(12px,1.2vw,24px);width:100%;display:flex}.project-card{will-change:flex-grow,flex-basis;flex:1 1 0;min-width:0;transition:flex-grow 1s cubic-bezier(.16,1,.3,1),flex-basis 1s cubic-bezier(.16,1,.3,1),opacity .7s;overflow:hidden}.project-row:hover .project-card{flex-grow:.85}.project-row:hover .project-card:hover{flex-grow:2.1}}.project-image-wrap{width:100%;height:clamp(360px,46vw,720px);margin-bottom:calc(var(--spacing) * 6);position:relative;overflow:hidden}.project-image-wrap img{object-fit:cover;filter:grayscale();will-change:transform,filter;width:100%;height:100%;transition:filter 1.2s cubic-bezier(.16,1,.3,1),transform 2.2s cubic-bezier(.16,1,.3,1);transform:scale(1.01)}.smooth-image-hover{will-change:transform,filter,opacity;transition:transform 2.2s cubic-bezier(.16,1,.3,1),filter 1.2s cubic-bezier(.16,1,.3,1),opacity 1.2s cubic-bezier(.16,1,.3,1)}.project-card:hover img{filter:grayscale(0%);transform:scale(1.08)}.project-caption{opacity:0;pointer-events:none;transition:opacity .4s,transform .4s;transform:translateY(12px)}@media(hover:none),(max-width:768px){.project-caption{opacity:1;pointer-events:auto;transform:translateY(0)}}.project-card:hover .project-caption{opacity:1;transform:translateY(0)}.site-header{top:calc(var(--spacing) * 4);right:calc(var(--spacing) * 4);left:calc(var(--spacing) * 4);z-index:50;position:fixed}@media(min-width:48rem){.site-header{top:calc(var(--spacing) * 8);right:calc(var(--spacing) * 8);left:calc(var(--spacing) * 8)}}.site-header{background:rgba(var(--header-bg-rgb),.65);-webkit-backdrop-filter:blur(20px);padding-inline:calc(var(--spacing) * 8);padding-block:calc(var(--spacing) * 4);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.5s;border:1px solid #0000000f;border-radius:9999px;transition-duration:.5s}[data-theme=dark] .site-header{background:rgba(var(--header-bg-rgb),.55);border-color:#ffffff14}.custom-scrollbar{z-index:1000;-webkit-user-select:none;user-select:none;opacity:.4;flex-direction:column;justify-content:center;width:5px;height:50vh;transition:opacity .5s,width .3s;display:flex;position:fixed;top:50%;right:12px;transform:translateY(-50%)}.custom-scrollbar:hover{opacity:1;width:8px}.custom-scrollbar-track{cursor:pointer;background:#7f7f7f26;border-radius:999px;width:100%;height:100%;position:relative}.custom-scrollbar-thumb{background:var(--ink-color);cursor:pointer;will-change:transform;border-radius:999px;width:100%;min-height:24px;position:absolute;top:0;left:0}@media(max-width:768px){.custom-scrollbar{opacity:.15;pointer-events:none;width:3px;height:30vh;right:4px}}.project-covers{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;width:min(100% - 48px,1680px);margin:0 auto;display:grid}.project-cover{color:inherit;text-decoration:none;display:block;position:relative;overflow:hidden}.cover-content-container,.cover-image-wrap,.cover-image,.cover{width:100%;overflow:hidden}.cover{aspect-ratio:3/4}.cover__img{object-fit:cover;filter:grayscale();will-change:transform,filter;width:100%;height:100%;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .6s;display:block;transform:scale(1)translateZ(0)}.project-cover:hover .cover__img{filter:grayscale(0%);transform:scale(1.06)translateZ(0)}.details-wrap{margin-top:10px}.details .title{letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700;line-height:1.2}@media(max-width:1024px){.project-covers{grid-template-columns:repeat(2,minmax(0,1fr));width:min(100% - 32px,900px)}}@media(max-width:640px){.project-covers{grid-template-columns:1fr;gap:14px;width:calc(100% - 24px)}}.works-page-section{background:0 0!important}.works-project-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.35vw,22px);width:min(100%,1680px);margin:0 auto;display:grid}.works-project-card{color:inherit;min-width:0;text-decoration:none;display:block}.works-project-image-wrap{aspect-ratio:3/4;background:#7f7f7f14;width:100%;overflow:hidden}.works-project-image{object-fit:cover;filter:grayscale();will-change:transform,filter;width:100%;height:100%;transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .7s;display:block;transform:scale(1.01)translateZ(0)}.works-project-card:hover .works-project-image{filter:grayscale(0%);transform:scale(1.065)translateZ(0)}.works-project-caption{letter-spacing:.06em;text-transform:uppercase;opacity:.72;color:inherit;justify-content:space-between;align-items:center;gap:12px;padding-top:10px;font-size:clamp(10px,.72vw,12px);line-height:1.25;transition:opacity .35s,transform .35s;display:flex}.works-project-card:hover .works-project-caption{opacity:1;transform:translateY(-1px)}.works-project-caption span{overflow-wrap:anywhere;min-width:0}@media(max-width:1024px){.works-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,980px)}}@media(max-width:640px){.works-project-grid{grid-template-columns:1fr;gap:18px}.works-project-caption{padding-top:9px;font-size:11px}}.selected-works-row{align-items:stretch;gap:clamp(12px,1.25vw,22px);width:100%;display:flex}.selected-work-card{cursor:pointer;will-change:flex-grow,opacity;flex:1 1 0;min-width:0;transition:flex-grow .9s cubic-bezier(.16,1,.3,1),opacity .7s cubic-bezier(.16,1,.3,1)}.selected-works-row:hover .selected-work-card{opacity:.74;flex-grow:.82}.selected-works-row .selected-work-card:hover{opacity:1;flex-grow:2.2}.selected-work-image-wrap{background:rgba(var(--ink-color),.045);width:100%;height:clamp(360px,48vw,690px);overflow:hidden}.selected-work-image{object-fit:cover;filter:grayscale();will-change:transform,filter;width:100%;height:100%;transition:transform 1.5s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1);display:block;transform:scale(1.01)translateZ(0)}.selected-work-card:hover .selected-work-image{filter:grayscale(0%);transform:scale(1.085)translateZ(0)}.selected-work-meta{letter-spacing:.14em;text-transform:uppercase;opacity:.54;justify-content:space-between;gap:16px;padding-top:14px;font-size:10px;line-height:1.1;display:flex}@media(max-width:1023px){.selected-works-row{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.selected-works-row:hover .selected-work-card,.selected-works-row .selected-work-card:hover{flex-grow:unset;opacity:1}.selected-work-image-wrap{height:clamp(300px,64vw,520px)}}@media(max-width:640px){.selected-works-row{grid-template-columns:1fr}.selected-work-image-wrap{height:118vw;max-height:540px}.selected-work-meta{flex-direction:column;gap:6px}}.render-track:hover .render-item,.render-track .render-item:hover{opacity:1!important}.render-scrollbar-container,.render-scrollbar-thumb{display:none!important}.home-services-heading{justify-content:space-between;align-items:flex-end;gap:clamp(32px,6vw,96px);margin-bottom:clamp(48px,8vw,112px);display:flex}.home-services-copy{max-width:820px}.home-services-copy h2{margin-bottom:clamp(14px,2vw,26px)}.home-services-copy h3{letter-spacing:-.015em;text-transform:uppercase;max-width:12ch;font-size:clamp(48px,8vw,112px);font-weight:500;line-height:.84}.home-services-link{flex:none;margin-bottom:.4em}.home-services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.3vw,24px);display:grid}.home-service-card{min-width:0}.home-service-image-wrap{aspect-ratio:4/5;cursor:pointer;background:rgba(var(--ink-color),.045);width:100%;overflow:hidden}.home-service-image{object-fit:cover;filter:grayscale();will-change:transform,filter;width:100%;height:100%;transition:transform 1.4s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1);display:block;transform:scale(1.01)translateZ(0)}.home-service-card:hover .home-service-image{filter:grayscale(0%);transform:scale(1.075)translateZ(0)}.home-service-caption{letter-spacing:.12em;text-transform:uppercase;opacity:.68;justify-content:space-between;align-items:flex-start;gap:14px;padding-top:14px;font-size:11px;line-height:1.15;display:flex}.home-service-caption h4{text-align:right;max-width:20ch;font-size:inherit;line-height:inherit;font-weight:700}@media(max-width:1024px){.home-services-heading{flex-direction:column;align-items:flex-start}.home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.home-services-grid{grid-template-columns:1fr}.home-services-copy h3{max-width:13ch;font-size:clamp(42px,13vw,68px)}}.team-manifesto{letter-spacing:-.065em;text-transform:uppercase;flex-wrap:wrap;gap:clamp(10px,2vw,24px);font-size:clamp(48px,8vw,112px);font-weight:500;line-height:.9;display:flex}.team-portrait-wrap{aspect-ratio:3/4;background:rgba(var(--ink-color),.045);margin-bottom:2rem;overflow:hidden}.team-portrait-image{object-fit:cover;filter:grayscale();will-change:transform,filter;width:100%;height:100%;transition:transform 1.4s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1);display:block;transform:scale(1.01)translateZ(0)}.group:hover .team-portrait-image{filter:grayscale(0%);transform:scale(1.07)translateZ(0)}.about-what-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.3vw,24px);display:grid}.about-what-image-wrap{aspect-ratio:4/5;cursor:pointer;background:rgba(var(--ink-color),.045);width:100%;overflow:hidden}.about-what-image{object-fit:cover;filter:grayscale();will-change:transform,filter;width:100%;height:100%;transition:transform 1.4s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1);display:block;transform:scale(1.01)translateZ(0)}.about-what-card:hover .about-what-image{filter:grayscale(0%);transform:scale(1.075)translateZ(0)}.about-what-caption{letter-spacing:.12em;text-transform:uppercase;opacity:.68;justify-content:space-between;align-items:flex-start;gap:14px;padding-top:14px;font-size:11px;line-height:1.15;display:flex}.about-what-caption h3{text-align:right;max-width:20ch;font-size:inherit;line-height:inherit;font-weight:700}@media(max-width:1024px){.about-what-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.about-what-grid{grid-template-columns:1fr}}.why-work-grid{border-top:1px solid var(--studio-border,#7f7f7f2e);border-left:1px solid var(--studio-border,#7f7f7f2e);background:0 0!important}.why-work-card{border-right:1px solid var(--studio-border,#7f7f7f2e);border-bottom:1px solid var(--studio-border,#7f7f7f2e);background:0 0!important}.home-services-copy h3,.team-manifesto{font-size:clamp(48px,8vw,112px)}@media(max-width:640px){.home-services-copy h3,.team-manifesto{font-size:clamp(42px,13vw,68px);font-size:clamp(42px,13vw,68px)!important}}.team-portrait-image{transform:scale(1.01)translateZ(0);filter:grayscale()!important;transition:transform 1.4s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1)!important}.group:hover .team-portrait-image,.team-portrait-wrap:hover .team-portrait-image{transform:scale(1.07)translateZ(0);filter:grayscale(0%)!important}.why-work-grid,.why-work-card{background:0 0!important}.home-services-copy h3,.team-manifesto{letter-spacing:-.05em!important;text-transform:uppercase!important;font-size:1.875rem!important;font-weight:500!important;line-height:.85!important}@media(min-width:768px){.home-services-copy h3,.team-manifesto{font-size:3rem!important}}@media(min-width:1024px){.home-services-copy h3,.team-manifesto{font-size:3.75rem!important}}.team-manifesto{flex-wrap:wrap!important;gap:.28em!important;max-width:16ch!important;display:flex!important}.team-portrait-wrap{overflow:hidden!important}.team-portrait-wrap .team-portrait-image,.team-portrait-image{-webkit-filter:grayscale()!important;will-change:transform,filter!important;transition:transform 1.4s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1)!important;transform:scale(1.01)translateZ(0)!important}.group:hover .team-portrait-image,.team-portrait-wrap:hover .team-portrait-image,.team-portrait-image:hover{-webkit-filter:grayscale(0%)!important;transform:scale(1.07)translateZ(0)!important}.home-about-image-wrap{cursor:pointer;background:rgba(var(--ink-color),.045)}.home-about-image{object-fit:cover;will-change:transform;width:100%;height:100%;transition:transform 1.6s cubic-bezier(.16,1,.3,1);display:block;transform:scale(1.01)translateZ(0)}.home-about-image-wrap:hover .home-about-image{transform:scale(1.075)translateZ(0)}.case-page{background:var(--studio-bg);color:var(--studio-ink)}.case-title-section{border-bottom:1px solid var(--studio-border);justify-content:center;align-items:center;min-height:clamp(320px,46vh,520px);display:flex}.case-title-inner{text-align:center;width:100%;max-width:1500px;position:relative}.case-title-inner h1{letter-spacing:-.015em;text-transform:uppercase;max-width:min(92vw,1100px);margin:0 auto;font-size:clamp(44px,7vw,124px);font-weight:500;line-height:.86}.case-back-link{letter-spacing:.12em;text-transform:uppercase;opacity:.42;align-items:center;gap:10px;font-size:11px;line-height:1;transition:opacity .3s;display:inline-flex;position:absolute;top:50%;left:0;transform:translateY(-50%)}.case-back-link:hover{opacity:1}.case-gallery-inner{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(10px,1vw,18px);width:100%;max-width:1920px;margin:0 auto;padding-top:clamp(10px,1vw,18px);display:grid}.case-image-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;text-align:inherit;background:rgba(var(--ink-color),.045);cursor:pointer;border:0;grid-column:span 6;margin:0;padding:0;display:block;overflow:hidden}.case-image-card:nth-child(3n+2){grid-column:span 5}.case-image-card:nth-child(3n){grid-column:span 7}.case-image-card-wide,.case-image-card:first-child{grid-column:1/-1}.case-image-wrap{width:100%;display:block;overflow:hidden}.case-image{object-fit:contain;will-change:transform;width:100%;height:auto;transition:transform 1.6s cubic-bezier(.16,1,.3,1);display:block;transform:scale(1.001)translateZ(0)}.case-image-card:hover .case-image{transform:scale(1.035)translateZ(0)}.works-project-card{color:inherit;text-decoration:none}@media(max-width:900px){.case-title-section{min-height:300px;padding-top:72px;padding-bottom:72px}.case-title-inner{gap:40px;display:grid}.case-title-inner h1{font-size:clamp(42px,15vw,82px)}.case-back-link{justify-content:center;position:static;transform:none}.case-gallery{padding-left:10px;padding-right:10px}.case-gallery-inner{grid-template-columns:1fr;gap:10px}.case-image-card,.case-image-card:nth-child(3n+2),.case-image-card:nth-child(3n),.case-image-card-wide,.case-image-card:first-child{grid-column:1/-1}}.case-image-card{content-visibility:auto;contain-intrinsic-size:900px 600px;position:relative}.case-image-wrap{background:linear-gradient(110deg,rgba(var(--ink-color),.035),rgba(var(--ink-color),.075) 45%,rgba(var(--ink-color),.035));position:relative}.case-image-wrap:before{content:"";z-index:0;opacity:.5;background:inherit;pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.case-image{z-index:1;backface-visibility:hidden;position:relative}.lightbox-image-shell{cursor:default;justify-content:center;align-items:center;width:min(100%,96vw);height:min(100%,92vh);display:flex;position:relative}.lightbox-image{object-fit:contain;-webkit-user-select:none;user-select:none;max-width:100%;max-height:100%;transition:opacity .28s;box-shadow:0 30px 80px #00000073}.lightbox-image-preview{filter:blur(8px);opacity:.42;box-shadow:none;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.lightbox-image-full{z-index:2;position:relative}.lightbox-loader{z-index:3;background:#ffffff29;width:34px;height:1px;position:absolute;bottom:clamp(24px,6vh,64px);left:50%;overflow:hidden;transform:translate(-50%)}.lightbox-loader:after{content:"";background:#ffffffb3;width:45%;height:100%;animation:.9s cubic-bezier(.16,1,.3,1) infinite lightbox-loader-slide;display:block}@keyframes lightbox-loader-slide{0%{transform:translate(-110%)}to{transform:translate(240%)}}.case-floating-close{z-index:900;width:clamp(54px,4.2vw,72px);height:clamp(54px,4.2vw,72px);color:var(--studio-ink);background:rgba(var(--header-bg-rgb),.56);-webkit-backdrop-filter:blur(22px)saturate(130%);opacity:0;will-change:transform;border:1px solid #7f7f7f38;border-radius:999px;justify-content:center;align-items:center;text-decoration:none;transition:transform .65s cubic-bezier(.16,1,.3,1),background .35s,border-color .35s,box-shadow .35s,color .35s;animation:.9s cubic-bezier(.16,1,.3,1) .45s forwards caseCloseIn;display:inline-flex;position:fixed;bottom:clamp(18px,2.2vw,34px);right:clamp(18px,2.2vw,34px);transform:translateY(18px)scale(.92)rotate(-18deg);box-shadow:0 18px 55px #0000001f}.case-floating-close svg{z-index:2;transition:transform .65s cubic-bezier(.16,1,.3,1);position:relative}.case-floating-close-ring{border-radius:inherit;opacity:.18;border:1px solid;transition:transform .65s cubic-bezier(.16,1,.3,1),opacity .35s;position:absolute;top:8px;right:8px;bottom:8px;left:8px;transform:scale(.82)}.case-floating-close:before,.case-floating-close:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px}.case-floating-close:before{opacity:0;background:radial-gradient(circle,#7f7f7f2e,#0000 64%);transition:opacity .45s,transform .65s cubic-bezier(.16,1,.3,1);transform:scale(.6)}.case-floating-close:after{opacity:0;border:1px solid;transition:opacity .45s,transform .75s cubic-bezier(.16,1,.3,1);transform:scale(.86)}.case-floating-close:hover{background:var(--studio-ink);color:var(--studio-bg);border-color:#0000;transform:translateY(-4px)scale(1.04)rotate(0);box-shadow:0 24px 70px #00000038}.case-floating-close:hover svg{transform:rotate(90deg)scale(1.06)}.case-floating-close:hover .case-floating-close-ring{opacity:.28;transform:scale(1.16)}.case-floating-close:hover:before{opacity:1;transform:scale(1.35)}.case-floating-close:hover:after{opacity:.18;transform:scale(1.45)}.case-floating-close:active{transform:translateY(-2px)scale(.96)}@keyframes caseCloseIn{to{opacity:1;transform:translate(0)scale(1)rotate(0)}}@media(max-width:767px){.case-floating-close{width:52px;height:52px;bottom:14px;right:14px}}@media(prefers-reduced-motion:reduce){.case-floating-close{opacity:1;animation:none;transform:none}.case-floating-close,.case-floating-close svg,.case-floating-close-ring,.case-floating-close:before,.case-floating-close:after{transition-duration:1ms!important}}html[data-theme=light]{--logo-filter:none}html[data-theme=dark]{--logo-filter:invert(1)}.site-logo-link{opacity:.92;align-items:center;line-height:1;transition:opacity .3s,transform .5s cubic-bezier(.16,1,.3,1);display:inline-flex}.site-logo-link:hover{opacity:1;transform:translateY(-1px)}.site-logo-img{object-fit:contain;width:auto;max-width:min(220px,42vw);height:clamp(18px,1.85vw,28px);filter:var(--logo-filter);transition:filter .35s,opacity .35s,transform .5s cubic-bezier(.16,1,.3,1);display:block}.site-logo-img-mobile{flex-shrink:1;max-width:154px;height:24px}@media(max-width:767px){.mobile-menu-layer{pointer-events:auto;isolation:isolate;overflow:hidden;z-index:999999!important;border:0!important;border-radius:0!important;width:100vw!important;height:100dvh!important;margin:0!important;padding:0!important;position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important}.mobile-menu-blur{z-index:0;pointer-events:none;-webkit-backdrop-filter:blur(90px)saturate(1.08);backdrop-filter:blur(90px)saturate(1.08);will-change:opacity,backdrop-filter;background:#ffffff57;position:fixed!important;top:-48px!important;right:-48px!important;bottom:-48px!important;left:-48px!important}html[data-theme=dark] .mobile-menu-blur,[data-theme=dark] .mobile-menu-blur{background:#0b0b0b61}.mobile-menu-panel{z-index:1;color:var(--text-color);will-change:transform;transform-origin:top;background:#fffffff8;overflow:hidden;box-shadow:0 36px 90px #0000001f;border:0!important;border-radius:0!important;width:100vw!important;height:100dvh!important;margin:0!important;padding:0!important;position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important}html[data-theme=dark] .mobile-menu-panel,[data-theme=dark] .mobile-menu-panel{background:#0b0b0bf8}.mobile-menu-panel:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(var(--header-bg-rgb),.18),transparent 28%),var(--body-bg);opacity:.98;position:absolute;top:0;right:0;bottom:0;left:0}.mobile-menu-topbar{z-index:4;width:100vw;min-height:104px;padding:calc(max(20px,env(safe-area-inset-top)) + 8px) 24px 18px 32px;justify-content:space-between;align-items:center;gap:12px;display:flex;position:absolute;top:0;left:0;right:0;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.mobile-menu-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.site-logo-img-mobile{max-width:168px;height:28px;filter:var(--logo-filter);flex-shrink:1}.mobile-menu-theme{border:1px solid var(--line-color);height:44px;color:var(--muted-color);background:rgba(var(--header-bg-rgb),.12);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:10px;line-height:1;transition:opacity .26s,transform .26s cubic-bezier(.16,1,.3,1),background-color .26s,border-color .26s,color .26s;display:inline-flex}.mobile-menu-theme:active,.mobile-menu-close:active{transform:scale(.96)}.mobile-menu-close{width:44px;height:44px;color:var(--text-color);background:0 0;border-radius:999px;justify-content:center;align-items:center;transition:transform .26s cubic-bezier(.16,1,.3,1),background-color .26s,color .26s;display:inline-flex}.mobile-menu-nav{z-index:3;text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;gap:clamp(14px,3.1vh,24px);width:min(100vw - 64px,340px);display:flex;position:absolute;top:50%;left:32px;transform:translateY(-50%)}.mobile-menu-nav a{color:var(--text-color);letter-spacing:-.006em;font-size:clamp(34px,10vw,48px);font-weight:460;line-height:.92;text-decoration:none;transition:opacity .24s,transform .3s cubic-bezier(.16,1,.3,1),color .26s;display:block}.mobile-menu-nav a:active{opacity:.55;transform:translate(4px)}.mobile-menu-footer{left:32px;right:32px;bottom:max(26px,env(safe-area-inset-bottom));z-index:3;color:var(--muted-color);text-transform:uppercase;letter-spacing:.08em;opacity:.55;justify-content:space-between;gap:20px;font-size:11px;line-height:1;transition:color .26s;display:flex;position:absolute}@media(max-width:374px){.mobile-menu-topbar{padding-left:24px;padding-right:18px}.site-logo-img-mobile{max-width:136px;height:24px}.mobile-menu-theme{gap:6px;height:40px;padding:0 12px;font-size:9px}.mobile-menu-close{width:40px;height:40px}.mobile-menu-nav{width:calc(100vw - 48px);left:24px}.mobile-menu-nav a{font-size:clamp(32px,11vw,42px)}.mobile-menu-footer{left:24px;right:24px}}html.mobile-menu-is-open,body.mobile-menu-is-open{overscroll-behavior:none!important;touch-action:none!important;overflow:hidden!important}.vf-mobile-menu{color:var(--text-color);background:var(--body-bg);isolation:isolate;transform-origin:top;will-change:clip-path;background-clip:border-box;z-index:2147483000!important;pointer-events:auto!important;overscroll-behavior:none!important;border:0!important;border-radius:0!important;width:100%!important;min-width:0!important;max-width:100%!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;margin:0!important;padding:0!important;position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;overflow:hidden!important}.vf-mobile-menu:before{content:"";z-index:0;pointer-events:none;background:#ffffffe0;position:absolute;top:-80px;right:-80px;bottom:-80px;left:-80px}html[data-theme=dark] .vf-mobile-menu:before,[data-theme=dark] .vf-mobile-menu:before{background:#0b0b0be6}.vf-mobile-menu__blur{z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(var(--header-bg-rgb),.28),transparent 42%),#ffffffd1;-webkit-backdrop-filter:blur(120px)saturate(1.12);backdrop-filter:blur(120px)saturate(1.12);position:absolute;top:-80px;right:-80px;bottom:-80px;left:-80px}html[data-theme=dark] .vf-mobile-menu__blur,[data-theme=dark] .vf-mobile-menu__blur{background:linear-gradient(180deg,rgba(var(--header-bg-rgb),.44),transparent 42%),#0b0b0bdb}.vf-mobile-menu__inner{z-index:2;width:100%;max-width:100%;height:100dvh;color:var(--text-color);flex-direction:column;padding:0;display:flex;position:relative}.vf-mobile-menu__top{z-index:4;min-height:96px;padding:calc(max(18px,env(safe-area-inset-top)) + 6px) 22px 16px 22px;justify-content:flex-end;align-items:center;gap:16px;display:flex;position:absolute;top:0;left:0;right:0}.vf-mobile-menu__top a{flex-shrink:1;align-items:center;min-width:0;display:inline-flex}.vf-mobile-menu__logo{object-fit:contain;max-width:156px;height:26px;filter:var(--logo-filter)}.vf-mobile-menu__actions{flex-shrink:0;align-items:center;gap:12px;display:inline-flex}.vf-mobile-menu__theme,.vf-mobile-menu__close{height:38px;color:var(--text-color);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:11px;line-height:1;transition:opacity .24s,transform .26s cubic-bezier(.16,1,.3,1);display:inline-flex}.vf-mobile-menu__theme{width:88px;min-width:88px;max-width:88px;color:var(--muted-color);gap:7px;padding:0}.vf-mobile-menu__theme svg{flex:0 0 14px;width:14px;height:14px}.vf-mobile-menu__theme span{text-align:left;width:40px;min-width:40px;display:inline-block}.vf-mobile-menu__close{width:50px;color:var(--text-color);justify-content:flex-end;padding:0}.vf-mobile-menu__theme:active,.vf-mobile-menu__close:active{opacity:.65;transform:scale(.95)}.vf-mobile-menu__links{left:max(22px,env(safe-area-inset-left));z-index:3;text-align:left;flex-direction:column;align-items:flex-start;gap:clamp(10px,2.35vh,16px);display:flex;position:absolute;top:50%;transform:translateY(-50%)}.vf-mobile-menu__link{color:var(--text-color);letter-spacing:-.006em;text-transform:none;white-space:nowrap;align-items:baseline;font-size:clamp(30px,9.4vw,44px);font-weight:460;line-height:1.06;text-decoration:none;display:flex;overflow:visible;transform:translateZ(0)}.vf-mobile-menu__char{will-change:transform,opacity;margin-right:.012em;padding-bottom:.08em;display:inline-block}.vf-mobile-menu__char:last-child{margin-right:0}.vf-mobile-menu__link:active{opacity:.55;transform:translate(4px)}.vf-mobile-menu__footer{left:max(22px,env(safe-area-inset-left));right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:3;color:var(--muted-color);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:flex-end;gap:16px;font-size:11px;line-height:1;display:flex;position:absolute}.vf-mobile-menu__footer a{color:inherit;text-decoration:none}.vf-mobile-menu,.vf-mobile-menu *{box-sizing:border-box}.vf-mobile-menu,.vf-mobile-menu__inner,.vf-mobile-menu__top,.vf-mobile-menu__links,.vf-mobile-menu__footer{transition:color .18s,background-color .18s}.vf-mobile-menu__links{width:calc(100% - 44px);max-width:calc(100% - 44px)}@media(max-width:374px){.vf-mobile-menu__top{padding-left:18px;padding-right:18px}.vf-mobile-menu__logo{max-width:132px;height:23px}.vf-mobile-menu__actions{gap:9px}.vf-mobile-menu__theme span{display:none}.vf-mobile-menu__links,.vf-mobile-menu__footer{left:18px;right:18px}.vf-mobile-menu__link{font-size:clamp(28px,9.1vw,40px)}}}.hero{isolation:isolate;background:#050505;min-height:100svh}.hero-copy{pointer-events:none;mix-blend-mode:normal}.hero-copy--white,.hero-copy--white *,.hero-eyebrow,.hero-title-white{text-shadow:0 18px 54px #00000047;color:#fff!important}.hero-eyebrow{opacity:1!important;color:#fff!important}.hero-title-white{color:#fff!important}.hero-copy .reveal{max-width:min(760px,92vw);padding:clamp(18px,2vw,30px) 0;position:relative}.hero-animated-assets{z-index:0;pointer-events:none;contain:layout paint style;background:#050505;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;transform:translateZ(0)}.hero-animated-assets:before{content:none;display:none}.hero-animated-assets:after{content:"";z-index:4;pointer-events:none;opacity:1;background:#00000029;position:absolute;top:0;right:0;bottom:0;left:0}.hero-animated-asset{opacity:1;filter:saturate(.99)contrast(1.04)brightness(.94);backface-visibility:hidden;contain:paint;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;transform:translateZ(0)}html[data-theme=dark] .hero-animated-asset{opacity:1;filter:saturate(.97)contrast(1.05)brightness(.86)}.hero-animated-asset--previous{z-index:1}.hero-animated-asset--active{z-index:2;clip-path:inset(0 0 100%);will-change:clip-path;animation:2.35s cubic-bezier(.76,0,.18,1) forwards heroRevealTopToBottom}.hero-animated-asset img{object-fit:cover;object-position:center center;transform-origin:50%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;backface-visibility:hidden;width:100%;height:112%;display:block}.hero-animated-asset--previous img{will-change:transform;animation:18s linear infinite heroImageCoveredDrift;transform:translateY(0)scale(1.03)}.hero-animated-asset--active img{will-change:transform;animation:9.5s cubic-bezier(.16,1,.3,1) forwards heroImageContinuousZoom;transform:translateY(-1.2%)scale(1.12)}@keyframes heroRevealTopToBottom{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes heroImageContinuousZoom{0%{transform:translateY(-1.2%)scale(1.12)}100%{transform:translateY(0)scale(1.03)}}@keyframes heroImageCoveredDrift{0%{transform:translateY(0)scale(1.03)}100%{transform:translateY(.45%)scale(1.035)}}.hero-asset-control{display:none!important}@media(max-width:767px){.hero{min-height:100svh;padding-top:112px!important}.hero-animated-assets:before{content:none;display:none}.hero-animated-assets:after{opacity:1;background:#00000038}.hero-animated-asset,html[data-theme=dark] .hero-animated-asset{opacity:1}.hero-animated-asset img{object-position:center center;height:116%}.hero-copy .reveal{padding-top:0}.vf-mobile-menu__link{font-weight:400!important}}@media(prefers-reduced-motion:reduce){.hero-animated-asset--active,.hero-animated-asset--active img{animation:none!important}.hero-animated-asset--active{clip-path:inset(0)!important}.hero-animated-asset--active img,.hero-animated-asset--previous img{transform:none!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}

/* Final fix: home render carousel keeps original image proportions and aligns every item from the top. */
.render-track{align-items:flex-start!important;}
.render-item{display:flex!important;align-items:flex-start!important;justify-content:center!important;background:transparent!important;}
.render-item img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:top center!important;transform:none!important;}


/* TRUE FIX: home render carousel keeps every media in its native ratio and anchors the whole image to the top edge. */
.render-marquee-section .carousel-viewport{
  overflow:hidden!important;
}
.render-marquee-section .render-track{
  align-items:flex-start!important;
}
.render-marquee-section .render-item{
  align-self:flex-start!important;
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  background:transparent!important;
  overflow:visible!important;
}
.render-marquee-section .render-item img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:top center!important;
  transform:none!important;
}

/* FINAL FIX: home renders carousel — true top alignment + original ratios */
.render-marquee-section .carousel-viewport{
  display:block !important;
  padding-top:12px !important;
  overflow:hidden !important;
}
.render-marquee-section .render-track{
  align-items:flex-start !important;
  justify-content:flex-start !important;
}
.render-marquee-section .render-item,
.render-marquee-section .render-item--wide,
.render-marquee-section .render-item--panorama,
.render-marquee-section .render-item--square,
.render-marquee-section .render-item--portrait,
.render-marquee-section .render-item--tall,
.render-marquee-section .render-item--detail{
  height:auto !important;
  min-height:0 !important;
  align-self:flex-start !important;
  display:block !important;
  overflow:visible !important;
  background:transparent !important;
}
.render-marquee-section .render-item img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:top left !important;
  display:block !important;
}

/* BRAVE FINAL: home carousel top row alignment, original render ratios, no crop */
.render-marquee-section .carousel-viewport{
  display:block !important;
  overflow:hidden !important;
  padding-top:0 !important;
}
.render-marquee-section .render-track{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  height:auto !important;
  min-height:0 !important;
}
.render-marquee-section .render-track > .render-item,
.render-marquee-section .render-track > article.render-item,
.render-marquee-section .render-item,
.render-marquee-section .render-item--wide,
.render-marquee-section .render-item--panorama,
.render-marquee-section .render-item--square,
.render-marquee-section .render-item--portrait,
.render-marquee-section .render-item--tall,
.render-marquee-section .render-item--detail{
  flex:0 0 auto !important;
  align-self:flex-start !important;
  vertical-align:top !important;
  display:block !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  margin-top:0 !important;
  margin-bottom:auto !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  overflow:visible !important;
  background:transparent !important;
}
.render-marquee-section .render-item img,
.render-marquee-section .render-track > .render-item > img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:top center !important;
  transform:none !important;
}


/* === FINAL FIX: Our Team second row centered + carousel top/same-height original ratios === */
@media (min-width: 768px) {
  .team-grid-custom {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    column-gap: clamp(48px, 6vw, 96px) !important;
    row-gap: clamp(24px, 3vw, 44px) !important;
    align-items: start !important;
  }
  .team-grid-custom > * { grid-column: span 2 !important; }
  .team-grid-custom > *:nth-child(1) { grid-column: 1 / span 2 !important; }
  .team-grid-custom > *:nth-child(2) { grid-column: 3 / span 2 !important; }
  .team-grid-custom > *:nth-child(3) { grid-column: 5 / span 2 !important; }
  .team-grid-custom > *:nth-child(4) { grid-column: 2 / span 2 !important; }
  .team-grid-custom > *:nth-child(5) { grid-column: 4 / span 2 !important; }
}
@media (max-width: 767px) {
  .team-grid-custom {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }
}

.render-marquee-section .carousel-viewport {
  padding-top: 0 !important;
  overflow: hidden !important;
}
.render-marquee-section .render-track {
  display: flex !important;
  align-items: flex-start !important;
  gap: clamp(18px, 1.8vw, 32px) !important;
  width: max-content !important;
  will-change: transform !important;
}
.render-marquee-section .render-item,
.render-marquee-section .render-item--wide,
.render-marquee-section .render-item--panorama,
.render-marquee-section .render-item--square,
.render-marquee-section .render-item--portrait,
.render-marquee-section .render-item--tall,
.render-marquee-section .render-item--detail {
  flex: 0 0 auto !important;
  align-self: flex-start !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: auto !important;
  height: clamp(300px, 29vw, 560px) !important;
  max-height: clamp(300px, 29vw, 560px) !important;
  min-height: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}
.render-marquee-section .render-item img {
  display: block !important;
  width: auto !important;
  height: 100% !important;
  max-width: none !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: top left !important;
  transform: none !important;
}
@media (max-width: 767px) {
  .render-marquee-section .render-item,
  .render-marquee-section .render-item--wide,
  .render-marquee-section .render-item--panorama,
  .render-marquee-section .render-item--square,
  .render-marquee-section .render-item--portrait,
  .render-marquee-section .render-item--tall,
  .render-marquee-section .render-item--detail {
    height: 54vw !important;
    max-height: 360px !important;
  }
}


/* === HOTFIX: seamless render marquee + smaller top-aligned cards === */
.render-marquee-section .carousel-viewport{
  overflow:hidden !important;
  padding-top:0 !important;
}
.render-marquee-section .render-track{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:clamp(14px,1.45vw,26px) !important;
  width:max-content !important;
  min-width:max-content !important;
  will-change:transform !important;
  transform-style:preserve-3d !important;
}
.render-marquee-section .render-track > .render-item,
.render-marquee-section .render-track > article.render-item,
.render-marquee-section .render-item,
.render-marquee-section .render-item--wide,
.render-marquee-section .render-item--panorama,
.render-marquee-section .render-item--square,
.render-marquee-section .render-item--portrait,
.render-marquee-section .render-item--tall,
.render-marquee-section .render-item--detail{
  flex:0 0 auto !important;
  align-self:flex-start !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  width:auto !important;
  height:clamp(220px,22vw,390px) !important;
  max-height:clamp(220px,22vw,390px) !important;
  min-height:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding:0 !important;
  overflow:visible !important;
  background:transparent !important;
}
.render-marquee-section .render-track > .render-item > img,
.render-marquee-section .render-item img{
  display:block !important;
  width:auto !important;
  height:100% !important;
  max-width:none !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:top left !important;
  transform:none !important;
}
@media (max-width:767px){
  .render-marquee-section .render-track{
    gap:14px !important;
  }
  .render-marquee-section .render-track > .render-item,
  .render-marquee-section .render-item,
  .render-marquee-section .render-item--wide,
  .render-marquee-section .render-item--panorama,
  .render-marquee-section .render-item--square,
  .render-marquee-section .render-item--portrait,
  .render-marquee-section .render-item--tall,
  .render-marquee-section .render-item--detail{
    height:44vw !important;
    max-height:260px !important;
  }
}


/* === FINAL FINAL: team order Vasyl/Katya centered above original three === */
@media (min-width: 768px) {
  .team-grid-custom {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    column-gap: clamp(48px, 6vw, 96px) !important;
    row-gap: clamp(36px, 4vw, 64px) !important;
    align-items: start !important;
  }
  .team-grid-custom > * { grid-column: span 2 !important; }
  .team-grid-custom > *:nth-child(1) { grid-column: 2 / span 2 !important; }
  .team-grid-custom > *:nth-child(2) { grid-column: 4 / span 2 !important; }
  .team-grid-custom > *:nth-child(3) { grid-column: 1 / span 2 !important; }
  .team-grid-custom > *:nth-child(4) { grid-column: 3 / span 2 !important; }
  .team-grid-custom > *:nth-child(5) { grid-column: 5 / span 2 !important; }
}

/* === FINAL FINAL: carousel top-aligned equal visual height, no crop, smaller size === */
.render-marquee-section .carousel-viewport {
  overflow: hidden !important;
  padding-top: 0 !important;
}
.render-marquee-section .render-track {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: clamp(14px, 1.45vw, 26px) !important;
  width: max-content !important;
  min-width: max-content !important;
}
.render-marquee-section .render-track > .render-item,
.render-marquee-section .render-item,
.render-marquee-section .render-item--wide,
.render-marquee-section .render-item--panorama,
.render-marquee-section .render-item--square,
.render-marquee-section .render-item--portrait,
.render-marquee-section .render-item--tall,
.render-marquee-section .render-item--detail {
  flex: 0 0 auto !important;
  align-self: flex-start !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: auto !important;
  height: clamp(210px, 20vw, 360px) !important;
  max-height: clamp(210px, 20vw, 360px) !important;
  min-height: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}
.render-marquee-section .render-track > .render-item > img,
.render-marquee-section .render-item img {
  display: block !important;
  width: auto !important;
  height: 100% !important;
  max-width: none !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: top left !important;
  transform: none !important;
}
@media (max-width: 767px) {
  .render-marquee-section .render-track > .render-item,
  .render-marquee-section .render-item,
  .render-marquee-section .render-item--wide,
  .render-marquee-section .render-item--panorama,
  .render-marquee-section .render-item--square,
  .render-marquee-section .render-item--portrait,
  .render-marquee-section .render-item--tall,
  .render-marquee-section .render-item--detail {
    height: 42vw !important;
    max-height: 240px !important;
  }
}


/* FINAL FIX: render carousel — stable on theme switch, no Luxury Townhouse frame */
.render-marquee-section,
.render-marquee-section *,
.render-marquee-section .carousel-viewport,
.render-marquee-section .render-track,
.render-marquee-section .render-item,
.render-marquee-section .render-item img{
  transition-property: none !important;
  transition-duration: 0s !important;
}
.render-marquee-section .carousel-viewport{
  overflow: hidden !important;
  width: 100% !important;
  max-width: 100% !important;
  contain: layout paint style !important;
}
.render-marquee-section .render-track{
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: clamp(14px, 1.8vw, 28px) !important;
  will-change: transform !important;
  transform-style: flat !important;
  backface-visibility: hidden !important;
}
.render-marquee-section .render-track > .render-item,
.render-marquee-section .render-track > article.render-item,
.render-marquee-section .render-item{
  flex: 0 0 auto !important;
  align-self: flex-start !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  margin-top: 0 !important;
  margin-bottom: auto !important;
  background: transparent !important;
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}
.render-marquee-section .render-item--wide,
.render-marquee-section .render-item--panorama{ width: clamp(300px, 31vw, 520px) !important; }
.render-marquee-section .render-item--square{ width: clamp(220px, 21vw, 350px) !important; }
.render-marquee-section .render-item--portrait,
.render-marquee-section .render-item--tall{ width: clamp(180px, 17vw, 270px) !important; }
.render-marquee-section .render-item--detail{ width: clamp(190px, 18vw, 300px) !important; }
.render-marquee-section .render-item img,
.render-marquee-section .render-track > .render-item > img{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: clamp(240px, 34vw, 420px) !important;
  object-fit: contain !important;
  object-position: top center !important;
  transform: none !important;
  filter: none !important;
  opacity: 1 !important;
}
html[data-theme="dark"] .render-marquee-section .render-item img,
html[data-theme="light"] .render-marquee-section .render-item img{
  filter: none !important;
  opacity: 1 !important;
}
@media (max-width: 767px){
  .render-marquee-section .render-track{ gap: 14px !important; }
  .render-marquee-section .render-item--wide,
  .render-marquee-section .render-item--panorama{ width: 76vw !important; }
  .render-marquee-section .render-item--square{ width: 58vw !important; }
  .render-marquee-section .render-item--portrait,
  .render-marquee-section .render-item--tall,
  .render-marquee-section .render-item--detail{ width: 48vw !important; }
  .render-marquee-section .render-item img{ max-height: 54vh !important; }
}


/* BRAVE FINAL PATCH — Sora font + stable equal-height carousel without crop */
:root{
  --font-sans:'Sora', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  --default-font-family:'Sora', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
html, body, button, input, textarea, select, a, p, span, h1, h2, h3, h4, h5, h6, li, div{
  font-family:'Sora', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
.render-marquee-section,
.render-marquee-section *{
  transition-property: opacity, color, background-color, border-color !important;
}
.render-marquee-section .carousel-viewport{
  overflow:hidden !important;
  padding-top:12px !important;
  padding-bottom:34px !important;
}
.render-marquee-section .render-track{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:clamp(18px,1.7vw,30px) !important;
  width:max-content !important;
  min-width:max-content !important;
  height:clamp(230px,23vw,420px) !important;
  will-change:transform !important;
}
.render-marquee-section .render-item,
.render-marquee-section .render-item--wide,
.render-marquee-section .render-item--panorama,
.render-marquee-section .render-item--square,
.render-marquee-section .render-item--portrait,
.render-marquee-section .render-item--tall,
.render-marquee-section .render-item--detail{
  flex:0 0 auto !important;
  align-self:flex-start !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  height:clamp(230px,23vw,420px) !important;
  max-height:clamp(230px,23vw,420px) !important;
  aspect-ratio:auto !important;
  background:transparent !important;
  overflow:visible !important;
  border-radius:0 !important;
}
.render-marquee-section .render-item img{
  display:block !important;
  width:auto !important;
  max-width:none !important;
  height:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:top left !important;
  transform:none !important;
  filter:none !important;
}
@media(max-width:767px){
  .render-marquee-section .render-track{
    height:62vw !important;
    gap:16px !important;
  }
  .render-marquee-section .render-item,
  .render-marquee-section .render-item--wide,
  .render-marquee-section .render-item--panorama,
  .render-marquee-section .render-item--square,
  .render-marquee-section .render-item--portrait,
  .render-marquee-section .render-item--tall,
  .render-marquee-section .render-item--detail{
    height:62vw !important;
    max-height:62vw !important;
  }
}


/* FINAL USER PATCH — Brave Render text, no theme jump in carousel, equal-height no-crop renders */
.render-marquee-section,
.render-marquee-section *,
.render-marquee-section .carousel-viewport,
.render-marquee-section .render-track,
.render-marquee-section .render-item,
.render-marquee-section .render-item img{
  transition: none !important;
  animation-play-state: running !important;
}
.render-marquee-section .carousel-viewport{
  overflow: hidden !important;
  contain: layout paint style !important;
  padding-top: 8px !important;
  padding-bottom: 28px !important;
}
.render-marquee-section .render-track{
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: clamp(18px, 1.7vw, 30px) !important;
  width: max-content !important;
  min-width: max-content !important;
  height: clamp(230px, 24vw, 390px) !important;
  min-height: clamp(230px, 24vw, 390px) !important;
  max-height: clamp(230px, 24vw, 390px) !important;
  transform-origin: 0 0 !important;
  will-change: transform !important;
}
.render-marquee-section .render-track > .render-item,
.render-marquee-section article.render-item,
.render-marquee-section .render-item,
.render-marquee-section .render-item--wide,
.render-marquee-section .render-item--panorama,
.render-marquee-section .render-item--square,
.render-marquee-section .render-item--portrait,
.render-marquee-section .render-item--tall,
.render-marquee-section .render-item--detail{
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  align-self: flex-start !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: clamp(230px, 24vw, 390px) !important;
  min-height: clamp(230px, 24vw, 390px) !important;
  max-height: clamp(230px, 24vw, 390px) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}
.render-marquee-section .render-item > img,
.render-marquee-section article.render-item > img,
.render-marquee-section .render-track > .render-item > img{
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: clamp(230px, 24vw, 390px) !important;
  min-height: clamp(230px, 24vw, 390px) !important;
  max-height: clamp(230px, 24vw, 390px) !important;
  object-fit: contain !important;
  object-position: top center !important;
  transform: none !important;
  filter: none !important;
  opacity: 1 !important;
}
html[data-theme=dark] .render-marquee-section,
html[data-theme=light] .render-marquee-section,
html[data-theme=dark] .render-marquee-section *,
html[data-theme=light] .render-marquee-section *{
  transition: none !important;
}
@media(max-width: 767px){
  .render-marquee-section .render-track,
  .render-marquee-section .render-track > .render-item,
  .render-marquee-section article.render-item,
  .render-marquee-section .render-item,
  .render-marquee-section .render-item > img{
    height: 58vw !important;
    min-height: 58vw !important;
    max-height: 58vw !important;
  }
}

/* 2026-05-06 patch: premium hero settle + visible lightbox close */
.lightbox-close-button{position:fixed!important;top:clamp(18px,3vw,36px)!important;right:clamp(18px,3vw,36px)!important;width:48px!important;height:48px!important;border:1px solid rgba(255,255,255,.32)!important;border-radius:999px!important;background:rgba(0,0,0,.28)!important;-webkit-backdrop-filter:blur(18px) saturate(140%)!important;backdrop-filter:blur(18px) saturate(140%)!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;opacity:1!important;z-index:999999!important;transition:transform .45s cubic-bezier(.16,1,.3,1),background .25s,border-color .25s!important}.lightbox-close-button:hover{transform:rotate(90deg) scale(1.06)!important;background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.7)!important}.lightbox-close-button svg{width:26px!important;height:26px!important;stroke-width:1.4!important}.hero-animated-asset--active{animation-duration:2.6s!important}.hero-animated-asset--active img{animation-duration:9.5s!important;animation-fill-mode:forwards!important}.hero-animated-asset--previous img{animation-duration:9.5s!important;animation-fill-mode:forwards!important}@media(max-width:767px){.lightbox-close-button{width:44px!important;height:44px!important;top:18px!important;right:18px!important}}

/* 2026-05-07 final stability patch: hero no black flash, stable theme switch, contact layout */
html{scrollbar-gutter:stable;overflow-y:scroll;}
body{overflow-x:hidden;}
*,*::before,*::after{scrollbar-gutter:inherit;}

/* prevent full-site/theme transitions from forcing carousel/header reflow */
.render-marquee-section,
.carousel-viewport,
.render-track,
.render-item,
.render-item img,
.hero,
.hero-animated-assets,
.hero-animated-asset,
.hero-animated-asset img,
.site-header,
.custom-scrollbar,
.custom-scrollbar *{
  transition-property: color, background-color, border-color, opacity, transform, filter, backdrop-filter !important;
}
.render-track,.render-track *{ transition-duration:0s!important; }
.carousel-viewport{contain:layout paint style;overflow:hidden!important;}
.render-track{will-change:transform;backface-visibility:hidden;transform:translate3d(0,0,0);}

/* Hero: keep previous image visible and remove black backing during transition */
.hero{background:var(--studio-bg)!important;}
.hero-animated-assets{background:transparent!important;}
.hero-animated-asset{background:transparent!important;}
.hero-animated-asset--previous{z-index:2!important;opacity:1!important;}
.hero-animated-asset--active{z-index:3!important;opacity:1!important;animation-duration:2.85s!important;}
.hero-animated-asset--active img{animation-duration:7.8s!important;}
.hero-animated-asset--previous img{animation-duration:7.8s!important;}
.hero-animated-assets::after{background:rgba(0,0,0,.26)!important;}
html[data-theme=dark] .hero-animated-assets::after{background:rgba(0,0,0,.36)!important;}

/* Contact page layout matching requested reference */
.contact-hero-grid{
  display:grid!important;
  grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr)!important;
  column-gap:clamp(56px,10vw,180px)!important;
  row-gap:32px!important;
  align-items:start!important;
}
.contact-hero-grid>h2{display:none!important;}
.contact-hero-grid>h1{grid-column:1!important;margin-bottom:0!important;max-width:12ch!important;}
.contact-hero-grid>p{grid-column:2!important;margin-top:.45em!important;max-width:31ch!important;}
.contact-location-link{color:inherit;text-decoration:none;}
.contact-location-link p{transition:opacity .25s ease;}
.contact-location-link:hover p{opacity:.78;}
.contact-location-link:hover p span{opacity:.55!important;}
@media(max-width:900px){
  .contact-hero-grid{grid-template-columns:1fr!important;}
  .contact-hero-grid>h1,.contact-hero-grid>p{grid-column:1!important;}
  .contact-hero-grid>p{max-width:34ch!important;margin-top:0!important;}
}


/* BRAVE PATCH 2026-05-07: stable hero, no theme jump, contact icons */
html,body,#root{width:100%;min-width:0;overflow-x:hidden;scrollbar-gutter:stable;}
html.theme-no-jump,html.theme-no-jump *,html.theme-no-jump *::before,html.theme-no-jump *::after{
  transition:none!important;
  scroll-behavior:auto!important;
}
html.theme-no-jump .render-marquee-track,
html.theme-no-jump .render-marquee-track *,
html.theme-no-jump .hero-animated-assets,
html.theme-no-jump .hero-animated-assets *,
html.theme-no-jump .hero-animated-asset,
html.theme-no-jump .hero-animated-asset *{
  animation-play-state:running!important;
}
.hero{
  min-height:100svh!important;
  background:var(--studio-bg)!important;
  overflow:hidden!important;
}
.hero-animated-assets{
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  left:50%!important;
  right:auto!important;
  width:100vw!important;
  min-width:100vw!important;
  max-width:none!important;
  transform:translateX(-50%) translateZ(0)!important;
  background:transparent!important;
  overflow:hidden!important;
  isolation:isolate!important;
  contain:paint!important;
}
.hero-animated-assets::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background-image:url('https://cdn.myportfolio.com/6d4a6ad3-7b6a-407e-8dcb-f73f038f0bdb/fe7031a2-bc20-4bde-baf3-3d382db09d6c_rw_1920.jpg?h=96b744366ccc73c11b8e6b6c083e042a')!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  transform:scale(1.03) translateZ(0)!important;
  opacity:1!important;
  pointer-events:none!important;
}
.hero-animated-assets::after{
  z-index:10!important;
  background:rgba(0,0,0,.28)!important;
}
.hero-animated-asset{
  background:transparent!important;
  opacity:1!important;
}
.hero-animated-asset--previous{
  z-index:2!important;
  opacity:1!important;
  clip-path:inset(0)!important;
}
.hero-animated-asset--active{
  z-index:3!important;
  opacity:1!important;
  animation:heroRevealTopToBottomStable 2.65s cubic-bezier(.77,0,.175,1) forwards!important;
}
.hero-animated-asset img{
  width:100%!important;
  height:108%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  opacity:1!important;
  transform:translateZ(0) scale(1.03);
  backface-visibility:hidden!important;
}
.hero-animated-asset--active img{
  animation:heroSoftScaleInStable 7.2s cubic-bezier(.16,1,.3,1) forwards!important;
  transform:translateY(-1.2%) scale(1.105)!important;
}
.hero-animated-asset--previous img{
  animation:none!important;
  transform:translateY(0) scale(1.03)!important;
}
@keyframes heroRevealTopToBottomStable{
  0%{clip-path:inset(0 0 100% 0)}
  100%{clip-path:inset(0 0 0 0)}
}
@keyframes heroSoftScaleInStable{
  0%{transform:translateY(-1.2%) scale(1.105)}
  100%{transform:translateY(0) scale(1.03)}
}
.contact a svg,
.contact svg,
.contact-location-link svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  opacity:1!important;
  stroke:currentColor!important;
  color:currentColor!important;
  visibility:visible!important;
}
.contact a .rounded-full,
.contact-location-link .rounded-full{
  border-color:color-mix(in srgb, var(--studio-ink) 16%, transparent)!important;
  color:var(--studio-ink)!important;
  background:transparent!important;
}
.contact a:hover .rounded-full,
.contact-location-link:hover .rounded-full{
  background:var(--studio-ink)!important;
  color:var(--studio-bg)!important;
}
@media(max-width:767px){
  .hero-animated-assets{left:50%!important;width:100vw!important;}
  .hero-animated-asset img{height:112%!important;}
}

/* FINAL HERO + CONTACT ICON FIX */
.hero-animated-asset--initial{clip-path:inset(0)!important;animation:none!important;z-index:2!important}
.hero-animated-asset--initial img{animation:none!important;transform:translateY(0) scale(1.03)!important}
.hero-animated-asset--active:not(.hero-animated-asset--initial){clip-path:inset(0 0 100% 0);animation:heroRevealTopToBottom 2.65s cubic-bezier(.76,0,.18,1) forwards!important}
.hero-animated-asset--active:not(.hero-animated-asset--initial) img{animation:heroImageScaleDownPremium 7.2s cubic-bezier(.16,1,.3,1) forwards!important;transform:translateY(-1.2%) scale(1.12)!important}
@keyframes heroImageScaleDownPremium{0%{transform:translateY(-1.2%) scale(1.12)}100%{transform:translateY(0) scale(1.03)}}
.contact-location-link:hover>div{background:var(--text-color)!important;color:var(--body-bg)!important;border-color:var(--text-color)!important}
.contact-location-link:hover svg{color:var(--body-bg)!important;stroke:var(--body-bg)!important}


/* BRAVE FINAL PATCH 2026-05-07: contact location hover + stable premium hero */
.contact-location-link .w-12,
.contact-location-link [class*="w-12"][class*="h-12"]{
  background: transparent !important;
  border-color: color-mix(in srgb, var(--text-color) 16%, transparent) !important;
  color: var(--text-color) !important;
  transition: background-color .28s cubic-bezier(.16,1,.3,1), color .28s cubic-bezier(.16,1,.3,1), border-color .28s cubic-bezier(.16,1,.3,1), transform .28s cubic-bezier(.16,1,.3,1) !important;
}
.contact-location-link:hover .w-12,
.contact-location-link:focus-visible .w-12,
.contact-location-link:hover [class*="w-12"][class*="h-12"],
.contact-location-link:focus-visible [class*="w-12"][class*="h-12"]{
  background: var(--text-color) !important;
  border-color: var(--text-color) !important;
  color: var(--body-bg) !important;
  transform: translateY(-1px) !important;
}
.contact-location-link svg,
.contact-location-link svg *,
.contact-location-link [class*="w-12"][class*="h-12"] svg,
.contact-location-link [class*="w-12"][class*="h-12"] svg *{
  color: currentColor !important;
  stroke: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
  fill: none !important;
}
.contact-location-link:hover svg,
.contact-location-link:hover svg *,
.contact-location-link:focus-visible svg,
.contact-location-link:focus-visible svg *{
  color: var(--body-bg) !important;
  stroke: var(--body-bg) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Hero: first frame is visible immediately; next images reveal over it, no black gaps, no scale snap. */
.hero{
  background:#050505 !important;
  overflow:hidden !important;
  isolation:isolate !important;
}
.hero-animated-assets{
  position:absolute !important;
  inset:0 auto 0 50% !important;
  width:100vw !important;
  max-width:none !important;
  min-width:100vw !important;
  height:100% !important;
  overflow:hidden !important;
  transform:translateX(-50%) translateZ(0) !important;
  background-image:url('https://cdn.myportfolio.com/6d4a6ad3-7b6a-407e-8dcb-f73f038f0bdb/fe7031a2-bc20-4bde-baf3-3d382db09d6c_rw_1920.jpg?h=96b744366ccc73c11b8e6b6c083e042a') !important;
  background-size:cover !important;
  background-position:center center !important;
  contain:paint !important;
  backface-visibility:hidden !important;
}
.hero-animated-assets::before{display:none !important; content:none !important;}
.hero-animated-assets::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:9 !important;
  pointer-events:none !important;
  background:rgba(0,0,0,.28) !important;
}
html[data-theme="dark"] .hero-animated-assets::after{background:rgba(0,0,0,.34) !important;}
.hero-animated-asset{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  opacity:1 !important;
  background:transparent !important;
  overflow:hidden !important;
  transform:translateZ(0) !important;
  backface-visibility:hidden !important;
  contain:paint !important;
}
.hero-animated-asset img{
  width:100% !important;
  height:108% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
  opacity:1 !important;
  filter:none !important;
  backface-visibility:hidden !important;
  transform-origin:50% 50% !important;
  will-change:transform !important;
}
.hero-animated-asset--previous,
.hero-animated-asset--initial{
  z-index:1 !important;
  clip-path:inset(0 0 0 0) !important;
  animation:none !important;
}
.hero-animated-asset--previous img,
.hero-animated-asset--initial img{
  animation:none !important;
  transform:translate3d(0,0,0) scale(1.03) !important;
}
.hero-animated-asset--active:not(.hero-animated-asset--initial){
  z-index:2 !important;
  clip-path:inset(0 0 100% 0) !important;
  animation:braveHeroRevealDown 2.45s cubic-bezier(.76,0,.16,1) forwards !important;
  will-change:clip-path !important;
}
.hero-animated-asset--active:not(.hero-animated-asset--initial) img{
  transform:translate3d(0,-1.1%,0) scale(1.12) !important;
  animation:braveHeroScaleSettle 7.2s cubic-bezier(.16,1,.3,1) forwards !important;
}
@keyframes braveHeroRevealDown{
  0%{clip-path:inset(0 0 100% 0)}
  100%{clip-path:inset(0 0 0 0)}
}
@keyframes braveHeroScaleSettle{
  0%{transform:translate3d(0,-1.1%,0) scale(1.12)}
  100%{transform:translate3d(0,0,0) scale(1.03)}
}
@media(max-width:767px){
  .hero-animated-assets{left:50% !important;width:100vw !important;}
  .hero-animated-asset img{height:112% !important;}
}


/* === FINAL HERO SEQUENCE STABILITY PATCH 2026-05-07 === */
.hero{
  min-height:100svh!important;
  width:100%!important;
  margin:0!important;
  background:#050505!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.hero-animated-assets{
  position:absolute!important;
  inset:0!important;
  left:50%!important;
  right:auto!important;
  width:100vw!important;
  min-width:100vw!important;
  height:100%!important;
  transform:translate3d(-50%,0,0)!important;
  overflow:hidden!important;
  background:#050505!important;
  contain:layout paint style!important;
  pointer-events:none!important;
  z-index:0!important;
}
.hero-animated-assets::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:#050505!important;
  display:block!important;
}
.hero-animated-assets::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:10!important;
  pointer-events:none!important;
  background:rgba(0,0,0,.26)!important;
}
html[data-theme="dark"] .hero-animated-assets::after{background:rgba(0,0,0,.34)!important;}
.hero-animated-asset{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  opacity:1!important;
  background:#050505!important;
  overflow:hidden!important;
  contain:paint!important;
  backface-visibility:hidden!important;
  transform:translateZ(0)!important;
  filter:saturate(1.01) contrast(1.03) brightness(.92)!important;
}
.hero-animated-asset--previous,
.hero-animated-asset--initial{
  z-index:2!important;
  clip-path:inset(0 0 0 0)!important;
  animation:none!important;
}
.hero-animated-asset--active:not(.hero-animated-asset--initial){
  z-index:3!important;
  clip-path:inset(0 0 100% 0)!important;
  animation:heroSequenceCurtainDown 2.85s cubic-bezier(.76,0,.18,1) forwards!important;
  will-change:clip-path!important;
}
.hero-animated-asset img{
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  opacity:1!important;
  backface-visibility:hidden!important;
  transform-origin:50% 50%!important;
  -webkit-user-drag:none!important;
  user-select:none!important;
}
.hero-animated-asset--initial img,
.hero-animated-asset--previous img{
  animation:none!important;
  transform:translate3d(0,0,0) scale(1.03)!important;
}
.hero-animated-asset--active:not(.hero-animated-asset--initial) img{
  transform:translate3d(0,-1.15%,0) scale(1.115)!important;
  animation:heroSequenceScaleDown 7.4s cubic-bezier(.16,1,.3,1) forwards!important;
  will-change:transform!important;
}
@keyframes heroSequenceCurtainDown{
  0%{clip-path:inset(0 0 100% 0)}
  100%{clip-path:inset(0 0 0 0)}
}
@keyframes heroSequenceScaleDown{
  0%{transform:translate3d(0,-1.15%,0) scale(1.115)}
  100%{transform:translate3d(0,0,0) scale(1.03)}
}
@media(max-width:767px){
  .hero-animated-assets{left:50%!important;width:100vw!important;min-width:100vw!important;}
  .hero-animated-asset img{height:100%!important;object-position:center center!important;}
}
@media(prefers-reduced-motion:reduce){
  .hero-animated-asset,.hero-animated-asset img{animation:none!important;clip-path:inset(0)!important;transform:none!important;}
}

/* === HERO ANIMATION REBUILD FROM ZERO / 2026-05-07 === */
.hero{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  min-height:100svh!important;
  background:#050505!important;
}
.hero-animated-assets{
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  left:50%!important;
  right:auto!important;
  width:100vw!important;
  min-width:100vw!important;
  height:100%!important;
  transform:translate3d(-50%,0,0)!important;
  overflow:hidden!important;
  pointer-events:none!important;
  z-index:0!important;
  contain:layout paint style!important;
  background:#050505!important;
}
.hero-animated-assets::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:transparent!important;
  display:block!important;
}
.hero-animated-assets::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:20!important;
  pointer-events:none!important;
  background:rgba(0,0,0,.28)!important;
}
html[data-theme="dark"] .hero-animated-assets::after{background:rgba(0,0,0,.34)!important;}
.hero-animated-asset{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  opacity:1!important;
  overflow:hidden!important;
  background:transparent!important;
  contain:paint!important;
  backface-visibility:hidden!important;
  transform:translate3d(0,0,0)!important;
  filter:saturate(1.01) contrast(1.03) brightness(.92)!important;
}
.hero-animated-asset img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  opacity:1!important;
  backface-visibility:hidden!important;
  transform-origin:50% 50%!important;
  -webkit-user-drag:none!important;
  user-select:none!important;
}
.hero-animated-asset--initial,
.hero-animated-asset--previous{
  z-index:2!important;
  clip-path:inset(0 0 0 0)!important;
  animation:none!important;
}
.hero-animated-asset--initial img,
.hero-animated-asset--previous img{
  transform:translate3d(0,0,0) scale(1.03)!important;
  animation:none!important;
}
.hero-animated-asset--active:not(.hero-animated-asset--initial){
  z-index:3!important;
  clip-path:inset(0 0 100% 0)!important;
  animation:braveHeroCurtainRebuild 2.8s cubic-bezier(.76,0,.18,1) forwards!important;
  will-change:clip-path!important;
}
.hero-animated-asset--active:not(.hero-animated-asset--initial) img{
  transform:translate3d(0,-1.2%,0) scale(1.12)!important;
  animation:braveHeroScaleRebuild 7.6s cubic-bezier(.16,1,.3,1) forwards!important;
  will-change:transform!important;
}
@keyframes braveHeroCurtainRebuild{
  0%{clip-path:inset(0 0 100% 0)}
  100%{clip-path:inset(0 0 0 0)}
}
@keyframes braveHeroScaleRebuild{
  0%{transform:translate3d(0,-1.2%,0) scale(1.12)}
  100%{transform:translate3d(0,0,0) scale(1.03)}
}
@media(max-width:767px){
  .hero-animated-assets{left:50%!important;width:100vw!important;min-width:100vw!important;height:100%!important;}
  .hero-animated-asset img{height:100%!important;object-fit:cover!important;object-position:center center!important;}
}
@media(prefers-reduced-motion:reduce){
  .hero-animated-asset,
  .hero-animated-asset img{animation:none!important;clip-path:inset(0 0 0 0)!important;}
}


/* BRAVE CONTACT FINAL PATCH 2026-05-07 */
main.pt-32:has(.contact-hero-grid) > section:first-child {
  min-height: clamp(360px, 42vh, 460px) !important;
  display: flex !important;
  align-items: flex-start !important;
  padding-top: clamp(110px, 11vw, 150px) !important;
  padding-bottom: clamp(70px, 8vw, 120px) !important;
}
main.pt-32:has(.contact-hero-grid) > section:nth-child(2) {
  padding-top: clamp(70px, 8vw, 120px) !important;
  padding-bottom: clamp(70px, 8vw, 110px) !important;
}
main.pt-32:has(.contact-hero-grid) .contact-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr) !important;
  column-gap: clamp(90px, 12vw, 180px) !important;
  align-items: start !important;
}
main.pt-32:has(.contact-hero-grid) .contact-hero-grid > h1 {
  grid-column: 1 !important;
  margin: 0 !important;
  max-width: 13ch !important;
}
main.pt-32:has(.contact-hero-grid) .contact-hero-grid > p {
  grid-column: 2 !important;
  margin: .15em 0 0 0 !important;
  max-width: 35ch !important;
}
main.pt-32:has(.contact-hero-grid) > section:nth-child(2) > div > div {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: clamp(90px, 12vw, 180px) !important;
  align-items: start !important;
}
@media (max-width: 767px) {
  main.pt-32:has(.contact-hero-grid) > section:first-child {
    min-height: auto !important;
    padding-top: 120px !important;
    padding-bottom: 76px !important;
  }
  main.pt-32:has(.contact-hero-grid) .contact-hero-grid,
  main.pt-32:has(.contact-hero-grid) > section:nth-child(2) > div > div {
    grid-template-columns: 1fr !important;
    gap: 44px !important;
  }
  main.pt-32:has(.contact-hero-grid) .contact-hero-grid > h1,
  main.pt-32:has(.contact-hero-grid) .contact-hero-grid > p {
    grid-column: 1 !important;
  }
  main.pt-32:has(.contact-hero-grid) > section:nth-child(2) {
    padding-top: 58px !important;
  }
}


/* BRAVE PATCH 2026-05-07: home contact icons + mobile right-gap fix */
.home-contact-link{align-items:center!important;}
.home-contact-icon{width:38px!important;height:38px!important;border:1px solid var(--line-color)!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 38px!important;transition:background-color .25s ease,color .25s ease,border-color .25s ease!important;color:var(--text-color)!important;background:transparent!important;}
.home-contact-icon--be{font-size:10px!important;font-weight:700!important;letter-spacing:-.02em!important;text-transform:uppercase!important;line-height:1!important;}
.home-contact-link:hover .home-contact-icon{background:var(--text-color)!important;color:var(--body-bg)!important;border-color:var(--text-color)!important;}
.home-contact-icon svg{width:16px!important;height:16px!important;stroke:currentColor!important;}
html,body,#root{max-width:100%!important;overflow-x:hidden!important;}
@supports (overflow: clip){html,body,#root{overflow-x:clip!important;}}
@media (max-width: 767px){
  html,body,#root{width:100%!important;max-width:100%!important;min-width:0!important;overscroll-behavior-x:none!important;}
  body{position:relative!important;}
  .relative.overflow-x-hidden.min-h-screen{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  .site-header{left:0!important;right:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;}
  .hero{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;overflow:hidden!important;}
  .hero-animated-assets{left:0!important;right:0!important;width:100%!important;min-width:100%!important;max-width:100%!important;transform:none!important;}
  .hero-animated-asset,.hero-animated-asset img{width:100%!important;max-width:none!important;}
  .custom-scrollbar{right:4px!important;}
}


/* FINAL FIX: overlay scrollbar + remove right gutter on desktop/mobile */
html, body, #root {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: clip !important;
  scrollbar-width: none !important; /* Firefox: hide native scrollbar, keep scroll */
  -ms-overflow-style: none !important;
}
html::-webkit-scrollbar,
body::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}
body {
  position: relative !important;
}
#root, .relative.overflow-x-hidden.min-h-screen {
  overflow-x: clip !important;
}
.custom-scrollbar {
  position: fixed !important;
  z-index: 2147482500 !important;
  right: max(8px, env(safe-area-inset-right)) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 4px !important;
  height: min(52vh, 520px) !important;
  pointer-events: auto !important;
  background: transparent !important;
  mix-blend-mode: normal !important;
}
.custom-scrollbar:hover {
  width: 6px !important;
}
.custom-scrollbar-track {
  background: rgba(127,127,127,.08) !important;
}
.custom-scrollbar-thumb {
  background: rgba(15,15,15,.45) !important;
}
html[data-theme=dark] .custom-scrollbar-thumb {
  background: rgba(245,245,245,.45) !important;
}
.hero,
.hero section,
.hero-animated-assets,
.hero-animated-asset {
  max-width: 100% !important;
  overflow-x: clip !important;
}
@media (max-width: 767px) {
  html, body, #root {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
  }
  .site-header {
    max-width: calc(100% - 32px) !important;
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
  }
  .hero, .hero-animated-assets {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
  }
  .custom-scrollbar {
    right: max(5px, env(safe-area-inset-right)) !important;
    width: 3px !important;
    height: 34vh !important;
    opacity: .35 !important;
    pointer-events: none !important;
  }
}
