:root{--paper:#fbfcfe;--paper-2:#eaf0fc;--ink:#0a1630;--ink-soft:#55617a;--night:#05080f;--night-2:#0b1324;--blue:#2f6bff;--blue-dark:#1a3f9e;--blue-light:#7aa6ff;--line:#1a3f9e29;--line-dark:#ffffff1f;--shadow:0 18px 40px -24px #0b122040;--font:"Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--header-h:84px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font);background-color:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-weight:400;line-height:1.7;overflow-x:hidden}::selection{background:var(--blue);color:#fff}img{max-width:100%;display:block}a{color:inherit;text-decoration:none;transition:color .3s,border-color .3s,background-color .3s,opacity .3s}button,input,textarea{font-family:inherit}button{cursor:pointer;color:inherit;background:0 0;border:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:var(--blue)}.container{width:100%;max-width:1340px;margin:0 auto;padding:0 3rem}@media (width<=768px){.container{padding:0 1.25rem}}.section{padding:120px 0}.section--alt{background:var(--paper-2)}.section--dark{background:radial-gradient(ellipse 60% 70% at 85% 10%, #2f6bff47, transparent 70%), radial-gradient(ellipse 50% 60% at 5% 100%, #1a3f9e59, transparent 70%), var(--night);color:#fff}@media (width<=768px){.section{padding:80px 0}}.section-title{text-align:center;letter-spacing:.5em;text-transform:uppercase;margin-bottom:clamp(3.5rem,7vw,6rem);padding-left:.5em;font-size:clamp(1.15rem,2.2vw,1.5rem);font-weight:200}.page-title{text-align:center;letter-spacing:.14em;text-transform:uppercase;padding-left:.14em;font-size:clamp(2.4rem,6vw,4.25rem);font-weight:300;line-height:1.15}.display{letter-spacing:.14em;text-transform:uppercase;font-size:clamp(2rem,4.2vw,3.5rem);font-weight:300;line-height:1.12}.kicker{letter-spacing:.4em;text-transform:uppercase;font-size:.78rem;font-weight:400}.muted{color:var(--ink-soft)}.section--dark .muted{color:#ffffffa6}.num{letter-spacing:.15em;color:var(--blue);font-variant-numeric:tabular-nums;font-size:.85rem}.link-line{letter-spacing:.22em;text-transform:uppercase;border-bottom:1px solid var(--blue);padding-bottom:6px;font-size:.82rem;font-weight:500;display:inline-block}.link-line:hover{color:var(--blue)}.section--dark .link-line:hover{color:var(--blue-light)}.btn-solid{background:var(--blue);color:#fff;letter-spacing:.3em;text-transform:uppercase;justify-content:center;align-items:center;gap:.6rem;width:100%;padding:1.1rem 2rem;font-size:.85rem;font-weight:500;display:inline-flex}.btn-solid:hover{background:var(--blue-dark)}.card{border-top:2px solid var(--blue);box-shadow:var(--shadow);background:#fff;padding:2.75rem 2.5rem;transition:border-color .4s,transform .4s}.card:hover{border-color:var(--blue-dark);transform:translateY(-4px);box-shadow:0 24px 50px -24px #2f6bff59}.card h3{letter-spacing:.06em;text-transform:uppercase;margin-bottom:1rem;font-size:1.2rem;font-weight:500;line-height:1.35}.grid-3{grid-template-columns:repeat(3,1fr);gap:3rem;display:grid}.grid-2{grid-template-columns:repeat(2,1fr);gap:3rem;display:grid}@media (width<=1024px){.grid-3{grid-template-columns:repeat(2,1fr);gap:2rem}}@media (width<=680px){.grid-3,.grid-2{grid-template-columns:1fr}}.waves{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.waves path{fill:none;stroke:#7aa6ff66;stroke-width:1.2px}.page-hero{min-height:52vh;padding:calc(var(--header-h) + 60px) 1.25rem 80px;color:#fff;background:radial-gradient(ellipse 60% 70% at 80% 15%, #2f6bff73, transparent 70%), radial-gradient(ellipse 55% 60% at 5% 100%, #1a3f9e8c, transparent 70%), var(--night);justify-content:center;align-items:center;margin-bottom:100px;display:flex;position:relative;overflow:hidden}.page-hero__waves{animation:22s ease-in-out infinite alternate waveDrift;width:120%!important;left:-10%!important}.page-hero__content{text-align:center;position:relative}.page-hero__sub{color:var(--blue-light);letter-spacing:.08em;margin-top:1.5rem}@keyframes waveDrift{0%{transform:translate(-4%,2%)scaleY(1)}to{transform:translate(4%,-3%)scaleY(1.15)}}@media (width<=768px){.page-hero{min-height:40vh;margin-bottom:64px}}.reveal{opacity:0;transition:opacity 1s,transform 1s cubic-bezier(.16,1,.3,1);transform:translateY(28px)}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}.page-hero__waves{animation:none}}
