@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Fallback;src:local(Arial),local(Helvetica Neue),local(Helvetica);size-adjust:104%;ascent-override:100%;descent-override:21.2%;line-gap-override:0%}:root{--color-black:#1b1b1b;--color-violet:#6d5ef8;--color-blue:#4d8dff;--color-soft-white:#f5f7fa;--color-graphite:#2a2d36;--color-light-gray:#d9dee7;--bg:#1b1b1b;--bg-raised:#20232b;--bg-soft:#252934;--text:#f5f7fa;--text-muted:#f5f7fabd;--text-soft:#f5f7fa9e;--line:#d9dee724;--line-strong:#d9dee73d;--glass:#f5f7fa0b;--glass-strong:#f5f7fa14;--field-bg:#0a0a0c6b;--header-bg:#1b1b1bb8;--header-text:#f5f7fac7;--shadow-soft:0 24px 70px #00000047;--card-edge:#f5f7fa17;--card-shadow:0 1px 2px #0000002e, 0 8px 24px #00000029, 0 28px 64px #00000024;--card-shadow-hover:0 1px 2px #0003, 0 12px 32px #0003, 0 36px 80px #4d8dff1a;--gradient:linear-gradient(120deg, var(--color-violet), var(--color-blue));--gradient-button:linear-gradient(135deg, #6250de, #326bc4);--gradient-text:linear-gradient(100deg, #8f84ff 0%, #6fa4ff 100%);--accent-text:#7fa9ff;--scroll-progress:0;--step--1:clamp(.8rem, .78rem + .1vw, .86rem);--step-0:clamp(1rem, .97rem + .15vw, 1.075rem);--step-1:clamp(1.12rem, 1.05rem + .35vw, 1.3rem);--step-2:clamp(1.35rem, 1.18rem + .8vw, 1.85rem);--step-3:clamp(1.9rem, 1.45rem + 2vw, 3.1rem);--step-4:clamp(2rem, 1.35rem + 3.9vw, 4.6rem);--step-5:clamp(2.9rem, 1.6rem + 5.8vw, 6.2rem);--space-2xs:6px;--space-xs:10px;--space-s:16px;--space-m:clamp(20px, 1.6rem + .6vw, 28px);--space-l:clamp(28px, 1.8rem + 1.6vw, 48px);--space-xl:clamp(44px, 2rem + 3vw, 72px);--space-section:clamp(80px, 3.5rem + 7vw, 152px);--page-gutter:clamp(20px, 5vw, 72px);--content-width:1180px;--radius-s:10px;--radius-m:16px;--radius-l:24px;--font-display:"Plus Jakarta Sans", "Plus Jakarta Fallback", system-ui, sans-serif;--font-body:"Plus Jakarta Sans", "Plus Jakarta Fallback", system-ui, sans-serif;--font-heading:var(--font-display);color:var(--text);background:var(--bg);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:17px;font-weight:400;line-height:1.6}:root[data-theme=light]{--bg:#eef2f7;--bg-raised:#e5ebf3;--bg-soft:#dce4ef;--text:#1b1b1b;--text-muted:#2a2d36bd;--text-soft:#2a2d3694;--line:#2a2d3626;--line-strong:#2a2d363d;--glass:#ffffff80;--glass-strong:#ffffffc7;--field-bg:#ffffffd9;--gradient-text:linear-gradient(100deg, #5546d6 0%, #2c62c0 100%);--accent-text:#305bc0;--header-bg:#e5ebf3c7;--header-text:#2a2d36cc;--shadow-soft:0 24px 70px #2a2d3624;--card-edge:#ffffffb3;--card-shadow:0 1px 2px #2a2d360f, 0 8px 24px #2a2d3612, 0 28px 64px #2a2d3614;--card-shadow-hover:0 1px 2px #2a2d3614, 0 12px 32px #2a2d361a, 0 36px 80px #4d8dff1f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{background:radial-gradient(circle at 12% 10%, #4d8dff14, transparent 28%), radial-gradient(circle at 88% 18%, #6d5ef812, transparent 30%), linear-gradient(180deg, var(--bg) 0%, var(--bg-raised) 48%, var(--bg) 100%);min-width:320px;margin:0}::selection{color:#fff;background:#6d5ef873}a{color:inherit}button,input,textarea{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}strong{color:var(--text);font-weight:700}h1,h2,h3,h4{font-family:var(--font-display);overflow-wrap:break-word;text-wrap:balance}p,li,dd{text-wrap:pretty}em{color:var(--accent-text);font-style:normal;font-weight:600}#root{min-height:100svh}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--color-blue);outline-offset:4px}.skip-link{z-index:100;background:var(--bg);color:var(--text);padding:12px 18px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:20;width:min(var(--content-width), calc(100% - 32px));border:1px solid var(--line);background:var(--header-bg);min-height:64px;box-shadow:inset 0 1px 0 var(--card-edge), 0 18px 50px #00000029;-webkit-backdrop-filter:blur(24px)saturate(1.3);backdrop-filter:blur(24px)saturate(1.3);border-radius:999px;justify-content:space-between;align-items:center;gap:20px;padding:8px 8px 8px 14px;transition:box-shadow .2s,min-height .2s;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.site-header.is-scrolled{min-height:58px;box-shadow:inset 0 1px 0 var(--card-edge), var(--shadow-soft)}.brand{flex:none;align-items:center;min-width:44px;min-height:44px;text-decoration:none;display:inline-flex}.brand__logo{object-fit:contain;width:40px;height:40px}.site-nav{background:color-mix(in srgb, var(--text) 5%, transparent);border-radius:999px;align-items:center;gap:2px;padding:4px;display:flex}.site-nav a,.header-cta{min-height:40px;color:var(--header-text);border-radius:999px;align-items:center;padding:0 16px;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .18s,color .18s,transform .18s;display:inline-flex}.site-nav a:hover,.site-nav a:focus-visible{background:color-mix(in srgb, var(--text) 9%, transparent);color:var(--text)}.header-actions{flex:none;align-items:center;gap:6px;display:flex}.header-cta{background:var(--gradient-button);color:#fff;white-space:nowrap;min-height:44px;padding:0 20px;font-weight:600;box-shadow:inset 0 1px #ffffff2e,0 10px 28px #4d8dff3d}.header-cta:hover,.header-cta:focus-visible{color:#fff;transform:translateY(-1px)}.header-cta__short,.menu-toggle,.mobile-menu{display:none}.theme-toggle,.menu-toggle{background:color-mix(in srgb, var(--text) 7%, transparent);width:44px;height:44px;color:var(--text);cursor:pointer;border:0;border-radius:999px;place-items:center;transition:background .18s}.theme-toggle{display:inline-grid}.theme-toggle:hover,.menu-toggle:hover{background:color-mix(in srgb, var(--text) 12%, transparent)}.theme-toggle svg,.menu-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:19px;height:19px}.section{padding:var(--space-section) var(--page-gutter);position:relative}.section__inner{width:min(var(--content-width), 100%);margin:0 auto}.eyebrow{border:1px solid var(--line);background:var(--glass);color:var(--text-muted);font-size:var(--step--1);letter-spacing:.04em;border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 10px;font-weight:500;line-height:1.2;display:inline-flex}.eyebrow:before{content:"";background:var(--gradient);width:7px;height:7px;box-shadow:0 0 12px color-mix(in srgb, var(--color-blue) 70%, transparent);border-radius:999px}.section-heading{max-width:620px}.section-heading--wide{max-width:860px;margin-bottom:var(--space-xl)}.section-heading h2,.contact-copy h2{color:var(--text);font-size:var(--step-4);letter-spacing:-.035em;margin:20px 0 0;font-weight:800;line-height:1.04}.section-heading h2 strong,.contact-copy h2 strong,.hero-kicker strong{background:var(--gradient-text);color:#0000;font-weight:inherit;-webkit-background-clip:text;background-clip:text}.section-about .section-heading h2,.contact-copy h2{font-size:var(--step-3);line-height:1.06}.services-intro{max-width:64ch;margin:var(--space-m) 0 0;color:var(--text-muted);font-size:var(--step-1);line-height:1.55}.button{cursor:pointer;min-height:52px;font:inherit;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 26px;font-weight:600;text-decoration:none;transition:border-color .2s,background .2s,box-shadow .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--gradient-button);color:#fff;box-shadow:inset 0 1px #fff3,0 16px 40px #4d8dff47}.button-primary:hover{box-shadow:inset 0 1px #ffffff3d,0 20px 48px #6d5ef85c}.button-secondary{border-color:var(--line-strong);background:var(--glass);color:var(--text);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.button-secondary:hover{background:var(--glass-strong)}.button__arrow{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:18px;height:18px;transition:transform .2s}.button:hover .button__arrow{transform:translate(3px)}.glass-card,.case-card,.service-difference,.process-step,.contact-panel,.about-award{border:1px solid var(--line);border-radius:var(--radius-l);background:linear-gradient(180deg, var(--glass-strong), var(--glass));box-shadow:inset 0 1px 0 var(--card-edge), var(--card-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:border-color .22s,box-shadow .22s,transform .22s}.glass-card:hover,.case-card:hover{border-color:color-mix(in srgb, var(--color-blue) 32%, var(--line));box-shadow:inset 0 1px 0 var(--card-edge), var(--card-shadow-hover)}.hero-section{min-height:92svh;padding:140px var(--page-gutter) 96px;isolation:isolate;background:radial-gradient(circle at 74% 38%, #4d8dff33, transparent 30%), radial-gradient(circle at 86% 78%, #6d5ef82e, transparent 26%), linear-gradient(135deg, var(--bg) 0%, var(--bg-raised) 52%, var(--bg) 100%);align-items:center;display:grid;position:relative;overflow:hidden}.hero-section:before{content:"";z-index:-2;background:radial-gradient(circle at 76% 44%, color-mix(in srgb, var(--color-blue) 12%, transparent), transparent 24%), radial-gradient(circle at 62% 56%, color-mix(in srgb, var(--color-violet) 10%, transparent), transparent 30%);opacity:.86;transform:translateY(calc(var(--scroll-progress) * -120px));position:absolute;inset:0}.hero-section:after{content:"";z-index:-3;background-image:linear-gradient(color-mix(in srgb, var(--text) 5%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--text) 5%, transparent) 1px, transparent 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 30% 40%,#000 0%,#0000 70%);mask-image:radial-gradient(at 30% 40%,#000 0%,#0000 70%)}.hero-brand-scene{z-index:-1;pointer-events:none;width:min(48vw,680px);height:clamp(340px,39vw,560px);position:absolute;top:18%;right:max(12px,50vw - 630px)}.hero-brand-scene:before{content:"";z-index:-1;background:radial-gradient(circle at 42% 36%, color-mix(in srgb, var(--color-blue) 20%, transparent), transparent 38%), radial-gradient(circle at 70% 64%, color-mix(in srgb, var(--color-violet) 17%, transparent), transparent 34%);filter:blur(28px);border-radius:38px;position:absolute;inset:16% 8% 12% 10%}.hero-brand-logo{z-index:2;object-fit:contain;width:min(76%,540px);height:auto;filter:drop-shadow(0 24px 60px color-mix(in srgb, var(--color-blue) 20%, transparent));position:absolute;top:34%;left:50%;transform:translate(-50%,-50%)}.hero-orbits{z-index:1;aspect-ratio:1;width:min(74%,460px);position:absolute;top:34%;left:50%;transform:translate(-50%,-50%)}.hero-orbit{border:1px solid color-mix(in srgb, var(--text) 9%, transparent);border-radius:999px;margin:auto;animation:28s linear infinite heroOrbit;position:absolute;inset:0}.hero-orbit:before{content:"";background:var(--color-soft-white);width:6px;height:6px;box-shadow:0 0 10px 2px color-mix(in srgb, var(--color-blue) 80%, transparent), 0 0 24px 6px color-mix(in srgb, var(--color-violet) 40%, transparent);border-radius:999px;position:absolute;top:-3px;left:50%;transform:translate(-50%)}.hero-orbit:after{content:"";border-radius:inherit;background:conic-gradient(from 0deg, transparent 0deg, transparent 300deg, color-mix(in srgb, var(--color-blue) 70%, transparent) 356deg, transparent 360deg);position:absolute;inset:-1px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 1.5px),#000 calc(100% - 1px));mask:radial-gradient(farthest-side,#0000 calc(100% - 1.5px),#000 calc(100% - 1px))}.hero-orbit--outer{width:100%;height:100%}.hero-orbit--middle{width:74%;height:74%;animation-duration:20s;animation-direction:reverse}.hero-orbit--middle:after{background:conic-gradient(from 0deg, transparent 0deg, transparent 300deg, color-mix(in srgb, var(--color-violet) 70%, transparent) 356deg, transparent 360deg);transform:scaleX(-1)}.hero-orbit--inner{border-style:dashed;border-color:color-mix(in srgb, var(--text) 7%, transparent);width:48%;height:48%;animation-duration:14s}:root[data-theme=light] .hero-orbit:before{background:var(--color-blue)}@keyframes heroOrbit{to{transform:rotate(1turn)}}.hero-content{width:min(760px,100%)}.hero-inline-logo-frame{width:min(300px,64vw);height:80px;margin-bottom:8px;display:none;position:relative;overflow:hidden}.hero-inline-logo{object-fit:contain;transform-origin:0;width:100%;height:auto;position:absolute;top:50%;left:0;transform:translateY(-50%)scale(1.03)}.hero-kicker{max-width:12ch;color:var(--text);font-family:var(--font-display);font-size:var(--step-5);letter-spacing:-.04em;text-wrap:balance;margin:0;font-weight:800;line-height:.96}.hero-copy{max-width:34ch;margin:var(--space-m) 0 0;color:var(--text-muted);font-size:var(--step-1);line-height:1.55}.hero-actions{margin-top:var(--space-l);flex-wrap:wrap;gap:12px;display:flex}.hero-metrics{right:var(--page-gutter);flex-wrap:wrap;gap:8px;max-width:560px;display:flex;position:absolute;bottom:32px}.hero-metrics span{border:1px solid var(--line);background:var(--glass);color:var(--text-muted);font-size:var(--step--1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-weight:500;display:inline-flex}.hero-metrics span:before{content:"";background:var(--gradient);border-radius:999px;width:6px;height:6px}.services-bento{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;display:grid}.service-card{padding:var(--space-l);flex-direction:column;display:flex;position:relative;overflow:hidden}.service-card:first-child{grid-column:span 7}.service-card:nth-child(2),.service-card:nth-child(3){grid-column:span 5}.service-card .card-number{background:var(--gradient-text);color:#0000;font-family:var(--font-display);font-size:var(--step-4);letter-spacing:-.04em;opacity:.5;-webkit-background-clip:text;background-clip:text;font-weight:700;line-height:1;position:absolute;top:18px;right:24px}.service-card h3{max-width:16ch;color:var(--text);font-size:var(--step-2);letter-spacing:-.025em;margin:0;padding-right:72px;font-weight:700;line-height:1.1}.service-card p{max-width:58ch;margin:var(--space-s) 0 0;color:var(--text-muted)}.service-card ul{margin:var(--space-m) 0 0;padding:var(--space-m) 0 0;border-top:1px solid var(--line);gap:10px;list-style:none;display:grid}.service-card:first-child ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}.service-card li{color:var(--text-muted);padding-left:22px;font-size:.95rem;position:relative}.service-card li:before{content:"";background:var(--gradient);border-radius:3px;width:8px;height:8px;position:absolute;top:.62em;left:0}.service-difference{gap:var(--space-m);padding:var(--space-l);background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--color-violet) 22%, transparent), transparent 55%), radial-gradient(circle at 0% 100%, color-mix(in srgb, var(--color-blue) 16%, transparent), transparent 50%), linear-gradient(180deg, var(--glass-strong), var(--glass));grid-column:span 7;display:grid}.service-difference h3{color:var(--text);font-size:var(--step-2);letter-spacing:-.025em;margin:16px 0 0;font-weight:700;line-height:1.1}.difference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.difference-grid article{border-top:1px solid var(--line-strong);padding-top:14px}.difference-grid h4{color:var(--text);margin:0;font-size:1.05rem;font-weight:700;line-height:1.25}.difference-grid p{color:var(--text-muted);margin:8px 0 0;font-size:.93rem}.cases-section{background:radial-gradient(circle at 10% 0%, #4d8dff1a, transparent 40%), var(--bg)}.cases-bento{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;display:grid}.case-card{padding:var(--space-l)}.case-card--full{gap:var(--space-l);grid-column:1/-1;grid-template-columns:minmax(0,.9fr) minmax(0,2.1fr);align-items:start;display:grid}.case-card--half{grid-column:span 3}.case-card h3{max-width:26ch;color:var(--text);font-size:var(--step-1);letter-spacing:-.02em;margin:0;font-weight:700;line-height:1.2}.case-card--full h3{font-size:var(--step-2)}.case-card dl{margin:var(--space-m) 0 0;gap:18px;display:grid}.case-card--full dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}.case-card dt{color:var(--accent-text);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;font-size:.74rem;font-weight:600;display:inline-flex}.case-card dt:before{content:"";background:var(--gradient);border-radius:2px;width:14px;height:2px}.case-card dd{color:var(--text-muted);margin:8px 0 0;font-size:.95rem}.cases-note{max-width:820px;margin:var(--space-xl) auto 0;color:var(--text);font-family:var(--font-display);font-size:var(--step-2);letter-spacing:-.02em;text-align:center;text-wrap:balance;font-weight:600;line-height:1.2}.process-section{background:linear-gradient(180deg, var(--bg), var(--bg-raised))}.process-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid;position:relative}.process-list:before{content:"";background:linear-gradient(90deg, transparent, var(--line-strong) 12%, var(--line-strong) 88%, transparent);height:1px;position:absolute;top:52px;left:12%;right:12%}.process-step{padding:var(--space-m);align-content:start;gap:18px;display:grid;position:relative}.process-step span{background:linear-gradient(var(--bg-raised), var(--bg-raised)) padding-box, var(--gradient) border-box;width:52px;height:52px;color:var(--text);font-family:var(--font-display);border:1px solid #0000;border-radius:999px;place-items:center;font-size:1rem;font-weight:700;display:inline-grid}.process-step h3{color:var(--text);font-size:var(--step-1);letter-spacing:-.015em;margin:0;font-weight:600;line-height:1.25}.section-about{background:linear-gradient(180deg, var(--bg-raised) 0%, var(--bg) 100%)}.about-grid{gap:var(--space-xl);grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);align-items:start;display:grid}.about-portrait{margin:0;position:sticky;top:110px}.about-portrait__frame{border:1px solid var(--line);border-radius:var(--radius-l);box-shadow:var(--card-shadow);position:relative;overflow:hidden}.about-portrait img{aspect-ratio:4/5;object-fit:cover;width:100%;height:auto}.about-portrait__caption{gap:2px;margin-top:18px;display:grid}.about-portrait__caption strong{color:var(--text);font-family:var(--font-display);font-size:1.15rem;font-weight:700}.about-portrait__caption span{color:var(--text-soft);font-size:.92rem}.about-story{min-width:0}.about-copy{margin-top:var(--space-l);color:var(--text-muted);font-size:var(--step-0);gap:18px;display:grid}.about-copy p{margin:0}.about-award{margin-top:var(--space-l);padding:var(--space-m);background:linear-gradient(var(--bg-raised), var(--bg-raised)) padding-box, var(--gradient) border-box;border:1px solid #0000;align-items:flex-start;gap:18px;display:flex}.about-award__icon{background:var(--gradient-button);color:#fff;border-radius:999px;flex:none;place-items:center;width:52px;height:52px;display:inline-grid}.about-award__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;width:26px;height:26px}.about-award h3{color:var(--text);font-size:var(--step-2);letter-spacing:-.025em;margin:12px 0 0;font-weight:700;line-height:1.1}.about-award p{color:var(--text-muted);margin:8px 0 0}.contact-section{background:radial-gradient(circle at 90% 10%, #6d5ef829, transparent 40%), radial-gradient(circle at 0% 90%, #4d8dff24, transparent 40%), var(--bg)}.contact-layout{column-gap:var(--space-xl);row-gap:var(--space-l);grid-template:"copy panel""direct panel"1fr/minmax(0,.9fr) minmax(0,1.1fr);align-items:start;display:grid}.contact-copy{grid-area:copy}.contact-copy p{max-width:52ch;margin:var(--space-m) 0 0;color:var(--text-muted);font-size:var(--step-1);line-height:1.55}.contact-direct{grid-area:direct;gap:10px;margin:0;padding:0;list-style:none;display:grid}.contact-channel{border:1px solid var(--line);border-radius:var(--radius-m);background:var(--glass);min-height:72px;color:var(--text);align-items:center;gap:14px;padding:12px 16px;text-decoration:none;transition:border-color .2s,background .2s,transform .2s;display:flex}.contact-channel:hover,.contact-channel:focus-visible{border-color:color-mix(in srgb, var(--color-blue) 40%, var(--line));background:var(--glass-strong);transform:translate(3px)}.contact-channel__icon{background:color-mix(in srgb, var(--color-blue) 14%, transparent);width:44px;height:44px;color:var(--accent-text);border-radius:12px;flex:none;place-items:center;display:inline-grid}.contact-channel__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:22px;height:22px}.contact-channel__body{gap:1px;min-width:0;display:grid}.contact-channel__label{color:var(--accent-text);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:600}.contact-channel strong{overflow-wrap:anywhere;font-size:1rem;font-weight:600}.contact-channel b{color:var(--text-muted);font-size:.85rem;font-weight:500}.contact-channel small{color:var(--text-soft);font-size:.85rem}.contact-direct__form-link{display:none}.contact-panel{gap:var(--space-m);padding:var(--space-l);grid-area:panel;display:grid}.contact-panel__copy h3{color:var(--text);font-size:var(--step-2);letter-spacing:-.025em;margin:16px 0 0;font-weight:700;line-height:1.1}.contact-panel__copy p{color:var(--text-muted);margin:10px 0 0}.contact-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid;position:relative}.contact-form>*{grid-column:1/-1}.contact-form>.contact-form__field:not(.contact-form__field--full){grid-column:auto}.contact-form__field{color:var(--text);gap:8px;font-size:.9rem;font-weight:500;display:grid}.contact-form input:not([type=checkbox]),.contact-form textarea{border:1px solid var(--line-strong);background:var(--field-bg);width:100%;min-height:52px;color:var(--text);font:inherit;border-radius:12px;outline:none;padding:13px 16px;transition:border-color .18s,box-shadow .18s,background .18s}.contact-form textarea{resize:vertical;min-height:140px}.contact-form input:not([type=checkbox]):hover,.contact-form textarea:hover{border-color:color-mix(in srgb, var(--text) 34%, transparent)}.contact-form input:not([type=checkbox]):focus,.contact-form textarea:focus{border-color:var(--color-blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-blue) 22%, transparent)}.contact-form__trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact-form__consent{min-height:44px;color:var(--text-muted);cursor:pointer;align-items:flex-start;gap:12px;font-size:.92rem;display:flex}.contact-form__consent input{width:22px;height:22px;accent-color:var(--color-violet);cursor:pointer;flex:none;margin:1px 0 0}.contact-form a{color:var(--text);text-underline-offset:3px}.contact-form-note{color:var(--text-soft);margin:0;font-size:.86rem}.contact-form .button{width:100%;min-height:56px;font-size:1.02rem}.contact-form .button[aria-disabled=true]{cursor:progress;opacity:.72;transform:none}.contact-form-status:empty{display:none}.contact-form-status:focus{outline:none}.contact-form-status p{border:1px solid var(--line);border-left:3px solid var(--color-blue);background:var(--glass-strong);color:var(--text);border-radius:12px;margin:0;padding:14px 16px;font-size:.92rem}.contact-form-status--error p{border-left-color:var(--color-violet)}.site-footer{--text:#f5f7fa;--text-muted:#f5f7fac7;--text-soft:#f5f7fab8;--line:#d9dee724;padding:var(--space-xl) var(--page-gutter) 28px;border-top:1px solid var(--line);color:var(--text);background:linear-gradient(135deg,#0c0c0c 0%,#1b1b1b 100%)}.site-footer__inner{width:min(var(--content-width), 100%);justify-content:space-between;align-items:flex-start;gap:32px;margin:0 auto;display:flex}.site-footer__brand{flex:320px}.site-footer__brand-link{color:inherit;align-items:center;gap:14px;text-decoration:none;display:inline-flex}.site-footer__logo{object-fit:contain;flex-shrink:0;width:48px;height:48px}.site-footer__brand-copy{gap:4px;display:grid}.site-footer__name{color:var(--text);font-family:var(--font-display);letter-spacing:-.01em;font-size:1.2rem;font-weight:700}.site-footer__tagline{color:var(--text-soft);margin:0;font-size:.95rem;line-height:1.5}.site-footer__grid{flex:360px;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.site-footer__section{align-content:start;gap:8px;display:grid}.site-footer__title{color:var(--text-soft);font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;margin:0 0 4px;font-size:.75rem;font-weight:600}.site-footer__links,.site-footer__contact{margin:0;padding:0;list-style:none;display:grid}.site-footer__links a,.site-footer__contact a{min-height:44px;color:var(--text-muted);overflow-wrap:anywhere;align-items:center;font-size:.95rem;text-decoration:none;transition:color .18s;display:inline-flex}.site-footer__links a:hover,.site-footer__links a:focus-visible,.site-footer__contact a:hover,.site-footer__contact a:focus-visible{color:var(--color-blue)}.site-footer__bottom{width:min(var(--content-width), 100%);border-top:1px solid #ffffff17;justify-content:space-between;align-items:center;gap:12px;margin:28px auto 0;padding-top:18px;display:flex}.site-footer__bottom p{color:var(--text-muted);margin:0;font-size:.88rem}.site-footer__legal{flex-wrap:wrap;justify-content:center;gap:4px 18px;display:flex}.site-footer__legal a,.site-footer__legal button{min-height:44px;color:var(--text-muted);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;padding:0;font-size:.88rem;text-decoration:none;display:inline-flex}.site-footer__legal a:hover,.site-footer__legal a:focus-visible,.site-footer__legal button:hover,.site-footer__legal button:focus-visible{color:var(--color-blue)}.legal-page{padding-top:140px}.legal-page__inner{width:min(760px,100%);color:var(--text-muted)}.legal-page__back{min-height:44px;color:var(--text-muted);align-items:center;font-size:.92rem;font-weight:500;text-decoration:none;display:inline-flex}.legal-page__back:hover,.legal-page__back:focus-visible{color:var(--text)}.legal-page h1{color:var(--text);font-size:var(--step-4);letter-spacing:-.035em;margin:12px 0 0;font-weight:700;line-height:1.04}.legal-page h2{color:var(--text);font-size:var(--step-2);letter-spacing:-.02em;margin:44px 0 0;font-weight:700;line-height:1.2}.legal-page p,.legal-page ul{margin:14px 0 0}.legal-page ul{gap:8px;padding-left:20px;display:grid}.legal-page a{color:var(--text);overflow-wrap:anywhere;text-underline-offset:3px}.legal-page__updated{color:var(--text-soft);font-size:.9rem}.legal-table{border:1px solid var(--line);border-radius:12px;margin-top:16px;overflow-x:auto}.legal-table table{border-collapse:collapse;width:100%;min-width:640px;font-size:.88rem}.legal-table th,.legal-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.legal-table thead th{background:var(--glass-strong);color:var(--text)}.legal-table tbody th{color:var(--text);font-weight:600}.cookie-banner{z-index:40;border:1px solid var(--line);border-radius:var(--radius-l);background:var(--header-bg);width:min(440px,100% - 32px);box-shadow:inset 0 1px 0 var(--card-edge), var(--shadow-soft);-webkit-backdrop-filter:blur(24px)saturate(1.2);backdrop-filter:blur(24px)saturate(1.2);color:var(--text-muted);padding:20px;font-size:.9rem;position:fixed;bottom:16px;right:16px}.cookie-banner h2{color:var(--text);margin:0;font-size:1.1rem;font-weight:700}.cookie-banner h2:focus{outline:none}.cookie-banner p{margin:8px 0 0}.cookie-banner a{color:var(--text);text-underline-offset:3px}.cookie-banner__options{border:0;gap:10px;margin:14px 0 0;padding:0;display:grid}.cookie-banner__options label{cursor:pointer;align-items:flex-start;gap:10px;min-height:44px;display:flex}.cookie-banner__options input{width:20px;height:20px;accent-color:var(--color-violet);flex:none;margin:1px 0 0}.cookie-banner__options strong{font-size:.9rem;display:block}.cookie-banner__actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.cookie-banner__button{border:1px solid color-mix(in srgb, var(--text) 30%, transparent);background:color-mix(in srgb, var(--text) 10%, transparent);min-height:44px;color:var(--text);cursor:pointer;font:inherit;border-radius:999px;padding:0 12px;font-weight:600;transition:background .18s}.cookie-banner__button:hover{background:color-mix(in srgb, var(--text) 16%, transparent)}.cookie-banner__button--quiet{text-underline-offset:3px;background:0 0;border-color:#0000;text-decoration:underline}.mobile-cta{display:none}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){[data-reveal]:not(:has([data-reveal])){animation:linear both revealIn;animation-timeline:view();animation-range:entry entry 55%}[data-reveal]:focus-within{animation:none}}}@keyframes revealIn{0%{opacity:.35;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media (width<=980px){.site-header{gap:10px;width:calc(100% - 20px);min-height:60px;padding:7px 7px 7px 12px;top:10px}.site-header.is-scrolled{min-height:58px}.brand__logo{width:36px;height:36px}.site-nav{scrollbar-width:none;overflow-x:auto}.site-nav::-webkit-scrollbar{display:none}.site-nav a{flex:none;min-height:36px;padding:0 11px;font-size:.82rem}.hero-section{min-height:auto;padding-top:112px;padding-bottom:56px}.hero-brand-scene{display:none}.hero-inline-logo-frame{display:block}.hero-metrics{margin-top:var(--space-l);position:relative;bottom:auto;right:auto}.services-bento>.service-card,.services-bento>.service-difference{grid-column:1/-1}.difference-grid{grid-template-columns:1fr}.cases-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.cases-bento>.case-card--half{grid-column:span 1}.case-card--full{gap:var(--space-m);grid-column:1/-1;grid-template-columns:1fr}.process-list{grid-template-columns:repeat(2,minmax(0,1fr))}.process-list:before{display:none}.about-grid{grid-template-columns:1fr}.about-portrait{max-width:400px;position:static}.contact-layout{grid-template:"copy""direct""panel"/1fr}.contact-direct{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-direct__form-link{display:block}.site-footer__inner{text-align:center;flex-direction:column;align-items:center}.site-footer__grid{grid-template-columns:1fr;justify-items:center;width:100%;max-width:420px}.site-footer__section{justify-items:center}.site-footer__bottom{text-align:center;flex-direction:column}}@media (width<=760px){.mobile-cta{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:30;border:1px solid var(--line);background:var(--header-bg);box-shadow:inset 0 1px 0 var(--card-edge), var(--shadow-soft);-webkit-backdrop-filter:blur(24px)saturate(1.2);backdrop-filter:blur(24px)saturate(1.2);opacity:0;visibility:hidden;border-radius:999px;grid-template-columns:1fr 1fr;gap:8px;padding:6px;transition:opacity .2s,transform .24s,visibility 0s linear .24s;display:grid;position:fixed;left:12px;transform:translateY(calc(100% + 16px))}.mobile-cta.is-visible{opacity:1;visibility:visible;transition:opacity .2s,transform .24s,visibility;transform:translateY(0)}body:has(.cookie-banner) .mobile-cta{display:none}.mobile-cta__link{background:color-mix(in srgb, var(--text) 8%, transparent);min-height:48px;color:var(--text);border-radius:999px;justify-content:center;align-items:center;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.mobile-cta__link--primary{background:var(--gradient-button);color:#fff}.cases-bento,.process-list,.contact-direct{grid-template-columns:1fr}.case-card--full dl{grid-template-columns:1fr;gap:18px}.process-list{gap:12px}.process-step{grid-template-columns:52px minmax(0,1fr);align-items:center}.service-card:first-child ul{grid-template-columns:1fr}.service-card .card-number{font-size:var(--step-3)}}@media (width<=620px){.site-header{gap:6px;width:calc(100% - 16px);padding:6px 6px 6px 10px}.brand__logo{width:34px;height:34px}.site-nav{display:none}.menu-toggle{display:inline-grid}.header-cta{padding:0 16px;font-size:.86rem}.header-cta__full{display:none}.header-cta__short{display:inline}.mobile-menu{border:1px solid var(--line);background:var(--header-bg);min-width:210px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(24px)saturate(1.2);backdrop-filter:blur(24px)saturate(1.2);opacity:0;pointer-events:none;border-radius:20px;gap:4px;padding:8px;transition:opacity .18s,transform .18s;display:grid;position:absolute;top:calc(100% + 10px);right:6px;transform:translateY(-6px)}.mobile-menu.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-menu a{min-height:48px;color:var(--text);border-radius:14px;align-items:center;padding:0 16px;font-size:1rem;font-weight:500;text-decoration:none;display:flex}.mobile-menu a:hover,.mobile-menu a:focus-visible{background:color-mix(in srgb, var(--text) 9%, transparent)}.hero-section{padding-top:96px;padding-bottom:40px}.hero-inline-logo-frame{width:min(240px,66vw);height:66px}.hero-actions .button{flex:100%}.service-card,.case-card,.service-difference,.contact-panel{border-radius:20px;padding:22px}.contact-form{grid-template-columns:1fr}.contact-form>.contact-form__field:not(.contact-form__field--full){grid-column:1/-1}.about-award{flex-direction:column}}
