
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#10233f;background:#f8fbff}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(7,59,134,.08)}.header-inner{height:88px;display:flex;align-items:center;gap:30px}.logo-link img{width:180px;display:block}.nav{margin-left:auto;display:flex;align-items:center;gap:28px;font-size:14px;font-weight:700;color:#39516e}.nav>a:hover,.nav-dropbtn:hover{color:#0d63c7}.nav-dropdown{position:relative}.nav-dropbtn{border:0;background:none;font:inherit;color:inherit;cursor:pointer}.nav-menu{display:none;position:absolute;top:34px;left:-20px;min-width:240px;padding:10px;border:1px solid rgba(7,59,134,.1);border-radius:16px;background:white;box-shadow:0 20px 50px rgba(20,58,103,.14)}.nav-dropdown:hover .nav-menu{display:grid}.nav-menu a{padding:11px 12px;border-radius:10px}.nav-menu a:hover{background:#eef6ff;color:#0d63c7}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;font-weight:700;transition:.2s ease}.header-cta{padding:13px 18px;background:#073b86;color:white}.menu-toggle{display:none;margin-left:auto;border:0;background:#073b86;color:#fff;border-radius:10px;padding:10px 13px;font-size:20px}.hero-section{padding:72px 0 82px;background:radial-gradient(circle at 88% 14%,rgba(24,169,231,.16),transparent 25%),radial-gradient(circle at 12% 80%,rgba(13,99,199,.1),transparent 27%)}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:70px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:10px;padding:9px 13px;border-radius:999px;background:rgba(13,99,199,.08);color:#073b86;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.eyebrow span{width:9px;height:9px;border-radius:50%;background:#18a9e7;box-shadow:0 0 0 6px rgba(24,169,231,.13)}h1{font-size:clamp(48px,5.5vw,78px);line-height:1.03;letter-spacing:-.055em;margin:24px 0 22px}.hero-copy>p,.page-hero p{font-size:18px;line-height:1.75;color:#65748b;max-width:720px}.hero-actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}.btn{padding:15px 23px;border:0;cursor:pointer}.btn:hover,.header-cta:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#073b86,#0d63c7);color:#fff;box-shadow:0 15px 35px rgba(7,59,134,.2)}.btn-secondary{background:#fff;color:#073b86;border:1px solid rgba(7,59,134,.14)}.btn-white{background:#fff;color:#073b86}.trust-row{display:flex;gap:28px;margin-top:38px;flex-wrap:wrap}.trust-row div{display:grid}.trust-row strong{color:#073b86}.trust-row span{margin-top:4px;color:#748298;font-size:12px}.hero-visual{position:relative;min-height:530px;display:flex;align-items:center;justify-content:center}.orb{position:absolute;width:390px;height:390px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(70,190,244,.55),rgba(12,72,155,.92) 58%,#052050);box-shadow:0 35px 110px rgba(13,99,199,.28)}.dashboard-card{position:relative;z-index:2;width:min(520px,92%);padding:26px;border:1px solid rgba(255,255,255,.24);border-radius:28px;background:linear-gradient(145deg,rgba(6,35,84,.9),rgba(12,95,186,.76));color:#fff;box-shadow:0 35px 90px rgba(3,29,73,.3);transform:rotate(-2deg)}.dashboard-head{display:flex;justify-content:space-between;font-size:10px;font-weight:800;letter-spacing:.1em}.live{color:#7fe1ff}.dashboard-stats{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:25px}.dash-box{min-height:132px;padding:18px;border-radius:18px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.11)}.dash-box small,.dash-box span{display:block;color:rgba(255,255,255,.67)}.dash-box strong{display:block;margin:17px 0 8px;font-size:23px}.dash-box.wide{grid-column:span 2}.mini-bars{height:60px;display:flex;align-items:end;gap:9px;margin-top:18px}.mini-bars i{flex:1;border-radius:5px 5px 2px 2px;background:linear-gradient(#8de4ff,#2ca8ff)}.mini-bars i:nth-child(1){height:42%}.mini-bars i:nth-child(2){height:66%}.mini-bars i:nth-child(3){height:53%}.mini-bars i:nth-child(4){height:82%}.mini-bars i:nth-child(5){height:70%}.mini-bars i:nth-child(6){height:95%}.float-card{position:absolute;z-index:3;display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.93);box-shadow:0 18px 45px rgba(21,66,115,.17)}.float-card b{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#073b86,#18a9e7);color:#fff;font-size:12px}.float-card span{display:grid}.float-card strong{font-size:13px;color:#073b86}.float-card small{font-size:11px;color:#65748b;margin-top:3px}.float-one{left:0;top:17%}.float-two{right:0;bottom:12%}.section{padding:92px 0}.alt-section{background:#eef5fb}.section-heading{max-width:760px;margin:0 auto 44px;text-align:center}.section-kicker{display:inline-block;color:#0d63c7;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.section-kicker.light{color:#9edfff}.section h2,.cta-section h2{font-size:clamp(34px,4vw,52px);line-height:1.1;letter-spacing:-.04em;margin:12px 0 18px}.section-heading p,.section p{line-height:1.75;color:#65748b}.cards{display:grid;gap:22px}.cards.four{grid-template-columns:repeat(4,1fr)}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}.service-card,.plain-card{padding:28px;border:1px solid rgba(7,59,134,.1);border-radius:20px;background:#fff;box-shadow:0 14px 35px rgba(20,58,103,.06)}.service-card{transition:.2s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(20,58,103,.12)}.service-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#073b86,#18a9e7);color:#fff;font-weight:800}.service-card h3,.plain-card h3{font-size:20px;margin:20px 0 10px}.service-card p,.plain-card p{font-size:14px}.service-card>span{display:inline-block;margin-top:12px;color:#0d63c7;font-weight:700;font-size:13px}.service-card.large{min-height:260px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.check-list{padding:0;list-style:none;display:grid;gap:15px;margin-top:25px}.check-list li{position:relative;padding-left:32px;line-height:1.5;color:#425b77}.check-list li:before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#dff3ff;color:#0d63c7;font-weight:800}.info-panel{padding:34px;border-radius:24px;background:linear-gradient(145deg,#073b86,#0d63c7);color:#fff;box-shadow:0 24px 60px rgba(7,59,134,.22)}.info-panel p{color:rgba(255,255,255,.76)}.info-number{display:inline-grid;place-items:center;width:38px;height:38px;margin-top:14px;border-radius:11px;background:rgba(255,255,255,.12);font-weight:800}.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.value-grid div{padding:24px;border-radius:18px;background:#fff;border:1px solid rgba(7,59,134,.1)}.value-grid strong,.value-grid span{display:block}.value-grid strong{color:#073b86;font-size:18px}.value-grid span{margin-top:8px;color:#65748b;font-size:13px;line-height:1.5}.step{font-size:12px;font-weight:800;color:#0d63c7}.cta-section{padding:0 0 92px}.cta-box{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:48px;border-radius:28px;background:linear-gradient(135deg,#052c68,#0d63c7);color:#fff}.cta-box p{color:rgba(255,255,255,.75)}.page-hero{padding:86px 0;background:radial-gradient(circle at 85% 20%,rgba(24,169,231,.16),transparent 30%),#f4f9ff}.page-hero h1{max-width:850px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.contact-panel,.contact-form{padding:32px;border:1px solid rgba(7,59,134,.1);border-radius:22px;background:#fff;box-shadow:0 14px 35px rgba(20,58,103,.06)}.contact-item{display:grid;gap:5px;padding:18px 0;border-bottom:1px solid rgba(7,59,134,.08)}.contact-item strong{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#0d63c7}.contact-form{display:grid;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:grid;gap:8px;font-size:13px;font-weight:700;color:#294561}input,select,textarea{width:100%;padding:13px 14px;border:1px solid rgba(7,59,134,.16);border-radius:10px;font:inherit;color:#10233f;background:#fbfdff}textarea{resize:vertical}.contact-form small{color:#7a8798;line-height:1.5}.legal{max-width:800px}.legal h2{font-size:25px;margin-top:34px}.site-footer{padding:64px 0 24px;background:#071d3c;color:#b8c6d9}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr .9fr 1fr;gap:35px}.footer-logo{width:170px;margin-bottom:16px}.footer-grid h4{color:#fff;margin-top:0}.footer-grid a,.footer-grid span{display:block;margin:10px 0;font-size:13px}.footer-grid p{max-width:350px;font-size:13px;line-height:1.7}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:28px;margin-top:38px;border-top:1px solid rgba(255,255,255,.1);font-size:12px}
@media(max-width:980px){.nav,.header-cta{display:none}.menu-toggle{display:block}.nav.open{position:absolute;display:grid;top:88px;left:20px;right:20px;padding:18px;border-radius:16px;background:#fff;box-shadow:0 20px 50px rgba(20,58,103,.15)}.nav.open .nav-dropdown{display:grid}.nav.open .nav-menu{position:static;display:grid;box-shadow:none;border:0;padding-left:12px}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-copy{text-align:center}.eyebrow{margin:auto}.hero-actions,.trust-row{justify-content:center}.cards.four{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.container{width:min(100% - 28px,1180px)}.header-inner{height:76px}.logo-link img{width:150px}.nav.open{top:76px}.hero-section{padding:48px 0}.hero-visual{min-height:430px}.dashboard-card{transform:none;padding:18px}.float-card{display:none}.cards.four,.cards.three,.cards.two,.value-grid,.form-row{grid-template-columns:1fr}.section{padding:68px 0}.cta-box{padding:32px 24px;flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.page-hero{padding:62px 0}}

/* ===== SkySoft upgrade: motion & premium polish ===== */
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes dashFloat{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(-2deg) translateY(-12px)}}
@keyframes spinSlow{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

.eyebrow{animation:fadeUp .7s cubic-bezier(.16,1,.3,1) both}
.hero-copy h1,.page-hero h1{animation:fadeUp .8s cubic-bezier(.16,1,.3,1) .1s both}
.hero-copy>p,.page-hero p{animation:fadeUp .8s cubic-bezier(.16,1,.3,1) .2s both}
.hero-actions{animation:fadeUp .8s cubic-bezier(.16,1,.3,1) .3s both}
.trust-row{animation:fadeUp .8s cubic-bezier(.16,1,.3,1) .4s both}
.hero-visual{animation:fadeUp 1s cubic-bezier(.16,1,.3,1) .3s both}
.orb{animation:floatY 7s ease-in-out infinite,spinSlow 40s linear infinite}
.dashboard-card{animation:dashFloat 6s ease-in-out infinite}
.float-card{animation:floatY 5s ease-in-out infinite}
.float-two{animation-delay:1.4s}

/* scroll-reveal targets (activated via .in-view added by main.js) */
.service-card,.plain-card,.value-grid>div,.split>div,.contact-panel,.contact-form,.cta-box,.section-heading,.legal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.service-card.in-view,.plain-card.in-view,.value-grid>div.in-view,.split>div.in-view,.contact-panel.in-view,.contact-form.in-view,.cta-box.in-view,.section-heading.in-view,.legal.in-view{opacity:1;transform:translateY(0)}
.cards>*:nth-child(1){transition-delay:.05s}
.cards>*:nth-child(2){transition-delay:.15s}
.cards>*:nth-child(3){transition-delay:.25s}
.cards>*:nth-child(4){transition-delay:.35s}
.value-grid>div:nth-child(1){transition-delay:.05s}
.value-grid>div:nth-child(2){transition-delay:.15s}
.split>div:nth-child(2){transition-delay:.12s}

/* buttons: shine sweep */
.btn,.header-cta{position:relative;overflow:hidden}
.btn:after,.header-cta:after{content:"";position:absolute;top:0;left:-60%;width:35%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-20deg);transition:left .6s ease}
.btn:hover:after,.header-cta:hover:after{left:130%}
.btn:hover{transform:translateY(-3px)}
.btn-primary:hover{box-shadow:0 20px 45px rgba(7,59,134,.3)}

/* service cards: accent bar + icon motion */
.service-card{position:relative}
.service-card:before{content:"";position:absolute;top:0;left:22px;right:22px;height:3px;border-radius:0 0 4px 4px;background:linear-gradient(90deg,#073b86,#18a9e7);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
.service-card:hover:before{transform:scaleX(1)}
.service-icon{transition:transform .35s ease}
.service-card:hover .service-icon{transform:scale(1.08) rotate(-4deg)}

/* nav underline + active state */
.nav>a{position:relative;padding-bottom:4px}
.nav>a:after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:linear-gradient(90deg,#073b86,#18a9e7);transition:width .25s ease}
.nav>a:hover:after,.nav>a.active:after{width:100%}
.nav>a.active{color:#073b86}
.nav-menu a.active{background:#eef6ff;color:#0d63c7}

/* header on scroll */
.site-header{transition:box-shadow .3s ease}
.site-header.scrolled{box-shadow:0 12px 30px -12px rgba(20,58,103,.2)}

/* scroll progress bar (injected by main.js) */
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,#18a9e7,#073b86);z-index:999;transition:width .1s linear}

/* info-panel numbers: subtle hover lift when hovering the whole panel */
.info-panel:hover .info-number{background:rgba(255,255,255,.2)}
.info-number{transition:background .3s ease}

/* value-grid + plain-card hover polish */
.value-grid>div,.plain-card{transition:transform .3s ease,box-shadow .3s ease}
.value-grid>div:hover,.plain-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px rgba(20,58,103,.1)}

/* accessible focus state */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #18a9e7;outline-offset:3px}

/* respect reduced motion preference */
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .service-card,.plain-card,.value-grid>div,.split>div,.contact-panel,.contact-form,.cta-box,.section-heading,.legal{opacity:1;transform:none}
}
