html{scroll-behavior:smooth}
body{margin:0}
a{color:#2D6BFF}a:hover{color:#123454}
.hdr{transition:background-color .35s ease,border-color .35s ease}
.hdr.solid{background-color:rgba(5,13,26,.94) !important;border-bottom-color:rgba(255,255,255,.1) !important;backdrop-filter:blur(10px)}
.navlink{transition:color .2s ease}
.navlink:hover{color:#FFFFFF !important}
.btn{transition:background-color .15s ease-in-out,color .15s ease-in-out,border-color .15s ease-in-out}
.btn-fill-light:hover{background-color:transparent !important;color:#FFFFFF !important}
.btn-line-light:hover{background-color:#FFFFFF !important;color:#0B1C3F !important}
.btn-fill-navy:hover{background-color:transparent !important;color:#123454 !important}
.grad{background:linear-gradient(90deg,var(--accent) 0%,color-mix(in srgb,var(--accent) 45%,#FFFFFF) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.grad-blue{background:linear-gradient(90deg,#2D6BFF 0%,#7DB8F2 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.svc{position:relative;overflow:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,opacity .7s ease}
.svc::before{content:"";position:absolute;inset:0;background:linear-gradient(140deg,#2D6BFF 0%,#1B3FB8 55%,#123454 100%);transform:translateY(102%);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.svc::after{content:"";position:absolute;width:240px;height:240px;right:-90px;top:-90px;border-radius:50%;background:radial-gradient(circle,var(--accent) 0%,transparent 70%);opacity:0;transition:opacity .5s ease,transform .6s ease}
.svc>*{position:relative;z-index:1}
.svc:hover{transform:translateY(-14px) rotate(-1.2deg) scale(1.02);box-shadow:0 34px 60px rgba(13,40,110,.45)}
.svc:hover::before{transform:translateY(0)}
.svc:hover::after{opacity:.8;transform:translate(-24px,24px)}
.svc-icon{transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.svc:hover .svc-icon{transform:rotate(-8deg) scale(1.14)}
.svc-arrow{transition:transform .35s ease}
.svc:hover .svc-arrow{transform:translateX(10px)}
.step{transition:opacity .7s ease,transform .5s cubic-bezier(.2,.8,.2,1),border-color .35s ease,background-color .35s ease}
.step:hover{transform:translateY(-10px);border-color:var(--accent) !important;background-color:rgba(255,255,255,.08) !important}
.num{background:linear-gradient(180deg,#FFFFFF 0%,var(--accent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.tst-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;gap:0;padding:0}
.tst-track::-webkit-scrollbar{display:none}
.tst-track.drag{cursor:grabbing;scroll-snap-type:none;user-select:none}
.tst-card img{pointer-events:none;user-select:none}
.fdark::placeholder{color:#8FA3BA}
.fdark:focus{border-color:#7DB8F2 !important;box-shadow:0 0 0 3px rgba(125,184,242,.22) !important}
.tst-card{flex:0 0 100%;scroll-snap-align:center}
.arrow-btn{transition:background-color .15s ease-in-out,color .15s ease-in-out}
.arrow-btn:hover{background-color:#0B1C3F !important;color:#FFFFFF !important}
.soc{transition:background-color .2s ease,border-color .2s ease,transform .2s ease}
.soc:hover{background-color:#2D6BFF !important;border-color:#2D6BFF !important;transform:translateY(-3px)}
.legal{transition:background-color .15s ease-in-out,color .15s ease-in-out}
.legal:hover{background-color:#FFFFFF !important;color:#0B1C3F !important}
.formcard{transition:opacity .8s ease,transform .8s ease}
.pre{opacity:0 !important;transform:translateY(36px) !important}
.field{transition:border-color .2s ease,box-shadow .2s ease}
.field:focus{outline:none;border-color:#2D6BFF !important;box-shadow:0 0 0 3px rgba(45,107,255,.2)}
@media (min-width:1100px){.st2{margin-top:2.75rem}.st3{margin-top:5.5rem}.st4{margin-top:8.25rem}}
.wpp{transition:transform .25s ease,box-shadow .25s ease}
.wpp:hover{transform:scale(1.1)}
@media (max-width:900px){.nav-links{display:none !important}}
[hidden]{display:none !important}
#form-ok:not([hidden]){display:flex}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pre{opacity:1 !important;transform:none !important}}
@media (max-width:520px){.hdr .btn{padding:0 .875rem !important}}
@media (max-width:700px){.rev-row{flex-wrap:wrap}.rev-row .tst-track{flex:0 0 100% !important;order:-1}}
