/*! tailwindcss v4.3.3 | 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-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--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}}}@layer theme{:root,:host{--font-sans:"Poppins", system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-base:1rem;--text-base--line-height: 1.5 ;--font-weight-semibold:600;--radius-md:.375rem;--radius-lg:.5rem;--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-ink:#000;--color-paper:#fff;--color-accent:#ffca00}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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}}@layer components{.section[data-theme=dark]{background-color:var(--black);color:var(--white)}.section[data-theme=light]{background-color:var(--white);color:var(--black);color-scheme:light}.section[data-theme=accent]{background-color:var(--yellow);color:var(--black);color-scheme:light}.section{transition:background-color .7s var(--ease)}.section[data-reveal=pending][data-from=dark]{background-color:var(--black)}.section[data-reveal=pending][data-from=light]{background-color:var(--white)}.section[data-reveal] .reveal{transition:opacity .7s var(--ease),transform .7s var(--ease),filter .7s var(--ease);transition-delay:calc(var(--i,0) * 80ms)}.section[data-reveal][data-from] .reveal{transition-delay:calc(.5s + var(--i,0) * 80ms)}.section[data-reveal=pending] .reveal{opacity:0;transform:translateY(12px)}.btn-primary{border-radius:var(--radius-md);background:var(--yellow);min-height:clamp(3.25rem,4.6vw,5.5rem);color:var(--black);letter-spacing:-.04em;white-space:nowrap;transition:transform .3s var(--ease),background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease);border:2px solid #0000;align-items:center;gap:.6em;padding:0 clamp(20px,1.9vw,36px);font-size:clamp(1rem,1.75vw,2.125rem);font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.btn-primary svg{flex:none;width:1em;height:1em}.btn-primary:hover{transform:translateY(-2px)}.section[data-theme=light] .btn-primary{background:var(--black);color:var(--white)}.section[data-theme=accent] .btn-primary,.section[data-theme=accent] .btn-pill{background:var(--black);color:var(--yellow)}.section[data-theme=dark] .btn-primary:hover,.section[data-theme=dark] .btn-primary:focus-visible,.section[data-theme=dark] .btn-pill:hover,.section[data-theme=dark] .btn-pill:focus-visible{background:var(--white);color:var(--black)}.section[data-theme=light] .btn-primary:hover,.section[data-theme=light] .btn-primary:focus-visible{background:var(--yellow);color:var(--black)}.section[data-theme=accent] .btn-primary:hover,.section[data-theme=accent] .btn-primary:focus-visible,.section[data-theme=accent] .btn-pill:hover,.section[data-theme=accent] .btn-pill:focus-visible{border-color:var(--black);color:var(--black);background:0 0}.btn-pill{border-radius:var(--radius-md);background:var(--yellow);min-width:min(100%,clamp(16rem,21.7vw,26rem));min-height:clamp(2.75rem,3.4vw,4.125rem);color:var(--black);letter-spacing:-.04em;transition:transform .3s var(--ease),background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease);border:2px solid #0000;justify-content:space-between;align-items:center;gap:24px;padding:0 clamp(20px,1.9vw,36px);font-size:clamp(.9375rem,1.15vw,1.375rem);font-weight:300;text-decoration:none;display:inline-flex}.btn-pill:hover{transform:translateY(2px)}.actions{flex-direction:column;align-items:flex-start;gap:clamp(12px,1.6vw,32px);display:flex}.actions-center{align-items:center}.actions-center .btn-pill{justify-content:center;padding-inline:48px;position:relative}.actions-center .btn-pill svg{position:absolute;right:clamp(18px,1.6vw,30px)}.link-text{text-underline-offset:6px;transition:text-decoration-color .3s var(--ease);align-items:center;gap:8px;font-weight:400;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.section[data-theme=dark] .link-text:hover{-webkit-text-decoration-color:var(--yellow);text-decoration-color:var(--yellow)}.site-header{z-index:50;color:var(--white);transition:color 0s .35s,background-color .7s var(--ease);background-color:#0000;position:fixed;inset:0 0 auto}.site-header.is-scrolled{-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);background-color:#000c}html[data-theme=light] .site-header{color:var(--black)}html[data-theme=light] .site-header.is-scrolled{background-color:#ffffffd1}html[data-theme=accent] .site-header{color:var(--black)}html[data-theme=accent] .site-header.is-scrolled{background-color:#ffca00d6}.nav-link{transition:background-size .3s var(--ease);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0 1px;padding-bottom:2px;font-size:.9375rem;font-weight:400;text-decoration:none}.nav-link:hover{background-size:100% 1px}.nav-contact{font-weight:600}.site-nav{display:none}.site-nav.is-open{background-color:inherit;background:var(--black);padding:24px 20px 32px;display:block;position:absolute;top:100%;left:0;right:0}html[data-theme=light] .site-nav.is-open{background:var(--white)}html[data-theme=accent] .site-nav.is-open{background:var(--yellow)}.site-nav.is-open .nav-link{letter-spacing:-.03em;font-size:1.5rem;font-weight:600}@media(min-width:768px){.site-nav,.site-nav.is-open{background:0 0;padding:0;display:block;position:static}.site-nav.is-open .nav-link{letter-spacing:normal;font-size:.9375rem;font-weight:400}}.nav-toggle{width:32px;height:32px;color:inherit;justify-content:center;align-items:center;display:inline-flex}.nav-toggle-bars,.nav-toggle-bars:before{width:22px;height:1.5px;transition:transform .3s var(--ease);background:currentColor;display:block}.nav-toggle-bars{position:relative;transform:translateY(-3px)}.nav-toggle-bars:before{content:"";position:absolute;top:7px}.nav-toggle[aria-expanded=true] .nav-toggle-bars{transform:translateY(0)rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle-bars:before{transform:translateY(-7px)rotate(-90deg)}.section-title{font-size:var(--step-4);letter-spacing:-.05em;font-weight:600;line-height:1}.section[data-theme=dark] h1,.section[data-theme=dark] h2,.section[data-theme=accent] h2{letter-spacing:-.045em;font-weight:500}.section[data-theme=dark]{position:relative;overflow:hidden}.section[data-theme=dark]:before{content:"";pointer-events:none;opacity:0;transition:opacity .5s var(--ease);position:absolute;top:0;right:0;bottom:0;left:0}@media(hover:hover)and (pointer:fine){.section[data-theme=dark]:before{background:radial-gradient(380px circle at var(--mx) var(--my),#ffca0017,transparent 70%)}.section[data-theme=dark]:hover:before{opacity:1}}.section[data-theme=dark]>.container-site,.section[data-theme=accent]>.container-site{z-index:1;position:relative}.section[data-theme=dark]:after,.section[data-theme=accent]:after{content:"";pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;top:0;right:0;bottom:0;left:0}.section[data-theme=accent]:after{opacity:.12;mix-blend-mode:soft-light}.hero{background-image:radial-gradient(55% 38% at 50% 52%,#ffca0014,#0000 70%)}.method{background-image:radial-gradient(60% 38% at 50% 46%,#ffe46e99,#0000 70%)}.footer{background-image:radial-gradient(45% 35% at 78% 42%,#ffca0012,#0000 70%)}.hero{align-items:center;min-height:100svh;display:flex}.hero-inner{z-index:1;text-align:center;justify-items:center;padding-top:112px;padding-bottom:96px;display:grid;position:relative}.hero-title{font-size:var(--step-5);max-width:13em;line-height:1.08}.hero-support{letter-spacing:-.03em;max-width:34ch;margin-top:clamp(18px,2vw,36px);font-size:clamp(1rem,1.5vw,1.75rem);font-weight:300;line-height:1.3}@media(min-width:1024px){.hero-support{max-width:46ch}}.hero .actions{margin-top:clamp(32px,3.6vw,64px)}.stage{height:200svh;position:relative}@media(max-width:767px){.stage{height:160svh}}.stage-sticky{height:100svh;position:sticky;top:0;overflow:hidden}.stage-sticky>.section{height:100%;min-height:0;position:absolute;top:0;right:0;bottom:0;left:0}.stage .hero{z-index:2;-webkit-mask-image:radial-gradient(circle at 50% 55%,transparent calc(var(--p,0) * 130vmax - 30vmax),#000 calc(var(--p,0) * 130vmax));mask-image:radial-gradient(circle at 50% 55%,transparent calc(var(--p,0) * 130vmax - 30vmax),#000 calc(var(--p,0) * 130vmax))}.stage-hero-content{transform:scale(calc(1 + var(--p,0) * .6));filter:blur(calc(var(--p,0) * 14px));opacity:clamp(0,calc(1 - var(--p,0) * 1.5),1);will-change:transform,filter,opacity}.stage .method{z-index:1;align-items:center;padding-block:88px 40px;display:flex}.stage-method-content{width:100%;opacity:clamp(0,calc((var(--p,0) - .35) * 2),1);transform:translateY(calc((1 - var(--p,0)) * 48px)) scale(calc(.94 + var(--p,0) * .06));will-change:transform,opacity}.stage[data-phase=method] .hero,.stage[data-phase=hero] .method{pointer-events:none}.stage-anchor{width:1px;height:1px;position:absolute;top:calc(100% - 100svh)}.method{padding-block:120px}@media(min-width:1024px){.method{align-items:center;min-height:100svh;padding-block:140px;display:flex}}.method-inner{z-index:1;text-align:center;justify-items:center;gap:clamp(44px,5vw,92px);display:grid;position:relative}.method-head{justify-items:center;gap:clamp(12px,1.2vw,20px);display:grid}.method-support{letter-spacing:-.02em;max-width:40ch;font-size:clamp(1rem,1.3vw,1.375rem);font-weight:300;line-height:1.35}.method-hint{font-size:.875rem;font-weight:400}.hint-hover{display:none}@media(hover:hover)and (pointer:fine){.hint-hover{display:inline}.hint-touch{display:none}}.method .actions{margin-top:clamp(0px,2.6vw,56px)}.blur-when-open,.pillar-circle{transition:filter .4s var(--ease),opacity .4s var(--ease),transform .3s var(--ease),box-shadow .4s var(--ease)}.method[data-pillar-open] .blur-when-open{filter:blur(6px);opacity:.55}.method[data-pillar-open] .pillar-circle:not([data-active]){filter:blur(4px);opacity:.6}.pillar-circles{--center:calc((var(--active) + .5) * 100% / 6);width:min(100%,76rem);position:relative}.pillar-row{grid-template-columns:repeat(6,minmax(0,1fr));justify-items:center;margin:0;padding:0;list-style:none;display:grid}.pillar-circle{--size:clamp(3rem, 7vw, 8.5rem);width:var(--size);height:var(--size);background:var(--yellow);color:var(--black);font-size:calc(var(--size) * .6);cursor:pointer;border-radius:50%;place-items:center;font-weight:300;line-height:1;display:grid}.pillar-circle:hover,.pillar-circle[data-active]{transform:scale(1.06)}.pillar-circle[data-active]{box-shadow:0 0 calc(var(--size) * .3) #ffca0073}.pillar-circle:focus-visible{outline-color:var(--white)}.pillar-indicator{top:calc(100% + 6px);left:calc(var(--center) - 14px);opacity:0;width:28px;height:3px;transition:left .45s cubic-bezier(.22,1,.36,1),opacity .3s var(--ease);background:currentColor;border-radius:3px;position:absolute}.pillar-indicator[data-visible]{opacity:1}.pillar-arrow{z-index:3;top:calc(100% + 17px);left:calc(var(--center) - 12px);animation:window-in .3s var(--ease);border:12px solid #0000;border-top:0;border-bottom:11px solid #ffffff29;transition:left .45s cubic-bezier(.22,1,.36,1);position:absolute}.pillar-window{z-index:2;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(22px)saturate(140%);backdrop-filter:blur(22px)saturate(140%);color:var(--white);text-align:left;letter-spacing:-.02em;animation:window-in .3s var(--ease);background:linear-gradient(#ffffff14,#ffffff14),#1212128c;border:1px solid #ffffff2e;padding:clamp(20px,2.2vw,40px);font-size:clamp(.9375rem,1.1vw,1.25rem);font-weight:300;line-height:1.4;position:absolute;top:calc(100% + 28px);left:0;right:0;box-shadow:inset 0 1px #ffffff1f}.pillar-window strong{font-weight:500}.pillar-window p{margin:0}@media(min-width:768px){.pillar-window{--w:min(40rem, 100%);width:var(--w);right:auto;left:clamp(0px,calc(var(--center) - 5rem),calc(100% - var(--w)));transition:left .45s cubic-bezier(.22,1,.36,1)}}.section[data-theme=accent] .pillar-circle{background:var(--black);color:var(--yellow)}.section[data-theme=accent] .pillar-circle[data-active]{box-shadow:0 calc(var(--size) * .12) calc(var(--size) * .32) #0000004d}.section[data-theme=accent] .pillar-circle:focus-visible{outline-color:var(--black)}.section[data-theme=accent] .pillar-window{-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%);color:var(--white);background:#0e0e0ecc;border-color:#ffffff24;box-shadow:inset 0 1px #ffffff14,0 18px 44px #0000002e}.section[data-theme=accent] .pillar-arrow{border-bottom-color:#0e0e0ed6}@keyframes window-in{0%{opacity:0;transform:translateY(-6px)}}.cases{padding-block:120px}@media(min-width:1024px){.cases{padding-block:160px}}.portfolio{gap:48px;display:grid}@media(min-width:1024px){.portfolio{grid-template-columns:4fr 8fr;align-items:center;gap:56px}}.portfolio-intro{gap:clamp(18px,1.8vw,32px);display:grid}.cases-support{letter-spacing:-.03em;max-width:34ch;font-size:clamp(1rem,1.25vw,1.5rem);font-weight:300;line-height:1.3}.carousel{--card:74%;--arrow:clamp(3rem, 4vw, 4.25rem);outline-offset:8px;min-width:0;position:relative}.carousel-stage{position:relative}.carousel-viewport{touch-action:pan-y;-webkit-user-select:none;user-select:none}.carousel-track{width:var(--card);aspect-ratio:4/5;margin:0;padding:0;list-style:none;position:relative}@media(min-width:768px){.carousel-track{aspect-ratio:1}}.carousel-slide{transform-origin:100%;cursor:pointer;transition:transform .85s cubic-bezier(.22,1,.36,1),filter .85s cubic-bezier(.22,1,.36,1),opacity .85s cubic-bezier(.22,1,.36,1);position:absolute;top:0;right:0;bottom:0;left:0}.carousel-slide .project-card{aspect-ratio:auto;height:100%}.carousel-slide[data-depth="0"]{z-index:3;cursor:auto}.carousel-slide[data-depth="1"]{z-index:2;filter:blur(3px);opacity:.7;transform:translate(15%)scale(.88)}.carousel-slide[data-depth="2"]{z-index:1;filter:blur(6px);opacity:.4;transform:translate(28%)scale(.76)}.project-card{aspect-ratio:4/5;border-radius:var(--radius-lg);background:var(--black);color:var(--white);place-items:end start;text-decoration:none;display:grid;position:relative;overflow:hidden}.project-card img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease);position:absolute;top:0;right:0;bottom:0;left:0}.project-cover{transition:transform .6s var(--ease);flex-direction:column;justify-content:flex-end;gap:10px;padding:clamp(22px,2.6vw,44px);display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.project-cover-name{font-size:var(--step-4);letter-spacing:-.05em;font-weight:500;line-height:.95}.project-cover-note{letter-spacing:-.01em;font-size:.9375rem;font-weight:300}.project-cover~.project-name{display:none}.project-name{z-index:1;background:var(--white);color:var(--black);letter-spacing:-.03em;transition:opacity .3s var(--ease),transform .3s var(--ease);border-radius:999px;margin:20px;padding:8px 16px;font-size:clamp(1rem,1.2vw,1.375rem);font-weight:500;position:relative}@media(hover:hover){.project-name{opacity:0;transform:translateY(8px)}.project-card:hover .project-name,.project-card:focus-visible .project-name{opacity:1;transform:none}.project-card:hover img,.project-card:hover .project-cover{transform:scale(1.04)}}.project-soon{background:var(--white);color:var(--black);border:1px solid var(--black);place-items:center}.project-soon-text{letter-spacing:-.03em;font-size:clamp(1.125rem,1.4vw,1.5rem);font-weight:400}.carousel-controls{align-items:center;margin-top:clamp(20px,2.4vw,40px);display:flex}.portfolio-single .project-card{aspect-ratio:4/5}@media(min-width:768px){.portfolio-single .project-card{aspect-ratio:4/3}}.carousel-arrow{z-index:5;width:var(--arrow);height:var(--arrow);background:var(--yellow);color:var(--black);cursor:pointer;transition:background-color .3s var(--ease),color .3s var(--ease),transform .3s var(--ease),box-shadow .3s var(--ease);border-radius:50%;place-items:center;padding-left:3px;display:grid;position:absolute;top:50%;right:0;transform:translateY(-50%);box-shadow:0 10px 28px #00000024,0 2px 6px #00000014}.carousel-arrow:hover,.carousel-arrow:focus-visible{background:var(--black);color:var(--yellow);transform:translateY(-50%)translate(2px);box-shadow:0 14px 34px #0003,0 3px 8px #0000001a}.carousel-arrow:active{transform:translateY(-50%)scale(.92)}.carousel-dots{align-items:center;gap:8px;display:flex}.carousel-dot{cursor:pointer;width:24px;height:24px;transition:width .5s var(--ease);background:0 0;position:relative}.carousel-dot:before{content:"";background:var(--black);opacity:.2;transition:opacity .3s var(--ease);border-radius:4px;position:absolute;top:10px;right:0;bottom:10px;left:0}.carousel-dot[aria-current=true]{width:56px}.carousel-dot[aria-current=true]:before{opacity:1}.carousel-dot-progress{background:var(--yellow);border-radius:4px;animation:5s linear forwards dot-progress;position:absolute;inset:10px auto 10px 0}@keyframes dot-progress{0%{width:0}to{width:100%}}.case-page{padding-block:120px}@media(min-width:1024px){.case-page{padding-block:160px 120px}}.case-page-inner{gap:clamp(32px,4vw,72px);display:grid}.case-back{justify-self:start;font-size:.9375rem}.case-page-head{gap:32px;display:grid}@media(min-width:1024px){.case-page-head{grid-template-columns:5fr 7fr;align-items:start;gap:64px}}.case-fields{letter-spacing:-.02em;gap:clamp(16px,1.5vw,28px);margin:0;font-size:clamp(1rem,1.2vw,1.375rem);font-weight:300;line-height:1.35;display:grid}.case-fields>div:before{content:"• "}.case-fields dt,.case-fields dd{margin:0;display:inline}.case-fields dt{letter-spacing:-.03em;font-weight:600}.case-fields dt:after{content:": "}.case-gallery{grid-template-columns:1fr 1fr;gap:clamp(10px,1.2vw,20px);margin:0;padding:0;list-style:none;display:grid}.case-gallery-item{aspect-ratio:1;border-radius:var(--radius-lg);background:var(--black);color:var(--white);display:grid;overflow:hidden}.case-gallery-item:first-child{aspect-ratio:3/2;grid-column:1/-1}.case-gallery-item img{object-fit:cover;width:100%;height:100%}.case-gallery-placeholder{place-items:end start;padding:24px;font-size:.9375rem;font-weight:300;display:grid}.case-page-cta{justify-self:start}.case-cover,.project-card{view-transition-name:var(--vt,none)}.case-cover{border-radius:var(--radius-lg);background:var(--black);min-height:clamp(300px,40vw,560px);color:var(--white);flex-direction:column;justify-content:flex-end;gap:12px;padding:clamp(24px,3vw,56px);display:flex}.case-cover-image{aspect-ratio:12/5;min-height:0;padding:0;position:relative;overflow:hidden}.case-cover-image img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}@media(max-width:767px){.case-cover-image{aspect-ratio:16/9}}.case-cover-name{font-size:var(--step-5);letter-spacing:-.05em;font-weight:500;line-height:.95}.case-cover-note{font-size:.9375rem;font-weight:300}.case-page-fields{max-width:62ch}.about{padding-block:64px 120px}@media(min-width:1024px){.about{padding-block:80px 160px}}.about-grid{gap:48px;display:grid}@media(min-width:1024px){.about-grid{grid-template-columns:6fr 5fr;align-items:center;gap:9%}}.about-body{gap:clamp(16px,1.5vw,28px);max-width:34em;display:grid}.about-body .section-title{margin-bottom:clamp(4px,.6vw,12px)}.about-lead{letter-spacing:-.03em;font-size:clamp(1.0625rem,1.3vw,1.5rem);font-weight:300;line-height:1.3}.about-lead strong{letter-spacing:-.04em;font-weight:600}.about-text{letter-spacing:-.015em;font-size:clamp(.9375rem,1.05vw,1.1875rem);font-weight:300;line-height:1.55}.about-body mark{background-color:#0000;background-image:linear-gradient(var(--yellow),var(--yellow));transition:background-size .8s cubic-bezier(.65,0,.35,1);transition-delay:calc(.5s + var(--m,0) * .38s);color:var(--black);-webkit-box-decoration-break:clone;box-decoration-break:clone;background-position:0 0;background-repeat:no-repeat;background-size:0% 100%;padding:.05em .2em;font-weight:500}.about-lead mark{letter-spacing:-.04em;font-weight:600}.section[data-reveal=done] .about-body mark,.section:not([data-reveal]) .about-body mark{background-size:100% 100%}.about-side{gap:clamp(16px,1.6vw,28px);display:grid}.about-media{margin:0}.about-media img{aspect-ratio:1;object-fit:cover;object-position:50% 30%;border-radius:var(--radius-lg);filter:grayscale();width:100%;height:auto}.about-side .btn-primary{min-height:clamp(3.25rem,4vw,4.5rem);font-size:clamp(1rem,1.4vw,1.5rem)}.about-social{justify-self:end}.about-social .social{border-radius:var(--radius-md);background:var(--yellow);color:var(--black);padding:10px 22px}.about-social .social-link:hover{transform:translateY(-1px)}.footer-iris{pointer-events:none;background:radial-gradient(circle at 50% 128%,#ffca004d,#ffca0012 calc(var(--q,0) * 30vmax),transparent calc(var(--q,0) * 46vmax));position:absolute;top:0;right:0;bottom:0;left:0}@media(prefers-reduced-motion:reduce){.footer-iris{--q:1}}.footer{padding-top:120px}@media(min-width:1024px){.footer{padding-top:160px}}.footer>.container-site{z-index:1;position:relative}.footer-cta{gap:28px;padding-bottom:112px;display:grid}@media(min-width:1024px){.footer-cta{grid-template-columns:7fr 5fr;align-items:end;column-gap:8%}.footer-cta-side{justify-items:start;gap:28px;display:grid}}.footer-cta-side{justify-items:start;gap:24px;display:grid}.footer-title{font-size:var(--step-3);max-width:20ch;line-height:1.08}.footer-support{letter-spacing:-.02em;max-width:36ch;font-size:clamp(1rem,1.15vw,1.3125rem);font-weight:300;line-height:1.45}.footer-cta .btn-primary{min-height:clamp(3.25rem,4vw,4.5rem);font-size:clamp(1rem,1.4vw,1.5rem)}.footer-bar{border-top:1px solid;gap:24px;padding-block:32px 40px;font-size:.9375rem;display:grid}@media(min-width:1024px){.footer-bar{grid-template-columns:auto 1fr auto auto;align-items:center;gap:48px}}.footer-links,.social{flex-wrap:wrap;gap:12px 28px;margin:0;padding:0;list-style:none;display:flex}.social{gap:20px}.social-link{transition:color .3s var(--ease),transform .3s var(--ease);padding:4px;display:inline-flex}.footer .social-link:hover{color:var(--yellow)}.footer-copy{margin:0}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.sticky{position:sticky}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.h-16{height:calc(var(--spacing) * 16)}.w-full{width:100%}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.bg-accent{background-color:var(--color-accent)}.bg-ink{background-color:var(--color-ink)}.bg-paper{background-color:var(--color-paper)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.text-wrap{text-wrap:wrap}.text-accent{color:var(--color-accent)}.text-ink{color:var(--color-ink)}.text-paper{color:var(--color-paper)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-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))}@media(min-width:48rem){.md\:hidden{display:none}.md\:h-20{height:calc(var(--spacing) * 20)}.md\:flex-row{flex-direction:row}.md\:gap-10{gap:calc(var(--spacing) * 10)}}}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/poppins-latin-300-normal-Dku2WoCh.woff2)format("woff2"),url(/assets/poppins-latin-300-normal-DCNuMXUj.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-normal-cpxAROuN.woff2)format("woff2"),url(/assets/poppins-latin-400-normal-BOb3E3N0.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-600-normal-zEkxB9Mr.woff2)format("woff2"),url(/assets/poppins-latin-600-normal-BJdTmd5m.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-latin-700-normal-Qrb0O0WB.woff2)format("woff2"),url(/assets/poppins-latin-700-normal-BVuQR_eA.woff)format("woff")}:root{--black:#000;--white:#fff;--yellow:#ffca00;--ease:cubic-bezier(.65, 0, .35, 1);--radius-lg:clamp(16px, 1.3vw, 26px);--radius-md:clamp(12px, 1vw, 18px);--step-3:clamp(1.875rem, 3.2vw, 3.75rem);--step-4:clamp(2.25rem, 3.9vw, 4.5rem);--step-5:clamp(2.125rem, 4.4vw, 5.25rem);color-scheme:dark}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--black);color:var(--white);font-family:var(--font-sans);letter-spacing:-.02em;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.125rem;font-weight:300;line-height:1.5}h1,h2,h3{letter-spacing:-.04em;text-wrap:balance;margin:0;font-weight:600;line-height:1}.container-site{width:100%;max-width:1440px;margin-inline:auto;padding-inline:20px}@media(min-width:1024px){.container-site{padding-inline:48px}}p{text-wrap:pretty}::selection{background:var(--yellow);color:var(--black)}:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}.section[data-theme=light] :focus-visible,.section[data-theme=accent] :focus-visible,html[data-theme=light] .site-header :focus-visible,html[data-theme=accent] .site-header :focus-visible{outline-color:var(--black)}.skip-link{z-index:100;background:var(--yellow);color:var(--black);padding:12px 16px;font-weight:600;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:0s!important;transition-delay:0s!important;animation-duration:0s!important}.stage-hero-content{filter:none;transform:none}.stage .hero{opacity:clamp(0,calc(1 - var(--p,0) * 2),1);-webkit-mask-image:none;mask-image:none}.stage-method-content{transform:none}}.btn-primary:hover svg{animation:icon-pulse .7s var(--ease)}@keyframes icon-pulse{35%{transform:scale(1.25)rotate(-12deg)}70%{transform:scale(.95)rotate(4deg)}}@media(prefers-reduced-motion:no-preference){.stage:not([data-lit]) .pillar-circle{opacity:0;transform:scale(.6)}.stage[data-lit] .pillar-circle{animation:.7s cubic-bezier(.22,1,.36,1) backwards circle-in;animation-delay:calc(var(--n) * 90ms + 80ms)}}@keyframes circle-in{0%{opacity:0;transform:scale(.6)}}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.carousel-slide[data-depth="0"] .project-card,.portfolio-single .project-card{transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s var(--ease)}.carousel-slide[data-depth="0"] .project-card:after,.portfolio-single .project-card:after{content:"";pointer-events:none;background:radial-gradient(420px circle at var(--gx,50%) var(--gy,50%),#ffffff24,transparent 60%);opacity:0;transition:opacity .4s var(--ease);position:absolute;top:0;right:0;bottom:0;left:0}.carousel-slide[data-depth="0"] .project-card:hover:after,.portfolio-single .project-card:hover:after{opacity:1}}@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-group(*){animation-duration:.65s;animation-timing-function:cubic-bezier(.22,1,.36,1)}}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@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}
