*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6;overflow-x:hidden}::selection{background:var(--accent-text);color:oklch(14% .02 260)}img{max-width:100%}a{color:inherit}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:6px}.wrap{width:min(1180px,92%);margin-inline:auto}.skip-link{z-index:100;background:var(--accent-strong);color:#fff;border-radius:10px;align-items:center;min-height:44px;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;transition:top .2s;display:inline-flex;position:fixed;top:-64px;left:16px}.skip-link:focus{top:16px}.nav{z-index:60;transition:background .3s,border-color .3s,backdrop-filter .3s;position:fixed;inset:0 0 auto}.nav-inner{justify-content:space-between;align-items:center;height:72px;display:flex}.nav.scrolled{-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);background:oklch(15% .02 260/.72)}.logo{min-height:44px;color:var(--fg);align-items:center;text-decoration:none;display:inline-flex}.logo-flag{filter:drop-shadow(0 16px 26px #0000008c);align-self:flex-start;width:100px;height:116px;margin:0;padding:0;animation:5.5s ease-in-out infinite alternate flag-float;display:inline-flex}.logo-flag-inner{clip-path:polygon(0 0,100% 0,100% 84%,50% 100%,0 84%);background:linear-gradient(#fff 0%,oklch(96% .004 293) 100%);justify-content:center;align-items:center;width:100%;height:100%;display:inline-flex}.logo-flag img{object-fit:contain;width:84px;height:84px}.logo:hover .logo-flag{animation-play-state:paused}@keyframes flag-float{0%{transform:translateY(1px)}to{transform:translateY(-4px)}}.nav-links{align-items:center;gap:6px;display:flex}.nav-links a{color:var(--muted);border-radius:8px;align-items:center;min-height:44px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:color .18s;display:inline-flex}.nav-links a:hover{color:var(--fg)}.nav-actions{align-items:center;gap:10px;display:flex}.nav-cta{min-height:44px}.nav-menu{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;display:none}.nav-menu span{background:var(--fg);border-radius:2px;width:18px;height:1.5px;transition:transform .2s,opacity .2s;display:block}.nav.open .nav-menu span:first-child{transform:translateY(3.25px)rotate(45deg)}.nav.open .nav-menu span:last-child{transform:translateY(-3.25px)rotate(-45deg)}.nav-panel{z-index:59;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);background:oklch(15% .02 260/.97);padding:12px 0 24px;display:none;position:fixed;top:72px;left:0;right:0}.nav.open .nav-panel{display:block}.nav-panel a{border-top:1px solid var(--border);color:var(--muted);padding:16px 0;font-size:16px;font-weight:500;text-decoration:none;display:block}.nav-panel a:hover{color:var(--fg)}.nav-panel .btn{margin-top:20px}.btn{min-height:48px;font-family:var(--font-body);letter-spacing:-.01em;cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:600;text-decoration:none;transition:background .18s,border-color .18s,color .18s,transform .18s,box-shadow .18s;display:inline-flex}.btn-primary{background:var(--accent-strong);color:#fff;border:1px solid var(--accent-strong)}.btn-primary:hover{color:#fff;background:oklch(48% .22 293);border-color:oklch(48% .22 293);transform:translateY(-1px);box-shadow:0 14px 34px -12px oklch(48% .22 293/.55)}.btn-primary:active{transform:translateY(0)}.btn-ghost{color:var(--fg);border:1px solid var(--border);background:0 0}.btn-ghost:hover{border-color:var(--accent);color:var(--fg);background:oklch(24% .03 260/.5);transform:translateY(-1px)}.btn-ghost:active{transform:translateY(0)}.hero{align-items:center;min-height:100svh;display:flex;position:relative;overflow:hidden}#hero-canvas{z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero-glow{filter:blur(12px);z-index:0;pointer-events:none;background:radial-gradient(circle,oklch(52% .18 293/.2),#0000 66%);width:62vmin;height:62vmin;position:absolute;top:50%;right:4vmin;transform:translateY(-50%)}.hero:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(115% 100% at 74% 42%,#0000 32%,oklch(15% .02 260/.92) 100%),linear-gradient(oklch(15% .02 260/.5),#0000 26% 74%,oklch(15% .02 260/.82) 100%);position:absolute;inset:0}.hero-content{z-index:2;will-change:transform,opacity;max-width:660px;padding:136px 0 96px;position:relative}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 20px;font-size:.72rem}.eyebrow b{color:var(--fg);font-weight:500}.hero h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(2.6rem,6.4vw,4.7rem);font-weight:600;line-height:1.03}.hero h1 .accent{color:var(--accent)}.hero-sub{max-width:560px;color:var(--muted);margin:24px 0 0;font-size:1.06rem}.hero-cta{flex-wrap:wrap;gap:14px;margin-top:36px;display:flex}.hero-stats{flex-wrap:wrap;gap:40px;margin-top:72px;display:flex}.stat b{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--fg);font-variant-numeric:tabular-nums;font-size:1.55rem;font-weight:500;line-height:1.1;display:block}.stat span{color:var(--muted);font-size:.8rem}.scroll-cue{z-index:2;color:var(--muted);font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;flex-direction:column;align-items:center;gap:8px;font-size:.66rem;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.scroll-cue i{background:linear-gradient(180deg,var(--muted),transparent);width:1px;height:42px;animation:2.2s ease-in-out infinite cue;display:block}@keyframes cue{0%{transform-origin:top;transform:scaleY(0)}45%{transform-origin:top;transform:scaleY(1)}55%{transform-origin:bottom;transform:scaleY(1)}to{transform-origin:bottom;transform:scaleY(0)}}.section{border-top:1px solid var(--border);padding:112px 0;scroll-margin-top:72px;position:relative;overflow:hidden}section .wrap{z-index:2;position:relative}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.sec-head .eyebrow{margin-bottom:14px}.sec-head h2{font-family:var(--font-display);letter-spacing:-.022em;margin:0 0 14px;font-size:clamp(1.85rem,3.4vw,2.7rem);font-weight:600;line-height:1.1}.sec-head p{color:var(--muted);max-width:560px;margin:0}.scene-section:before{content:"";z-index:0;pointer-events:none;background:repeating-linear-gradient(90deg,oklch(96% .01 250/.03) 0 1px,#0000 1px 72px),repeating-linear-gradient(0deg,oklch(96% .01 250/.03) 0 1px,#0000 1px 72px);position:absolute;inset:0}.scene-canvas{z-index:0;pointer-events:none;opacity:.6;width:100%;height:100%;display:block;position:absolute;inset:0}.scene-glow{filter:blur(16px);z-index:0;pointer-events:none;background:radial-gradient(circle,oklch(55% .16 293/.16),#0000 66%);width:52vmin;height:52vmin;position:absolute;top:20%;right:2vmin;transform:translateY(-50%)}.no-webgl .scene-canvas{display:none}.cards{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:56px;display:grid}.card{border:1px solid var(--border);background:linear-gradient(180deg,var(--surface),oklch(17% .02 260));border-radius:16px;flex-direction:column;gap:16px;padding:30px;transition:transform .22s,border-color .22s,box-shadow .22s;display:flex;position:relative}.card:hover{transform:translateY(-4px);box-shadow:0 26px 60px -22px oklch(0% 0 0/.75)}.card.reveal.in:hover{transition:transform .22s,border-color .22s,box-shadow .22s}.card.ss{background:radial-gradient(130% 70% at 16% 0,oklch(64% .09 213/.16),#0000 58%),linear-gradient(oklch(28% .055 213),oklch(16.5% .025 260) 80%);border-color:oklch(50% .09 213/.5)}.card.ss:hover{border-color:oklch(60% .095 213/.8)}.card.pm{background:radial-gradient(130% 70% at 16% 0,oklch(66% .13 144/.16),#0000 58%),linear-gradient(oklch(28% .07 144),oklch(16.5% .025 260) 80%);border-color:oklch(50% .12 144/.5)}.card.pm:hover{border-color:oklch(60% .15 144/.8)}.card.qb{background:radial-gradient(130% 70% at 16% 0,oklch(68% .13 253.5/.18),#0000 58%),linear-gradient(oklch(28% .075 253.5),oklch(16.5% .025 260) 80%);border-color:oklch(52% .13 253.5/.55)}.card.qb:hover{border-color:oklch(62% .16 253.5/.85)}.card.featured{border-color:oklch(58% .17 253.5/.85)}.card.featured:hover{border-color:oklch(64% .18 253.5/.95)}.card.ss .card-mark{color:oklch(88% .075 211);background:oklch(30% .06 213);border-color:oklch(50% .09 213/.5)}.card.pm .card-mark{color:oklch(88% .12 144);background:oklch(30% .08 144);border-color:oklch(50% .12 144/.5)}.card.qb .card-mark{color:oklch(88% .09 253.5);background:oklch(30% .09 253.5);border-color:oklch(52% .13 253.5/.55)}.card-mark{border:1px solid var(--border);background:var(--surface-2);width:46px;height:46px;font-family:var(--font-display);color:var(--fg);border-radius:12px;place-items:center;font-size:16px;font-weight:600;display:grid}.card h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0;font-size:1.34rem;font-weight:600}.card .domain{font-family:var(--font-mono);color:var(--muted);font-size:.78rem}.card p{color:var(--muted);margin:0;font-size:.95rem}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{font-family:var(--font-mono);letter-spacing:.03em;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:5px 10px;font-size:.66rem}.card-link{min-height:44px;color:var(--muted);align-items:center;gap:7px;margin-top:auto;font-size:14px;font-weight:600;text-decoration:none;transition:color .18s;display:inline-flex}.card-link:hover{color:var(--accent-text)}.card-link svg{transition:transform .18s}.card-link:hover svg{transform:translate(2px,-2px)}.service-row{border-top:1px solid var(--border);grid-template-columns:120px 1.05fr 1.1fr;align-items:start;gap:40px;padding:44px 0;display:grid}.service-row:last-of-type{border-bottom:1px solid var(--border)}.service-no{font-family:var(--font-mono);color:var(--muted);padding-top:6px;font-size:.78rem}.service-row h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 10px;font-size:1.42rem;font-weight:600}.service-row p{color:var(--muted);margin:0;font-size:.96rem}.principles{grid-template-columns:repeat(2,1fr);gap:22px;margin-top:56px;display:grid}.principle{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:28px}.principle .no{font-family:var(--font-mono);color:var(--muted);letter-spacing:.12em;font-size:.7rem}.principle h3{font-family:var(--font-display);letter-spacing:-.01em;margin:14px 0 8px;font-size:1.16rem;font-weight:600}.principle p{color:var(--muted);margin:0;font-size:.93rem}.contact-grid{grid-template-columns:1.08fr .92fr;align-items:start;gap:64px;margin-top:56px;display:grid}.meta-item{border-top:1px solid var(--border);padding:22px 0}.meta-item .k{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:.68rem;display:block}.meta-item .v{color:var(--fg);font-size:1.05rem}.meta-item a.v{text-decoration:none;transition:color .18s}.meta-item a.v:hover{color:var(--accent-text)}.contact-card{border:1px solid var(--border);background:linear-gradient(180deg,var(--surface),oklch(17% .02 260));border-radius:16px;flex-direction:column;gap:18px;padding:34px;display:flex}.contact-card h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0;font-size:1.4rem;font-weight:600}.contact-card p{color:var(--muted);margin:0;font-size:.95rem}.section-copy{align-content:start;gap:18px;display:grid}.section-copy p{color:var(--muted);margin:0;font-size:.98rem}.section-cta{margin-top:8px}.socials{gap:12px;margin-top:6px;display:flex}.socials a{border:1px solid var(--border);width:44px;height:44px;color:var(--muted);border-radius:10px;place-items:center;text-decoration:none;transition:color .18s,border-color .18s;display:grid}.socials a:hover{color:var(--accent-text);border-color:oklch(44% .12 293/.6)}.socials svg{width:18px;height:18px}.footer{border-top:1px solid var(--border);background:oklch(13% .018 260);padding:72px 0 34px}.footer-grid{grid-template-columns:1.7fr 1fr 1fr 1fr;gap:44px;display:grid}.footer-brand .logo{margin-bottom:14px}.footer-brand p{color:var(--muted);max-width:320px;margin:0;font-size:.92rem}.footer-col h4{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;font-size:.68rem;font-weight:500}.footer-col a{color:var(--muted);padding:7px 0;font-size:14px;text-decoration:none;transition:color .18s;display:block}.footer-col a:hover{color:var(--fg)}.footer-bottom{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:56px;padding-top:26px;font-size:.8rem;display:flex}.reveal{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1);transform:translateY(26px)}.reveal.in{opacity:1;transform:none}.d1{transition-delay:60ms}.d2{transition-delay:.14s}.d3{transition-delay:.22s}.d4{transition-delay:.3s}.no-webgl #hero-canvas,.no-webgl .hero-glow{display:none}.no-webgl .hero:before{content:"";z-index:0;background:radial-gradient(38% 46% at 74% 46%,oklch(52% .18 293/.26),#0000 62%),radial-gradient(26% 34% at 30% 58%,oklch(60% .16 293/.14),#0000 60%);animation:18s ease-in-out infinite alternate drift;position:absolute;inset:0}.no-webgl .hero:after{background:radial-gradient(115% 100% at 74% 42%,#0000 34%,oklch(15% .02 260/.92) 100%),linear-gradient(oklch(15% .02 260/.5),#0000 26% 74%,oklch(15% .02 260/.82) 100%)}@keyframes drift{to{transform:translate(-3%,-2%)scale(1.06)}}@media (width<=980px){.cards{grid-template-columns:1fr}.service-row{grid-template-columns:64px 1fr;gap:20px;padding:36px 0}.service-row p{grid-column:2}.principles{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:40px}.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=768px){.hero-glow{width:76vmin;height:76vmin;top:34%;left:50%;right:auto;transform:translate(-50%,-50%)}.scene-canvas{opacity:.45}.scene-glow{width:70vmin;height:70vmin;top:12%;left:50%;right:auto;transform:translate(-50%,-50%)}}@media (width<=720px){.nav-links,.nav-actions .nav-cta{display:none}.nav-menu{display:inline-flex}.hero-content{padding:120px 0 110px}.hero-stats{gap:26px;margin-top:56px}.section{padding:84px 0}.footer-grid{grid-template-columns:1fr;gap:36px}.hero h1{font-size:clamp(2.3rem,9.2vw,3rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}.scroll-cue,.scene-canvas{display:none}}.hero-content{margin-left:calc(50% - min(1180px,92%)/2);margin-right:auto}
