:root{--blue: #4a90d9;--blue-deep: #2f6fb8;--black: #07090d;--near-black: #0e1218;--panel: #1a2332;--white: #ffffff;--white-80: rgba(255,255,255,.8);--white-50: rgba(255,255,255,.5);--white-30: rgba(255,255,255,.3);--white-08: rgba(255,255,255,.08);--border: rgba(255,255,255,.1);--ink: #0e1218;--ink-08: rgba(14,18,24,.08);--ink-50: rgba(14,18,24,.5);--ink-muted-text: rgba(14,18,24,.6);--ink-20: rgba(14,18,24,.2);--off-white: #F4F7FB;--cool-grey: #E8EDF5;--font-display: "Poppins", sans-serif;--font-body: "Roboto", sans-serif;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease: cubic-bezier(.32,0,.18,1);--reveal-dur: .64s}html{scrollbar-width:none}html::-webkit-scrollbar{width:0;height:0;display:none}body{font-family:var(--font-body);background:var(--white);color:var(--ink);overflow-x:clip;-webkit-font-smoothing:antialiased}#site-nav{position:fixed;top:0;left:0;right:0;z-index:900;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,72px);height:68px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:#ffffffe0;border-bottom:1px solid var(--ink-08);transition:box-shadow .2s}#site-nav.scrolled{box-shadow:0 2px 24px var(--ink-08)}.nav-brand{font-family:var(--font-display);font-weight:800;font-size:1.1rem;letter-spacing:.1em;display:flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none}.brand-logo{height:28px;width:auto;display:block}.nav-right{display:flex;align-items:center;gap:16px}.nav-lang{display:flex;align-items:center;gap:14px;font-family:var(--font-display);font-weight:600;font-size:.82rem;letter-spacing:.06em}.lang-link{position:relative;padding:4px 0;color:#5a626d;text-decoration:none;transition:color .28s var(--ease-out)}.lang-link:hover,.lang-link:focus-visible{color:var(--blue-text-strong, #005c8f)}.lang-link.is-active{color:var(--blue-text-strong, #005c8f)}.lang-link.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--blue)}.lang-link:before{content:"";position:absolute;left:0;right:0;top:50%;height:44px;transform:translateY(-50%)}.lang-sep{color:#8a93a0;opacity:.5}.google-badge{display:flex;align-items:center;gap:6px;border-radius:100px;padding:5px 12px;font-family:var(--font-display);font-weight:600;font-size:.75rem;white-space:nowrap;background:var(--off-white);border:1px solid var(--cool-grey);color:var(--ink)}.google-badge .stars{color:#f5a623;letter-spacing:-1px}.google-badge .g-sep{opacity:.4}.google-badge .g-label{font-weight:400;opacity:.7}@media(max-width:560px){.google-badge{display:none}}.nav-call{display:none;align-items:center;justify-content:center;width:44px;height:44px;color:var(--ink);text-decoration:none;-webkit-tap-highlight-color:transparent}.nav-call:active{opacity:.6}@media(max-width:760px){.nav-call{display:inline-flex}}.nav-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:10px;background:transparent;border:0;cursor:pointer}.nav-burger span{display:block;height:2px;width:22px;border-radius:2px;background:var(--ink);transition:transform .32s var(--ease-out),opacity .2s}.nav-burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-burger[aria-expanded=true] span:nth-child(2){opacity:0}.nav-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}#pageWipe{position:fixed;top:0;bottom:0;left:-2vw;width:104vw;z-index:9999;pointer-events:none;background:linear-gradient(120deg,var(--blue-deep),var(--blue) 45%,#6aabee);box-shadow:0 0 80px #4a90d980;transform:translate(0)}#pageWipe.done{display:none}@media(prefers-reduced-motion:reduce){#pageWipe{display:none}}html:not(.has-js) #pageWipe{display:none}.assembly{position:relative;height:480vh}.stage{position:sticky;top:0;height:100vh;overflow:clip}.stage-head{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 24px;pointer-events:none}.stage-head .eyebrow{font-family:var(--font-display);font-weight:700;font-size:.78rem;letter-spacing:.26em;text-transform:uppercase;color:#8ec1f2;display:inline-flex;align-items:center;gap:12px;margin-bottom:20px;text-shadow:0 2px 16px rgba(0,0,0,.6)}.stage-head .eyebrow:before,.stage-head .eyebrow:after{content:"";width:30px;height:1.5px;background:#8ec1f2}.stage-head h1{font-family:var(--font-display);font-weight:800;font-size:clamp(2.6rem,7.6vw,6.6rem);line-height:.92;letter-spacing:-.03em;color:var(--white);text-shadow:0 4px 28px rgba(0,0,0,.55)}.stage-head h1 span{color:#7cb8f5}.stage-head .sub{margin-top:20px;max-width:46ch;font-size:clamp(.9rem,1.25vw,1.08rem);line-height:1.7;color:var(--white-80);text-shadow:0 2px 16px rgba(0,0,0,.6)}.stage-bg{position:absolute;inset:0;z-index:0;overflow:hidden;opacity:0;pointer-events:none}.stage-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s var(--ease-out)}.stage-bg-img.is-front{opacity:1}.stage-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#02060c8c,#02060cb8 55%,#02060c8c)}@media(prefers-reduced-motion:reduce){.stage-bg-img{transition:none}}.stage-glow{position:absolute;top:0;left:50%;transform:translate(-50%);width:96vw;height:100vh;background:radial-gradient(ellipse 58% 56% at 50% 44%,rgba(74,144,217,.13),rgba(74,144,217,.04) 46%,transparent 72%);pointer-events:none;z-index:1}.scroll-hint{position:absolute;left:50%;bottom:22px;transform:translate(-50%);z-index:6;font-family:var(--font-display);font-weight:600;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-20);display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.scroll-hint span{width:1px;height:30px;background:linear-gradient(var(--ink-20),transparent);animation:hintpulse 1.6s ease-in-out infinite}@keyframes hintpulse{0%,to{opacity:.4;transform:scaleY(.7)}50%{opacity:1;transform:scaleY(1)}}.gridwrap{position:absolute;left:0;right:0;top:0;z-index:2;will-change:transform}.ow-grid{padding:0 clamp(16px,3vw,52px);display:flex;flex-direction:column;gap:clamp(16px,2.4vw,38px)}.arow{display:flex;gap:clamp(10px,1.2vw,20px);align-items:flex-start}.ow-card{flex:1;position:relative;display:flex;flex-direction:column;transform-origin:top left;will-change:transform;pointer-events:none;text-decoration:none;color:inherit}.ow-grid.assembled .ow-card{pointer-events:auto}.card-media{position:relative;aspect-ratio:4 / 3;overflow:hidden;border-radius:5px;background:var(--panel)}.card-media img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.001);transition:transform .9s var(--ease-out)}.ow-grid.assembled .ow-card:hover .card-media img{transform:scale(1.06)}.card-hover{position:absolute;inset:0;z-index:2;display:flex;align-items:flex-end;padding:clamp(16px,1.6vw,26px);background:linear-gradient(to top,rgba(2,28,52,.9) 0%,rgba(2,28,52,.15) 50%,transparent 74%);opacity:0;transition:opacity .36s var(--ease-out)}.ch-desc{font-size:clamp(.84rem,1vw,1rem);line-height:1.5;color:var(--white);max-width:40ch;transform:translateY(12px);transition:transform .48s var(--ease-out)}.ow-grid.assembled .ow-card:hover .card-hover{opacity:1}.ow-grid.assembled .ow-card:hover .ch-desc{transform:none}.card-media:after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--blue);z-index:3;transform:scaleX(0);transform-origin:left;transition:transform .52s var(--ease-out)}.ow-grid.assembled .ow-card:hover .card-media:after{transform:scaleX(1)}.card-cap{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 2px 0;opacity:0}.ow-grid.assembled .card-cap{opacity:1;transition:opacity .5s var(--ease-out)}html:not(.has-js) .card-cap{opacity:1}html:not(.has-js) .ow-card{pointer-events:auto}.cc-name{font-family:var(--font-display);font-weight:700;font-size:clamp(.84rem,1.05vw,1.1rem);letter-spacing:-.01em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-type{font-family:var(--font-display);font-weight:500;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted-text);white-space:nowrap}.ow-card.dim{opacity:.12;filter:saturate(.4);transition:opacity .4s var(--ease-out),filter .4s}.ow-card:not(.dim){transition:opacity .4s var(--ease-out),filter .4s}.card-media[data-cycle-card]{cursor:pointer;perspective:1200px;-webkit-perspective:1200px}.flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;will-change:transform;transition:transform .7s cubic-bezier(.4,0,.2,1);transform:rotateY(0) translateZ(0)}.flip-face{position:absolute;inset:0;overflow:hidden;background:var(--panel);backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0)}.flip-face--back{transform:rotateY(180deg)}.flip-view{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;pointer-events:none}.flip-view--active{opacity:1}.card-media[data-cycle-card]:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:5px}.cycle-dots{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;gap:8px;pointer-events:none;z-index:4}.dot{width:8px;height:8px;border-radius:9999px;background:#ffffff80;box-shadow:0 1px 3px #0009;transition:background-color .2s ease}.dot--active{background:#fffffff2}@media(prefers-reduced-motion:reduce){.flip-inner,.flip-view{transition:none!important}}.ow-foot{border-top:1px solid var(--border);padding:clamp(64px,9vw,120px) clamp(20px,5vw,72px);text-align:center;position:relative;overflow:hidden;background:var(--black);z-index:1}.ow-foot-glow{position:absolute;bottom:-30%;left:50%;transform:translate(-50%);width:70vw;height:60vh;background:radial-gradient(circle,rgba(74,144,217,.12),transparent 62%);pointer-events:none}.ow-foot h2{position:relative;font-family:var(--font-display);font-weight:800;font-size:clamp(2rem,5vw,4rem);line-height:1;letter-spacing:-.02em;color:#fff}.ow-foot h2 span{color:var(--blue)}.ow-foot-btn{position:relative;display:inline-flex;align-items:center;gap:10px;margin-top:30px;font-family:var(--font-display);font-weight:600;font-size:.95rem;color:#fff;background:var(--blue-deep);padding:15px 28px;border-radius:12px;border:none;cursor:pointer;box-shadow:0 16px 40px -12px #4a90d973;transition:transform .22s var(--ease-out),box-shadow .22s}.ow-foot-btn:hover{transform:translateY(-3px);box-shadow:0 22px 50px -12px #4a90d98c}.vb-scrollbar{position:fixed;top:0;right:0;bottom:0;width:12px;z-index:998;pointer-events:none}.vb-thumb{position:absolute;top:0;right:3px;width:6px;min-height:40px;border-radius:3px;background:#4a90d980;opacity:0;pointer-events:auto;cursor:grab;box-shadow:0 0 10px #4a90d966;transition:opacity .6s cubic-bezier(.14,1,.34,1),background .3s ease,box-shadow .3s ease}.vb-thumb.show{opacity:1}.vb-thumb:hover,.vb-thumb.dragging{background:#4a90d9bf;box-shadow:0 0 18px #4a90d9b3}.vb-thumb.dragging{cursor:grabbing}@media(pointer:coarse){.vb-scrollbar{display:none!important}}@media(max-width:900px),(prefers-reduced-motion:reduce){.assembly{height:auto!important}.stage{position:static;height:auto;overflow:visible;padding:130px 0 0}.stage-head{position:static;inset:auto;padding:0 24px 30px;min-height:auto}.stage-head .eyebrow{color:var(--blue-deep);text-shadow:none}.stage-head .eyebrow:before,.stage-head .eyebrow:after{background:var(--blue)}.stage-head h1{font-size:clamp(2.4rem,9vw,4rem);color:var(--ink);text-shadow:none}.stage-head h1 span{color:var(--blue)}.stage-head .sub{color:var(--ink-muted-text);text-shadow:none}.stage-glow,.stage-bg,.scroll-hint{display:none}.gridwrap{position:static;transform:none!important}.ow-grid{padding:14px clamp(16px,4vw,28px) 60px}.arow{flex-wrap:wrap;height:auto}.ow-card{flex:1 1 calc(50% - 10px);transform:none!important;pointer-events:auto;opacity:1!important}.card-media{aspect-ratio:4/3;flex:none}.card-cap{opacity:1!important}.ow-card:active .card-hover,.ow-card:hover .card-hover{opacity:1}}@media(max-width:560px){.ow-card{flex:1 1 100%}}html:not(.has-js) .assembly{height:auto}html:not(.has-js) .stage{position:static;height:auto;overflow:visible;padding:130px 0 0}html:not(.has-js) .stage-head{position:static;inset:auto;padding:0 24px 30px}html:not(.has-js) .stage-head .eyebrow{color:var(--blue-deep);text-shadow:none}html:not(.has-js) .stage-head .eyebrow:before,html:not(.has-js) .stage-head .eyebrow:after{background:var(--blue)}html:not(.has-js) .stage-head h1{color:var(--ink);text-shadow:none}html:not(.has-js) .stage-head h1 span{color:var(--blue)}html:not(.has-js) .stage-head .sub{color:var(--ink-muted-text);text-shadow:none}html:not(.has-js) .stage-glow,html:not(.has-js) .stage-bg,html:not(.has-js) .scroll-hint{display:none}html:not(.has-js) .gridwrap{position:static;transform:none}html:not(.has-js) .ow-grid{padding-bottom:60px}
