:root{--n:#0b3b5c;--o:#35b9e9;--g:#f4f7fb;--t:#1d2b3a}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--t);line-height:1.65}
.wrap{max-width:1140px;margin:auto;padding:0 18px}.narrow{max-width:800px}a{color:var(--n)}img{max-width:100%;height:auto}
#preloader{position:fixed;inset:0;background:#fff;display:grid;place-items:center;z-index:9999;transition:opacity .5s,visibility .5s}#preloader.done{opacity:0;visibility:hidden}
.pl{position:relative;width:120px;height:120px;display:grid;place-items:center}.pl svg{animation:pulse 1.4s ease-in-out infinite}
.ring{position:absolute;inset:0;border:5px solid #e3e9f0;border-top-color:var(--o);border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.12)}}
.topbar{background:var(--n);color:#fff;font-size:13px}.topbar .wrap{display:flex;flex-wrap:wrap;gap:6px 18px;padding:7px 18px;justify-content:center}.topbar a{color:#bfeaff;text-decoration:none}
.hdr{position:sticky;top:0;background:#fff;box-shadow:0 2px 10px #0002;z-index:50}.hdr .wrap{display:flex;align-items:center;justify-content:space-between;padding:8px 18px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand b{display:flex;flex-direction:column;line-height:1.1}.brand small{font-weight:400;color:#667}
#nv{display:flex;gap:18px;align-items:center}#nv a{text-decoration:none;font-weight:600;color:var(--n)}#nv a:hover{color:var(--o)}#mt{display:none;font-size:26px;background:none;border:0}
.btn{display:inline-block;background:var(--o);color:#1a1a1a!important;padding:12px 22px;border-radius:30px;font-weight:700;text-decoration:none;border:0;cursor:pointer;transition:.25s}.btn:hover{transform:translateY(-3px);box-shadow:0 8px 18px #35b9e966}.btn.alt{background:var(--n);color:#fff!important}
.hero{background:linear-gradient(135deg,#0b3b5c,#14607f);color:#fff;padding:50px 0}.hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.hero h1{font-size:clamp(28px,5vw,46px);line-height:1.15}.eyebrow{color:var(--o);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:1px}
.img{border-radius:14px;animation:float 5s ease-in-out infinite}@keyframes float{50%{transform:translateY(-8px)}}
.pagehero{background:var(--n);color:#fff;padding:36px 0}.pagehero h1{margin:0;font-size:clamp(26px,4vw,38px)}
.sec{padding:50px 0}.gray{background:var(--g)}h2{font-size:clamp(24px,3.5vw,32px);color:var(--n)}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.card{background:#fff;border:1px solid #e1e8f0;border-radius:14px;padding:22px;text-decoration:none;color:var(--t);transition:.3s;box-shadow:0 2px 8px #0001}.card:hover{transform:translateY(-6px);box-shadow:0 12px 26px #0b3b5c22}.card h3{margin-top:0;color:var(--n)}.card span{color:#0a86b3;font-weight:700}
.qa{border:1px solid #dde5ee;border-radius:10px;margin:10px 0;padding:12px 16px;background:#fff}.qa summary{cursor:pointer;font-weight:700;color:var(--n)}
form{display:grid;gap:12px}input,textarea{padding:12px;border:1px solid #c9d4e0;border-radius:8px;font:inherit;width:100%}
footer{background:var(--n);color:#dbe6f2;padding:40px 0 10px}footer a{display:block;color:#bfeaff;text-decoration:none;margin:4px 0}footer h3{color:#fff}.copy{text-align:center;font-size:13px;border-top:1px solid #ffffff22;margin-top:24px;padding-top:12px}
.fab{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:10px;z-index:90}.fab a{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;text-decoration:none;font-size:22px;box-shadow:0 4px 12px #0004;animation:ring 2.2s infinite}
.f1{background:#0b3b5c}.f2{background:#d93f3f}.f3{background:#25d366}.f4{background:#35b9e9}.fab a:hover{transform:scale(1.12)}
@keyframes ring{0%{box-shadow:0 0 0 0 #35b9e999}70%{box-shadow:0 0 0 14px #35b9e900}100%{box-shadow:0 0 0 0 #35b9e900}}
.reveal{opacity:0;transform:translateY(24px);transition:.7s}.reveal.in{opacity:1;transform:none}
@media(max-width:800px){.hero .wrap,.grid2{grid-template-columns:1fr}#mt{display:block}#nv{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:16px;box-shadow:0 8px 12px #0002}#nv.open{display:flex}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* motion pack */
.hero .wrap>div:first-child>*{opacity:0;transform:translateY(26px);animation:up .8s forwards}
.hero .wrap>div:first-child>*:nth-child(1){animation-delay:.2s}.hero .wrap>div:first-child>*:nth-child(2){animation-delay:.4s}.hero .wrap>div:first-child>*:nth-child(3){animation-delay:.6s}.hero .wrap>div:first-child>*:nth-child(n+4){animation-delay:.8s}
@keyframes up{to{opacity:1;transform:none}}
.heroimg{overflow:hidden;border-radius:16px;opacity:0;transform:translateX(50px) scale(.96);animation:inr 1s .5s forwards;box-shadow:0 20px 40px #0006}
@keyframes inr{to{opacity:1;transform:none}}
.heroimg .img{border-radius:0;animation:none;display:block;width:100%;transition:transform 1.2s}.heroimg:hover .img{transform:scale(1.07)}
.img.zoom{width:100%;border-radius:14px;animation:none;transition:transform .6s,box-shadow .6s}.img.zoom:hover{transform:scale(1.03);box-shadow:0 18px 36px #0b3b5c33}
.hdr{transition:box-shadow .3s,padding .3s}.hdr.sc .wrap{padding-top:3px;padding-bottom:3px}.hdr.sc{box-shadow:0 4px 18px #0003}
#nv a:not(.btn){position:relative}#nv a:not(.btn)::after{content:"";position:absolute;left:0;bottom:-4px;height:3px;width:0;background:var(--o);transition:width .3s;border-radius:2px}#nv a:not(.btn):hover::after{width:100%}
.btn{position:relative;overflow:hidden}.btn::before{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:#fff6;transform:skewX(-25deg);transition:left .6s}.btn:hover::before{left:130%}.btn:active{transform:scale(.95)}
.rip{position:absolute;border-radius:50%;background:#fff8;transform:scale(0);animation:rp .6s linear;pointer-events:none}@keyframes rp{to{transform:scale(4);opacity:0}}
.qa{padding:0;overflow:hidden;transition:box-shadow .3s,border-color .3s}.qa:hover{box-shadow:0 6px 16px #0b3b5c1a}.qa.open{border-color:var(--o);box-shadow:0 8px 20px #35b9e933}
.q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;background:none;border:0;padding:16px 18px;font:inherit;font-weight:700;color:var(--n);cursor:pointer}
.q i{flex:none;width:30px;height:30px;border-radius:50%;background:var(--o);color:#1a1a1a;display:grid;place-items:center;font-style:normal;font-size:20px;transition:transform .4s,background .3s}.qa.open .q i{transform:rotate(135deg);background:var(--n);color:#fff}
.a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s ease}.qa.open .a{grid-template-rows:1fr}.a>div{overflow:hidden}.a p{margin:0;padding:0 18px 16px;opacity:0;transform:translateY(-8px);transition:.4s}.qa.open .a p{opacity:1;transform:none;transition-delay:.12s}
.stats{background:linear-gradient(135deg,#0b3b5c,#14607f);color:#fff;padding:40px 0;text-align:center}.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px}.stats b{display:block;font-size:clamp(32px,5vw,46px);color:var(--o)}
.card h3,.card p{transition:transform .3s}.card:hover h3{transform:translateX(4px)}.card span{display:inline-block;transition:transform .3s}.card:hover span{transform:translateX(8px)}
.card.reveal:nth-child(2){transition-delay:.12s}.card.reveal:nth-child(3){transition-delay:.24s}.card.reveal:nth-child(4){transition-delay:.36s}
input,textarea{transition:border-color .3s,box-shadow .3s}input:focus,textarea:focus{outline:0;border-color:var(--o);box-shadow:0 0 0 4px #35b9e933}
.fab a{position:relative;opacity:0;transform:translateX(60px);animation:fin .6s forwards,ring 2.2s 1s infinite}.fab a:nth-child(2){animation-delay:.15s,1s}.fab a:nth-child(3){animation-delay:.3s,1s}.fab a:nth-child(4){animation-delay:.45s,1s}
@keyframes fin{to{opacity:1;transform:none}}
.fab a::after{content:attr(aria-label);position:absolute;right:62px;background:#222;color:#fff;font-size:13px;padding:5px 10px;border-radius:6px;opacity:0;transform:translateX(10px);transition:.3s;pointer-events:none;white-space:nowrap}.fab a:hover::after{opacity:1;transform:none}
#nv{transition:.3s}@media(max-width:800px){#nv{opacity:0;transform:translateY(-12px);visibility:hidden;display:flex}#nv.open{opacity:1;transform:none;visibility:visible}}
.reveal{will-change:transform,opacity}
