.case-page{--case-accent:#1258ff;--case-reading-progress:0%;--case-progress-clearance:0px;--case-index-accent:color-mix(in srgb, var(--case-accent) 40%, #11110f);--case-step-ink:color-mix(in srgb, var(--case-accent) 44%, #11110f);--case-index-surface:color-mix(in srgb, var(--paper) 96%, white);--case-index-border:color-mix(in srgb, var(--ink) 24%, transparent);--case-index-line:color-mix(in srgb, var(--ink) 20%, transparent);background:var(--paper);color:#11110f;min-height:100vh;overflow-x:clip}.case-page a{color:inherit}.case-nav{z-index:50;border:1px solid var(--nav-border);background:var(--nav-surface);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);width:min(1180px,100% - 40px);height:68px;font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;border-radius:100px;grid-template-columns:1fr auto 1fr;align-items:center;margin:20px auto 0;padding:8px;font-size:10px;display:grid;position:sticky;top:20px;box-shadow:0 14px 46px #17181314}.case-nav-actions{justify-self:end;align-items:center;gap:10px;display:flex}.case-nav-project{flex-direction:column;justify-self:center;align-items:center;gap:2px;line-height:1.1;display:flex}.case-nav-project span{color:color-mix(in srgb, var(--ink) 52%, transparent);letter-spacing:.1em;font-size:7px}.case-nav-project strong{font-family:var(--font-geist-sans), sans-serif;letter-spacing:-.02em;font-size:12px}.case-page .case-logo{background:var(--inverse-control);width:44px;height:44px;color:var(--inverse-control-text);font-family:var(--font-geist-sans), sans-serif;letter-spacing:-.08em;border-radius:50%;justify-self:start;place-items:center;font-size:18px;font-weight:800;transition:background-color .18s,color .18s,transform .18s;display:grid}:is(.case-page .case-logo:hover,.case-page .case-logo:focus-visible){background:var(--case-accent);color:#11110f;transform:rotate(-7deg)scale(1.05)}.case-back{border:1px solid var(--line);background:var(--soft-control);border-radius:100px;align-items:center;gap:12px;height:44px;padding:0 15px 0 7px;transition:background-color .18s,color .18s,transform .18s;display:flex}.case-back span{background:var(--inverse-control);width:30px;height:30px;color:var(--inverse-control-text);font-variant-emoji:text;text-align:center;border-radius:50%;flex:0 0 30px;place-items:center;font-family:Arial,sans-serif;font-size:16px;line-height:1;transition:transform .18s;display:grid}:is(.case-back:hover,.case-back:focus-visible){background:var(--case-accent);color:#11110f;transform:translateY(-1px)}:is(.case-back:hover span,.case-back:focus-visible span){transform:translate(-2px)}.case-scroll-target{scroll-margin-top:0}.case-index{z-index:70;position:relative}.case-index-toggle{z-index:72;border:1px solid var(--line);background:var(--inverse-control);width:52px;height:52px;color:var(--inverse-control-text);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;border-radius:100px;justify-content:flex-end;align-items:center;gap:0;padding:7px;font-size:8px;font-weight:750;transition:width .3s cubic-bezier(.16,1,.3,1),gap .3s cubic-bezier(.16,1,.3,1),padding .3s cubic-bezier(.16,1,.3,1),background-color .2s,color .2s,transform .2s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;bottom:22px;right:20px;box-shadow:0 14px 42px #0003}.case-index-toggle-label{opacity:0;white-space:nowrap;max-width:0;transition:max-width .3s cubic-bezier(.16,1,.3,1),opacity .18s,transform .3s cubic-bezier(.16,1,.3,1);overflow:hidden;transform:translate(8px)}.case-index-toggle:hover,.case-index.is-open .case-index-toggle{background:var(--case-accent);color:#11110f;outline:none;gap:13px;width:116px;padding:7px 8px 7px 17px;transform:translateY(-3px)}.case-index-toggle:focus-visible{background:var(--case-accent);color:#11110f;outline:none;gap:13px;width:116px;padding:7px 8px 7px 17px;transform:translateY(-3px)}:is(.case-index-toggle:hover .case-index-toggle-label,.case-index-toggle:focus-visible .case-index-toggle-label,.case-index.is-open .case-index-toggle-label){opacity:1;max-width:52px;transform:translate(0)}.case-index-icon{background:color-mix(in srgb, currentColor 10%, transparent);border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:relative}.case-index-icon i{background:currentColor;width:14px;height:1px;transition:opacity .18s,transform .22s cubic-bezier(.16,1,.3,1);position:absolute;top:50%;left:50%}.case-index-icon i:first-child{transform:translate(-50%,calc(-50% - 5px))}.case-index-icon i:nth-child(2){transform:translate(-50%,-50%)}.case-index-icon i:last-child{transform:translate(-50%,calc(5px - 50%))}.case-index.is-open .case-index-icon i:first-child{transform:translate(-50%,-50%)rotate(45deg)}.case-index.is-open .case-index-icon i:nth-child(2){opacity:0}.case-index.is-open .case-index-icon i:last-child{transform:translate(-50%,-50%)rotate(-45deg)}.case-index-panel{z-index:71;border:1px solid var(--case-index-border);background:var(--case-index-surface);width:min(370px,100vw - 40px);max-height:min(72vh,660px);color:var(--ink);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-radius:26px;animation:.26s cubic-bezier(.16,1,.3,1) both case-index-enter;position:fixed;bottom:88px;right:20px;overflow:hidden;box-shadow:0 26px 80px #0000003d}.case-index-panel>header{border-bottom:1px solid var(--case-index-line);justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 18px 17px 22px;display:flex}.case-index-panel>header>div{flex-direction:column;gap:5px;display:flex}.case-index-panel>header span{color:var(--case-index-accent);font:8px var(--font-geist-mono), monospace;letter-spacing:.11em}.case-index-panel>header strong{letter-spacing:-.035em;font-size:20px}.case-index-panel>header button{border:1px solid var(--case-index-line);width:34px;height:34px;color:inherit;font-variant-emoji:text;text-align:center;background:0 0;border-radius:50%;flex:0 0 34px;place-items:center;padding:0;font-family:Arial,sans-serif;font-size:21px;line-height:1;transition:background-color .18s,color .18s,transform .18s;display:grid}:is(.case-index-panel>header button:hover,.case-index-panel>header button:focus-visible){background:var(--case-accent);color:#11110f;outline:none;transform:rotate(8deg)}.case-index-panel nav{scrollbar-color:var(--case-index-accent) transparent;scrollbar-width:thin;max-height:min(58vh,520px);padding:6px 18px 16px;overflow-y:auto}.case-index-panel nav a{border-bottom:1px solid var(--case-index-line);grid-template-columns:48px minmax(0,1fr);align-items:baseline;gap:4px;padding:13px 4px;transition:color .18s;display:grid;position:relative}.case-index-panel nav a.case-index-context>strong small{color:var(--case-index-accent);font:7px var(--font-geist-mono), monospace;letter-spacing:.08em;margin-bottom:3px;display:block}.case-index-panel nav a.case-index-context-last{border-bottom-color:color-mix(in srgb, var(--case-index-accent) 52%, var(--case-index-line));margin-bottom:6px}.case-index-panel nav a.case-index-gallery-link{border-top:1px solid color-mix(in srgb, var(--case-index-accent) 62%, var(--case-index-line));border-bottom:0;margin-top:12px;padding-top:20px}.case-index-panel nav a:last-child{border-bottom:0}.case-index-panel nav a>span{color:var(--case-index-accent);font:8px var(--font-geist-mono), monospace;letter-spacing:.08em}.case-index-panel nav a>strong{font-size:13px;font-weight:570;line-height:1.25}:is(.case-index-panel nav a:hover,.case-index-panel nav a:focus-visible){color:var(--case-index-accent);background:0 0;outline:none}@keyframes case-index-enter{0%{opacity:0;transform:translateY(14px)scale(.98)}}.case-hero{isolation:isolate;width:min(1440px,100% - 64px);padding:72px 0 92px var(--case-progress-clearance);margin:0 auto;position:relative}.case-hero:before{content:"";z-index:-1;border-top:1px solid var(--workbench-line-medium);background:repeating-linear-gradient(90deg, var(--workbench-line-strong) 0 1px, transparent 1px 24px) top / 100% 9px no-repeat;opacity:.76;pointer-events:none;height:10px;position:absolute;top:28px;left:0;right:0}.case-hero-meta{border-bottom:1px solid var(--line);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;margin-bottom:34px;padding-bottom:13px;font-size:10px;display:flex}.case-hero h1{letter-spacing:-.075em;max-width:1250px;margin:0;font-size:clamp(68px,8.5vw,138px);font-weight:520;line-height:.88}.case-hero h1:first-line{color:var(--case-accent)}.case-hero-bottom{grid-template-columns:minmax(300px,600px) auto;justify-content:space-between;align-items:end;gap:48px;margin-top:72px;display:grid}.case-hero-bottom>p{letter-spacing:-.025em;margin:0;font-size:clamp(19px,2vw,28px);line-height:1.34}.case-primary-link,.case-status{min-height:60px;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;border:1px solid;border-radius:100px;align-items:center;gap:28px;padding:0 23px;font-size:10px;display:flex}.case-page .case-primary-link{background:var(--case-accent);border-color:var(--case-accent);color:#090a08;min-height:76px;box-shadow:0 14px 34px color-mix(in srgb, var(--case-accent) 30%, transparent), 0 0 0 1px #11110f3d;gap:24px;padding:9px 10px 9px 22px;font-weight:750;transition:background-color .22s,border-color .22s,color .22s,box-shadow .22s,transform .22s cubic-bezier(.16,1,.3,1)}:is(.case-page .case-primary-link:hover,.case-page .case-primary-link:focus-visible){border-color:var(--case-accent);color:var(--case-accent);box-shadow:0 18px 38px color-mix(in srgb, var(--case-accent) 34%, transparent);background:#11110f;outline:none;transform:translateY(-4px)}.case-primary-link-copy{flex-direction:column;gap:4px;display:flex}.case-primary-link-copy small{letter-spacing:.11em;opacity:.64;font-size:7px;font-weight:650}.case-primary-link-copy strong{letter-spacing:.08em;font-size:11px;font-weight:800}.case-primary-link-arrow{width:48px;height:48px;color:var(--case-accent);font-variant-emoji:text;text-align:center;background:#11110f;border-radius:50%;flex:0 0 48px;place-items:center;font-family:Arial,sans-serif;font-size:22px;line-height:1;transition:transform .22s cubic-bezier(.16,1,.3,1);display:grid}:is(.case-primary-link:hover .case-primary-link-arrow,.case-primary-link:focus-visible .case-primary-link-arrow){background:var(--case-accent);color:#11110f;transform:translate(3px,-3px)}.case-status{color:#4f514c}.case-status:first-letter{color:var(--case-accent)}.case-showcase{width:min(1540px,100% - 32px);min-height:760px;padding:58px clamp(42px,5vw,78px);padding-left:calc(clamp(42px, 5vw, 78px) + var(--case-progress-clearance));isolation:isolate;background:#071d21;border-radius:34px;place-items:center;margin:0 auto;display:grid;position:relative;overflow:hidden}.case-board-and-chill .case-showcase{background:#07160d}.case-echoquest .case-showcase{background:#090d10}.case-mitad-y-mitad .case-showcase{background:#285b5f}.case-showcase:before{content:"";z-index:-1;opacity:.3;background-image:linear-gradient(#ffffff12 1px,#0000 1px),linear-gradient(90deg,#ffffff12 1px,#0000 1px);background-size:54px 54px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 88%);mask-image:linear-gradient(#000,#0000 88%)}.case-cover{grid-template-columns:minmax(190px,.32fr) minmax(0,1.68fr);align-items:stretch;gap:clamp(32px,5vw,78px);width:min(1370px,100%);min-height:620px;display:grid;position:relative}.case-cover-copy{z-index:4;flex-direction:column;align-items:flex-start;padding:22px 0;display:flex;position:relative}.case-cover-copy>span{max-width:24ch;color:var(--case-accent);font:9px/1.5 var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase}.case-cover-copy strong{color:#f4f1e9;letter-spacing:-.075em;text-shadow:0 10px 34px #00000047;writing-mode:vertical-rl;margin-top:auto;font-size:clamp(52px,6.5vw,104px);font-weight:560;line-height:.83;transform:rotate(180deg)}.case-cover-copy p{color:#f4f1e99e;font:9px/1.5 var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;margin:26px 0 0}.case-cover-screens{min-width:0;height:620px;min-height:0;position:relative}.case-cover-screen{background:#11110f;border:1px solid #ffffff3d;min-width:0;min-height:0;margin:0;position:relative;overflow:hidden;box-shadow:0 28px 76px #0000005c}.case-cover-screen img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.case-cover-screen figcaption{z-index:2;color:#f4f1e9;font:8px var(--font-geist-mono), monospace;letter-spacing:.06em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080807ad;border:1px solid #ffffff2e;border-radius:100px;align-items:center;gap:10px;padding:10px 12px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.case-cover-screen figcaption span{color:var(--case-accent)}.case-cover.is-web .case-cover-screens{grid-template-rows:repeat(12,minmax(0,1fr));grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.case-cover.is-web .case-cover-screen{border-radius:18px}.case-cover.is-web .case-cover-screen-1{z-index:3;grid-area:3/1/11/11}.case-cover.is-web .case-cover-screen-2{z-index:1;filter:brightness(.72);grid-area:1/5/7/13}.case-cover.is-web .case-cover-screen-3{z-index:4;grid-area:9/4/13/12}.case-cover.is-mobile .case-cover-screens{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:16px;display:grid}.case-cover.is-mobile .case-cover-screen{border:7px solid #171817;border-radius:30px;width:100%;height:82%}.case-cover.is-mobile .case-cover-screen-1{z-index:3;grid-area:1/2;height:94%}.case-cover.is-mobile .case-cover-screen-2{grid-area:1/1}.case-cover.is-mobile .case-cover-screen-3{grid-area:1/3}.case-watermark{z-index:-1;color:#ffffff14;letter-spacing:-.09em;white-space:nowrap;max-width:96%;font-size:clamp(100px,19vw,310px);font-weight:800;line-height:.78;position:absolute;top:5%;left:3%}.case-mitad-y-mitad .case-watermark{color:#ffffff47}.case-browser{background:#e9eeec;border:1px solid #ffffff40;border-radius:22px;width:min(1120px,92%);overflow:hidden;transform:perspective(1500px)rotateX(3deg)rotateY(-5deg);box-shadow:0 60px 120px #00000073}.case-browser-board-and-chill{transform:perspective(1500px)rotateX(3deg)rotateY(5deg)}.case-browser-bar{color:#5f6762;height:50px;font-family:var(--font-geist-mono), monospace;grid-template-columns:1fr 2fr 1fr;align-items:center;padding:0 18px;font-size:9px;display:grid}.case-browser-bar>div{gap:7px;display:flex}.case-browser-bar i{background:#ff755d;border-radius:50%;width:9px;height:9px}.case-browser-bar i:nth-child(2){background:#f0c449}.case-browser-bar i:nth-child(3){background:#49bb80}.case-browser-bar span{text-align:center}.case-browser-bar b{font-variant-emoji:text;text-align:center;justify-self:end;place-items:center;width:24px;height:24px;font-family:Arial,sans-serif;font-size:16px;line-height:1;display:grid}.case-browser img{width:100%;display:block}.case-app-visual{place-items:center;width:min(960px,94%);height:620px;display:grid;position:relative}.case-app-glow{background:radial-gradient(circle, color-mix(in srgb, var(--case-accent) 60%, transparent), transparent 68%);filter:blur(10px);border-radius:50%;width:520px;height:520px;position:absolute}.case-app-visual>img{z-index:3;border-radius:22%;width:190px;position:absolute;top:13%;left:5%;transform:rotate(-9deg);box-shadow:0 30px 70px #00000061}.case-app-device{z-index:2;color:#f7f4ef;background:#111315;border:9px solid #252629;border-radius:52px;width:330px;height:650px;padding:27px 24px;position:relative;transform:rotate(5deg);box-shadow:0 55px 100px #00000073}.case-app-mitad-y-mitad .case-app-device{color:#1f5b61;background:linear-gradient(#effcff,#fefbf4);border-color:#ffffffd9}.case-device-status,.case-device-brand,.case-device-focus,.case-device-list,.case-device-nav{z-index:1;position:relative}.case-device-status{font-family:var(--font-geist-mono), monospace;justify-content:space-between;font-size:8px;display:flex}.case-device-brand{flex-direction:column;margin-top:44px;display:flex}.case-device-brand small{color:var(--case-accent);font:8px var(--font-geist-mono), monospace;text-transform:uppercase}.case-device-brand strong{letter-spacing:-.06em;margin-top:5px;font-size:35px}.case-device-focus{border:1px solid color-mix(in srgb, var(--case-accent) 45%, transparent);background:color-mix(in srgb, var(--case-accent) 11%, transparent);border-radius:19px;flex-direction:column;gap:7px;margin-top:25px;padding:20px;display:flex}.case-device-focus span{font:8px var(--font-geist-mono), monospace;color:var(--case-accent)}.case-device-focus strong{font-size:21px}.case-device-list{gap:10px;margin-top:20px;display:grid}.case-device-list>div{background:#ffffff0e;border-radius:14px;align-items:center;gap:13px;min-height:58px;padding:0 13px;font-size:12px;display:flex}.case-app-mitad-y-mitad .case-device-list>div{background:#53bdbe17}.case-device-list i{background:var(--case-accent);color:#081413;width:28px;height:28px;font:7px var(--font-geist-mono), monospace;border-radius:50%;place-items:center;display:grid}.case-device-nav{background:#ffffff12;border-radius:16px;justify-content:space-around;align-items:center;height:48px;display:flex;position:absolute;bottom:24px;left:24px;right:24px}.case-app-mitad-y-mitad .case-device-nav{background:#53bdbe1f}.case-device-nav i{background:var(--case-accent);border-radius:50%;width:8px;height:8px}.case-app-label{color:#fff9;font:10px/1.6 var(--font-geist-mono), monospace;letter-spacing:.1em;text-align:right;position:absolute;bottom:7%;right:2%}.case-app-mitad-y-mitad .case-app-label{color:#13585bb3}.case-details{isolation:isolate;width:min(1440px,100% - 64px);padding:110px 0 48px var(--case-progress-clearance);margin:0 auto;position:relative}.case-details:before{content:"";z-index:-1;background-image:radial-gradient(circle, var(--workbench-line-soft) 0 1px, transparent 1.25px);opacity:.72;pointer-events:none;background-size:24px 24px;position:absolute;inset:58px 0 80px;-webkit-mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000);mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000)}.case-facts{border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:32px;padding-bottom:80px;display:grid}.case-facts div{flex-direction:column;gap:10px;display:flex}.case-facts span,.case-chapter header>span,.case-highlights-head>span,.case-next-exploration>span,.case-footer-head>span{font-family:var(--font-geist-mono), monospace;letter-spacing:.09em;font-size:9px}.case-facts strong{max-width:330px;font-size:16px;font-weight:530}.case-chapters{padding-top:54px}.case-chapter{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(56px,6vw,96px);padding:90px 0;display:grid}.case-chapter header{align-self:start;min-width:0;container-type:inline-size}.case-chapter header>span{color:var(--case-accent)}.case-chapter h2,.case-highlights h2{letter-spacing:-.065em;margin:28px 0 0;font-weight:520;line-height:.92}.case-chapter h2{overflow-wrap:break-word;text-wrap:balance;max-width:100%;font-size:clamp(44px,14cqi,76px)}.case-highlights h2{font-size:clamp(48px,6vw,86px)}.case-chapter-body{max-width:790px}.case-chapter-body>p{color:#4b4b46;margin:0;font-size:clamp(17px,1.45vw,21px);line-height:1.65}.case-chapter-body>p+p{margin-top:22px}.case-chapter blockquote{color:color-mix(in srgb, var(--case-accent) 75%, currentColor);letter-spacing:-.035em;background:0 0;border:0;margin:44px 0 0;padding:10px 0 10px clamp(52px,6vw,84px);font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,2.6vw,38px);font-style:italic;font-weight:400;line-height:1.2;position:relative}.case-chapter blockquote:before{content:"“";color:var(--case-accent);font-size:clamp(68px,8vw,110px);font-style:normal;line-height:1;position:absolute;top:-18px;left:0}.case-flow{border-top:1px solid color-mix(in srgb, var(--case-accent) 62%, transparent);border-bottom:1px solid color-mix(in srgb, var(--case-accent) 62%, transparent);color:color-mix(in srgb, var(--case-accent) 78%, #11110f);font-family:var(--font-geist-mono), monospace;letter-spacing:.025em;margin-top:42px;padding:26px 0;font-size:clamp(12px,1.25vw,16px);font-weight:650;line-height:1.7}.case-bullets,.case-modules ul{margin:40px 0 0;padding:0;list-style:none}.case-bullets{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;display:grid}.case-bullets li,.case-modules li{border-bottom:1px solid var(--line);padding:15px 10px 15px 20px;font-size:14px;line-height:1.45;position:relative}.case-bullets li:before,.case-modules li:before{content:"";background:var(--case-accent);border-radius:50%;width:5px;height:5px;position:absolute;top:21px;left:0}.case-modules{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:48px;display:grid}.case-modules section{border-bottom:1px solid var(--line);background:0 0;padding:34px 36px 42px 0}.case-modules section:nth-child(odd){border-right:1px solid var(--line)}.case-modules section:nth-child(2n){padding-left:36px;padding-right:0}.case-modules section:last-child:nth-child(odd){border-right:0;grid-column:1/-1;padding-right:0}.case-modules h3{letter-spacing:-.035em;max-width:340px;margin:0 0 22px;font-size:clamp(21px,2vw,29px)}.case-modules p,.case-modules ul{color:#4b4b46;font-size:14px;line-height:1.6}.case-modules p{margin:0}.case-modules ul{margin-top:0}.case-modules li{border-bottom:0;padding-top:9px;padding-bottom:9px}.case-modules li:before{top:16px}.case-next-exploration{padding:120px max(32px,50vw - 720px);padding-left:calc(max(32px, calc((100vw - 1440px) / 2)) + var(--case-progress-clearance));background:color-mix(in srgb, var(--case-accent) 16%, var(--paper));color:var(--ink)}.case-next-exploration h2{letter-spacing:-.07em;max-width:900px;margin:34px 0;font-size:clamp(58px,8vw,118px);font-weight:520;line-height:.92}.case-next-exploration p{max-width:760px;margin:0;font-size:clamp(18px,2vw,27px);line-height:1.5}.case-gallery{padding:96px max(32px,50vw - 720px) 104px;padding-left:calc(max(32px, calc((100vw - 1440px) / 2)) + var(--case-progress-clearance));background-color:color-mix(in srgb, var(--case-accent) 9%, var(--paper-deep));background-image:linear-gradient(var(--workbench-line-medium) 1px, transparent 1px), linear-gradient(90deg, var(--workbench-line-medium) 1px, transparent 1px);color:#11110f;background-position:top;background-size:64px 64px;grid-template-columns:minmax(260px,.72fr) minmax(0,1.8fr);align-items:stretch;gap:clamp(36px,4.5vw,76px);display:grid}.case-gallery-head{border-right:1px solid color-mix(in srgb, var(--case-accent) 44%, var(--workbench-line-medium));grid-template-rows:auto minmax(0,1fr);gap:36px;min-width:0;margin:0;padding:20px clamp(24px,3vw,48px) 20px 0;display:grid}.case-gallery-head>span{color:color-mix(in srgb, var(--case-accent) 78%, #11110f);font:9px var(--font-geist-mono), monospace;letter-spacing:.11em;padding-top:0}.case-gallery-head>div{align-self:center}.case-gallery-head h2{letter-spacing:-.07em;max-width:8ch;margin:0;font-size:clamp(48px,4.6vw,78px);font-weight:530;line-height:.88}.case-gallery-head p{color:#4b4b46;max-width:34ch;margin:24px 0 0;font-size:clamp(14px,1.15vw,17px);line-height:1.5}.case-gallery-carousel{--gallery-count:1;touch-action:pan-y}.case-gallery-carousel-stage{overscroll-behavior-x:contain;scrollbar-color:var(--case-accent) transparent;scrollbar-width:thin;align-items:stretch;gap:clamp(5px,.55vw,9px);min-width:0;height:clamp(480px,44vw,620px);padding:1px;display:flex;overflow-x:auto}.case-gallery-carousel.is-mobile .case-gallery-carousel-stage{max-width:100%}.case-gallery-carousel-button{background:color-mix(in srgb, var(--case-accent) 18%, #f4f1e9);color:#11110f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #11110f7a;border-radius:50%;place-items:center;width:48px;height:48px;padding:0;transition:background-color .18s,color .18s,transform .22s cubic-bezier(.16,1,.3,1);display:grid;position:relative;box-shadow:0 8px 22px #11110f24}:is(.case-gallery-carousel-button:hover,.case-gallery-carousel-button:focus-visible){background:var(--case-accent);color:#11110f;outline:none;transform:scale(1.06)}.case-gallery-carousel-button .case-gallery-arrow{width:20px;height:20px}.case-gallery-mobile-controls{display:none}.case-gallery-carousel-status{color:color-mix(in srgb, var(--case-accent) 58%, #11110f);font:8px var(--font-geist-mono), monospace;letter-spacing:.1em;grid-template-columns:auto minmax(56px,140px) auto;align-items:center;gap:12px;display:grid}.case-gallery-carousel-status i{opacity:.48;background:currentColor;height:1px;display:block}.case-gallery-item{height:100%;min-width:max(68px, calc(440px / var(--gallery-count)));color:#f4f1e9;text-align:left;isolation:isolate;background:#171715;border:1px solid #11110f2e;border-radius:8px;flex:1 1 0;grid-template-rows:auto minmax(0,1fr) auto;padding:0;transition:flex-grow .64s cubic-bezier(.22,1,.36,1),min-width .64s cubic-bezier(.22,1,.36,1),background-color .22s,border-color .22s,box-shadow .3s;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 34px #11110f14}.case-gallery-item.is-active{flex-grow:clamp(2.6, calc(var(--gallery-count) * .64), 4.8);border-color:color-mix(in srgb, var(--case-accent) 66%, #11110f);min-width:min(100%,300px);box-shadow:0 20px 42px #11110f29}.case-gallery-panel-index{min-height:54px;color:color-mix(in srgb, var(--case-accent) 80%, white);font:8px var(--font-geist-mono), monospace;letter-spacing:.1em;white-space:nowrap;padding:18px 16px 12px;display:block}.case-gallery-frame{background:#11110f;min-height:0;display:block;position:relative;overflow:hidden}.case-gallery-frame:after{content:"";pointer-events:none;background:#0505046b;transition:background-color .56s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.case-gallery-frame img{object-fit:cover;object-position:top center;filter:brightness(.16)saturate(.58);opacity:.88;width:100%;height:100%;transition:transform .64s cubic-bezier(.22,1,.36,1),filter .56s cubic-bezier(.22,1,.36,1),opacity .56s;animation:.36s both case-gallery-slide-enter;display:block;transform:scale(1.06)}.case-gallery-item.is-active .case-gallery-frame:after{background:#0505040a}.case-gallery-item.is-active .case-gallery-frame img{filter:brightness()saturate();opacity:1;transform:scale(1)}.case-gallery-carousel.is-mobile .case-gallery-frame img{object-fit:contain;object-position:center}:is(.case-gallery-item:hover,.case-gallery-item:focus-visible){border-color:color-mix(in srgb, var(--case-accent) 72%, #11110f);outline:none}:is(.case-gallery-item.is-active:hover .case-gallery-frame img,.case-gallery-item.is-active:focus-visible .case-gallery-frame img){filter:brightness(.94)saturate();transform:scale(1.015)}.case-gallery-item:focus-visible{outline:2px solid var(--case-accent);outline-offset:-3px}.case-gallery-meta{pointer-events:none;border-top:1px solid #ffffff1f;min-height:122px;padding:17px 15px 19px;display:block}.case-gallery-meta b{color:#fff;letter-spacing:-.02em;overflow-wrap:anywhere;font-size:clamp(10px,.9vw,13px);font-weight:670;line-height:1.12;display:block}.case-gallery-meta i{color:#ffffff94;max-height:0;font:8px var(--font-geist-mono), monospace;letter-spacing:.01em;opacity:0;margin-top:0;font-style:normal;line-height:1.38;transition:max-height .36s,margin-top .36s,opacity .22s;display:block;overflow:hidden}.case-gallery-item.is-active .case-gallery-meta i{opacity:1;max-height:7em;margin-top:10px}.case-gallery-lightbox{--viewer-bg:#ebe8e0f7;--viewer-surface:#faf8f2e0;--viewer-stage:#d8d5cd;--viewer-panel:#fbf8f0;--viewer-ink:#11110f;--viewer-muted:#5d5b55;--viewer-border:#11110f2e;--viewer-control:#11110f;--viewer-control-ink:#f7f4ec;--viewer-shadow:#11110f33;z-index:300;background:radial-gradient(circle at 82% 14%, color-mix(in srgb, var(--case-accent) 12%, transparent), transparent 28%), var(--viewer-bg);color:var(--viewer-ink);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);place-items:center;padding:86px clamp(72px,6vw,112px) 28px;transition:background-color .3s,color .3s;animation:.24s both case-gallery-in;display:grid;position:fixed;inset:0}@keyframes case-gallery-in{0%{opacity:0}}.case-gallery-lightbox>header{z-index:2;border:1px solid var(--viewer-border);background:var(--viewer-surface);min-height:50px;font:9px var(--font-geist-mono), monospace;letter-spacing:.09em;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:100px;justify-content:space-between;align-items:center;gap:24px;padding:5px 6px 5px 18px;display:flex;position:absolute;top:18px;left:clamp(24px,4vw,64px);right:clamp(24px,4vw,64px)}.case-gallery-backdrop{z-index:0;cursor:zoom-out;background:0 0;border:0;padding:0;position:absolute;inset:0}.case-gallery-lightbox>header>span{align-items:center;min-height:38px;line-height:1.2;display:inline-flex}.case-gallery-close{background:var(--viewer-control);width:38px;height:38px;color:var(--viewer-control-ink);border:0;border-radius:50%;flex:0 0 38px;padding:0;transition:background-color .18s,transform .18s;position:relative}.case-gallery-close span,.case-gallery-close span:after{content:"";background:currentColor;width:18px;height:2px;display:block;position:absolute;top:18px;left:10px;transform:rotate(45deg)}.case-gallery-close span:after{top:0;left:0;transform:rotate(90deg)}:is(.case-gallery-close:hover,.case-gallery-close:focus-visible){background:var(--case-accent);color:#11110f;box-shadow:0 0 0 3px color-mix(in srgb, var(--case-accent) 32%, transparent);outline:none;transform:rotate(5deg)scale(1.06)}.case-gallery-lightbox figure{z-index:1;grid-template-columns:minmax(0,1fr) minmax(280px,340px);justify-content:center;align-items:stretch;gap:14px;width:min(1540px,100%);height:calc(100svh - 114px);margin:0;display:grid;position:relative}.case-gallery-image-stage{border:1px solid var(--viewer-border);background:var(--viewer-stage);overscroll-behavior:contain;scrollbar-width:thin;min-width:0;min-height:0;box-shadow:0 30px 100px var(--viewer-shadow);border-radius:24px;padding:clamp(14px,2.2vw,32px);display:block;overflow:auto}.case-gallery-image-stage.is-zoomed{cursor:grab;touch-action:none}.case-gallery-image-stage.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.case-gallery-image-canvas{place-items:center;min-width:100%;min-height:100%;display:grid}.case-gallery-image-stage img{object-fit:contain;max-width:100%;max-height:calc(100svh - 178px);box-shadow:0 24px 70px var(--viewer-shadow);cursor:zoom-in;transform-origin:50%;-webkit-user-select:none;user-select:none;border-radius:8px;margin:auto;transition:transform .18s;display:block}.case-gallery-lightbox figcaption{background:var(--viewer-panel);min-width:0;color:var(--viewer-ink);border-radius:24px;flex-direction:column;padding:32px;display:flex}.case-gallery-lightbox figcaption>span{color:color-mix(in srgb, var(--case-accent) 50%, var(--viewer-ink));font:8px var(--font-geist-mono), monospace;letter-spacing:.1em}.case-gallery-lightbox figcaption h2{letter-spacing:-.055em;margin:24px 0 18px;font-size:clamp(30px,3.2vw,52px);font-weight:540;line-height:.95}.case-gallery-lightbox figcaption p{color:var(--viewer-muted);margin:0;font-size:14px;line-height:1.55}.case-gallery-zoom{border-top:1px solid var(--viewer-border);grid-template-columns:38px 58px 38px 1fr;justify-content:center;align-items:center;gap:8px;margin-top:auto;padding-top:28px;display:grid}.case-gallery-zoom button,.case-gallery-zoom output{border:1px solid var(--viewer-border);height:38px;color:inherit;font:10px var(--font-geist-mono), monospace;background:0 0;border-radius:100px;place-items:center;display:grid}.case-gallery-zoom button:hover:not(:disabled){border-color:var(--case-accent);background:var(--case-accent);color:#11110f;outline:none}.case-gallery-zoom button:focus-visible{border-color:var(--case-accent);background:var(--case-accent);color:#11110f;outline:none}.case-gallery-zoom button:disabled{cursor:default;opacity:.32}.case-gallery-zoom .case-gallery-zoom-reset{padding:0 14px}.case-gallery-nav{z-index:2;border:1px solid var(--viewer-border);background:var(--viewer-control);width:52px;height:52px;color:var(--viewer-control-ink);box-shadow:0 10px 34px var(--viewer-shadow);border-radius:50%;place-items:center;padding:0;transition:background-color .18s,color .18s,transform .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.case-gallery-prev{left:clamp(10px,2vw,30px)}.case-gallery-next{right:clamp(10px,2vw,30px)}.case-gallery-arrow{width:24px;height:14px;margin:auto;display:block;position:relative}.case-gallery-arrow:before,.case-gallery-arrow:after{content:"";position:absolute}.case-gallery-arrow:before{background:currentColor;width:21px;height:2px;top:6px;left:1px}.case-gallery-arrow:after{border-top:2px solid;border-right:2px solid;width:8px;height:8px;top:2px;right:1px;transform:rotate(45deg)}.case-gallery-arrow-prev{transform:rotate(180deg)}:is(.case-gallery-nav:hover,.case-gallery-nav:focus-visible){background:var(--case-accent);color:#11110f;box-shadow:0 0 0 3px color-mix(in srgb, var(--case-accent) 32%, transparent);outline:none;transform:translateY(-50%)scale(1.06)}.case-highlights{padding:88px max(32px,50vw - 720px) 120px;padding-left:calc(max(32px, calc((100vw - 1440px) / 2)) + var(--case-progress-clearance));color:#f4f1e9;background:#10100f}.case-highlights-head h2{margin-bottom:85px}.case-highlights-head em{color:var(--case-accent);font-family:Georgia,serif;font-weight:400}.case-highlights-grid{border-top:1px solid #ffffff47;grid-template-columns:repeat(4,1fr);display:grid}.case-highlights-grid article{isolation:isolate;border-right:1px solid #ffffff2e;min-height:310px;padding:28px;transition:color .38s;position:relative;overflow:hidden}.case-highlights-grid article:before{content:"";z-index:0;background:var(--case-accent);opacity:0;transition:opacity .38s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.case-highlights-grid article>*{z-index:1;position:relative}.case-highlights-grid article:last-child{border-right:0}.case-highlights-grid article>span{color:var(--case-accent);font:10px var(--font-geist-mono), monospace;transition:color .38s;display:inline-block}.case-highlights-grid h3{letter-spacing:-.035em;margin:85px 0 15px;font-size:24px}.case-highlights-grid p{color:#ffffff94;max-width:250px;margin:0;font-size:14px;line-height:1.55;transition:color .38s}.case-highlights-grid article:hover:before{opacity:1}.case-highlights-grid article:hover,.case-highlights-grid article:hover>span,.case-highlights-grid article:hover p{color:#11110f}.case-footer{min-height:100svh;padding:130px max(32px,50vw - 720px) 34px;padding-left:calc(max(32px, calc((100vw - 1440px) / 2)) + var(--case-progress-clearance));background:var(--next-case-accent,var(--case-accent));color:#11110f;grid-template-rows:auto minmax(0,1fr) auto;display:grid}.case-footer-head{display:block}.case-next-project{letter-spacing:-.075em;justify-content:space-between;align-self:center;align-items:center;gap:32px;margin:34px 0;padding:24px 0 34px;font-size:clamp(72px,12vw,180px);font-weight:570;line-height:.9;display:flex}.case-next-project>span{overflow-wrap:anywhere;min-width:0;transition:transform .3s cubic-bezier(.16,1,.3,1)}.case-next-project>i{border:1px solid #11110f8c;border-radius:50%;flex:none;place-items:center;width:clamp(64px,8vw,112px);height:clamp(64px,8vw,112px);font-style:normal;transition:background-color .22s,color .22s,transform .3s cubic-bezier(.16,1,.3,1);display:grid;position:relative}.case-next-arrow-icon{clip-path:polygon(0 47%,63% 47%,51% 34%,57% 28%,100% 50%,57% 72%,51% 66%,63% 53%,0 53%);background:currentColor;width:42%;height:42%;display:block}:is(.case-next-project:hover>span,.case-next-project:focus-visible>span){transform:translate(12px)}:is(.case-next-project:hover>i,.case-next-project:focus-visible>i){color:var(--next-case-accent,var(--case-accent));background:#11110f;transform:rotate(-35deg)scale(1.06)}.case-next-project:focus-visible{outline-offset:7px;outline:2px solid #11110f}.case-footer-meta{font:9px var(--font-geist-mono), monospace;letter-spacing:.08em;border-top:1px solid #11110f59;justify-content:space-between;padding-top:24px;display:flex}.case-footer-meta a{position:relative}.case-footer-meta a:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .22s;position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(0)}.case-footer-meta a:hover:after{transform-origin:0;transform:scaleX(1)}.case-footer-meta a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.case-reading-progress{z-index:45;width:46px;color:var(--ink);font-family:var(--font-geist-mono), monospace;pointer-events:none;flex-direction:column;align-items:center;gap:10px;transition:color .2s,text-shadow .2s;display:flex;position:fixed;top:50%;left:14px;transform:translateY(-50%)}.case-reading-progress>span{letter-spacing:.08em;white-space:nowrap;font-size:7px}.case-reading-progress>i{background:color-mix(in srgb, var(--ink) 18%, transparent);width:2px;height:112px;transition:background-color .2s;display:block;position:relative;overflow:hidden}.case-reading-progress>i>b{height:var(--case-reading-progress);background:var(--case-accent);transition:height .12s linear,background-color .2s,box-shadow .2s;display:block;position:absolute;top:0;left:0;right:0}.case-reading-progress>strong{max-height:132px;color:color-mix(in srgb, var(--ink) 64%, transparent);letter-spacing:.07em;text-transform:uppercase;writing-mode:vertical-rl;font-size:7px;font-weight:600;line-height:1.25;transition:color .2s;overflow:hidden}.case-reading-progress.is-on-dark{color:#f4f1e9;text-shadow:0 1px 12px #0000006b}.case-reading-progress.is-on-dark>i{background:#ffffff4d}.case-reading-progress.is-on-dark>i>b{background:color-mix(in srgb, var(--case-accent) 76%, white);box-shadow:0 0 10px color-mix(in srgb, var(--case-accent) 38%, transparent)}.case-reading-progress.is-on-dark>strong{color:#ffffffd6}.case-index-panel nav a.is-active,.case-index-panel nav a[aria-current=location]{color:var(--case-index-accent);background:0 0}.case-index-panel nav a.is-active:before,.case-index-panel nav a[aria-current=location]:before{content:"";background:var(--case-accent);width:2px;position:absolute;top:11px;bottom:11px;left:-1px}.case-index-panel nav a.is-active>strong,.case-index-panel nav a[aria-current=location]>strong{font-weight:680}.case-index-panel nav a.is-active>span,.case-index-panel nav a.is-active>strong small,.case-index-panel nav a[aria-current=location]>span,.case-index-panel nav a[aria-current=location]>strong small{color:var(--case-index-accent)}.case-motion-ready .case-reveal{opacity:0;transition:opacity .68s,transform .76s cubic-bezier(.16,1,.3,1);transform:translateY(32px)}.case-motion-ready .case-reveal.is-visible{opacity:1;transform:translateY(0)}.case-motion-ready .case-stagger>*{opacity:0;transition:opacity .52s,transform .64s cubic-bezier(.16,1,.3,1);transform:translateY(18px)}.case-motion-ready .case-reveal.is-visible.case-stagger>*,.case-motion-ready .case-reveal.is-visible .case-stagger>*{opacity:1;transform:translateY(0)}.case-motion-ready .case-stagger>:nth-child(2){transition-delay:70ms}.case-motion-ready .case-stagger>:nth-child(3){transition-delay:.14s}.case-motion-ready .case-stagger>:nth-child(4){transition-delay:.21s}.case-motion-ready .case-stagger>:nth-child(5){transition-delay:.28s}.case-motion-ready .case-stagger>:nth-child(n+6){transition-delay:.34s}.case-cover-screen{transition:opacity .62s ease var(--case-screen-delay), transform .72s cubic-bezier(.16, 1, .3, 1) var(--case-screen-delay), filter .3s ease}.case-motion-ready .case-showcase:not(.is-visible) .case-cover-screen{opacity:0;transform:translateY(28px)scale(.965)}.case-project-motif{z-index:7;pointer-events:none;position:absolute}.case-motif-abogato{width:126px;height:94px;top:22px;right:1%}.case-motif-abogato>i{background:#f6f4edeb;border:1px solid #ffffff52;border-radius:8px;width:68px;height:84px;position:absolute;box-shadow:0 12px 30px #0000002e}.case-motif-abogato>i:before,.case-motif-abogato>i:after{content:"";background:#11110f38;height:1px;position:absolute;left:12px;right:12px}.case-motif-abogato>i:before{top:25px;box-shadow:0 12px #11110f2e,0 24px #11110f2e}.case-motif-abogato>i:after{top:13px;right:34px}.case-motif-abogato>i:first-child{left:2px;transform:rotate(-9deg)}.case-motif-abogato>i:nth-child(2){left:25px;transform:rotate(4deg)}.case-motif-abogato>i:nth-child(3){left:48px;transform:rotate(12deg)}.case-motif-abogato>span{border:2px solid var(--case-accent);color:var(--case-accent);font:700 8px var(--font-geist-mono), monospace;letter-spacing:.1em;background:#071d21f5;border-radius:5px;padding:8px 10px;position:absolute;bottom:-8px;right:-5px;transform:rotate(-8deg);box-shadow:0 8px 22px #00000047}.case-showcase.is-visible .case-motif-abogato>span{animation:4.8s cubic-bezier(.16,1,.3,1) .7s infinite case-motif-stamp}.case-motif-board{width:150px;height:100px;top:18px;right:1%}.case-motif-board>i{color:#11110f;border:2px solid #fff9;border-radius:11px;place-items:center;width:64px;height:88px;font-style:normal;display:grid;position:absolute;box-shadow:0 14px 30px #0000003d}.case-motif-board>i:first-child{background:#ff755d;left:2px;transform:rotate(-12deg)}.case-motif-board>i:nth-child(2){background:#dfff54;left:42px;transform:rotate(2deg)}.case-motif-board>i:last-child{background:#8290ff;left:82px;transform:rotate(13deg)}.case-motif-board span{font-size:22px}.case-showcase.is-visible .case-motif-board>i:first-child{animation:4.2s ease-in-out infinite case-card-float}.case-showcase.is-visible .case-motif-board>i:nth-child(2){animation:4.2s ease-in-out -1.4s infinite case-card-float}.case-showcase.is-visible .case-motif-board>i:last-child{animation:4.2s ease-in-out -2.8s infinite case-card-float}.case-motif-echo{align-items:center;gap:5px;height:74px;display:flex;bottom:20px;right:2%}.case-motif-echo i{background:var(--case-accent);opacity:.8;border-radius:100px;width:4px;height:56px;transform:scaleY(.18)}.case-showcase.is-visible .case-motif-echo i{animation:1.25s ease-in-out infinite alternate case-wave}.case-motif-echo i:nth-child(3n+1){animation-delay:-.85s}.case-motif-echo i:nth-child(3n+2){animation-delay:-.35s}.case-motif-echo i:nth-child(4n){animation-delay:-.65s}.case-motif-mitad{gap:7px;width:180px;display:grid;top:24px;right:1%}.case-motif-mitad>span{color:#173f41;font:8px var(--font-geist-mono), monospace;background:#f8faf3e6;border:1px solid #ffffff47;border-radius:10px;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:9px 10px;display:grid;box-shadow:0 10px 24px #00000024}.case-motif-mitad>span>i{background:var(--case-accent);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-style:normal;display:grid}.case-motif-mitad>span>b{color:#16858a}.case-showcase.is-visible .case-motif-mitad>span{animation:4.8s cubic-bezier(.16,1,.3,1) infinite case-task-enter}.case-showcase.is-visible .case-motif-mitad>span:nth-child(2){animation-delay:-3.2s}.case-showcase.is-visible .case-motif-mitad>span:nth-child(3){animation-delay:-1.6s}.case-process-flow{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:color-mix(in srgb, var(--case-accent) 78%, var(--ink));margin-top:42px;padding:8px 0;list-style:none;display:grid;position:relative;overflow:visible}.case-process-flow:before{content:"";background:var(--case-accent);transform-origin:top;width:1px;transition:transform .9s cubic-bezier(.16,1,.3,1) .18s;position:absolute;top:28px;bottom:28px;left:12px;transform:scaleY(0)}.case-chapter.is-visible .case-process-flow:before{transform:scaleY(1)}.case-process-flow li{border-bottom:1px solid var(--line);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;min-height:62px;padding:12px 0;display:grid;position:relative}.case-process-flow li:last-child{border-bottom:0}.case-process-flow li>span{z-index:1;border:1px solid var(--case-step-ink);background:var(--paper);width:24px;height:24px;color:var(--case-step-ink);box-shadow:0 0 0 5px var(--paper);font:7px var(--font-geist-mono), monospace;letter-spacing:.06em;place-items:center;display:grid;position:relative}.case-process-flow li>b{font-size:clamp(15px,1.35vw,19px);font-weight:620;line-height:1.35}.case-gallery-image-stage{touch-action:pan-x pan-y}.case-gallery-image-canvas{animation:.36s cubic-bezier(.16,1,.3,1) both case-gallery-image-enter}.case-gallery-swipe-hint{color:color-mix(in srgb, var(--case-accent) 58%, var(--viewer-ink));font:8px var(--font-geist-mono), monospace;letter-spacing:.09em;text-transform:uppercase;margin-top:18px;display:none}.case-page-transition{z-index:500;background:var(--next-case-accent,var(--case-accent));color:#11110f;text-align:center;pointer-events:none;transform-origin:bottom;place-content:center;gap:18px;transition:transform .56s cubic-bezier(.76,0,.24,1);display:grid;position:fixed;inset:0;transform:scaleY(0)}.case-page-transition.is-covering,.case-page-transition.is-revealing{pointer-events:auto}.case-page-transition.is-covering{transform-origin:bottom;transform:scaleY(1)}.case-page-transition.is-revealing{transform-origin:top;transition-duration:.68s;transform:scaleY(0)}.case-page-transition>span,.case-page-transition>strong{opacity:0;transition:opacity .24s .33s,transform .36s cubic-bezier(.16,1,.3,1) .33s;transform:translateY(22px)}.case-page-transition.is-covering>span,.case-page-transition.is-covering>strong{opacity:1;transform:translateY(0)}.case-page-transition.is-revealing>span,.case-page-transition.is-revealing>strong{opacity:0;transition:opacity .18s,transform .24s;transform:translateY(-18px)}.case-page-transition>span{font:9px var(--font-geist-mono), monospace;letter-spacing:.12em}.case-page-transition>strong{letter-spacing:-.08em;padding:0 24px;font-size:clamp(68px,13vw,190px);font-weight:580;line-height:.84}@keyframes case-motif-stamp{0%,72%,to{opacity:1;transform:rotate(-8deg)scale(1)}78%{opacity:0;transform:rotate(-8deg)scale(1.65)}82%{opacity:1;transform:rotate(-8deg)scale(.72)}88%{transform:rotate(-8deg)scale(1.06)}}@keyframes case-card-float{0%,to{translate:0}50%{translate:0 -8px}}@keyframes case-wave{0%{opacity:.45;transform:scaleY(.18)}to{opacity:1;transform:scaleY(1)}}@keyframes case-task-enter{0%,18%{opacity:0;transform:translate(24px)}26%,84%{opacity:1;transform:translate(0)}92%,to{opacity:0;transform:translate(-12px)}}@keyframes case-gallery-image-enter{0%{opacity:0;transform:translate(18px)scale(.985)}}@keyframes case-gallery-slide-enter{0%{opacity:.18}}html[data-theme=dark] .case-page{--case-index-accent:var(--case-accent);--case-step-ink:color-mix(in srgb, var(--case-accent) 82%, white);--case-index-surface:var(--nav-surface);--case-index-border:var(--nav-border);--case-index-line:var(--line);color:#f3f0e8;background:#11110f}html[data-theme=dark] .case-next-exploration{background:color-mix(in srgb, var(--case-accent) 13%, #11110f);color:#f3f0e8}html[data-theme=dark] .case-next-exploration p{color:#f3f0e8b8}html[data-theme=dark] .case-gallery-lightbox{--viewer-bg:#070706f5;--viewer-surface:#171715c7;--viewer-stage:#0e0e0d;--viewer-panel:#1b1b18;--viewer-ink:#f4f1e9;--viewer-muted:#f4f1e9ad;--viewer-border:#f4f1e929;--viewer-control:#f4f1e9;--viewer-control-ink:#11110f;--viewer-shadow:#00000070}html[data-theme=dark] .case-hero-meta,html[data-theme=dark] .case-facts,html[data-theme=dark] .case-chapter,html[data-theme=dark] .case-bullets,html[data-theme=dark] .case-bullets li,html[data-theme=dark] .case-modules,html[data-theme=dark] .case-modules section{border-color:#f3f0e838}html[data-theme=dark] .case-chapter-body>p,html[data-theme=dark] .case-modules p,html[data-theme=dark] .case-modules ul,html[data-theme=dark] .case-status{color:#f3f0e8ad}html[data-theme=dark] .case-flow{color:color-mix(in srgb, var(--case-accent) 82%, white)}html[data-theme=dark] .case-gallery{background-color:color-mix(in srgb, var(--case-accent) 8%, #181816);color:#f3f0e8}html[data-theme=dark] .case-gallery-head p{color:#f3f0e8ad}html[data-theme=dark] .case-gallery-frame,html[data-theme=dark] .case-gallery-meta,html[data-theme=dark] .case-gallery-item{border-color:#f3f0e833}html[data-theme=dark] .case-gallery-head>span,html[data-theme=dark] .case-gallery-meta b,html[data-theme=dark] .case-gallery-item:hover .case-gallery-meta i{color:color-mix(in srgb, var(--case-accent) 84%, white)}html[data-theme=dark] .case-gallery-item:focus-visible .case-gallery-meta i{color:color-mix(in srgb, var(--case-accent) 84%, white)}@media (min-width:1101px){.case-page{--case-progress-clearance:44px}}@media (max-width:1100px){.case-reading-progress{width:100%;height:3px;display:block;top:0;left:0;transform:none}.case-reading-progress>span,.case-reading-progress>strong{display:none}.case-reading-progress>i{width:100%;height:3px}.case-reading-progress>i>b{width:var(--case-reading-progress);height:100%;transition-property:width}}@media (max-width:900px){.case-showcase{min-height:620px;padding:42px 34px}.case-cover{grid-template-columns:minmax(120px,.26fr) minmax(0,1.74fr);gap:28px;min-height:540px}.case-cover-screens{height:540px}.case-cover-copy strong{font-size:clamp(48px,8vw,76px)}.case-cover.is-mobile .case-cover-screen{border-width:5px;border-radius:24px}.case-project-motif{transform-origin:100% 0;scale:.82}.case-highlights-grid{grid-template-columns:1fr 1fr}.case-highlights-grid article:nth-child(2){border-right:0}.case-highlights-grid article:nth-child(-n+2){border-bottom:1px solid #ffffff2e}.case-gallery{display:block}.case-gallery-head{border-right:0;grid-template-rows:auto;grid-template-columns:minmax(170px,.55fr) minmax(0,1.45fr);gap:7vw;margin-bottom:52px;padding:0}.case-gallery-head>div{align-self:auto}.case-gallery-head h2{max-width:900px;font-size:clamp(52px,8vw,76px)}.case-gallery-head p{max-width:650px;font-size:16px}.case-gallery-carousel-stage{height:clamp(480px,64vw,620px)}}@media (max-width:680px){.case-hero,.case-details{width:calc(100% - 36px)}.case-nav{grid-template-columns:auto 1fr;width:calc(100% - 24px);height:60px;margin-top:12px;padding:7px;top:12px}.case-page .case-logo{width:38px;height:38px;font-size:17px}.case-nav-project{display:none}.case-nav-actions{gap:7px}.case-back{letter-spacing:0;flex:0 0 40px;justify-content:center;gap:0;width:40px;height:40px;padding:0;font-size:0;overflow:hidden}.case-back span{flex:0 0 30px;width:30px;height:30px;font-size:16px}.case-nav .preference-controls{gap:4px}.case-nav .theme-switch{width:40px;min-width:40px;padding:0}.case-nav .theme-switch b{display:none}.case-scroll-target{scroll-margin-top:0}.case-index-toggle{width:50px;height:50px;padding:7px;bottom:12px;right:12px}.case-index-toggle:hover,.case-index.is-open .case-index-toggle{gap:0;width:50px;padding:7px}.case-index-toggle:focus-visible{gap:0;width:50px;padding:7px}.case-index-toggle-label{display:none}.case-index-icon{width:34px;height:34px}.case-index-panel{border-radius:22px;width:calc(100vw - 24px);max-height:68vh;bottom:74px;right:12px}.case-index-panel nav{max-height:calc(68vh - 78px)}.case-hero{padding:48px 0 70px}.case-hero:before{top:20px}.case-hero-meta{margin-bottom:28px}.case-hero h1{letter-spacing:-.06em;overflow-wrap:anywhere;text-wrap:balance;font-size:clamp(42px,12.8vw,62px);line-height:.92}.case-hero-bottom{grid-template-columns:1fr;gap:35px;margin-top:50px}.case-primary-link,.case-status{width:fit-content}.case-showcase{border-radius:22px;width:calc(100% - 16px);min-height:650px;padding:30px 16px}.case-echoquest .case-showcase,.case-mitad-y-mitad .case-showcase{min-height:500px}.case-cover{grid-template-columns:1fr;align-content:start;gap:20px;min-height:590px}.case-cover.is-mobile{min-height:430px}.case-cover-copy{grid-template-columns:1fr auto;align-items:end;gap:8px 18px;padding:0;display:grid}.case-cover-copy>span{grid-column:1/-1}.case-cover-copy strong{writing-mode:horizontal-tb;margin-top:0;font-size:clamp(44px,13vw,68px);transform:none}.case-cover-copy p{text-align:right;margin:0 0 5px}.case-cover-screens{height:420px}.case-cover-screen figcaption{display:none}.case-cover.is-web .case-cover-screen{border-radius:12px}.case-cover.is-web .case-cover-screen-1{grid-area:3/1/10/13}.case-cover.is-web .case-cover-screen-2{grid-area:1/6/6/13}.case-cover.is-web .case-cover-screen-3{grid-area:9/3/13/12}.case-cover.is-mobile .case-cover-screens{gap:7px;height:320px}.case-cover.is-mobile .case-cover-screen{border-width:4px;border-radius:18px;height:80%}.case-cover.is-mobile .case-cover-screen-1{height:92%}.case-project-motif{top:132px;right:2px;scale:.62}.case-motif-echo{top:auto;bottom:4px;right:10px}.case-browser{border-radius:12px;width:100%;transform:rotate(-2deg)}.case-browser-board-and-chill{transform:rotate(2deg)}.case-browser-bar{height:36px;padding:0 10px;font-size:6px}.case-browser-bar i{width:6px;height:6px}.case-app-visual{height:480px}.case-app-visual>img{width:105px;top:6%;left:-1%}.case-app-device{border-width:7px;border-radius:40px;width:242px;height:490px;padding:20px 17px}.case-device-brand{margin-top:26px}.case-device-brand strong{font-size:27px}.case-device-focus{margin-top:17px;padding:13px}.case-device-list>div{min-height:48px;font-size:10px}.case-device-nav{bottom:17px;left:17px;right:17px}.case-app-label{display:none}.case-details{padding:80px 0 36px}.case-details:before{opacity:.58;background-size:20px 20px;inset:46px -4px 50px}.case-facts{grid-template-columns:1fr;gap:28px;padding-bottom:60px}.case-chapters{padding-top:20px}.case-chapter{grid-template-columns:1fr;gap:38px;padding:70px 0}.case-chapter h2{font-size:clamp(44px,14cqi,72px)}.case-highlights h2{font-size:clamp(48px,15vw,72px)}.case-bullets,.case-modules{grid-template-columns:1fr}.case-modules section,.case-modules section:nth-child(odd),.case-modules section:nth-child(2n),.case-modules section:last-child:nth-child(odd){border-right:0;grid-column:auto;padding:28px 0 34px}.case-chapter blockquote{margin-top:34px}.case-next-exploration{padding:90px 18px}.case-gallery{padding:82px 18px 90px}.case-gallery-head{grid-template-columns:1fr;gap:22px;margin-bottom:52px}.case-gallery-head>span{padding-top:0}.case-gallery-head h2{font-size:clamp(52px,15vw,76px)}.case-gallery-carousel-stage{height:min(560px,68svh);display:block;overflow:hidden}.case-gallery-item{width:100%;min-width:0;display:none}.case-gallery-item.is-active{display:grid}.case-gallery-panel-index{min-height:48px;padding:15px 14px 10px}.case-gallery-meta{min-height:112px;padding:15px 14px 17px}.case-gallery-meta b{font-size:12px}.case-gallery-mobile-controls{z-index:2;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:10px;margin-top:14px;display:grid;position:relative}.case-gallery-mobile-controls .case-gallery-carousel-button{opacity:1;visibility:visible;background:color-mix(in srgb, var(--case-accent) 22%, #f7f4ec);color:#11110f;border-color:#11110f8c}.case-gallery-carousel-status{grid-template-columns:auto minmax(48px,1fr) auto}.case-gallery-lightbox{align-content:start;place-items:initial;grid-template-rows:auto auto;grid-template-columns:1fr 1fr;gap:14px 10px;padding:78px 12px 24px;overflow-y:auto}.case-gallery-lightbox>header{min-height:48px;top:12px;left:12px;right:12px}.case-gallery-lightbox>header>span{text-overflow:ellipsis;white-space:nowrap;max-width:58vw;overflow:hidden}.case-gallery-lightbox figure{grid-area:1/1/auto/-1;grid-template-columns:1fr;gap:14px;height:auto}.case-gallery-image-stage{border-radius:20px;height:58svh;padding:10px}.case-gallery-image-stage img{max-height:calc(58svh - 20px)}.case-gallery-swipe-hint{display:block}.case-gallery-lightbox figcaption{border-radius:20px;min-height:250px;padding:24px}.case-gallery-lightbox figcaption h2{font-size:36px}.case-gallery-zoom{margin-top:30px}.case-gallery-nav{z-index:4;color:#f7f4ec;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#11110fe0;border-color:#ffffff80;width:46px;height:46px;position:absolute;top:calc(78px + 29svh);bottom:auto;transform:translateY(-50%)}.case-gallery-prev{left:18px;right:auto}.case-gallery-next{left:auto;right:18px}:is(.case-gallery-nav:hover,.case-gallery-nav:focus-visible){transform:translateY(-50%)scale(1.05)}.case-highlights{padding:72px 18px 90px}.case-highlights-grid{grid-template-columns:1fr}.case-highlights-grid article{border-bottom:1px solid #ffffff2e;border-right:0;min-height:240px;padding:25px 18px}.case-highlights-grid article:last-child{border-bottom:0}.case-highlights-grid h3{margin-top:55px}.case-footer{padding:100px 18px 28px}.case-next-project{letter-spacing:-.06em;gap:14px;margin:28px 0;font-size:clamp(42px,13.5vw,68px)}.case-next-project>i{flex-basis:48px;width:48px;height:48px}.case-footer-meta{flex-direction:column;align-items:flex-start;gap:18px}.case-page-transition>strong{font-size:clamp(58px,18vw,104px)}}@media (pointer:coarse){.case-gallery-item,.case-gallery-item:hover{transform:none}.case-gallery-item:focus-visible{transform:none}}@media (prefers-reduced-motion:reduce){.case-browser,.case-app-device,.case-app-visual>img{transform:none}.case-index-panel{animation:none}.case-motion-ready .case-reveal,.case-motion-ready .case-reveal.is-visible,.case-motion-ready .case-stagger>*,.case-cover-screen,.case-motion-ready .case-showcase:not(.is-visible) .case-cover-screen{opacity:1;transition:none;transform:none}.case-showcase.is-visible .case-motif-abogato>span,.case-showcase.is-visible .case-motif-board>i,.case-showcase.is-visible .case-motif-echo i,.case-showcase.is-visible .case-motif-mitad>span{animation:none}.case-process-flow:before{transition:none;transform:scaleY(1)}.case-gallery-image-canvas{animation:none}.case-reading-progress>i>b,.case-page-transition{transition:none}.case-index-toggle,.case-index-icon i,.case-index-panel nav a,.case-highlights-grid article,.case-highlights-grid article:before,.case-highlights-grid article>span,.case-highlights-grid article p,.case-next-project>span,.case-next-project>i,.case-gallery-item,.case-gallery-frame img,.case-gallery-frame:after,.case-gallery-meta i,.case-gallery-carousel-button,.case-gallery-lightbox,.case-gallery-nav{transition:none;animation:none}}
