@charset "UTF-8";:root{--blue: #325dba;--blue-dark: #1d3a7a;--navy: #0e1b3d;--accent: #4460a2;--red: #e2382f;--gray: #545454;--light: #f3f6fc;--line: #dde4f2;--radius: 16px;--shadow: 0 10px 30px rgba(14, 27, 61, .1);--font-head: "Oswald", "Arial Narrow", sans-serif;--font-body: "Manrope", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:#1b1f2a;line-height:1.65;background:#fff;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:var(--blue)}h1,h2,h3{font-family:var(--font-head);font-weight:600;line-height:1.15;margin:0 0 .6em;color:var(--navy);letter-spacing:.01em}h1{font-size:clamp(2.2rem,5vw,3.8rem)}h2{font-size:clamp(1.8rem,3.5vw,2.6rem)}h3{font-size:1.3rem}p{margin:0 0 1em}.container{width:min(1180px,100% - 32px);margin-inline:auto}.section{padding:clamp(56px,8vw,96px) 0}.section--light{background:var(--light)}.section--dark{background:var(--navy);color:#d7def0}.section--dark h2,.section--dark h3{color:#fff}.eyebrow{display:inline-block;font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:.8rem}.section--dark .eyebrow{color:#8fb0ff}.lead{font-size:1.15rem;color:var(--gray);max-width:720px}.section--dark .lead{color:#b9c5e3}.center{text-align:center}.center .lead{margin-inline:auto}.btn{display:inline-flex;align-items:center;gap:.55rem;padding:.9rem 1.5rem;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid transparent;transition:transform .15s,background .15s;cursor:pointer;font-size:1rem;font-family:inherit}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--blue);color:#fff}.btn--primary:hover{background:var(--blue-dark)}.btn--red{background:var(--red);color:#fff}.btn--ghost{border-color:currentColor;color:#fff}.btn--outline{border-color:var(--blue);color:var(--blue)}.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.6rem}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1000px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.grid-3{grid-template-columns:1fr}}@media(max-width:560px){.grid-4{grid-template-columns:1fr}}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.card h3{margin-top:.6rem}.card p{color:var(--gray);margin:0}.card .link{display:inline-block;margin-top:1rem;font-weight:700;text-decoration:none}.icon-badge{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#e7eeff;color:var(--blue)}.icon-badge svg{width:28px;height:28px}.page-hero{background:linear-gradient(135deg,var(--navy),var(--blue-dark) 60%,var(--blue));color:#fff;padding:clamp(64px,10vw,120px) 0 clamp(48px,7vw,80px);position:relative;overflow:hidden}.page-hero h1{color:#fff;max-width:820px}.page-hero p{color:#cfdaf5;font-size:1.15rem;max-width:680px}.page-hero:after{content:"";position:absolute;right:-120px;top:-80px;width:420px;height:420px;border-radius:50%;border:60px solid rgba(255,255,255,.05)}.crumbs{font-size:.85rem;margin-bottom:1rem;color:#a9b9e2}.crumbs a{color:#fff}.checklist{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.6rem}.checklist li{padding-left:1.9rem;position:relative}.checklist li:before{content:"";position:absolute;left:0;top:.3em;width:1.15rem;height:1.15rem;border-radius:50%;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/70% no-repeat}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}:focus-visible{outline:3px solid #8fb0ff;outline-offset:2px}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--neon: #6f9bff;--neon-red: #ff4d43}.neon{color:#fff;text-shadow:0 0 4px #fff,0 0 12px var(--neon),0 0 28px var(--neon),0 0 52px rgba(111,155,255,.6)}.neon-flicker{animation:flicker 6s infinite}.neon-red{color:#fff;text-shadow:0 0 4px #fff,0 0 12px var(--neon-red),0 0 30px var(--neon-red)}@keyframes flicker{0%,18%,22%,25%,53%,57%,to{opacity:1}20%,24%,55%{opacity:.35;text-shadow:none}}.neon-sign{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:999px;border:2px solid var(--neon-red);color:#fff;font-weight:700;font-size:.85rem;letter-spacing:.04em;box-shadow:0 0 8px var(--neon-red),inset 0 0 8px #ff4d4380;text-shadow:0 0 6px var(--neon-red);animation:sign 4s infinite}@keyframes sign{0%,40%,44%,to{box-shadow:0 0 10px var(--neon-red),0 0 24px #ff4d4380,inset 0 0 8px #ff4d4380;opacity:1}42%{box-shadow:none;opacity:.5}}.btn{position:relative;overflow:hidden;isolation:isolate}.btn:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translate(-120%);transition:transform .7s ease}.btn:hover:after{transform:translate(120%)}.btn--primary{box-shadow:0 0 #6f9bff00;transition:transform .15s,background .15s,box-shadow .3s}.btn--primary:hover{box-shadow:0 0 18px #6f9bffcc,0 0 40px #325dba80}.btn--red{animation:glow-red 2.2s ease-in-out infinite}@keyframes glow-red{50%{box-shadow:0 0 18px #ff4d43e6,0 0 42px #ff4d4373}}.card{position:relative;transition:transform .25s,box-shadow .25s}.card:before{content:"";position:absolute;inset:0;padding:2px;border-radius:inherit;opacity:0;pointer-events:none;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);background:conic-gradient(from var(--ang, 0deg),var(--blue),#8fb0ff,var(--neon-red),var(--blue));transition:opacity .3s;animation:spin 4s linear infinite}@media(hover:hover){.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px #325dba40}.card:hover:before{opacity:1}}@property --ang{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes spin{to{--ang: 360deg}}.icon-badge{transition:box-shadow .3s,background .3s,color .3s}@media(hover:hover){.card:hover .icon-badge{background:var(--blue);color:#fff;box-shadow:0 0 16px #6f9bffe6}}.tech-grid{position:relative;isolation:isolate}.tech-grid:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(143,176,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(143,176,255,.08) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse at 70% 40%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse at 70% 40%,#000 20%,transparent 75%);animation:grid-move 20s linear infinite}@keyframes grid-move{to{background-position:48px 48px}}html.anim .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}html.anim .reveal.is-visible{opacity:1;transform:none}.shine-text{background:linear-gradient(90deg,#fff,#8fb0ff,#fff,#8fb0ff,#fff);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s linear infinite}@keyframes shine{to{background-position:-200% center}}@media(prefers-reduced-motion:reduce){html.anim .reveal{opacity:1;transform:none}}.btn:has(.only){overflow:visible;white-space:nowrap}.btn:has(.only):after{display:none}.only{position:absolute;top:-10px;right:14px;padding:2px 8px;border-radius:999px;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.4;background:#fff;color:var(--red);border:1px solid var(--red);box-shadow:0 0 10px #ff4d438c}.btn--red .only{background:var(--navy);color:#fff;border-color:#ff8a83}@media(max-width:400px){.btn:has(.only){font-size:.92rem;padding-inline:1.1rem}}a,button,.btn{touch-action:manipulation}@media(max-width:600px){.btn-row:not(:has(.only)){flex-wrap:nowrap;gap:10px}.btn-row:not(:has(.only))>.btn{flex:1 1 0;min-width:0;justify-content:center;text-align:center;white-space:nowrap;padding:.85rem .6rem;font-size:clamp(.78rem,3.6vw,1rem);gap:.4rem}.btn-row:not(:has(.only))>.btn app-icon{flex:none}}
