:root{--lumalynn-bg-dark:#050505;--lumalynn-bg-glass:rgba(12,12,12,.72);--lumalynn-border-glass:rgba(255, 255, 255, 0.08);--lumalynn-red-primary:#cd1117;--lumalynn-red-accent:#f01a22;--lumalynn-red-dark:#971015;--lumalynn-smoke-glow:rgba(255,255,255,.038);--lumalynn-smoke-soft:rgba(255,255,255,.040);--lumalynn-red-depth-glow:var(--lumalynn-smoke-glow);--lumalynn-red-depth-soft:var(--lumalynn-smoke-soft);--lumalynn-text-primary:#f8fafc;--lumalynn-text-secondary:#b8b8b8;--lumalynn-space-xs:clamp(0.5rem, 1vw, 0.75rem);--lumalynn-space-sm:clamp(0.875rem, 1.5vw, 1.25rem);--lumalynn-space-md:clamp(1.5rem, 3vw, 2.25rem);--lumalynn-space-lg:clamp(3rem, 6vw, 4.5rem);--lumalynn-space-xl:clamp(5rem, 10vw, 8rem);--lumalynn-blur-radius:16px;--lumalynn-shadow-depth:0 12px 40px rgba(0, 0, 0, 0.25);--lumalynn-lead-hero:clamp(2.5rem, 6vw, 5.5rem);--lumalynn-lead-heading:clamp(1.75rem, 4vw, 3rem);--lumalynn-lead-body:clamp(1rem, 1.1vw, 1.125rem);--lumalynn-height-hero:1.1;--lumalynn-height-body:1.625;--color-bg:#000000;--color-surface:#080808;--color-surface2:#111111;--color-red:#cd1117;--color-red-dim:rgba(205,17,23,.18);--color-red-dark:#a30e13;--color-silver:#bfc2c7;--color-white:#ffffff;--color-ink-dim:rgba(255,255,255,.45);--color-ink-xdim:rgba(255,255,255,.22);--color-border:rgba(255,255,255,.08);--color-border-red:rgba(205,17,23,.35);--radius-card:16px;--radius-pill:999px;--radius-sm:8px;--gutter:clamp(16px, 3vw, 40px);--container:1280px;--section-gap:clamp(80px, 10vw, 140px);--dur:.4s;--dur-long:.8s;--ease:cubic-bezier(.16,1,.3,1);--ease-out:cubic-bezier(.22,1,.36,1);--dur-hover:.52s;--dur-reveal:.9s;--dur-reveal-long:1s;--ease-cinematic:cubic-bezier(.18,.96,.24,1);--ease-cinematic-soft:cubic-bezier(.22,1,.36,1);--reveal-distance:22px;--reveal-distance-side:26px;--reveal-scale-start:.985;--font-display:Gotham, Montserrat, Arial, sans-serif;--font-body:Gotham, Montserrat, Arial, sans-serif;--nav-h:72px}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%;overflow-x:clip}body{background-color:var(--lumalynn-bg-dark);background-image:radial-gradient(at 0% 0%,var(--lumalynn-red-depth-glow) 0,transparent 50%),radial-gradient(at 100% 0%,var(--lumalynn-red-dark) 0,transparent 50%),url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.02'/%3E%3C/svg%3E");color:var(--lumalynn-text-primary);font-family:var(--font-body);font-size:var(--lumalynn-lead-body);font-weight:400;line-height:var(--lumalynn-height-body);overflow-x:clip;cursor:auto}body.menu-open{overflow:hidden}img,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{background:none;border:none;cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}.skip-link{position:absolute;top:-100%;left:0;z-index:10000;background:var(--lumalynn-bg-dark);color:var(--lumalynn-red-accent);padding:12px 24px;font-size:16px;font-weight:700;text-decoration:none;border-bottom-right-radius:4px;transition:top 0.25s cubic-bezier(.25,1,.5,1)}.skip-link:focus{top:0;outline:3px solid var(--lumalynn-red-accent);outline-offset:2px}.admin-bar .skip-link:focus,.admin-bar.skip-link:focus{top:32px}:where(a,button,input,textarea,select,summary,[role="button"],[tabindex]:not([tabindex="-1"])){min-width:24px;min-height:24px}:where(a,button,input,textarea,select,summary,[role="button"],[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid var(--lumalynn-red-accent);outline-offset:3px}#main-content:focus{outline:none}.form-group{margin-bottom:1.1rem}.form-group label{display:block;font-size:.65rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--color-silver);margin-bottom:.5rem}.form-group input,.form-group textarea,.form-group select{width:100%;background:rgb(255 255 255 / .04);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.8em 1em;font-size:.82rem;color:var(--color-white);transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease);-webkit-appearance:none;appearance:none}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-red);background:rgb(205 17 23 / .04)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-ink-xdim)}.form-group select option{background:#080808;color:var(--color-white)}.form-group textarea{resize:vertical;min-height:130px}.form-error{font-size:.67rem;color:var(--color-red);margin-top:.3rem;letter-spacing:.06em;display:none}.form-group.has-error input,.form-group.has-error textarea,.form-group.has-error select{border-color:var(--color-red)}.form-group.has-error .form-error{display:block}.form-success{display:none;text-align:center;padding:3rem}.form-success.visible{display:block}.form-success-icon{width:56px;height:56px;border-radius:50%;background:rgb(205 17 23 / .12);border:1px solid var(--color-border-red);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}.form-success h3{margin-bottom:.5rem}.form-success p{font-size:.85rem;color:var(--color-ink-dim)}.btn-magnetic{display:inline-block}.portfolio-page{--pf-ink:#030711;--pf-navy:#071329;--pf-blue:#2268d8;--pf-cyan:#76c8e8;--pf-red:#c52f3d;--pf-sakura:#d894a5;--pf-white:#f2f6fb;--pf-muted:#9aa8ba;--pf-dim:#65758b;--pf-line:rgba(151, 184, 220, .16);--pf-panel:rgba(7, 17, 37, .72);--pf-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--pf-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--pf-white);background:var(--pf-ink);font-family:var(--pf-sans);line-height:1.6;overflow-x:clip;color-scheme:dark}.portfolio-page *,.portfolio-page *::before,.portfolio-page *::after{box-sizing:border-box}.portfolio-page main{position:relative;z-index:1}.portfolio-page a{color:inherit}.portfolio-page img{display:block;max-width:100%}.portfolio-page button,.portfolio-page input,.portfolio-page textarea{font:inherit}.portfolio-page ::selection{color:#fff;background:rgb(197 47 61 / .78)}.portfolio-page :focus-visible{outline:2px solid var(--pf-cyan);outline-offset:5px}.portfolio-page .skip-link{z-index:10000}.pf-environment{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#030711}#pf-ocean,.pf-environment-fallback,.pf-mist{position:absolute;inset:0;width:100%;height:100%}#pf-ocean{opacity:0;transition:opacity 1.2s ease}.pf-canvas-ready #pf-ocean{opacity:.9}.pf-environment-fallback{background:radial-gradient(ellipse at 76% 22%,rgb(29 91 164 / .24),transparent 44%),radial-gradient(ellipse at 17% 72%,rgb(12 56 115 / .22),transparent 42%),linear-gradient(180deg,#020611 0%,#071630 48%,#020610 100%)}.pf-canvas-ready .pf-environment-fallback{opacity:.42}.pf-mist{background:linear-gradient(180deg,rgb(3 7 17 / .12),transparent 28%,rgb(3 7 17 / .42)),radial-gradient(ellipse at 50% 54%,transparent 22%,rgb(3 7 17 / .42) 80%)}.pf-mist::before{content:"";position:absolute;inset:auto -5% 0;height:58%;opacity:.18;background:radial-gradient(circle at 50% 100%,transparent 0 24px,rgb(111 180 224 / .36) 25px 26px,transparent 27px 31px,rgb(51 112 181 / .26) 32px 33px,transparent 34px) 0 0 / 96px 48px,radial-gradient(circle at 50% 100%,transparent 0 24px,rgb(111 180 224 / .24) 25px 26px,transparent 27px 31px,rgb(51 112 181 / .18) 32px 33px,transparent 34px) 48px 24px / 96px 48px;mask-image:linear-gradient(to bottom,transparent,#000 24%,#000 78%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 24%,#000 78%,transparent);transform:perspective(600px) rotateX(56deg) scale(1.2);transform-origin:50% 100%}.pf-canvas-ready .pf-mist::before{opacity:.1}.pf-frame{width:min(1280px, calc(100% - clamp(36px, 7vw, 120px)));max-width:100%;min-width:0;margin-inline:auto}.pf-section{position:relative;min-height:100svh;padding-block:clamp(100px, 13vw, 190px);scroll-margin-top:90px}.pf-section::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent,rgb(104 157 213 / .025) 50%,transparent);border-top:1px solid rgb(133 170 208 / .055)}.pf-section-heading{max-width:620px}.pf-section-heading h2,.pf-contact-intro h2{margin:0;color:var(--pf-white);font-size:clamp(2.55rem, 5.3vw, 5.7rem);line-height:.97;letter-spacing:-.06em;text-wrap:balance}.pf-section-heading>p:last-child{max-width:55ch;margin-top:1.5rem;color:var(--pf-muted)}.pf-section-index,.pf-kicker,.pf-project-type,.pf-timeline-date{margin:0 0 1.15rem;color:var(--pf-cyan);font:700 clamp(.7rem, .85vw, .8rem)/1.4 var(--pf-mono);letter-spacing:.16em;text-transform:uppercase}.pf-section-index::before,.pf-kicker::before{content:"";display:inline-block;width:30px;height:1px;margin:0 10px 4px 0;background:currentColor}.pf-heading-wide{max-width:780px}.pf-split{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(50px, 9vw, 150px);align-items:start}.pf-hero{display:grid;align-items:center;min-height:max(720px, 100svh);padding-block:clamp(145px, 18vh, 220px) 100px;border-top:0}.pf-hero::before{border:0;background:linear-gradient(180deg,rgb(3 7 17 / .08),rgb(3 7 17 / .38))}.pf-hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:clamp(40px, 8vw, 120px);align-items:end}.pf-hero-copy{max-width:960px;min-width:0}.pf-hero-title{margin:0;color:#f3f6fb;font-size:clamp(4.6rem, 11.4vw, 11rem);font-weight:780;line-height:.72;letter-spacing:-.085em;text-transform:uppercase;text-wrap:nowrap;text-shadow:0 22px 90px rgb(10 35 76 / .42)}.pf-role-line{margin:clamp(30px, 5vh, 58px) 0 0;color:#c8d5e5;font:600 clamp(.72rem, 1.15vw, 1rem)/1.5 var(--pf-mono);letter-spacing:.08em;text-transform:uppercase}.pf-role-line span{color:var(--pf-red)}.pf-hero-statement{max-width:720px;margin:1.2rem 0 0;color:#b3c0d1;font-size:clamp(1.05rem, 1.6vw, 1.35rem);line-height:1.65}.pf-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:clamp(28px, 5vh, 48px)}.pf-button{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;min-height:52px;padding:.85rem 1.25rem;border:1px solid #fff0;border-radius:4px;color:#fff;font:700 .76rem/1 var(--pf-mono);letter-spacing:.09em;text-decoration:none;text-transform:uppercase;cursor:pointer;transition:transform .35s cubic-bezier(.2,.8,.2,1),background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.pf-button:hover{transform:translateY(-2px)}.pf-button-primary{background:var(--pf-blue);box-shadow:0 12px 38px rgb(22 87 181 / .22)}.pf-button-primary:hover{background:#2d75e5;box-shadow:0 16px 46px rgb(22 87 181 / .32)}.pf-button-secondary{border-color:rgb(177 204 233 / .25);background:rgb(6 17 37 / .46)}.pf-button-secondary:hover{border-color:rgb(177 204 233 / .48);background:rgb(13 30 59 / .7)}.pf-text-link{margin-left:.5rem;color:#c8d7e8;font:700 .76rem/1 var(--pf-mono);letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.pf-text-link span{color:var(--pf-red);transition:transform .25s ease;display:inline-block}.pf-text-link:hover span{transform:translateX(4px)}.pf-system-card{position:relative;width:min(100%, 340px);justify-self:end;margin-bottom:4px;padding:18px;border:1px solid var(--pf-line);border-radius:6px;background:linear-gradient(135deg,rgb(12 29 58 / .78),rgb(4 11 26 / .68));box-shadow:0 28px 80px rgb(0 0 0 / .24),inset 0 1px rgb(255 255 255 / .035);backdrop-filter:blur(14px)}.pf-system-card::before{content:"";position:absolute;inset:-1px auto auto -1px;width:36px;height:1px;background:var(--pf-red);box-shadow:0 0 18px rgb(197 47 61 / .5)}.pf-system-head{display:flex;justify-content:space-between;padding-bottom:13px;border-bottom:1px solid var(--pf-line);color:var(--pf-dim);font:700 .62rem/1 var(--pf-mono);letter-spacing:.12em}.pf-status{color:#91baa9}.pf-status i,.pf-availability i{display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:#72c397;box-shadow:0 0 10px rgb(114 195 151 / .6)}.pf-system-card dl{margin:15px 0}.pf-system-card dl div{display:grid;grid-template-columns:76px 1fr;gap:12px;padding:7px 0}.pf-system-card dt{color:var(--pf-dim);font:.67rem var(--pf-mono);text-transform:uppercase}.pf-system-card dd{margin:0;color:#bac7d8;font-size:.8rem}.pf-signal{display:flex;align-items:end;gap:4px;height:22px;padding-top:6px;border-top:1px solid var(--pf-line)}.pf-signal i{flex:1;height:20%;background:#326fb4;opacity:.7;animation:pf-signal 2.4s ease-in-out infinite alternate;transform-origin:bottom}.pf-signal i:nth-child(2n){height:70%;animation-delay:-.7s}.pf-signal i:nth-child(3n){height:42%;animation-delay:-1.4s}.pf-scroll-cue{position:absolute;left:50%;bottom:28px;display:grid;justify-items:center;gap:10px;color:var(--pf-dim);font:700 .6rem var(--pf-mono);letter-spacing:.2em;text-decoration:none;text-transform:uppercase;transform:translateX(-50%)}.pf-scroll-cue i{width:1px;height:28px;background:linear-gradient(var(--pf-cyan),transparent);animation:pf-scroll 2.2s ease-in-out infinite}.pf-about{display:grid;align-items:center}.pf-about-copy{max-width:700px;padding-top:10px}.pf-about-copy p{color:var(--pf-muted);font-size:clamp(1rem, 1.3vw, 1.16rem);line-height:1.85}.pf-about-copy .pf-lead{margin-top:0;color:#e0e7f0;font-size:clamp(1.4rem, 2.25vw, 2.2rem);line-height:1.42;letter-spacing:-.025em}.pf-principles{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:42px 0 0;padding:0;border:1px solid var(--pf-line);list-style:none;background:var(--pf-line)}.pf-principles li{padding:15px 10px;color:#a9b9cc;background:rgb(4 11 26 / .9);font:700 .66rem var(--pf-mono);letter-spacing:.11em;text-align:center;text-transform:uppercase}.pf-stack{min-height:110svh}.pf-stack-system{position:relative;min-height:620px;margin-top:clamp(55px, 8vw, 100px)}.pf-stack-system::before,.pf-stack-system::after{content:"";position:absolute;left:50%;top:50%;border:1px solid rgb(73 131 192 / .15);border-radius:50%;transform:translate(-50%,-50%)}.pf-stack-system::before{width:52%;aspect-ratio:1}.pf-stack-system::after{width:74%;aspect-ratio:1;border-style:dashed;opacity:.6}.pf-stack-core{position:absolute;left:50%;top:50%;z-index:2;display:grid;place-items:center;width:116px;aspect-ratio:1;border:1px solid rgb(85 157 224 / .42);border-radius:50%;color:#d8e6f5;background:radial-gradient(circle,rgb(36 103 179 / .2),rgb(3 9 22 / .92) 68%);font:700 .68rem var(--pf-mono);letter-spacing:.2em;transform:translate(-50%,-50%);box-shadow:0 0 70px rgb(26 93 172 / .16)}.js-ready .pf-stack-system>.pf-stack-core.reveal{opacity:0;transform:translate3d(-50%,calc(-50% + var(--reveal-distance)),0) scale(.94)}.js-ready .pf-stack-system>.pf-stack-core.reveal.visible{opacity:1;transform:translate3d(-50%,-50%,0) scale(1)}.pf-stack-core i{position:absolute;inset:13px;border:1px dashed rgb(104 171 226 / .3);border-radius:inherit;animation:pf-spin 24s linear infinite}.pf-stack-node{position:absolute;z-index:3;width:min(270px, 23vw);min-height:132px;padding:19px;border:1px solid var(--pf-line);border-radius:5px;background:rgb(5 14 31 / .82);box-shadow:0 18px 60px rgb(0 0 0 / .2);backdrop-filter:blur(12px);transition:transform .35s ease,border-color .35s ease,background-color .35s ease}.pf-stack-node:hover,.pf-stack-node:focus-visible{z-index:4;border-color:rgb(93 164 225 / .46);background:rgb(10 27 54 / .94);transform:translateY(-5px)}.pf-stack-node>span{color:var(--pf-red);font:700 .63rem var(--pf-mono)}.pf-stack-node h3{margin:12px 0 4px;color:#e7edf5;font-size:1rem;letter-spacing:-.01em}.pf-stack-node p{margin:0;color:var(--pf-muted);font-size:.8rem;line-height:1.55}.pf-node-1{left:2%;top:9%}.pf-node-2{right:2%;top:9%}.pf-node-3{left:0;top:61%}.pf-node-4{right:0;top:61%}.pf-node-5{left:26%;bottom:0}.pf-node-6{right:26%;bottom:0}.pf-work-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:50px;align-items:end;max-width:none}.pf-work-heading>p{margin:0 0 .75rem}.pf-project-list{display:grid;gap:clamp(90px, 14vw, 190px);margin-top:clamp(70px, 10vw, 130px)}.pf-project{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(300px,.78fr);gap:clamp(38px, 7vw, 100px);align-items:center}.pf-project-reverse .pf-project-visual{order:2}.pf-project-visual{position:relative;min-height:440px;overflow:hidden;border:1px solid rgb(130 166 205 / .16);border-radius:5px;background:#071126;box-shadow:0 34px 100px rgb(0 0 0 / .28);transform:perspective(1200px) rotateY(1.5deg)}.pf-project-reverse .pf-project-visual{transform:perspective(1200px) rotateY(-1.5deg)}.pf-project-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 50%,rgb(8 28 61 / .28)),linear-gradient(180deg,transparent 60%,rgb(2 7 16 / .5))}.pf-project-visual img{width:100%;height:100%;min-height:440px;object-fit:cover;object-position:center;filter:saturate(.76) contrast(1.06) brightness(.76);transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .6s ease}.pf-project:hover .pf-project-visual img{transform:scale(1.025);filter:saturate(.9) contrast(1.06) brightness(.86)}.pf-project-system{display:grid;place-items:center;padding:clamp(22px, 4vw, 54px);background:radial-gradient(circle at 72% 24%,rgb(43 113 190 / .20),transparent 32%),linear-gradient(145deg,rgb(8 25 53 / .97),rgb(3 9 22 / .98))}.pf-system-visual-grid{position:relative;z-index:1;width:100%;padding:clamp(20px, 3vw, 36px);border:1px solid rgb(105 166 224 / .25);border-radius:6px;background:rgb(2 9 24 / .72);box-shadow:0 28px 90px rgb(0 0 0 / .32),inset 0 1px rgb(255 255 255 / .025)}.pf-system-visual-head{display:flex;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid rgb(127 174 219 / .15);color:#dce8f5;font:700 .67rem var(--pf-mono);letter-spacing:.13em}.pf-system-visual-head i{color:#73d6a1;font-style:normal}.pf-system-visual-flow{display:grid;grid-template-columns:1fr auto 1.25fr auto .8fr;gap:10px;align-items:center;margin:clamp(30px, 5vw, 52px) 0;color:#bfd0e3;font:700 clamp(.62rem, 1vw, .76rem)/1.5 var(--pf-mono);text-align:center}.pf-system-visual-flow span{padding:13px 8px;border:1px solid rgb(79 148 219 / .22);border-radius:4px;background:rgb(18 54 94 / .28)}.pf-system-visual-flow b{color:var(--pf-red);font-weight:500}.pf-system-visual-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pf-system-visual-metrics span{min-height:88px;padding:14px;border:1px solid rgb(129 170 211 / .12);color:#8298af;font:.62rem/1.5 var(--pf-mono)}.pf-system-visual-metrics strong{display:block;margin-bottom:6px;color:#e4edf6;font-size:1rem}.pf-system-visual-bars{display:flex;align-items:end;gap:7px;height:48px;margin-top:24px}.pf-system-visual-bars i{flex:1;height:30%;background:linear-gradient(#4f94eb,#285f9f);opacity:.76;animation:pf-signal 2.8s ease-in-out infinite alternate}.pf-system-visual-bars i:nth-child(2n){height:72%;animation-delay:-.8s}.pf-system-visual-bars i:nth-child(3n){height:48%;animation-delay:-1.6s}.pf-project-visual>span{position:absolute;z-index:2;right:20px;top:18px;color:rgb(235 243 252 / .7);font:700 .68rem var(--pf-mono);letter-spacing:.12em}.pf-project-copy h3{margin:0 0 22px;color:#edf2f8;font-size:clamp(2rem, 3.5vw, 4.2rem);line-height:1;letter-spacing:-.055em}.pf-project-copy>p:not(.pf-project-type){color:var(--pf-muted);font-size:clamp(.98rem, 1.2vw, 1.08rem);line-height:1.75}.pf-project-type{color:var(--pf-red)}.pf-project-meta{margin:28px 0;border-block:1px solid var(--pf-line)}.pf-project-meta div{display:grid;grid-template-columns:78px 1fr;gap:12px;padding:11px 0}.pf-project-meta div+div{border-top:1px solid rgb(151 184 220 / .08)}.pf-project-meta dt{color:var(--pf-dim);font:700 .62rem var(--pf-mono);letter-spacing:.1em;text-transform:uppercase}.pf-project-meta dd{margin:0;color:#b6c3d4;font-size:.85rem}.pf-project-link{display:inline-flex;gap:.7rem;color:#d8e4f0;font:700 .7rem var(--pf-mono);letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.pf-project-link span{color:var(--pf-red);transition:transform .25s ease}.pf-project-link:hover span{transform:translate(3px,-3px)}.pf-archive{margin-top:clamp(75px, 10vw, 130px);border-block:1px solid var(--pf-line)}.pf-archive summary{display:flex;justify-content:space-between;padding:24px 0;color:#d7e1ed;font:700 .75rem var(--pf-mono);letter-spacing:.1em;cursor:pointer;text-transform:uppercase}.pf-archive summary::marker{content:""}.pf-archive[open] summary span{transform:rotate(45deg)}.pf-archive ul{margin:0;padding:0 0 20px;list-style:none}.pf-archive li{display:grid;grid-template-columns:1fr 2fr;gap:20px;padding:15px 0;border-top:1px solid rgb(151 184 220 / .08);color:var(--pf-muted);font-size:.9rem}.pf-archive strong{color:#cdd9e6}.pf-experience{display:grid;align-items:center}.pf-timeline{position:relative;padding-left:48px}.pf-timeline::before{content:"";position:absolute;left:10px;top:7px;bottom:7px;width:1px;background:linear-gradient(var(--pf-red),rgb(68 132 196 / .42),transparent)}.pf-timeline article{position:relative;padding:0 0 70px}.pf-timeline article:last-child{padding-bottom:0}.pf-timeline-marker{position:absolute;left:-48px;top:3px;display:grid;place-items:center;width:21px;aspect-ratio:1;border:1px solid rgb(197 47 61 / .5);border-radius:50%;background:var(--pf-ink)}.pf-timeline-marker i{width:5px;aspect-ratio:1;border-radius:50%;background:var(--pf-red);box-shadow:0 0 14px rgb(197 47 61 / .7)}.pf-timeline h3{margin:0;color:#e8eef6;font-size:clamp(1.6rem, 2.5vw, 2.5rem);letter-spacing:-.035em}.pf-timeline-org{margin:.3rem 0 1.1rem!important;color:#91a6bc!important;font:700 .72rem var(--pf-mono)!important;letter-spacing:.08em;text-transform:uppercase}.pf-timeline article>p:not(.pf-timeline-date):not(.pf-timeline-org){max-width:690px;color:var(--pf-muted);line-height:1.75}.pf-timeline ul{display:flex;flex-wrap:wrap;gap:8px 18px;margin:20px 0 0;padding:0;color:#a9bacd;list-style:none;font:.72rem var(--pf-mono)}.pf-timeline li::before{content:"/";margin-right:7px;color:var(--pf-blue)}.pf-approach{min-height:auto}.pf-process{display:grid;grid-template-columns:repeat(6,1fr);margin:clamp(55px, 8vw, 90px) 0 0;padding:0;border:1px solid var(--pf-line);list-style:none;background:var(--pf-line)}.pf-process li{position:relative;min-height:240px;padding:24px 18px;background:rgb(4 12 27 / .88);transition:background-color .3s ease,transform .3s ease}.pf-process li:hover{z-index:2;background:rgb(11 29 57 / .96);transform:translateY(-4px)}.pf-process li>span{color:var(--pf-red);font:700 .62rem var(--pf-mono)}.pf-process h3{margin:72px 0 9px;color:#dbe5ef;font-size:1rem}.pf-process p{margin:0;color:var(--pf-muted);font-size:.78rem;line-height:1.55}.pf-contact{display:grid;align-items:center;min-height:100svh;padding-bottom:clamp(120px, 15vw, 200px)}.pf-contact::after{content:"";position:absolute;inset:auto 0 0;height:40%;z-index:-1;background:linear-gradient(transparent,rgb(6 17 36 / .7))}.pf-contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(380px,1.15fr);gap:clamp(50px, 9vw, 140px);align-items:start}.pf-contact-intro h2{max-width:9ch}.pf-contact-intro>p:not(.pf-section-index):not(.pf-availability){max-width:500px;color:var(--pf-muted);font-size:1.05rem}.pf-contact-links{display:grid;margin-top:42px;border-top:1px solid var(--pf-line)}.pf-contact-links a{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--pf-line);text-decoration:none}.pf-contact-links span{color:var(--pf-dim);font:700 .62rem var(--pf-mono);letter-spacing:.1em;text-transform:uppercase}.pf-contact-links strong{color:#d1dce8;font-size:.85rem;font-weight:600}.pf-availability{margin-top:24px;color:#99abbd;font-size:.78rem}.pf-form-wrap{position:relative;min-height:560px;padding:clamp(24px, 4vw, 46px);border:1px solid var(--pf-line);border-radius:6px;background:rgb(5 14 31 / .78);box-shadow:0 38px 100px rgb(0 0 0 / .24);backdrop-filter:blur(16px)}.pf-form-wrap::before{content:"";position:absolute;inset:-1px -1px auto auto;width:60px;height:1px;background:var(--pf-red);box-shadow:0 0 20px rgb(197 47 61 / .5)}.pf-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pf-form .form-group{margin-bottom:20px}.pf-form label{display:block;margin-bottom:8px;color:#b4c2d2;font:700 .68rem var(--pf-mono);letter-spacing:.08em;text-transform:uppercase}.pf-form label>span{color:var(--pf-red)}.pf-form label small{color:var(--pf-dim);font-size:.6rem}.pf-form input,.pf-form textarea{width:100%;border:1px solid rgb(151 184 220 / .16);border-radius:3px;padding:13px 14px;color:#e6edf5;background:rgb(2 8 20 / .68);caret-color:var(--pf-cyan);transition:border-color .25s ease,box-shadow .25s ease,background-color .25s ease}.pf-form textarea{min-height:152px;resize:vertical}.pf-form input:hover,.pf-form textarea:hover{border-color:rgb(151 184 220 / .3)}.pf-form input:focus,.pf-form textarea:focus{outline:0;border-color:rgb(74 145 215 / .76);background:rgb(4 13 29 / .9);box-shadow:0 0 0 3px rgb(34 104 216 / .13)}.pf-form .form-group.has-error input,.pf-form .form-group.has-error textarea{border-color:var(--pf-red)}.pf-form .form-error{display:block;min-height:16px;margin-top:5px;color:#ef8d98;font:.66rem var(--pf-mono)}.pf-form .form-submit-error{text-align:left!important}.pf-submit{min-width:174px;border:0}.pf-submit:disabled{opacity:.62;cursor:wait}.pf-noscript{margin:0 0 20px;padding:12px;border:1px solid rgb(118 200 232 / .24);color:#b9c8d8;background:rgb(15 47 79 / .24);font-size:.78rem}.pf-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-success{display:none;position:absolute;inset:0;place-content:center;padding:40px;text-align:center}.form-success.visible{display:grid}.form-success>span{display:grid;place-items:center;width:56px;aspect-ratio:1;margin:0 auto 20px;border:1px solid rgb(111 190 151 / .45);border-radius:50%;color:#8fd0ad}.form-success h3{margin:0;color:#e6edf5;font-size:1.8rem}.form-success p{color:var(--pf-muted)}@keyframes pf-signal{to{transform:scaleY(2.4);opacity:.95}}@keyframes pf-spin{to{transform:rotate(360deg)}}@keyframes pf-scroll{0%,100%{transform:scaleY(.3);transform-origin:top;opacity:.35}50%{transform:scaleY(1);opacity:.9}}@media (min-width:1800px){.pf-frame{width:min(1480px, calc(100% - 180px))}.pf-hero-title{font-size:clamp(9rem, 10vw, 12.5rem)}}@media (max-width:1050px){.pf-hero-grid{grid-template-columns:1fr}.pf-system-card{display:none}.pf-hero-title{font-size:clamp(4.5rem, 14vw, 9rem)}.pf-split{grid-template-columns:1fr;gap:48px}.pf-stack-system{min-height:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pf-stack-system::before,.pf-stack-system::after,.pf-stack-core{display:none}.pf-stack-node{position:static;width:auto;min-height:132px}.pf-work-heading{grid-template-columns:1fr}.pf-project{grid-template-columns:1fr}.pf-project-reverse .pf-project-visual{order:0}.pf-project-visual,.pf-project-reverse .pf-project-visual{transform:none}.pf-project-copy{max-width:680px}.pf-process{grid-template-columns:repeat(3,1fr)}.pf-contact-grid{grid-template-columns:1fr}.pf-contact-intro h2{max-width:13ch}}@media (max-width:720px){.pf-frame{width:calc(100% - 36px)}.pf-section{min-height:auto;padding-block:100px}.pf-hero{min-height:max(660px, 100svh);padding-block:130px 80px}.pf-kicker{font-size:.62rem}.pf-hero-title{font-size:clamp(3.3rem, 16.5vw, 4.6rem);line-height:.77}.pf-role-line{font-size:.64rem;line-height:1.8}.pf-hero-statement{font-size:1rem}.pf-actions{align-items:stretch}.pf-actions .btn-magnetic,.pf-actions .pf-button{width:100%}.pf-text-link{width:auto;margin:12px auto 0}.pf-scroll-cue{display:none}.pf-principles{grid-template-columns:repeat(2,1fr)}.pf-stack-system{grid-template-columns:1fr}.pf-project-list{gap:100px}.pf-project-visual,.pf-project-visual img{min-height:280px}.pf-project-system{padding:18px}.pf-system-visual-grid{padding:18px 14px}.pf-system-visual-head{font-size:.56rem}.pf-system-visual-flow{grid-template-columns:1fr;margin:22px 0}.pf-system-visual-flow b{transform:rotate(90deg)}.pf-system-visual-metrics{grid-template-columns:1fr}.pf-system-visual-metrics span{min-height:0}.pf-project-copy h3{font-size:2.25rem}.pf-archive li{grid-template-columns:1fr;gap:3px}.pf-timeline{padding-left:38px}.pf-timeline-marker{left:-38px}.pf-process{grid-template-columns:1fr 1fr}.pf-process li{min-height:190px}.pf-process h3{margin-top:42px}.pf-form-row{grid-template-columns:1fr;gap:0}.pf-form-wrap{min-height:620px;padding:22px 18px}.pf-contact-links a{display:grid}.pf-submit,.pf-form .btn-magnetic{width:100%}.portfolio-page .reveal,.portfolio-page .reveal-left,.portfolio-page .reveal-right,.portfolio-page .reveal-scale{transition-duration:.55s}.js-ready .portfolio-page .pf-hero .reveal,.js-ready .portfolio-page .pf-hero .reveal.visible,.js-ready .portfolio-page .pf-hero .split-entrance,.js-ready .portfolio-page .pf-hero .split-entrance.visible,.js-ready .portfolio-page .pf-hero .split-word,.js-ready .portfolio-page .pf-hero .split-word.visible{opacity:1!important;transform:none!important;transition:none!important}}@media (max-width:380px){.pf-frame{width:calc(100% - 28px)}.pf-hero-title{font-size:3.65rem}.pf-process{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html:not([data-pf-effects="full"]) .portfolio-page{scroll-behavior:auto!important}html:not([data-pf-effects="full"]) #pf-ocean{display:none}html:not([data-pf-effects="full"]) .pf-environment-fallback{opacity:1!important}html:not([data-pf-effects="full"]) .pf-signal i,html:not([data-pf-effects="full"]) .pf-stack-core i,html:not([data-pf-effects="full"]) .pf-scroll-cue i{animation:none!important}html:not([data-pf-effects="full"]) .pf-project-visual img,html:not([data-pf-effects="full"]) .pf-button,html:not([data-pf-effects="full"]) .pf-stack-node,html:not([data-pf-effects="full"]) .pf-process li{transition:none!important;transform:none!important}}@supports (content-visibility:auto){.portfolio-page .pf-section:not(.pf-hero):not(.pf-contact){content-visibility:auto;contain-intrinsic-size:auto 900px}}.portfolio-page,.legal-page{--pf-ink:#02050d;--pf-navy:#06152f;--pf-indigo:#0a2855;--pf-blue:#246fd0;--pf-cyan:#8dd8ea;--pf-foam:#e8f1ed;--pf-vermilion:#d14a4d;--pf-sakura:#f0a9bd;--pf-sakura-light:#ffd8e2;background:#02050d!important}.pf-environment{isolation:isolate;background:radial-gradient(circle at 78% 18%,rgb(160 209 226 / .09),transparent 25%),linear-gradient(180deg,#02050d 0%,#061833 47%,#02050d 100%)}body.portfolio-page>.pf-environment{position:fixed!important;inset:0;z-index:0!important;width:100vw;height:100vh}#pf-ocean{z-index:3;opacity:0;filter:saturate(1.18) contrast(1.08);transition:opacity .7s ease}.pf-canvas-ready #pf-ocean{opacity:1}.pf-environment-fallback{z-index:0;opacity:1;overflow:hidden;background:radial-gradient(ellipse at 16% 76%,rgb(13 76 145 / .38),transparent 42%),radial-gradient(ellipse at 80% 30%,rgb(31 91 155 / .3),transparent 38%),linear-gradient(180deg,#02050d 0%,#071a37 52%,#02050d 100%)}.pf-environment-fallback::before{content:"";position:absolute;top:clamp(90px, 15vh, 180px);right:clamp(32px, 11vw, 180px);width:clamp(150px, 19vw, 300px);aspect-ratio:1;border-radius:50%;opacity:.7;background:radial-gradient(circle at 40% 36%,rgb(255 226 214 / .28),transparent 5%),radial-gradient(circle at 56% 60%,rgb(80 7 18 / .24),transparent 35%),radial-gradient(circle,#d9585d 0 52%,#a62135 72%,transparent 73%);box-shadow:0 0 55px rgb(209 74 77 / .2),0 0 140px rgb(209 74 77 / .12);animation:pf-moon-breathe 12s ease-in-out infinite}.pf-environment-fallback::after{content:"";position:absolute;left:-18vw;right:-18vw;bottom:-18vh;height:70vh;opacity:.72;background:radial-gradient(80% 95% at 18% 100%,transparent 47%,rgb(101 194 225 / .28) 48% 49%,transparent 50%),radial-gradient(80% 100% at 53% 100%,transparent 51%,rgb(232 241 237 / .2) 52% 53%,transparent 54%),radial-gradient(80% 95% at 82% 100%,transparent 45%,rgb(67 143 203 / .3) 46% 48%,transparent 49%),linear-gradient(165deg,transparent 0 39%,rgb(9 46 96 / .7) 40% 56%,rgb(3 18 42 / .92) 57%);transform-origin:50% 100%;animation:none}.pf-canvas-ready .pf-environment-fallback{opacity:.42}.pf-canvas-ready .pf-environment-fallback::before,.pf-canvas-ready .pf-environment-fallback::after{opacity:0}.pf-mist{z-index:4}.pf-mist::before{height:70%;opacity:.3;background:radial-gradient(circle at 50% 100%,transparent 0 27px,rgb(200 230 236 / .54) 28px 30px,transparent 31px 36px,rgb(65 145 205 / .45) 37px 39px,transparent 40px) 0 0 / 112px 56px,radial-gradient(circle at 50% 100%,transparent 0 27px,rgb(141 216 234 / .4) 28px 30px,transparent 31px 36px,rgb(44 112 183 / .34) 37px 39px,transparent 40px) 56px 28px / 112px 56px;animation:none}.pf-canvas-ready .pf-mist::before{opacity:.055}.pf-mist::after{content:"";position:absolute;inset:0;opacity:.22;background:linear-gradient(118deg,transparent 0 17%,rgb(141 216 234 / .38) 17.1% 17.24%,transparent 17.4%),linear-gradient(122deg,transparent 0 32%,rgb(232 241 237 / .22) 32.1% 32.2%,transparent 32.35%),linear-gradient(112deg,transparent 0 68%,rgb(209 74 77 / .32) 68.1% 68.25%,transparent 68.45%),linear-gradient(116deg,transparent 0 82%,rgb(141 216 234 / .26) 82.1% 82.22%,transparent 82.4%);background-size:125% 125%;mask-image:radial-gradient(ellipse at center,#000,transparent 78%);-webkit-mask-image:radial-gradient(ellipse at center,#000,transparent 78%);animation:none}.pf-canvas-ready .pf-mist::after{opacity:0}.pf-sakura-field{position:absolute;inset:0;z-index:5;overflow:hidden;pointer-events:none}.pf-sakura-field i{--petal-size:clamp(8px, .8vw, 14px);position:absolute;top:-12vh;left:50%;width:var(--petal-size);height:calc(var(--petal-size) * 1.45);border:1px solid rgb(255 232 238 / .56);border-radius:80% 8% 72% 24%;opacity:.62;background:linear-gradient(145deg,#ffe0e8 0 22%,#f0a9bd 58%,#c7688f 100%);box-shadow:0 0 13px rgb(240 169 189 / .26);transform-origin:52% 65%;animation:pf-sakura-fall 34s linear infinite;will-change:transform}.pf-sakura-field i:nth-child(1){left:61%;animation-delay:-4s;animation-duration:38s;scale:.72}.pf-sakura-field i:nth-child(2){left:68%;animation-delay:-21s;animation-duration:42s;scale:.56}.pf-sakura-field i:nth-child(3){left:74%;animation-delay:-12s;animation-duration:35s;scale:.94}.pf-sakura-field i:nth-child(4){left:80%;animation-delay:-29s;animation-duration:44s;scale:.64}.pf-sakura-field i:nth-child(5){left:86%;animation-delay:-8s;animation-duration:40s;scale:1.02}.pf-sakura-field i:nth-child(6){left:91%;animation-delay:-25s;animation-duration:37s;scale:.52}.pf-sakura-field i:nth-child(7){left:95%;animation-delay:-16s;animation-duration:45s;scale:.82}.pf-sakura-field i:nth-child(8){left:71%;animation-delay:-34s;animation-duration:48s;scale:.48}.pf-sakura-field i:nth-child(n+9){display:none}.pf-canvas-ready .pf-sakura-field{opacity:0;visibility:hidden;transition:opacity .5s ease}.pf-section::after{content:"";position:absolute;z-index:-1;right:clamp(16px, 5vw, 76px);top:12%;width:1px;height:76%;opacity:.28;background:linear-gradient(transparent,var(--pf-cyan),var(--pf-vermilion),transparent);box-shadow:8px 0 rgb(141 216 234 / .08),-8px 0 rgb(141 216 234 / .08)}.pf-project-visual,.pf-stack-node,.pf-form-wrap,.pf-system-card{border-color:rgb(141 216 234 / .2);box-shadow:0 28px 90px rgb(0 0 0 / .32),inset 0 1px rgb(232 241 237 / .04),0 0 48px rgb(36 111 208 / .055)}@keyframes pf-moon-breathe{0%,100%{transform:scale(.96);filter:saturate(.92);opacity:.58}50%{transform:scale(1.035);filter:saturate(1.18);opacity:.78}}@keyframes pf-ink-swell{0%{transform:translate3d(-1.5%,2%,0) rotate(-1deg) scale(1.02)}100%{transform:translate3d(1.5%,-2%,0) rotate(1deg) scale(1.07)}}@keyframes pf-seigaiha-drift{to{background-position:112px 0,168px 28px}}@keyframes pf-energy-shift{from{transform:translate3d(-2%,1%,0) scale(1.02);opacity:.13}to{transform:translate3d(2%,-1%,0) scale(1.08);opacity:.32}}@keyframes pf-sakura-fall{0%{transform:translate3d(2vw,-12vh,0) rotate(0deg) rotateY(0deg);opacity:0}10%{opacity:.64}48%{transform:translate3d(-5vw,48vh,0) rotate(190deg) rotateY(120deg)}88%{opacity:.54}100%{transform:translate3d(-10vw,112vh,0) rotate(390deg) rotateY(240deg);opacity:0}}@media (max-width:720px){.pf-environment-fallback::before{right:-24px;top:104px;width:170px;opacity:.55}.pf-environment-fallback::after{height:58vh;opacity:.6}.pf-mist::before{opacity:.2}.pf-mist::after{opacity:.14}.pf-sakura-field i:nth-child(n+7){display:none}}@media (prefers-reduced-motion:reduce){html:not([data-pf-effects="full"]) .pf-environment-fallback::before,html:not([data-pf-effects="full"]) .pf-environment-fallback::after,html:not([data-pf-effects="full"]) .pf-mist::before,html:not([data-pf-effects="full"]) .pf-mist::after,html:not([data-pf-effects="full"]) .pf-sakura-field i{animation:none!important}html:not([data-pf-effects="full"]) .pf-sakura-field{display:none}}html.pf-canvas-ready .pf-environment-fallback::before,html.pf-canvas-ready .pf-environment-fallback::after{content:none!important;display:none!important;opacity:0!important}.pf-environment{background:radial-gradient(ellipse at 50% 66%,rgb(10 53 111 / .22),transparent 48%),radial-gradient(circle at 78% 18%,rgb(37 91 154 / .14),transparent 30%),radial-gradient(circle at 13% 28%,rgb(12 38 82 / .20),transparent 34%),linear-gradient(180deg,#01040d 0%,#04112a 42%,#061a38 68%,#01050e 100%)!important}.pf-canvas-ready .pf-mist::before{opacity:.025}.pf-hero-title.split-entrance{overflow:visible;padding-right:.12em}html.pf-programmatic-scroll{scroll-behavior:auto!important}@media (min-width:1051px){.pf-hero-title{font-size:clamp(6.8rem, 7.5vw, 9.6rem);line-height:.76;letter-spacing:-.075em}.pf-hero-copy{max-width:850px}}body.portfolio-page>.pf-environment{width:100%;height:100lvh;min-height:100svh;transform:translateZ(0);backface-visibility:hidden;contain:strict}#pf-ocean{width:100%;height:100%;transform:translateZ(0);backface-visibility:hidden;contain:strict}.pf-environment-fallback{transform:translateZ(0);backface-visibility:hidden;contain:strict}.pf-static-scene-artwork{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;user-select:none;pointer-events:none;transform:translateZ(0);backface-visibility:hidden}html.pf-static-scene-ready .pf-environment-fallback,html.pf-static-scene-ready.pf-canvas-ready .pf-environment-fallback{opacity:1;background:#01050f}@property --pf-sheen-position{syntax:"<percentage>";inherits:false;initial-value:-40%}.pf-button{position:relative;isolation:isolate;overflow:hidden}.pf-button::before{content:"";position:absolute;inset:-35% auto -35% var(--pf-sheen-position);z-index:-1;width:32%;opacity:0;background:linear-gradient(105deg,transparent,rgb(225 242 255 / .18),transparent);transform:skewX(-18deg);transition:--pf-sheen-position .75s cubic-bezier(.22,1,.36,1),opacity .25s ease}.pf-system-card,.pf-stack-node,.pf-project-visual,.pf-form-wrap{transition-property:transform,border-color,background-color,box-shadow,filter;transition-duration:.55s;transition-timing-function:cubic-bezier(.22,1,.36,1)}@media (hover:hover) and (pointer:fine){.pf-button:hover::before,.pf-button:focus-visible::before{--pf-sheen-position:118%;opacity:1}.pf-system-card:hover,.pf-form-wrap:hover{border-color:rgb(141 216 234 / .34);box-shadow:0 32px 100px rgb(0 0 0 / .36),inset 0 1px rgb(232 241 237 / .07),0 0 58px rgb(36 111 208 / .10)}.pf-stack-node:hover{box-shadow:0 24px 76px rgb(0 0 0 / .34),inset 0 1px rgb(232 241 237 / .06),0 0 38px rgb(36 111 208 / .10)}}@supports (animation-timeline:view()){.pf-section::after{transform-origin:50% 0;animation:pf-section-current linear both;animation-timeline:view(block);animation-range:entry 4% exit 96%}}@keyframes pf-section-current{0%,100%{opacity:.06;transform:scaleY(.18)}38%,62%{opacity:.34;transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){html:not([data-pf-effects="full"]) .pf-button::before,html:not([data-pf-effects="full"]) .pf-section::after{animation:none!important;transition:none!important}}:root{--pf-motion-micro:140ms;--pf-motion-state:200ms;--pf-motion-panel:320ms;--pf-motion-section:680ms;--pf-ease-standard:cubic-bezier(.2, .75, .25, 1);--pf-ease-emphasized:cubic-bezier(.22, 1, .36, 1)}@view-transition{navigation:auto}::view-transition-old(root){animation:180ms var(--pf-ease-standard) both pf-page-out}::view-transition-new(root){animation:300ms var(--pf-ease-emphasized) both pf-page-in}@keyframes pf-page-out{to{opacity:0;transform:translateY(-4px)}}@keyframes pf-page-in{from{opacity:0;transform:translateY(7px)}}.pf-colophon{margin-top:clamp(46px, 7vw, 86px);border:1px solid rgb(141 216 234 / .18);border-radius:6px;overflow:clip;color:var(--pf-text);background:linear-gradient(145deg,rgb(9 29 58 / .80),rgb(3 11 27 / .90));box-shadow:0 28px 90px rgb(0 0 0 / .25),inset 0 1px rgb(232 241 237 / .045);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%)}.pf-colophon summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;padding:20px clamp(22px, 4vw, 38px);cursor:pointer;color:#dfeaf5;font:700 .72rem var(--pf-mono);letter-spacing:.12em;text-transform:uppercase;list-style:none}.pf-colophon summary::-webkit-details-marker{display:none}.pf-colophon summary::marker{content:""}.pf-colophon summary i{color:var(--pf-cyan);font-style:normal;font-size:1.25rem;font-weight:300;transition:transform var(--pf-motion-panel) var(--pf-ease-emphasized)}.pf-colophon[open] summary i{transform:rotate(45deg)}.pf-colophon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgb(141 216 234 / .12)}.pf-colophon-grid article{min-width:0;padding:clamp(25px, 4vw, 40px);border-right:1px solid rgb(141 216 234 / .09);border-bottom:1px solid rgb(141 216 234 / .09)}.pf-colophon-grid article:nth-child(2n){border-right:0}.pf-colophon-grid article:nth-last-child(-n+2){border-bottom:0}.pf-colophon-grid span{color:var(--pf-cyan);font:700 .6rem var(--pf-mono);letter-spacing:.12em;text-transform:uppercase}.pf-colophon-grid h3{margin:13px 0 9px;color:#e8eff7;font-size:clamp(1rem, 1.6vw, 1.25rem);letter-spacing:-.025em}.pf-colophon-grid p{margin:0;color:#94a7bc;font-size:.86rem;line-height:1.72}.pf-case-study-trigger{margin-top:24px;border:0;padding:0 0 5px;font:inherit;cursor:pointer;background:#fff0}.pf-system-explorer{width:min(1180px, calc(100vw - 48px));max-width:none;max-height:min(900px, calc(100dvh - 48px));margin:auto;padding:0;overflow:auto;overscroll-behavior:contain;border:1px solid rgb(141 216 234 / .26);border-radius:10px;color:#e9f0f8;background:rgb(2 9 22 / .97);box-shadow:0 40px 140px rgb(0 0 0 / .72),0 0 90px rgb(36 111 208 / .09),inset 0 1px rgb(255 255 255 / .055);backdrop-filter:blur(28px) saturate(120%);-webkit-backdrop-filter:blur(28px) saturate(120%);opacity:0;transform:translateY(14px) scale(.985);transition:opacity var(--pf-motion-panel) var(--pf-ease-standard),transform var(--pf-motion-panel) var(--pf-ease-emphasized),overlay var(--pf-motion-panel) allow-discrete,display var(--pf-motion-panel) allow-discrete}.pf-system-explorer[open]{opacity:1;transform:none}@starting-style{.pf-system-explorer[open]{opacity:0;transform:translateY(14px) scale(.985)}}.pf-system-explorer::backdrop{background:rgb(0 4 12 / .76);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pf-explorer-shell{position:relative;padding:clamp(28px, 5vw, 64px)}.pf-explorer-close-form{position:sticky;z-index:4;top:0;height:0;text-align:right}.pf-explorer-close{display:inline-grid;place-items:center;width:44px;aspect-ratio:1;border:1px solid rgb(141 216 234 / .20);border-radius:50%;color:#dce8f4;background:rgb(6 20 43 / .92);cursor:pointer;font-size:1.5rem;line-height:1;transition:transform var(--pf-motion-state) var(--pf-ease-emphasized),border-color var(--pf-motion-state) ease,background-color var(--pf-motion-state) ease}.pf-explorer-close:hover{transform:rotate(7deg);border-color:rgb(141 216 234 / .52);background:rgb(13 42 80 / .96)}.pf-explorer-header{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;padding-right:68px}.pf-explorer-header h2{max-width:820px;margin:0;color:#f2f6fb;font-size:clamp(2.3rem, 5vw, 5.4rem);line-height:.92;letter-spacing:-.065em;text-wrap:balance}.pf-explorer-status{display:flex;align-items:center;gap:9px;margin:0 0 7px;color:#9fcdbd;font:700 .65rem var(--pf-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.pf-explorer-status i{width:7px;aspect-ratio:1;border-radius:50%;background:#6fbe97;box-shadow:0 0 13px rgb(111 190 151 / .65)}.pf-explorer-intro{max-width:820px;margin:26px 0 0;color:#9eb0c4;font-size:1rem;line-height:1.75}.pf-architecture{--pf-flow-progress:0%;position:relative;margin-top:clamp(38px, 6vw, 70px);padding-top:20px}.pf-architecture ol{position:relative;z-index:2;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}.pf-flow-rail{position:absolute;z-index:1;top:43px;left:8.33%;right:8.33%;height:1px;overflow:visible;background:rgb(141 216 234 / .16)}.pf-flow-rail::before{content:"";display:block;width:var(--pf-flow-progress);height:100%;background:linear-gradient(90deg,#397fd8,#8dd8ea);box-shadow:0 0 18px rgb(77 163 255 / .48);transition:width 520ms var(--pf-ease-emphasized)}.pf-flow-rail i{position:absolute;top:50%;left:var(--pf-flow-progress);width:9px;aspect-ratio:1;border:2px solid #bfeaf2;border-radius:50%;background:#397fd8;box-shadow:0 0 18px rgb(141 216 234 / .82);transform:translate(-50%,-50%);transition:left 520ms var(--pf-ease-emphasized)}.pf-architecture button{width:100%;min-height:126px;padding:19px 14px;border:1px solid rgb(141 216 234 / .13);border-radius:5px;color:#a9b8ca;text-align:left;background:rgb(7 20 43 / .84);cursor:pointer;transition:transform var(--pf-motion-state) var(--pf-ease-emphasized),border-color var(--pf-motion-state) ease,color var(--pf-motion-state) ease,background-color var(--pf-motion-state) ease,box-shadow var(--pf-motion-state) ease}.pf-architecture button:hover{transform:translateY(-3px);border-color:rgb(141 216 234 / .31);color:#e8f1f9}.pf-architecture button[aria-pressed="true"]{border-color:rgb(77 163 255 / .66);color:#f4f8fc;background:rgb(15 46 86 / .94);box-shadow:0 16px 42px rgb(0 0 0 / .23),0 0 28px rgb(57 127 216 / .10)}.pf-architecture button>*{display:block}.pf-architecture button span{color:#6d829b;font:700 .56rem var(--pf-mono);letter-spacing:.12em}.pf-architecture button strong{margin-top:24px;font-size:.87rem}.pf-architecture button small{margin-top:5px;color:#74889f;font-size:.67rem;line-height:1.45}.pf-explorer-detail{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(260px,1fr);gap:10px clamp(28px, 5vw, 70px);margin-top:18px;padding:clamp(26px, 4vw, 42px);border:1px solid rgb(141 216 234 / .15);border-radius:6px;background:linear-gradient(135deg,rgb(10 34 68 / .74),rgb(3 13 31 / .88))}.pf-explorer-detail-index{grid-column:1;margin:0;color:var(--pf-cyan);font:700 .62rem var(--pf-mono);letter-spacing:.13em}.pf-explorer-detail h3{grid-column:1;margin:5px 0 0;color:#edf4fb;font-size:clamp(1.45rem, 2.8vw, 2.45rem);line-height:1.05;letter-spacing:-.045em}.pf-explorer-detail>p:not(.pf-explorer-detail-index){grid-column:1;margin:14px 0 0;color:#9eafc2;font-size:.9rem;line-height:1.7}.pf-explorer-detail dl{grid-column:2;grid-row:1 / span 3;display:grid;gap:0;margin:0}.pf-explorer-detail dl div{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:15px 0;border-top:1px solid rgb(141 216 234 / .10)}.pf-explorer-detail dl div:first-child{border-top:0;padding-top:0}.pf-explorer-detail dt{color:#6e849d;font:700 .58rem var(--pf-mono);letter-spacing:.1em;text-transform:uppercase}.pf-explorer-detail dd{margin:0;color:#c2cfdd;font-size:.82rem;line-height:1.62}.pf-explorer-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:18px;padding:1px;background:rgb(141 216 234 / .13)}.pf-explorer-proof article{min-width:0;padding:19px;background:rgb(4 14 33 / .96)}.pf-explorer-proof span,.pf-explorer-proof strong{display:block}.pf-explorer-proof span{color:#6e849d;font:700 .56rem var(--pf-mono);letter-spacing:.1em;text-transform:uppercase}.pf-explorer-proof strong{margin-top:9px;color:#d5e0eb;font-size:.78rem;line-height:1.45}.pf-explorer-note{margin:13px 0 0;color:#667b93;font-size:.68rem;line-height:1.55}html.pf-explaining #pf-ocean{opacity:.24}.pf-proof-hud{position:fixed;z-index:12000;right:18px;bottom:18px;width:min(318px, calc(100vw - 36px));padding:14px;border:1px solid rgb(141 216 234 / .25);border-radius:8px;color:#dce8f4;background:rgb(2 10 24 / .94);box-shadow:0 24px 80px rgb(0 0 0 / .55),inset 0 1px rgb(255 255 255 / .05);backdrop-filter:blur(22px) saturate(125%);-webkit-backdrop-filter:blur(22px) saturate(125%);font-family:var(--pf-mono)}.pf-proof-hud header{display:flex;align-items:center;justify-content:space-between;padding-bottom:11px;border-bottom:1px solid rgb(141 216 234 / .12)}.pf-proof-hud header span{color:var(--pf-cyan);font-size:.61rem;font-weight:750;letter-spacing:.13em}.pf-proof-hud header button{display:grid;place-items:center;width:28px;aspect-ratio:1;border:0;border-radius:50%;color:#b8c8d9;background:rgb(255 255 255 / .04);cursor:pointer}.pf-proof-hud [data-proof-values]{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:10px;background:rgb(141 216 234 / .10)}.pf-proof-hud [data-proof-values] div{min-width:0;padding:10px;background:rgb(4 15 34 / .96)}.pf-proof-hud [data-proof-values] span,.pf-proof-hud [data-proof-values] strong{display:block;overflow:hidden;text-overflow:ellipsis}.pf-proof-hud [data-proof-values] span{color:#657b94;font-size:.52rem;letter-spacing:.08em;text-transform:uppercase}.pf-proof-hud [data-proof-values] strong{margin-top:5px;color:#dfeaf5;font-size:.72rem}.pf-proof-hud>p{margin:10px 0 0;color:#5f748c;font-size:.52rem;letter-spacing:.04em}html[data-pf-effects="reduced"] #pf-ocean,html[data-pf-effects="static"] #pf-ocean{opacity:0!important}html[data-pf-effects="reduced"] .pf-sakura-field,html[data-pf-effects="static"] .pf-sakura-field{display:none!important}html[data-pf-effects="static"] .portfolio-page .reveal,html[data-pf-effects="static"] .portfolio-page .reveal-left,html[data-pf-effects="static"] .portfolio-page .reveal-right,html[data-pf-effects="static"] .portfolio-page .reveal-scale,html[data-pf-effects="static"] .portfolio-page .split-entrance,html[data-pf-effects="static"] .pf-button,html[data-pf-effects="static"] .pf-system-card,html[data-pf-effects="static"] .pf-stack-node,html[data-pf-effects="static"] .pf-project-visual,html[data-pf-effects="static"] .pf-form-wrap,html[data-pf-effects="static"] .pf-colophon summary i,html[data-pf-effects="static"] .pf-system-explorer,html[data-pf-effects="static"] .pf-system-explorer *{animation:none!important;transition-duration:.001ms!important}@media (max-width:900px){.pf-explorer-header{grid-template-columns:1fr}.pf-explorer-status{margin:0}.pf-architecture{overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.pf-architecture ol{grid-template-columns:repeat(6,minmax(138px,1fr));width:max(860px, 100%)}.pf-flow-rail{left:72px;right:auto;width:716px}.pf-explorer-detail{grid-template-columns:1fr}.pf-explorer-detail dl{grid-column:1;grid-row:auto;margin-top:12px}.pf-explorer-proof{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.pf-colophon-grid{grid-template-columns:1fr}.pf-colophon-grid article{border-right:0;border-bottom:1px solid rgb(141 216 234 / .09)!important}.pf-colophon-grid article:last-child{border-bottom:0!important}.pf-system-explorer{width:calc(100vw - 18px);max-height:calc(100dvh - 18px);border-radius:7px}.pf-explorer-shell{padding:24px 18px 30px}.pf-explorer-header{padding-right:50px}.pf-explorer-header h2{font-size:clamp(2.25rem, 12vw, 3.5rem)}.pf-explorer-detail dl div{grid-template-columns:1fr;gap:5px}.pf-explorer-proof{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html:not([data-pf-effects="full"]) ::view-transition-old(root),html:not([data-pf-effects="full"]) ::view-transition-new(root){animation:none!important}html:not([data-pf-effects="full"]) .pf-flow-rail::before,html:not([data-pf-effects="full"]) .pf-flow-rail i,html:not([data-pf-effects="full"]) .pf-system-explorer,html:not([data-pf-effects="full"]) .pf-system-explorer *{transition-duration:.001ms!important}}