/* Homepage ocean scene: scalable vector artwork, compositor-only movement. */
.hero.ocean-hero{background:radial-gradient(ellipse at 50% -35%,#94efff65,transparent 65%),linear-gradient(180deg,#117caa 0%,#08628d 48%,#064568 100%);padding:75px 20px 150px;min-height:700px}
.hero.ocean-hero::after{display:none}.hero.ocean-hero::before{opacity:.48}.ocean-hero>.wrap{z-index:3;position:relative}.hero.ocean-hero>.ocean-scene{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.ocean-defs{position:absolute;width:0;height:0}.ocean-sunlight{position:absolute;inset:-40% -10%;background:conic-gradient(from 158deg at 50% 0%,transparent 0deg,#b8f9ff16 9deg,transparent 14deg,#d1fbff15 23deg,transparent 27deg,#bbf8ff1c 38deg,transparent 44deg);filter:blur(8px);animation:sea-light 16s ease-in-out infinite alternate}.ocean-hero .hero-title{font-size:clamp(36px,4.8vw,64px);letter-spacing:-1.7px;line-height:1.23}.ocean-hero .sub{color:#d0eaf4}.ocean-hero .stats{gap:45px;margin-top:40px}.ocean-hero .stat h3{font-weight:700;font-size:32px}.ocean-hero .hero-badge{background:#e3faff12;border-color:#a9ecfa40;font-size:10px;letter-spacing:1.5px;padding:10px 17px}.ocean-waves{position:absolute;bottom:-1px;left:0;right:0;height:190px}.ocean-wave{position:absolute;width:200%;height:100%;bottom:0;left:0;animation:sea-swell 19s ease-in-out infinite alternate;will-change:transform}.wave-1{fill:#6bdfec;opacity:.22;bottom:30px;animation-duration:22s}.wave-2{fill:#35bad6;opacity:.38;bottom:13px;animation-delay:-9s;animation-duration:17s}.wave-3{fill:#1480ac;opacity:.65;bottom:-7px;animation-delay:-5s;animation-duration:24s}.wave-4{fill:#094d73;bottom:-36px;animation-duration:20s;animation-delay:-13s}.fish-route{position:absolute;left:0;top:75%;width:95px;color:#6bd5e3;animation:fish-cross 33s linear infinite;opacity:.72;will-change:transform}.swimming-fish{display:block;width:100%;height:auto;animation:fish-bob 3.4s ease-in-out infinite}.fish-tail{transform-origin:30px 30px;animation:fish-tail 650ms ease-in-out infinite alternate;transform-box:view-box}.fish-route-1{top:73%;animation-delay:-8s;width:88px}.fish-route-2{top:82%;animation-delay:-10s;width:57px;opacity:.55}.fish-route-3{top:77%;animation-delay:-12s;width:65px;opacity:.6}.fish-route-4{top:30%;animation-delay:-21s;animation-duration:46s;width:52px;opacity:.28}.fish-route-5{top:57%;animation-delay:-36s;animation-duration:46s;width:76px;opacity:.35}.fish-route-6{top:88%;animation-delay:-25s;animation-duration:37s;width:110px;opacity:.5}.fish-route-4 .swimming-fish,.fish-route-5 .swimming-fish{animation-delay:-1s}.ocean-bubbles i{position:absolute;bottom:-15px;left:12%;width:7px;height:7px;border:1px solid #bcf7ff55;border-radius:50%;animation:sea-bubble 11s linear infinite}.ocean-bubbles i:nth-child(2){left:28%;animation-delay:-4s;width:4px;height:4px}.ocean-bubbles i:nth-child(3){left:78%;animation-delay:-7s}.ocean-bubbles i:nth-child(4){left:89%;animation-delay:-2s;width:11px;height:11px}.ocean-bubbles i:nth-child(5){left:65%;animation-delay:-9s;width:5px;height:5px}.hero.ocean-hero>.ocean-motion{position:absolute;right:24px;bottom:15px;z-index:4;border:1px solid #b4efff30;background:#063b5870;color:#c3e9f2;border-radius:30px;font-size:10px;padding:8px 13px;cursor:pointer;backdrop-filter:blur(8px)}.ocean-paused .ocean-scene *,.ocean-hero.ocean-paused::before{animation-play-state:paused!important}
@keyframes sea-swell{from{transform:translate3d(-28%,4px,0)}to{transform:translate3d(0,-6px,0)}}@keyframes sea-light{from{transform:rotate(-5deg)}to{transform:rotate(5deg)}}@keyframes fish-cross{from{transform:translate3d(-130px,0,0)}to{transform:translate3d(calc(100vw + 140px),-20px,0)}}@keyframes fish-bob{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-13px) rotate(3deg)}}@keyframes fish-tail{from{transform:scaleX(.75)}to{transform:scaleX(1)}}@keyframes sea-bubble{0%{transform:translateY(0);opacity:0}15%{opacity:.8}100%{transform:translateY(-650px);opacity:0}}
/* Digital collection: restrained editorial layout and a CSS workspace illustration. */
.software-suite{grid-column:1/-1;background:#f4f8fb;color:#173c55;border:1px solid #d8e9f2;border-radius:24px;overflow:hidden;box-shadow:0 30px 70px #01274140;margin-top:20px;scroll-margin-top:100px}.suite-topline{display:flex;align-items:center;justify-content:space-between;padding:23px 36px;border-bottom:1px solid #dce7ee;font-size:9px;letter-spacing:1.6px;color:#547487;font-weight:700}.suite-topline>span:first-child{display:flex;align-items:center;gap:9px}.suite-topline i{width:6px;height:6px;border-radius:50%;background:#1aafa9;box-shadow:0 0 0 4px #1aafa914}.suite-edition{font-size:8px;color:#859ba9;letter-spacing:1.7px}.suite-intro{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;padding:50px 40px 42px}.suite-kicker{font-size:9px;color:#488297;letter-spacing:1.5px;font-weight:650}.suite-intro h2{font-size:clamp(30px,3.3vw,44px);line-height:1.2;letter-spacing:-1.4px;margin:17px 0 18px;font-weight:750}.suite-intro h2 em{color:#0b8caa;font-style:normal}.suite-intro p{font-size:13px;line-height:1.85;color:#6a8190;max-width:430px;margin-bottom:24px}.suite-primary{display:inline-flex;align-items:center;gap:32px;padding:13px 18px;border-radius:8px;background:#153f59;color:#fff;text-decoration:none;font-size:12px;font-weight:650;box-shadow:0 5px 12px #173f5918;transition:background .2s,transform .2s}.suite-primary:hover{background:#087d9e;color:#fff;transform:translateY(-2px)}.suite-primary span{font-size:19px}.suite-preview{position:relative;perspective:1000px;padding:15px 10px 24px;background:radial-gradient(ellipse,#67c9df20,transparent 70%)}.suite-window{background:#fff;border:1px solid #d7e7ef;border-radius:12px;box-shadow:12px 24px 35px -10px #153f5928,0 1px 0 3px #ffffff80;transform:rotateY(-9deg) rotateX(5deg) rotateZ(2deg);overflow:hidden}.suite-window-bar{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;background:#f8fafc;border-bottom:1px solid #e3ecf1;font-size:8px;color:#94afbc;letter-spacing:1px}.suite-window-bar>b{color:#608193;font-size:8px;letter-spacing:1.8px}.suite-window-bar>span:first-child{color:#a7c8d5;font-size:7px;letter-spacing:3px}.suite-window-body{display:flex;min-height:230px}.suite-mini-nav{width:45px;background:#f6fafc;border-right:1px solid #e6eff4;display:flex;flex-direction:column;align-items:center;gap:20px;padding:24px 0}.suite-mini-nav i{width:13px;height:13px;border:2px solid #bfd3df;border-radius:3px}.suite-mini-nav i:first-child{background:#148ca8;border-color:#148ca8;box-shadow:0 0 0 5px #e0f2f7}.suite-dashboard{flex:1;padding:23px}.suite-dashboard>span{font-size:7px;letter-spacing:1.8px;color:#7794a5}.suite-dashboard>strong{display:block;font-size:23px;line-height:1.25;color:#284f67;margin:12px 0 19px;letter-spacing:-.7px}.suite-mini-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.suite-mini-cards>div{background:#edf7fa;border:1px solid #e0edf3;border-radius:7px;padding:10px;font-size:20px;color:#1b8ba4}.suite-mini-cards>div:nth-child(2){color:#6677b2;background:#f2f3fa}.suite-mini-cards>div:nth-child(3){color:#399991;background:#eef8f4}.suite-mini-cards small{display:block;font-size:8px;color:#728d9e;margin-top:7px}.suite-chart{display:flex;gap:7px;height:39px;align-items:end;padding:0 8px;margin-top:17px;border-bottom:1px solid #e0edf3}.suite-chart i{flex:1;height:35%;border-radius:3px 3px 0 0;background:#d2eaf1}.suite-chart i:nth-child(2n){height:58%}.suite-chart i:nth-child(3n){height:75%;background:#a9d8e5}.suite-chart i:last-child{height:96%;background:#339db6}.suite-floating{position:absolute;right:0;bottom:2px;padding:12px 18px;background:#123f59;color:#79dfd4;border:1px solid #fff4;border-radius:9px;font-size:14px;box-shadow:0 9px 20px #153f5925}.suite-floating span{font-size:9px;color:#e0f3f8;margin-left:7px}.suite-collections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 36px 30px}.suite-collection{display:flex;flex-direction:column;background:white;border:1px solid #dce7ef;border-radius:12px;padding:23px;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}.suite-collection:hover{transform:translateY(-5px);border-color:#94c9da;box-shadow:0 18px 28px -13px #28516b25}.suite-collection-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.suite-collection-top>span:last-child{font-size:9px;color:#98aeba;letter-spacing:1.5px}.suite-icon{display:flex;align-items:center;justify-content:center;width:39px;height:39px;background:#ecf7fa;border:1px solid #d9edf2;border-radius:10px;color:#1587a2;font-size:25px}.suite-collection:nth-child(2) .suite-icon{background:#f1f3fb;color:#707eb2;border-color:#e4e7f2}.suite-collection:nth-child(3) .suite-icon{background:#edf7f3;color:#3c9685;border-color:#dceee7}.suite-collection h3{font-size:16px;font-weight:700;color:#21485f;letter-spacing:-.3px;margin:0 0 12px}.suite-collection p{font-size:12px;color:#718896;line-height:1.75;margin-bottom:22px}.suite-explore{display:flex;justify-content:space-between;color:#32758d;font-size:10px;font-weight:650;border-top:1px solid #edf2f5;padding-top:15px;margin-top:auto}.suite-explore b{font-size:16px}.suite-bottom{display:flex;gap:25px;align-items:center;justify-content:space-between;border-top:1px solid #dbe7ee;padding:22px 36px;background:#edf4f8}.suite-availability strong{display:block;color:#174d67;font-size:24px}.suite-availability strong span{font-size:11px;font-weight:500}.suite-availability small{font-size:11px;color:#638192}.suite-service{display:grid;gap:7px;font-size:10px;color:#648193}.suite-bottom>a{font-size:11px;color:#266d86;text-decoration:none}
@media(max-width:900px){.suite-intro{gap:25px;padding:35px 25px}.suite-collections{padding:0 25px 25px;gap:12px}.suite-collection{padding:18px}.suite-topline,.suite-bottom{padding:20px 25px}.suite-intro h2{font-size:33px}.suite-preview{padding:10px 0 24px}.suite-dashboard{padding:18px}.suite-dashboard>strong{font-size:20px}}
@media(max-width:650px){.hero.ocean-hero{padding:50px 16px 125px;min-height:680px}.ocean-hero .hero-title{font-size:35px;letter-spacing:-1px}.ocean-hero .hero-badge{font-size:8px;letter-spacing:.6px}.ocean-hero .stats{gap:20px;margin-top:28px}.ocean-hero .stat h3{font-size:26px}.ocean-waves{height:140px}.fish-route{opacity:.4}.fish-route-1{top:83%}.fish-route-3{top:89%}.ocean-hero .sub{font-size:13px}.suite-intro{grid-template-columns:1fr;padding:28px 22px;gap:25px}.suite-intro h2{font-size:35px}.suite-topline{padding:20px 22px;font-size:8px;letter-spacing:1px}.suite-edition{display:none}.suite-preview{max-width:420px;width:100%;margin:auto}.suite-collections{grid-template-columns:1fr;padding:0 20px 25px}.suite-collection{padding:21px}.suite-collection-top{margin-bottom:15px}.suite-collection p{margin-bottom:18px}.suite-bottom{flex-wrap:wrap;padding:22px;gap:20px}.suite-service{width:100%;order:3}.software-suite{border-radius:18px}.suite-window{transform:rotateY(-5deg) rotateX(3deg) rotateZ(1deg)}.fish-route-4,.fish-route-5{display:none}}
@media(prefers-reduced-motion:reduce){.ocean-scene *,.hero.ocean-hero::before{animation:none!important}.fish-route-1{left:12%;top:83%}.fish-route-2{left:23%}.fish-route-3{left:70%;top:87%}.fish-route-4{left:8%}.fish-route-5{left:89%}.fish-route-6{left:83%}.suite-collection,.suite-primary{transition:none}.suite-collection:hover,.suite-primary:hover{transform:none}}
