@property --rot{syntax: "<angle>"; inherits: true; initial-value: 0deg;}@property --rot-flat{syntax: "<angle>"; inherits: true; initial-value: 0deg;}@property --card-angle{syntax: "<angle>"; inherits: true; initial-value: 0deg;}:root{--bg-deep: #050912;--bg: #0A132A;--surface: #0E1B30;--surface-2: #15264A;--line: rgba(232, 237, 250, .08);--line-2: rgba(232, 237, 250, .15);--ink: #ECF1FF;--ink-2: #C7CFE5;--ink-muted: #8892B0;--ink-faint: #4C5878;--amber: #E8C547;--amber-soft: #FBE894;--plasma: #FF2D87;--plasma-deep:#B5126A;--acid: #C8FF2E;--circuit: #64FFDA;--accent-1: var(--amber);--accent-2: var(--plasma);--accent-3: var(--acid);--accent-pop: var(--plasma);--font-display: "Bricolage Grotesque", "Geist", system-ui, sans-serif;--font-body: "Geist", "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--t-hero: clamp(3rem, 1rem + 9vw, 10rem);--t-display: clamp(2.5rem, 1rem + 6vw, 5.5rem);--t-h2: clamp(2rem, .8rem + 4vw, 4rem);--t-h3: clamp(1.25rem, .9rem + 1.4vw, 1.875rem);--t-body: clamp(.95rem, .85rem + .4vw, 1.0625rem);--t-small: clamp(.75rem, .7rem + .2vw, .8125rem);--shell-x: clamp(1.25rem, 4vw, 4rem);--gutter: clamp(1rem, 2vw, 2rem);--ease-bold: cubic-bezier(.83, 0, .17, 1);--ease-soft: cubic-bezier(.22, 1, .36, 1);--ease-snap: cubic-bezier(.45, 0, .1, 1)}html[data-palette=amber],html:not([data-palette]){--accent-1: var(--amber);--accent-2: var(--ink);--accent-3: var(--amber-soft)}html[data-palette=plasma]{--accent-1: var(--plasma);--accent-2: var(--amber);--accent-3: var(--circuit)}html[data-palette=acid]{--accent-1: var(--acid);--accent-2: var(--plasma);--accent-3: var(--amber)}html[data-palette=circuit]{--accent-1: var(--circuit);--accent-2: var(--amber);--accent-3: var(--ink)}html[data-hack="1"]{--bg-deep: #C8FF2E;--bg: #C8FF2E;--surface: #0A132A;--ink: #0A132A;--ink-2: #0A132A;--ink-muted: rgba(10,19,42, .7);--line: rgba(10,19,42, .15);--accent-1: #FF2D87;--accent-pop: var(--amber)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg-deep);color:var(--ink-2);font-family:var(--font-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;overflow-y:auto}body{min-height:100vh}html,body,:where(.twk-body,.rd-body,.m-works-track,.m-detail-body){scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar,:where(.twk-body,.rd-body,.m-works-track,.m-detail-body)::-webkit-scrollbar{width:0;height:0;background:transparent;display:none}@media (hover: hover) and (pointer: fine){html[data-cursor=on],html[data-cursor=on] *,html[data-cursor=on] a,html[data-cursor=on] button,html[data-cursor=on] [data-magnetic]{cursor:none}}::selection{background:var(--accent-1);color:var(--bg-deep)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;padding:0}img,svg{max-width:100%;display:block}.mono{font-family:var(--font-mono);letter-spacing:.01em}.tabular{font-variant-numeric:tabular-nums}.dim{color:var(--ink-muted)}.shell{width:100%;max-width:1680px;margin:0 auto;padding-left:var(--shell-x);padding-right:var(--shell-x)}.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted);display:inline-flex;align-items:center;gap:.6em}.eyebrow:before{content:"";width:24px;height:1px;background:var(--accent-1)}.display,.hero-h,h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:.92;color:var(--ink);margin:0;font-variation-settings:"wght" var(--wght, 700),"wdth" var(--wdth, 100);transition:font-variation-settings .35s var(--ease-soft)}.hero-h{font-size:var(--t-hero);line-height:.86;letter-spacing:-.04em}.glyph{display:inline-block;will-change:transform,font-variation-settings;transform-origin:50% 100%}.glyph-row{white-space:nowrap}.loader{position:fixed;inset:0;z-index:100;background:var(--bg-deep);display:grid;place-items:center;transition:opacity .7s var(--ease-bold),transform .9s var(--ease-bold)}.loader.gone{opacity:0;pointer-events:none;transform:scale(.98)}.loader-stage{display:grid;gap:28px;place-items:center;text-align:center}.loader svg{width:120px;height:auto;opacity:.95}.loader svg path{stroke:var(--ink);stroke-width:1.4;fill:none}.loader svg path[stroke="#dbc043"]{stroke:var(--accent-1)}.loader.draw svg path{stroke-dasharray:var(--len, 1200);stroke-dashoffset:var(--len, 1200);animation:loader-draw 2.1s var(--ease-bold) forwards}@keyframes loader-draw{to{stroke-dashoffset:0}}.loader-meta{font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase;display:flex;gap:18px;align-items:center}.loader-pct{color:var(--accent-1);font-variant-numeric:tabular-nums;min-width:4ch;text-align:right}.loader-bar{width:min(40vw,280px);height:1px;background:var(--line);overflow:hidden}.loader-bar>i{display:block;height:100%;background:var(--accent-1);transform-origin:left;transform:scaleX(var(--p, 0));transition:transform .25s linear}.page-reveal{position:fixed;inset:0;z-index:95;background:var(--bg-deep);transform-origin:bottom;animation:page-reveal .9s .1s var(--ease-bold) forwards;pointer-events:none}@keyframes page-reveal{0%{transform:scaleY(1)}to{transform:scaleY(0)}}.cursor-dot,.cursor-ring,.cursor-label{position:fixed;top:0;left:0;pointer-events:none;z-index:2147483647;transform:translate3d(-50%,-50%,0)}.cursor-dot{width:6px;height:6px;background:var(--accent-1);border-radius:50%;mix-blend-mode:difference}.cursor-ring{width:36px;height:36px;border:1px solid var(--accent-1);border-radius:50%;transition:width .35s var(--ease-soft),height .35s var(--ease-soft),border-color .25s var(--ease-soft),background-color .25s var(--ease-soft),opacity .25s var(--ease-soft);opacity:.75}.cursor-ring.hot{width:72px;height:72px;background:color-mix(in srgb,var(--accent-1),transparent 86%);border-color:var(--accent-1);opacity:1}.cursor-ring.drag{width:88px;height:88px;background:color-mix(in srgb,var(--accent-2),transparent 80%);border-color:var(--accent-2)}.cursor-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--bg-deep);background:var(--accent-1);padding:4px 10px;border-radius:999px;transform:translate3d(-50%,calc(-50% + 38px),0);opacity:0;transition:opacity .2s;white-space:nowrap}.cursor-label.show{opacity:1}.cursor-trail{position:fixed;top:0;left:0;width:4px;height:4px;background:var(--accent-1);border-radius:50%;pointer-events:none;z-index:2147483646;opacity:0;transform:translate3d(-50%,-50%,0)}.cursor-ripple{position:fixed;top:0;left:0;width:260px;height:260px;border:1.5px solid var(--accent-1);border-radius:50%;pointer-events:none;z-index:2147483646;--cx: 0px;--cy: 0px;--dx: 0px;--dy: 0px;animation:cursor-ripple .5s cubic-bezier(.22,1,.36,1) forwards}@keyframes cursor-ripple{0%{transform:translate3d(var(--cx),var(--cy),0) translate(-50%,-50%) translate(0) scale(.08);opacity:.9;border-width:2.5px}to{transform:translate3d(var(--cx),var(--cy),0) translate(-50%,-50%) translate(var(--dx),var(--dy)) scale(1);opacity:0;border-width:.5px}}.site-header{position:fixed;top:0;left:0;right:0;z-index:60;padding:18px var(--shell-x);display:flex;align-items:center;justify-content:space-between;gap:24px;transition:backdrop-filter .3s,background-color .3s,border-color .3s;border-bottom:1px solid transparent;contain:layout style;transform:translateZ(0);will-change:backdrop-filter}.site-header.scrolled{background:color-mix(in srgb,var(--bg-deep),transparent 25%);backdrop-filter:blur(14px) saturate(120%);-webkit-backdrop-filter:blur(14px) saturate(120%);border-bottom-color:var(--line)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:32px;height:32px;display:grid;place-items:center}.brand-mark svg{width:100%;height:auto}.brand-mark svg path[fill="#2d3f3f"]{fill:var(--ink)}.brand-mark svg path[fill="#dbc043"]{fill:var(--accent-1)}.brand-name{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:-.01em;color:var(--ink)}.brand-name sup{font-family:var(--font-mono);font-size:9px;color:var(--accent-1);margin-left:4px;letter-spacing:.16em;vertical-align:super}.nav{display:flex;gap:28px;align-items:center}@media (max-width: 800px){.nav-links{display:none}}.nav-link{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);position:relative;padding:6px 2px}.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--accent-1);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease-soft)}.nav-link:hover:after{transform:scaleX(1);transform-origin:left}.nav-num{color:var(--accent-1);margin-right:6px;font-size:9px}.header-cta{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--bg-deep);background:var(--accent-1);padding:11px 18px;border-radius:999px;transition:transform .3s var(--ease-soft),background .3s}.header-cta:after{content:"→";transition:transform .3s var(--ease-soft)}.header-cta:hover{background:var(--accent-2)}.header-cta:hover:after{transform:translate(4px)}.header-clock{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--ink-muted)}@media (max-width: 1100px){.header-clock{display:none}}.section{position:relative;padding-top:clamp(80px,14vh,180px);padding-bottom:clamp(80px,14vh,180px)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:32px;margin-bottom:clamp(40px,6vh,80px);border-bottom:1px solid var(--line);padding-bottom:18px}.section-index{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase}.section-index b{color:var(--accent-1);margin-right:8px;font-weight:500}.hero{min-height:100vh;padding-top:120px;padding-bottom:80px;display:grid;align-items:end;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0;pointer-events:none}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse at 50% 40%,black 0%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 50% 40%,black 0%,transparent 70%)}.hero-glow{position:absolute;width:70vw;height:70vw;max-width:900px;max-height:900px;border-radius:50%;filter:blur(80px);opacity:.55;background:radial-gradient(circle,color-mix(in srgb,var(--accent-1),transparent 50%),transparent 60%);left:50%;top:30%;transform:translate(-50%,-50%);pointer-events:none}.hero-canvas{position:absolute;inset:0;width:100%;height:100%}.hero-meta{display:flex;justify-content:space-between;gap:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase;margin-bottom:36px;border-top:1px solid var(--line);padding-top:14px}.hero-meta b{color:var(--ink);font-weight:500}.hero-h .row{display:block}.hero-h .row.indent{padding-left:.6em}.hero-h .accent{color:var(--accent-1);font-style:italic;font-weight:600}.hero-h .underline{position:relative;display:inline-block}.hero-h .underline:after{content:"";position:absolute;left:0;right:0;bottom:.08em;height:.06em;background:var(--accent-pop);transform:scaleX(0);transform-origin:left;animation:ul-in 1.2s 1.6s var(--ease-bold) forwards}@keyframes ul-in{to{transform:scaleX(1)}}.hero-foot{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-top:40px;flex-wrap:wrap}.hero-tag{max-width:38ch;color:var(--ink-2);font-size:var(--t-body);line-height:1.5}.hero-tag b{color:var(--ink);font-weight:600}.hero-cta{display:inline-flex;align-items:center;gap:14px;background:var(--ink);color:var(--bg-deep);padding:18px 28px;border-radius:999px;font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;transition:transform .3s var(--ease-soft),background .3s,color .3s}.hero-cta:hover{background:var(--accent-1);color:var(--bg-deep);transform:translateY(-2px)}.hero-cta .arrow{width:22px;height:22px;border-radius:50%;background:var(--bg-deep);color:var(--ink);display:grid;place-items:center;font-family:var(--font-body);font-size:12px;transition:transform .3s var(--ease-soft)}.hero-cta:hover .arrow{background:var(--bg-deep);color:var(--accent-1);transform:rotate(-45deg)}.hero-stats{display:flex;gap:32px;flex-wrap:wrap}.hero-stat{display:grid;gap:4px}.hero-stat .num{font-family:var(--font-display);font-size:clamp(1.6rem,1rem + 1.5vw,2.4rem);font-weight:700;color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.hero-stat .lbl{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase}.scroll-hint{position:absolute;left:var(--shell-x);bottom:30px;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase;display:flex;align-items:center;gap:12px}.scroll-hint i{width:1px;height:36px;background:linear-gradient(var(--accent-1),transparent);animation:scroll-line 1.6s var(--ease-soft) infinite;transform-origin:top}@keyframes scroll-line{0%,to{transform:scaleY(.4);opacity:.4}50%{transform:scaleY(1);opacity:1}}.filo-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(40px,6vw,100px);align-items:center}@media (max-width: 900px){.filo-grid{grid-template-columns:1fr}}.filo-text h2{font-size:var(--t-display);line-height:.95;margin-bottom:32px}.filo-text h2 em{font-style:italic;color:var(--accent-1);font-weight:600}.filo-text p{color:var(--ink-2);font-size:var(--t-body);line-height:1.6;max-width:48ch}.filo-hint{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase;margin:32px 0 6px}.filo-callouts{margin-top:10px;display:grid;gap:14px}.filo-callout{appearance:none;-webkit-appearance:none;background:transparent;border:0;border-top:1px solid var(--line);display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:18px;padding:16px 0;width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer;position:relative;transition:border-color .4s var(--ease-soft),transform .4s var(--ease-soft)}.filo-callout:before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--accent-1);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease-soft)}.filo-callout:hover:before{transform:scaleX(1);transform-origin:left}.filo-callout:hover .v{color:var(--accent-1)}.filo-callout:hover .filo-callout-arrow{color:var(--accent-1);transform:rotate(-45deg) translate(2px)}.filo-callout .k{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--accent-1);text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;border:1px solid var(--line-2);transition:background .35s var(--ease-soft),color .35s var(--ease-soft),border-color .35s var(--ease-soft)}.filo-callout .v{color:var(--ink);font-family:var(--font-display);font-weight:500;font-size:18px;letter-spacing:-.01em;transition:color .35s var(--ease-soft)}.filo-callout-arrow{font-family:var(--font-mono);font-size:14px;color:var(--ink-faint);transition:color .3s var(--ease-soft),transform .4s var(--ease-soft)}.filo-callout.active{border-top-color:color-mix(in srgb,var(--accent-1),transparent 50%)}.filo-callout.active .k{background:var(--accent-1);color:var(--bg-deep);border-color:var(--accent-1);box-shadow:0 0 18px -2px color-mix(in srgb,var(--accent-1),transparent 50%)}.filo-callout.active .v,.filo-callout.active .filo-callout-arrow{color:var(--accent-1)}.filo-canvas-wrap{position:relative;aspect-ratio:1 / 1;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--accent-1),transparent 92%),transparent 70%),linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--surface-2),transparent 40%));border:1px solid var(--line);border-radius:16px;overflow:hidden}.filo-canvas-wrap:before{content:"";position:absolute;inset:0;background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:24px 24px;opacity:.5;pointer-events:none}.filo-canvas-wrap svg{width:100%;height:100%;position:relative;z-index:1}.filo-canvas-wrap .ovr{position:absolute;bottom:16px;left:16px;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase}.filo-canvas-wrap .ovr b{color:var(--accent-1)}.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}@media (max-width: 900px){.svc-grid{grid-template-columns:1fr}}.svc-card{position:relative;background:var(--bg-deep);padding:clamp(28px,4vw,48px);min-height:360px;display:flex;flex-direction:column;gap:20px;overflow:hidden;transition:background .4s var(--ease-soft)}.svc-card:before{content:"";position:absolute;width:360px;height:360px;left:var(--mx, 50%);top:var(--my, 50%);transform:translate(-50%,-50%);background:radial-gradient(circle,color-mix(in srgb,var(--accent-1),transparent 70%),transparent 60%);opacity:0;pointer-events:none;transition:opacity .4s var(--ease-soft)}.svc-card:hover:before{opacity:.7}.svc-card:hover{background:color-mix(in srgb,var(--bg-deep),var(--ink) 1%)}.svc-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;color:var(--ink-faint);text-transform:uppercase}.svc-card h3{font-size:clamp(1.5rem,1rem + 1.6vw,2.4rem);line-height:.96;letter-spacing:-.02em;color:var(--ink)}.svc-card p{color:var(--ink-2);line-height:1.55;max-width:38ch;position:relative;z-index:1}.svc-tags{margin-top:auto;display:flex;flex-wrap:wrap;gap:6px;position:relative;z-index:1}.svc-tags span{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;color:var(--ink-muted);border:1px solid var(--line-2);padding:6px 10px;border-radius:999px;text-transform:uppercase}.svc-arrow{position:absolute;right:28px;top:28px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;color:var(--ink-muted);transition:transform .4s var(--ease-soft),background .3s,color .3s,border-color .3s}.svc-card:hover .svc-arrow{background:var(--accent-1);color:var(--bg-deep);border-color:var(--accent-1);transform:rotate(-45deg)}.ring-stage{position:relative;width:100%;height:clamp(540px,75vh,720px);perspective:1500px;perspective-origin:50% 50%;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:pan-y;overflow:visible}.ring-stage.grabbing{cursor:grabbing}.ring-stage:before,.ring-stage:after{content:"";position:absolute;pointer-events:none}.ring-stage:before{left:50%;top:0;bottom:0;width:1px;background:linear-gradient(transparent,var(--line) 30%,var(--line) 70%,transparent);transform:translate(-.5px);opacity:.6}.ring-stage:after{left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);opacity:.5}.ring{position:absolute;left:50%;top:50%;transform-style:preserve-3d;transform:translate(-50%,-50%) rotateX(-8deg) rotateY(var(--rot, 0deg));--vel: 0;--rot-flat: 0}.ring-card{--w: clamp(180px, 22vw, 240px);--h: clamp(240px, 30vw, 320px);position:absolute;left:0;top:0;width:var(--w);height:var(--h);margin-left:calc(var(--w) / -2);margin-top:calc(var(--h) / -2);transform-style:preserve-3d;transform:rotateY(var(--card-angle)) translateZ(var(--card-R, 320px));pointer-events:auto}.ring-card-face{position:absolute;inset:0;border-radius:14px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(160deg,var(--surface-2),var(--surface));border:1px solid var(--line);overflow:hidden;transform-style:preserve-3d;transform:rotateY(calc(-1 * (var(--card-angle) + var(--rot-flat, 0deg))));transition:border-color .4s,box-shadow .5s,background .4s}.ring-card-face:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(90deg,var(--line) 0,var(--line) 1px,transparent 1px,transparent 22px);opacity:.35;pointer-events:none}.ring-card-face:after{content:"";position:absolute;inset:-1px;border-radius:14px;background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--accent-1),transparent 70%),transparent 60%);opacity:0;transition:opacity .4s var(--ease-soft);pointer-events:none}.ring-card.active .ring-card-face{border-color:var(--accent-1);box-shadow:0 0 60px -10px color-mix(in srgb,var(--accent-1),transparent 60%),0 30px 80px -20px #00000080;background:linear-gradient(160deg,color-mix(in srgb,var(--surface-2),var(--accent-1) 4%),var(--surface))}.ring-card.active .ring-card-face:after{opacity:1}.ring-card .rc-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;color:var(--accent-1);text-transform:uppercase;position:relative;z-index:1}.ring-card .rc-num{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-faint);position:relative;z-index:1}.ring-card h3{position:relative;z-index:1;font-size:clamp(1.1rem,.6rem + 1.2vw,1.6rem);line-height:1;letter-spacing:-.02em;color:var(--ink)}.ring-card .rc-meta{position:relative;z-index:1;display:flex;gap:12px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;color:var(--ink-muted);text-transform:uppercase}.ring-card .rc-thumb{position:absolute;inset:0;opacity:.16;z-index:0}.ring-hud{position:absolute;inset:0;pointer-events:none;z-index:4}.ring-hud .ticker{position:absolute;left:0;right:0;top:0;padding:0 4px;display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase}.ring-hud .ticker b{color:var(--ink);font-weight:500}.ring-hud .vel{position:absolute;right:0;bottom:0;display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase}.ring-hud .vel .meter{width:120px;height:2px;background:var(--line);position:relative;overflow:hidden}.ring-hud .vel .meter>i{position:absolute;left:0;top:0;bottom:0;width:calc(var(--vel-norm, 0) * 100%);background:var(--accent-1);transition:width .12s linear}.ring-readout{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);display:grid;min-height:160px}.ring-readout .swap{animation:hub-swap .45s var(--ease-bold)}.ring-readout .tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;color:var(--accent-1);text-transform:uppercase;display:inline-block;margin-bottom:14px}.ring-readout .title{font-family:var(--font-display);font-size:clamp(1.8rem,1rem + 2.4vw,3rem);letter-spacing:-.02em;color:var(--ink);line-height:1;font-weight:700;margin:0 0 18px}.ring-readout .summary{max-width:60ch;color:var(--ink-2);font-size:var(--t-body);line-height:1.55;margin:0 0 18px}.ring-readout .meta{display:inline-flex;flex-wrap:wrap;gap:18px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;color:var(--ink-muted);text-transform:uppercase}@keyframes hub-swap{0%{opacity:0;transform:translateY(8px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.ring-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:18px;font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase}.ring-controls .spin-btn{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line-2);padding:10px 16px;border-radius:999px;cursor:pointer;transition:border-color .3s,color .3s}.ring-controls .spin-btn:hover{border-color:var(--accent-1);color:var(--accent-1)}.ring-controls .spin-btn.boost{color:var(--accent-2);border-color:var(--accent-2)}@media (max-width: 700px){.ring-stage{height:480px}.ring-hud .ticker{font-size:9px}}.ring-detail{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:4vh 4vw}.ring-detail-bg{position:absolute;inset:0;background:color-mix(in srgb,var(--bg-deep),transparent 12%);backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%);animation:rd-bg-in .35s var(--ease-soft) both}@keyframes rd-bg-in{0%{opacity:0}to{opacity:1}}.ring-detail-card{position:relative;width:min(1080px,100%);max-height:92vh;display:grid;grid-template-rows:auto 1fr;background:var(--surface);border:1px solid color-mix(in srgb,var(--accent-1),transparent 65%);border-radius:18px;overflow:hidden;box-shadow:0 40px 120px -40px color-mix(in srgb,var(--accent-1),transparent 70%),0 30px 80px -20px #0009;animation:rd-in .5s var(--ease-bold) both}@keyframes rd-in{0%{opacity:0;transform:translateY(40px) scale(.94);filter:blur(12px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.ring-detail-close{position:absolute;top:18px;right:18px;z-index:4;width:42px;height:42px;border-radius:50%;border:1px solid var(--line-2);background:var(--bg-deep);color:var(--ink);font-size:14px;cursor:pointer;display:grid;place-items:center;transition:background .3s,color .3s,border-color .3s,transform .3s var(--ease-soft)}.ring-detail-close:hover{background:var(--accent-1);color:var(--bg-deep);border-color:var(--accent-1);transform:rotate(90deg)}.rd-head{display:flex;justify-content:space-between;align-items:center;padding:22px 32px;border-bottom:1px solid var(--line);font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase}.rd-head .rd-tag{color:var(--accent-1)}.rd-body{display:grid;grid-template-columns:1.05fr .95fr;gap:0;overflow:auto}@media (max-width: 820px){.rd-body{grid-template-columns:1fr}}.rd-left{padding:clamp(24px,4vw,44px);display:grid;gap:22px;align-content:start}.rd-title{font-family:var(--font-display);font-size:clamp(2rem,1rem + 3vw,3.4rem);line-height:.95;letter-spacing:-.03em;color:var(--ink);font-weight:700}.rd-summary{color:var(--ink-2);font-size:clamp(.95rem,.85rem + .4vw,1.1rem);line-height:1.55;max-width:50ch}.rd-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;border-top:1px solid var(--line);padding-top:22px}.rd-grid>div{display:grid;gap:4px}.rd-grid>.span2{grid-column:span 2}.rd-k{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase}.rd-v{font-family:var(--font-display);font-weight:500;color:var(--ink);font-size:16px;letter-spacing:-.01em}.rd-outcome{color:var(--accent-1)}.rd-stack{border-top:1px solid var(--line);padding-top:18px;display:grid;gap:10px}.rd-stack-tags{display:flex;flex-wrap:wrap;gap:6px}.rd-stack-tags span{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;color:var(--ink-2);border:1px solid var(--line-2);padding:6px 10px;border-radius:999px;text-transform:uppercase}.rd-right{position:relative;background:var(--bg);display:grid;grid-template-rows:1fr auto;border-left:1px solid var(--line)}@media (max-width: 820px){.rd-right{border-left:0;border-top:1px solid var(--line)}}.rd-preview{position:relative;overflow:hidden;min-height:280px}.rd-preview svg{position:absolute;inset:0;width:100%;height:100%}.rd-cta{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;border-top:1px solid var(--line);font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);transition:color .3s,background .3s}.rd-cta:hover{background:var(--accent-1);color:var(--bg-deep)}.rd-cta .arrow{transition:transform .3s var(--ease-soft)}.rd-cta:hover .arrow{transform:translate(4px) rotate(-45deg)}.work-filter{display:inline-flex;gap:6px;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:999px}.work-filter button{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted);padding:8px 14px;border-radius:999px;cursor:pointer;transition:background .25s,color .25s}.work-filter button.active{background:var(--ink);color:var(--bg-deep)}.work-filter button:hover:not(.active){color:var(--ink)}.work-action{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted);display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--line-2);border-radius:999px;cursor:pointer;transition:color .3s,border-color .3s,transform .3s var(--ease-soft)}.work-action:hover{color:var(--accent-1);border-color:var(--accent-1);transform:rotate(-2deg)}.work-action.spinning .spin{animation:spin-shuffle .8s var(--ease-bold)}@keyframes spin-shuffle{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.work-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(180px,auto);gap:18px;perspective:1400px;perspective-origin:50% 50%}@media (max-width: 1100px){.work-grid{grid-template-columns:repeat(6,1fr)}}@media (max-width: 700px){.work-grid{grid-template-columns:repeat(2,1fr)}}.work-card{position:relative;background:linear-gradient(160deg,var(--surface-2),var(--surface));border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:22px;min-height:240px;transform-style:preserve-3d;transform:rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) translateZ(0);transition:transform .45s var(--ease-soft),border-color .3s,background .3s;cursor:grab}.work-card:active{cursor:grabbing}.work-card.shuffle-out{animation:card-out .45s var(--ease-bold) forwards}@keyframes card-out{0%{opacity:1;transform:scale(1);filter:blur(0)}to{opacity:0;transform:scale(.85) translateY(20px);filter:blur(8px)}}.work-card.shuffle-in{animation:card-in .55s var(--ease-bold) backwards}@keyframes card-in{0%{opacity:0;transform:scale(.85) translateY(20px);filter:blur(8px)}to{opacity:1;transform:scale(1) translateY(0);filter:blur(0)}}.work-card:after{content:"";position:absolute;width:220px;height:220px;left:var(--mx, 50%);top:var(--my, 50%);transform:translate(-50%,-50%);background:radial-gradient(circle,color-mix(in srgb,var(--accent-1),transparent 70%),transparent 70%);opacity:0;pointer-events:none;transition:opacity .3s var(--ease-soft);mix-blend-mode:screen}.work-card:hover{border-color:color-mix(in srgb,var(--accent-1),transparent 70%)}.work-card:hover:after{opacity:1}.work-card.size-lg{grid-column:span 6;grid-row:span 2;min-height:380px}.work-card.size-md{grid-column:span 4;grid-row:span 2;min-height:380px}.work-card.size-sm{grid-column:span 4;grid-row:span 1}.work-card.size-wide{grid-column:span 8;grid-row:span 1}.work-card.size-tall{grid-column:span 3;grid-row:span 2;min-height:380px}@media (max-width: 1100px){.work-card.size-lg,.work-card.size-md,.work-card.size-sm,.work-card.size-wide,.work-card.size-tall{grid-column:span 3}.work-card.size-lg{grid-column:span 6}}@media (max-width: 700px){.work-card.size-lg,.work-card.size-md,.work-card.size-sm,.work-card.size-wide,.work-card.size-tall{grid-column:span 2;grid-row:span 1;min-height:220px}}.work-card .wc-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;color:var(--accent-1);text-transform:uppercase;display:inline-flex;align-items:center;gap:8px}.work-card .wc-tag:before{content:"●"}.work-card .wc-num{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-faint)}.work-card h3{font-size:clamp(1.2rem,.8rem + 1.2vw,2rem);line-height:.98;letter-spacing:-.02em;color:var(--ink);position:relative;z-index:1;transform:translateZ(30px)}.work-card .wc-meta{display:flex;gap:12px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;color:var(--ink-muted);text-transform:uppercase}.work-card .wc-thumb{position:absolute;inset:0;opacity:.18;pointer-events:none;z-index:0}.work-card .wc-thumb svg{width:100%;height:100%}.work-card .wc-thumb pattern path{stroke:var(--accent-1)}.cta{padding-top:clamp(80px,12vh,160px);padding-bottom:clamp(80px,12vh,160px);background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--accent-1),transparent 88%),transparent 60%),var(--bg-deep);position:relative;overflow:hidden}.cta:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse at 50% 50%,black,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 50% 50%,black,transparent 75%);pointer-events:none}.cta-inner{position:relative;text-align:center}.cta h2{font-size:clamp(2.5rem,1rem + 8vw,8rem);line-height:.88;letter-spacing:-.04em}.cta h2 .accent{color:var(--accent-pop);font-style:italic;font-weight:600}.cta-sub{margin:28px auto 40px;max-width:52ch;color:var(--ink-2);font-size:var(--t-body);line-height:1.55}.cta-buttons{display:inline-flex;gap:12px;flex-wrap:wrap;justify-content:center}.btn-bold{display:inline-flex;align-items:center;gap:12px;background:var(--accent-1);color:var(--bg-deep);padding:18px 30px;border-radius:999px;font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;transition:transform .3s var(--ease-soft),background .3s;cursor:pointer}.btn-bold:hover{transform:translateY(-2px) scale(1.02);background:var(--accent-2)}.btn-line{display:inline-flex;align-items:center;gap:12px;border:1px solid var(--line-2);color:var(--ink);padding:18px 30px;border-radius:999px;font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;cursor:pointer;transition:border-color .3s,color .3s}.btn-line:hover{border-color:var(--accent-1);color:var(--accent-1)}.footer{border-top:1px solid var(--line);padding-top:60px;padding-bottom:30px;position:relative}.footer-top{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;margin-bottom:60px}.footer-brand{display:grid;gap:14px;max-width:32ch}.footer-brand .ft-name{font-family:var(--font-display);font-size:clamp(2.5rem,1rem + 4vw,4rem);font-weight:700;color:var(--ink);letter-spacing:-.03em;line-height:.9}.footer-brand p{color:var(--ink-muted);font-size:13px}.footer-cols{display:flex;gap:60px;flex-wrap:wrap}.footer-col h4{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase;margin:0 0 16px;font-weight:500}.footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.footer-col a{font-size:14px;color:var(--ink-2);display:inline-flex;align-items:center;gap:6px;transition:color .3s,transform .3s var(--ease-soft)}.footer-col a:hover{color:var(--accent-1);transform:translate(4px)}.footer-bot{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--ink-muted);text-transform:uppercase;padding-top:24px;border-top:1px solid var(--line)}.footer-mega{font-family:var(--font-display);font-weight:800;font-size:clamp(4rem,6vw + 2rem,14rem);letter-spacing:-.05em;line-height:.85;color:var(--ink);text-align:left;white-space:nowrap;overflow:hidden;margin:30px 0;opacity:.08;user-select:none}.matrix-rain{position:fixed;inset:0;z-index:70;pointer-events:none;mix-blend-mode:difference;transform:translateZ(0);will-change:contents}.float-meta{position:fixed;left:var(--shell-x);bottom:20px;z-index:50;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase;display:flex;gap:14px;align-items:center}.float-meta button{cursor:pointer;color:inherit;border:1px solid var(--line-2);padding:8px 12px;border-radius:999px;transition:color .3s,border-color .3s}.float-meta button:hover,.float-meta button.on{color:var(--accent-1);border-color:var(--accent-1)}@media (max-width: 800px){.float-meta{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-canvas,.matrix-rain{pointer-events:none}.hero,#filosofia{contain:layout paint style}#servicos,#trabalhos,#cta,.footer{content-visibility:auto}#servicos,#trabalhos{contain-intrinsic-size:0 900px}#cta{contain-intrinsic-size:0 720px}.footer{contain-intrinsic-size:0 520px}.cursor-dot,.cursor-ring,.cursor-trail{will-change:transform,opacity}.hero-glow{will-change:transform,filter}html{scroll-behavior:smooth}body{overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:auto}.m-shell{width:100%;max-width:100vw;padding-left:clamp(16px,5vw,32px);padding-right:clamp(16px,5vw,32px)}.m-top{position:fixed;top:0;left:0;right:0;z-index:60;padding:14px clamp(16px,5vw,32px);display:flex;align-items:center;justify-content:space-between;gap:12px;background:transparent;transition:background .3s,backdrop-filter .3s,border-color .3s;border-bottom:1px solid transparent}.m-top.scrolled{background:color-mix(in srgb,var(--bg-deep),transparent 18%);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-bottom-color:var(--line)}.m-brand{display:flex;align-items:center;gap:10px}.m-brand-mark{width:28px;height:28px;display:grid;place-items:center}.m-brand-mark svg{width:100%}.m-brand-mark svg path[fill="#2d3f3f"]{fill:var(--ink)}.m-brand-mark svg path[fill="#dbc043"]{fill:var(--accent-1)}.m-brand-name{font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--ink);letter-spacing:-.01em}.m-brand-name sup{font-family:var(--font-mono);font-size:8px;color:var(--accent-1);margin-left:3px;letter-spacing:.16em;vertical-align:super}.m-top-right{display:flex;align-items:center;gap:8px}.m-sensor-pill{font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted);padding:6px 10px;border-radius:999px;border:1px solid var(--line-2);background:transparent;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:color .3s,border-color .3s,background .3s}.m-sensor-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ink-faint);transition:background .3s,box-shadow .3s}.m-sensor-pill.on{color:var(--accent-1);border-color:var(--accent-1)}.m-sensor-pill.on:before{background:var(--accent-1);box-shadow:0 0 8px var(--accent-1);animation:m-pulse 2s ease-in-out infinite}@keyframes m-pulse{50%{transform:scale(1.4);opacity:.7}}.m-menu-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;color:var(--ink);cursor:pointer;transition:border-color .3s,background .3s,color .3s}.m-menu-btn:active{background:var(--accent-1);color:var(--bg-deep);border-color:var(--accent-1)}.m-menu-btn svg{width:16px;height:16px;stroke:currentColor}.m-sheet-overlay{position:fixed;inset:0;z-index:70;background:color-mix(in srgb,var(--bg-deep),transparent 30%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:fade-in .3s var(--ease-soft) both}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.m-sheet{position:fixed;left:0;right:0;bottom:0;z-index:71;background:var(--surface);border-top:1px solid color-mix(in srgb,var(--accent-1),transparent 70%);border-radius:24px 24px 0 0;padding:14px 0 max(24px,env(safe-area-inset-bottom));animation:m-sheet-in .4s var(--ease-bold) both;box-shadow:0 -30px 80px -10px #0009}@keyframes m-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.m-sheet-handle{width:42px;height:4px;background:var(--line-2);border-radius:999px;margin:0 auto 18px}.m-sheet-section{padding:0 24px}.m-sheet-section+.m-sheet-section{margin-top:6px;padding-top:18px;border-top:1px solid var(--line)}.m-sheet-head{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase;margin-bottom:14px}.m-sheet-link{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);font-family:var(--font-display);font-weight:600;font-size:19px;color:var(--ink);letter-spacing:-.01em}.m-sheet-link:last-child{border-bottom:0}.m-sheet-link .n{font-family:var(--font-mono);font-size:10px;color:var(--accent-1);letter-spacing:.16em;margin-right:14px}.m-sheet-link .arrow{font-family:var(--font-display);color:var(--accent-1)}.m-hero{position:relative;min-height:100vh;min-height:100svh;padding:90px 0 80px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.m-hero-bg{position:absolute;inset:0;pointer-events:none;--tx: 0;--ty: 0}.m-hero-grid{position:absolute;inset:-30px;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse at 50% 45%,black 0%,transparent 65%);-webkit-mask-image:radial-gradient(ellipse at 50% 45%,black 0%,transparent 65%);transform:translate3d(calc(var(--tx) * 14px),calc(var(--ty) * 14px),0);transition:transform .18s linear}.m-hero-glow{position:absolute;left:50%;top:38%;width:90vw;height:90vw;max-width:540px;max-height:540px;border-radius:50%;filter:blur(60px);opacity:.5;background:radial-gradient(circle,color-mix(in srgb,var(--accent-1),transparent 50%),transparent 60%);transform:translate3d(calc(-50% + var(--tx) * 30px),calc(-50% + var(--ty) * 30px),0);transition:transform .2s linear}.m-hero-meta{position:relative;z-index:2;padding:0 clamp(16px,5vw,32px);font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted);display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px}.m-hero-meta b{color:var(--ink);font-weight:500}.m-hero-h{position:relative;z-index:2;font-family:var(--font-display);font-weight:700;font-size:clamp(2.4rem,11vw,6rem);letter-spacing:-.04em;line-height:.88;color:var(--ink);padding:0 clamp(16px,5vw,32px);transform-style:preserve-3d;transform:perspective(900px) rotateX(calc(var(--ty) * 6deg)) rotateY(calc(var(--tx) * 6deg));transition:transform .18s linear}.m-hero-h .row{display:block;white-space:nowrap;font-size:min(100%,calc(100vw / 7.8))}.m-hero-h .row.indent{padding-left:.4em}.m-hero-h em.accent{color:var(--accent-1);font-style:italic;font-weight:600;position:relative;display:inline-block}.m-hero-h em.accent:after{content:"";position:absolute;left:0;right:0;bottom:.04em;height:.06em;background:var(--accent-pop);transform:scaleX(0);transform-origin:left;animation:ul-in 1.2s 1.4s var(--ease-bold) forwards}.m-hero-h .glyph{display:inline-block;transition:transform .4s var(--ease-bold),font-variation-settings .4s var(--ease-bold),color .4s;transform-origin:50% 100%;font-variation-settings:"wght" 700,"wdth" 100}.m-hero-h .glyph.pulse{transform:translateY(-12px) scale(1.15);color:var(--accent-1);font-variation-settings:"wght" 900,"wdth" 100}.m-hero-h em.accent .glyph.pulse{color:var(--ink)}.m-hero-foot{position:relative;z-index:2;padding:0 clamp(16px,5vw,32px);display:flex;flex-direction:column;gap:24px}.m-hero-tag{color:var(--ink-2);font-size:15px;line-height:1.55;max-width:32ch}.m-hero-tag b{color:var(--ink);font-weight:600}.m-hero-cta{display:inline-flex;align-self:flex-start;align-items:center;gap:14px;background:var(--ink);color:var(--bg-deep);padding:18px 26px;border-radius:999px;font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;transition:transform .3s var(--ease-soft),background .3s}.m-hero-cta:active{background:var(--accent-1);transform:scale(.96)}.m-hero-cta .arrow{width:22px;height:22px;border-radius:50%;background:var(--bg-deep);color:var(--ink);display:grid;place-items:center;font-size:12px}.m-hero-hint{position:relative;z-index:2;padding:0 clamp(16px,5vw,32px);margin-top:clamp(36px,9vw,56px);font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase;display:flex;align-items:center;gap:10px}.m-hero-hint .dot{width:5px;height:5px;border-radius:50%;background:var(--accent-1);animation:m-pulse 1.4s ease-in-out infinite}.m-filo-manifesto{position:relative;margin:28px clamp(16px,5vw,32px) 0;padding:28px 24px;background:linear-gradient(160deg,var(--surface-2),var(--surface));border:1px solid var(--accent-1);border-radius:18px;overflow:hidden;opacity:0;transform:translateY(20px) scale(.96);pointer-events:none;transition:opacity .6s var(--ease-bold),transform .6s var(--ease-bold)}.m-filo.complete .m-filo-manifesto{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.m-filo-manifesto:before{content:"";position:absolute;inset:-1px;border-radius:18px;background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--accent-1),transparent 65%),transparent 60%);pointer-events:none}.m-filo-manifesto .lead{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;color:var(--accent-1);text-transform:uppercase;margin-bottom:14px;position:relative;z-index:1}.m-filo-manifesto .quote{font-family:var(--font-display);font-size:clamp(1.6rem,7vw,2.2rem);letter-spacing:-.02em;line-height:1.05;color:var(--ink);margin:0 0 18px;font-weight:600;position:relative;z-index:1}.m-filo-manifesto .quote em{color:var(--accent-pop);font-style:italic;font-weight:700}.m-filo-manifesto .sig{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase;position:relative;z-index:1}.m-filo-manifesto .ripple{position:absolute;top:-20px;left:50%;width:8px;height:8px;border-radius:50%;border:1px solid var(--accent-1);opacity:0;pointer-events:none}.m-filo.complete .m-filo-manifesto .ripple{animation:m-manifesto-ripple 1.2s var(--ease-bold) forwards}@keyframes m-manifesto-ripple{0%{width:8px;height:8px;opacity:.9;border-width:2px}to{width:320px;height:320px;opacity:0;border-width:1px;transform:translate(-160px,-160px)}}.m-section{position:relative;padding:60px 0}.m-section-head{padding:0 clamp(16px,5vw,32px);display:flex;justify-content:space-between;align-items:baseline;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:14px}.m-section-head .idx{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase}.m-section-head .idx b{color:var(--accent-1);margin-right:6px;font-weight:500}.m-section h2{padding:0 clamp(16px,5vw,32px);font-family:var(--font-display);font-size:clamp(2rem,9vw,3.5rem);letter-spacing:-.03em;line-height:.95;color:var(--ink);font-weight:700}.m-section h2 em{color:var(--accent-1);font-weight:600}.m-filo{position:relative;padding:60px 0}.m-filo-rope{position:relative;height:clamp(180px,38vw,280px);margin:28px 0;touch-action:pan-y}.m-filo-rope svg{width:100%;height:100%;display:block}.m-filo-rope-hint{position:absolute;left:50%;bottom:8px;transform:translate(-50%);font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase;pointer-events:none;opacity:.7}.m-filo-rope-anchors{position:absolute;top:50%;left:0;right:0;pointer-events:none;transform:translateY(-50%)}.m-filo-rope-anchor{position:absolute;width:12px;height:12px;border-radius:50%;border:1.5px solid var(--accent-1);background:var(--bg-deep);top:50%;transform:translateY(-50%)}.m-filo-rope-anchor:after{content:"";position:absolute;inset:3px;background:var(--accent-1);border-radius:50%}.m-filo-rope-anchor.left{left:0}.m-filo-rope-anchor.right{right:0}.m-filo-callouts{padding:0 clamp(16px,5vw,32px);display:grid;gap:12px}.m-filo-callout{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:16px;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:14px;text-align:left;width:100%;cursor:pointer;transition:background .3s,border-color .3s,transform .2s;position:relative;overflow:hidden}.m-filo-callout:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-1),transparent 88%),transparent 50%);opacity:0;transition:opacity .3s;pointer-events:none}.m-filo-callout.active{border-color:var(--accent-1);background:color-mix(in srgb,var(--surface),var(--accent-1) 4%)}.m-filo-callout.active:before{opacity:1}.m-filo-callout:active{transform:scale(.98)}.m-filo-callout .num{width:36px;height:36px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--ink-muted);transition:border-color .3s,background .3s,color .3s;position:relative;z-index:1}.m-filo-callout.active .num{background:var(--accent-1);color:var(--bg-deep);border-color:var(--accent-1)}.m-filo-callout .lbl{font-family:var(--font-display);font-weight:500;font-size:16px;color:var(--ink);letter-spacing:-.01em;position:relative;z-index:1}.m-filo-callout .arrow{font-family:var(--font-display);color:var(--accent-1);font-size:18px;transition:transform .3s;position:relative;z-index:1}.m-filo-callout.active .arrow{transform:rotate(-45deg)}.m-filo-text{padding:0 clamp(16px,5vw,32px)}.m-filo-text p{color:var(--ink-2);font-size:15px;line-height:1.55;max-width:38ch}.m-services{padding:60px 0}.m-svc-grid{display:grid;gap:14px;padding:0 clamp(16px,5vw,32px);margin-top:28px}.m-svc-card{position:relative;background:linear-gradient(160deg,var(--surface-2),var(--surface));border:1px solid var(--line);border-radius:16px;padding:22px;overflow:hidden;--tx: 0;--ty: 0;transform:perspective(800px) rotateX(calc(var(--ty) * 3deg)) rotateY(calc(var(--tx) * 3deg));transition:transform .25s linear,border-color .3s;cursor:pointer}.m-svc-card:before{content:"";position:absolute;inset:-1px;border-radius:16px;background:radial-gradient(circle at calc(50% + var(--tx) * 30%) calc(40% + var(--ty) * 30%),color-mix(in srgb,var(--accent-1),transparent 80%),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}.m-svc-card.open:before{opacity:1}.m-svc-card.open{border-color:color-mix(in srgb,var(--accent-1),transparent 60%)}.m-svc-card .head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.m-svc-card .num{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-faint);text-transform:uppercase}.m-svc-card h3{font-family:var(--font-display);font-size:clamp(1.3rem,5vw,1.7rem);letter-spacing:-.02em;line-height:1;color:var(--ink);margin:14px 0 12px;font-weight:700}.m-svc-card p{color:var(--ink-2);font-size:14px;line-height:1.5;max-width:34ch;margin:0}.m-svc-card .tags{margin-top:16px;display:flex;flex-wrap:wrap;gap:6px;max-height:0;overflow:hidden;transition:max-height .45s var(--ease-bold)}.m-svc-card.open .tags{max-height:160px}.m-svc-card .tags span{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;color:var(--ink-2);border:1px solid var(--line-2);padding:5px 9px;border-radius:999px;text-transform:uppercase}.m-svc-card .toggle{width:30px;height:30px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;color:var(--ink);font-size:14px;transition:background .3s,color .3s,border-color .3s,transform .3s}.m-svc-card.open .toggle{background:var(--accent-1);color:var(--bg-deep);border-color:var(--accent-1);transform:rotate(45deg)}.m-works{padding:60px 0;overflow:hidden}.m-works-track{display:flex;gap:16px;padding:28px clamp(16px,5vw,32px);scroll-snap-type:x mandatory;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scroll-padding-left:clamp(16px,5vw,32px);scrollbar-width:none;perspective:1200px}.m-works-track::-webkit-scrollbar{display:none}.m-work-card{flex:0 0 78vw;max-width:360px;scroll-snap-align:start;scroll-snap-stop:always;position:relative;height:460px;background:linear-gradient(160deg,var(--surface-2),var(--surface));border:1px solid var(--line);border-radius:18px;padding:24px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;--tx: 0;--ty: 0;--depth: 0;transform:perspective(1100px) translateZ(calc(var(--depth) * var(--depth) * -60px)) rotateY(calc(var(--depth) * 14deg + var(--tx) * 2deg)) rotateX(calc(var(--ty) * 2deg));transform-origin:50% 50%;transition:transform .12s linear,border-color .3s}.m-work-card .thumb{position:absolute;inset:0;opacity:.18;pointer-events:none;z-index:0}.m-work-card .head{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:1}.m-work-card .tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;color:var(--accent-1);text-transform:uppercase}.m-work-card .num{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-faint)}.m-work-card h3{font-family:var(--font-display);font-size:clamp(1.5rem,6.5vw,2.1rem);line-height:.96;letter-spacing:-.03em;color:var(--ink);margin:0;position:relative;z-index:1;font-weight:700}.m-work-card .meta{display:flex;gap:12px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;color:var(--ink-muted);text-transform:uppercase;position:relative;z-index:1}.m-work-card .open-hint{position:absolute;bottom:24px;right:24px;width:38px;height:38px;border-radius:50%;border:1px solid var(--accent-1);display:grid;place-items:center;color:var(--accent-1);font-size:16px;z-index:1}.m-work-card.active{border-color:color-mix(in srgb,var(--accent-1),transparent 50%);box-shadow:0 24px 60px -20px color-mix(in srgb,var(--accent-1),transparent 70%),0 30px 80px -20px #00000080}.m-works-dots{display:flex;justify-content:center;gap:6px;margin:12px 0 4px}.m-works-dots i{width:6px;height:6px;border-radius:50%;background:var(--line-2);transition:background .3s,width .3s}.m-works-dots i.on{background:var(--accent-1);width:22px;border-radius:999px}.m-works-counter{padding:0 clamp(16px,5vw,32px);font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase;display:flex;justify-content:space-between}.m-works-counter b{color:var(--ink)}.m-detail{position:fixed;inset:0;z-index:80;background:var(--bg-deep);display:flex;flex-direction:column;animation:m-detail-in .35s var(--ease-bold) both;touch-action:pan-y}@keyframes m-detail-in{0%{opacity:0;transform:translateY(8%)}to{opacity:1;transform:translateY(0)}}.m-detail-head{display:flex;justify-content:space-between;align-items:center;padding:16px clamp(16px,5vw,32px);border-bottom:1px solid var(--line);font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase}.m-detail-close{width:36px;height:36px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;color:var(--ink);font-size:16px}.m-detail-close:active{background:var(--accent-1);color:var(--bg-deep);border-color:var(--accent-1)}.m-detail-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:32px clamp(16px,5vw,32px) 60px;display:grid;gap:28px}.m-detail-body .preview{height:220px;background:linear-gradient(160deg,var(--surface-2),var(--surface));border:1px solid var(--line);border-radius:18px;overflow:hidden;position:relative}.m-detail-body .preview svg{width:100%;height:100%}.m-detail-body h3{font-family:var(--font-display);font-size:clamp(2rem,9vw,3rem);line-height:.95;letter-spacing:-.03em;color:var(--ink);font-weight:700;margin:0}.m-detail-body .summary{color:var(--ink-2);font-size:15px;line-height:1.55;max-width:50ch}.m-detail-body .grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid var(--line);padding-top:22px}.m-detail-body .grid>div{display:grid;gap:4px}.m-detail-body .grid>div.span2{grid-column:span 2}.m-detail-body .k{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase}.m-detail-body .v{font-family:var(--font-display);font-weight:500;color:var(--ink);font-size:16px;letter-spacing:-.01em}.m-detail-body .v.outcome{color:var(--accent-1)}.m-detail-body .stack{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:22px}.m-detail-body .stack-tags{display:flex;flex-wrap:wrap;gap:6px}.m-detail-body .stack-tags span{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;color:var(--ink-2);border:1px solid var(--line-2);padding:6px 10px;border-radius:999px;text-transform:uppercase}.m-detail-cta{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;background:var(--accent-1);color:var(--bg-deep);border-radius:14px;font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}.m-detail-cta:active{transform:scale(.98)}.m-cta{padding:80px 0;position:relative;background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--accent-1),transparent 85%),transparent 60%),var(--bg-deep);overflow:hidden}.m-cta:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:50px 50px;mask-image:radial-gradient(ellipse at 50% 50%,black,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 50% 50%,black,transparent 75%);pointer-events:none}.m-cta-inner{position:relative;z-index:1;text-align:center;padding:0 clamp(16px,5vw,32px)}.m-cta h2{font-size:clamp(2.4rem,12vw,4.2rem);letter-spacing:-.04em;line-height:.9;margin-bottom:24px;padding:0}.m-cta h2 .accent{color:var(--accent-pop);font-style:italic;font-weight:600}.m-cta-sub{max-width:36ch;margin:0 auto 32px;color:var(--ink-2);font-size:15px;line-height:1.55}.m-cta-buttons{display:grid;gap:10px;max-width:360px;margin:0 auto}.m-cta-btn{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-radius:14px;font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}.m-cta-btn.solid{background:var(--accent-1);color:var(--bg-deep)}.m-cta-btn.line{background:transparent;border:1px solid var(--line-2);color:var(--ink)}.m-cta-btn:active{transform:scale(.98)}.m-footer{padding:50px 0 30px;border-top:1px solid var(--line)}.m-footer-grid{padding:0 clamp(16px,5vw,32px);display:grid;gap:28px;margin-bottom:40px}.m-footer-name{font-family:var(--font-display);font-size:clamp(3rem,12vw,4.5rem);letter-spacing:-.04em;line-height:.9;color:var(--ink);font-weight:800}.m-footer-name .dot{color:var(--accent-1)}.m-footer-tag{color:var(--ink-muted);font-size:13px;line-height:1.55;max-width:36ch}.m-footer-cols{display:grid;grid-template-columns:1fr 1fr;gap:22px}.m-footer-col h4{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:var(--ink-muted);text-transform:uppercase;margin:0 0 12px;font-weight:500}.m-footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.m-footer-col a{color:var(--ink-2);font-size:14px}.m-footer-col a:active{color:var(--accent-1)}.m-footer-bot{padding:22px clamp(16px,5vw,32px);border-top:1px solid var(--line);font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;color:var(--ink-muted);text-transform:uppercase;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}.m-loader{position:fixed;inset:0;z-index:100;background:var(--bg-deep);display:grid;place-items:center;transition:opacity .6s var(--ease-bold)}.m-loader.gone{opacity:0;pointer-events:none}.m-loader-stage{display:grid;gap:24px;place-items:center;text-align:center;padding:0 24px}.m-loader-mark{width:96px}.m-loader-mark svg{width:100%}.m-loader-mark svg path{stroke:var(--ink);stroke-width:1.4;fill:none}.m-loader-mark svg path[stroke="#dbc043"]{stroke:var(--accent-1)}.m-loader-mark.draw svg path{stroke-dasharray:var(--len, 1200);stroke-dashoffset:var(--len, 1200);animation:loader-draw 1.8s var(--ease-bold) forwards}.m-loader-meta{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--ink-muted);text-transform:uppercase;display:flex;gap:14px;align-items:center}.m-loader-meta .pct{color:var(--accent-1);min-width:4ch;text-align:right;font-variant-numeric:tabular-nums}.m-loader-bar{width:200px;height:1px;background:var(--line);overflow:hidden}.m-loader-bar>i{display:block;height:100%;background:var(--accent-1);transform-origin:left;transform:scaleX(var(--p, 0));transition:transform .2s linear}.m-loader-skip{margin-top:8px;font-family:var(--font-mono);font-size:10px;color:var(--accent-1);letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--accent-1);padding:8px 14px;border-radius:999px;background:transparent;cursor:pointer}.m-loader-typewriter{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--ink-muted);background:color-mix(in srgb,var(--surface),transparent 40%);border:1px solid var(--line);padding:8px 14px;border-radius:8px;min-width:240px;justify-content:flex-start}.m-loader-typewriter .prompt{color:var(--accent-1)}.m-loader-typewriter .text{color:var(--ink-2);min-height:1em}.m-loader-typewriter .caret{display:inline-block;color:var(--accent-1);animation:m-caret .9s steps(2) infinite;margin-left:-2px}@keyframes m-caret{0%,50%{opacity:1}51%,to{opacity:0}}.m-shake-ripple{position:fixed;inset:0;z-index:90;pointer-events:none;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--accent-pop),transparent 30%) 0%,color-mix(in srgb,var(--accent-pop),transparent 70%) 18%,transparent 35%);opacity:0;animation:m-shake-ripple .95s var(--ease-bold) forwards}@keyframes m-shake-ripple{0%{opacity:0;transform:scale(.2)}40%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(2.4)}}.m-shake-ripple:after{content:"";position:absolute;inset:0;background:var(--accent-pop);opacity:0;mix-blend-mode:difference;animation:m-shake-flash .45s var(--ease-bold) forwards}@keyframes m-shake-flash{0%{opacity:0}40%{opacity:.06}to{opacity:0}}.m-platform-pill{position:fixed;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:50;background:var(--surface);border:1px solid var(--line-2);padding:10px 14px;border-radius:999px;font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);display:inline-flex;align-items:center;gap:8px;box-shadow:0 14px 40px -12px #00000080}.m-platform-pill .accent{color:var(--accent-1)}@media (max-height: 620px){.m-platform-pill{display:none}}@media (prefers-reduced-motion: reduce){.m-hero-grid,.m-hero-glow,.m-hero-h,.m-svc-card,.m-work-card{transition:none!important;transform:none!important}}
