/* Software brand layer. Existing commerce and service styles remain intact. */
.sw-home,.sw-product,.sw-hub{--sw-ink:#172d46;--sw-muted:#586b7e;color:var(--sw-ink)}
.sw-home h1,.sw-product h1,.sw-hub h1{font-size:clamp(38px,4.4vw,64px);line-height:1.09;letter-spacing:-.055em;margin:0 0 24px;font-weight:750}
.sw-home h2,.sw-product h2,.sw-hub h2{font-size:clamp(27px,3vw,40px);line-height:1.16;letter-spacing:-.045em}
.sw-home .eyebrow,.sw-product .eyebrow,.sw-hub .eyebrow{color:#0066a9;font-size:11px;letter-spacing:.1em;font-weight:700}
.sw-hero{display:grid;grid-template-columns:1.12fr 1fr;gap:64px;align-items:center;padding-block:86px 82px}.sw-hero h1 span{color:#0075c4}.sw-hero .lead,.sw-product .lead,.sw-hub .lead{font-size:17px;line-height:1.8;color:var(--sw-muted);max-width:600px}.sw-hero .button-row{margin-top:28px;gap:12px}.sw-platforms{font-size:12px;letter-spacing:.025em;margin:27px 0 0;color:#526779}.sw-platforms span{margin:0 12px;color:#9aabb9}
.sw-ecosystem{background:linear-gradient(145deg,#eef7ff,#f8fbff 58%,#e8f3ff);border:1px solid #dbe9f5;border-radius:32px;padding:26px;box-shadow:0 28px 70px #1c6da012;position:relative}.sw-ecosystem-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#516c84;letter-spacing:.16em;font-weight:700}.sw-dot{width:8px;height:8px;border-radius:50%;background:#0075c4}.sw-orbit-brand{text-align:center;padding:38px 0 29px}.sw-orbit-brand .wvu-logo{width:230px;max-width:90%;margin:auto}.sw-orbit-brand p{font-size:12px;color:#52697e;margin:15px 0 0}.sw-node{display:flex;background:#fff;border:1px solid #dce8f1;border-radius:18px;padding:22px;color:#233c53;box-shadow:0 6px 16px #193f6610;transition:border-color .15s,transform .15s}.sw-node:hover{border-color:#0089e5;transform:translateY(-2px);color:#0066a9}.sw-node strong{font-size:19px;letter-spacing:-.025em;display:block}.sw-node small{font-size:10px;display:block;color:#52697e;line-height:1.5}.sw-node-symbol{font-size:30px;color:#0075c4;line-height:1.1}.sw-node-core{align-items:center;gap:16px;margin-bottom:14px}.sw-node-core>span:last-child{margin-left:auto}.sw-node-core small{font-size:8px;letter-spacing:.12em;margin-bottom:4px}.sw-node-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sw-node-row .sw-node{flex-direction:column;align-items:flex-start;gap:9px;padding:20px}
.sw-strip{border-block:1px solid #e5edf4;background:#fbfdff}.sw-strip .shell{display:flex;justify-content:space-between;gap:20px;padding-block:22px;color:#50677b;font-size:12px}.sw-strip span::before{content:'✓';color:#0071b8;margin-right:10px}
.sw-heading{max-width:690px;margin-bottom:32px}.sw-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.sw-card{min-width:0;border:1px solid #dfe8f0;border-radius:24px;padding:30px;display:flex;flex-direction:column;background:#fff}.sw-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:26px}.sw-number{font-size:12px;font-weight:650;color:#67829a}.sw-card h3{font-size:27px;letter-spacing:-.04em;margin:0 0 14px}.sw-card h2{font-size:26px}.sw-card p,.sw-card .muted{font-size:14px;line-height:1.8;color:var(--sw-muted)}.sw-card .text-link{margin-top:auto;padding-top:22px;color:#006db3;font-size:13px}.sw-family-core{background:#f0f8ff;border-color:#9bcff0}.sw-status{display:inline-flex;border-radius:100px;background:#eaf0f5;color:#485d70;padding:6px 10px;font-size:10px;font-weight:650;line-height:1.5}.sw-product-icon{width:54px;height:54px;overflow:hidden;border-radius:12px;margin-bottom:22px;background:#f1f7fb}.sw-product-icon img{width:100%;height:100%;object-fit:contain}.sw-price{font-size:23px;font-weight:650;margin-block:16px}.sw-price del{font-size:15px;color:#607486;margin-right:8px}.sw-price ins{text-decoration:none}.sw-empty{padding:32px;border:1px solid #dce9f3;border-radius:22px;background:#f7fbff}.sw-empty h3{font-size:26px}.sw-empty p{color:var(--sw-muted)}
.sw-core-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:68px;padding:56px;border-radius:30px;background:#162e49;color:#fff;align-items:center}.sw-core-panel .eyebrow{color:#89d0ff}.sw-core-panel h2{color:#fff}.sw-core-panel p{color:#c6d6e5;font-size:15px;line-height:1.8;margin-bottom:24px}.sw-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sw-capabilities>div{border:1px solid #52708b;border-radius:16px;background:#213e5c;padding:24px 18px;font-size:14px}.sw-mini-dot{display:block;width:9px;height:9px;border-radius:3px;background:#89d0ff;margin-bottom:18px}.sw-capabilities>p{grid-column:1/-1;margin:6px 0 0;font-size:12px}
.sw-resources{background:#f5f9fc}.sw-resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.sw-resource-grid p{color:var(--sw-muted);line-height:1.8}.sw-resource-links{display:grid;gap:14px}.sw-resource-links a{padding:26px;border:1px solid #dce6ef;border-radius:18px;background:white}.sw-resource-links strong{display:block;font-size:19px;margin-bottom:7px}.sw-resource-links span{display:block;font-size:12px;color:#50677c}.sw-services{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:58px}.sw-services>div{max-width:720px}.sw-services p{color:var(--sw-muted);margin:0}.sw-services .button{flex-shrink:0}.sw-services>span{position:absolute}.sw-end{border-top:1px solid #dce7f0;padding-block:62px 75px;display:flex;align-items:center;justify-content:space-between;gap:36px}.sw-end h2{max-width:600px;font-size:34px}.sw-end p{color:var(--sw-muted)}.sw-end .button-row{flex-shrink:0}
.sw-product-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;padding-block:80px}.sw-product-visual{background:#f1f8ff;border:1px solid #d6e6f3;border-radius:28px;padding:34px}.sw-product-visual>img{width:100%;height:auto;border-radius:14px}.sw-product-brand{text-align:center;padding:24px 0}.sw-product-brand img{margin:0 auto 22px;max-width:90%;width:230px}.sw-product-brand>span{font-size:10px;letter-spacing:.15em;color:#506a82}.sw-feature-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}.sw-feature-list li{padding:16px 20px;background:#fff;border:1px solid #dce8f2;border-radius:12px;font-size:14px}.sw-feature-list li::before{content:'✓';color:#0070b8;margin-right:12px}.sw-product-note{font-size:12px;line-height:1.7;color:var(--sw-muted);margin-top:20px;max-width:420px}.sw-hub-heading{padding-block:70px 15px}.sw-cloud-panel{padding:44px;background:#f1f8ff;border:1px solid #dce9f3;border-radius:28px;margin-block:30px 70px}.sw-cloud-panel h2{max-width:700px;margin-top:24px}.sw-cloud-panel>p{max-width:750px;color:var(--sw-muted);line-height:1.8}.sw-roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style-position:inside;padding:0;margin:34px 0}.sw-roadmap li{padding:22px;border:1px solid #d2e2ee;border-radius:14px;font-size:13px;background:white}
@media(max-width:1200px){.header-inner{gap:18px}.menu{gap:15px}.header-actions{gap:10px}.sw-hero{gap:32px}.sw-core-panel{gap:35px;padding:40px}.sw-card{padding:24px}.sw-end{align-items:flex-start;flex-direction:column}}
@media(max-width:900px){.sw-hero,.sw-product-hero{grid-template-columns:1fr;gap:40px;padding-block:50px}.sw-hero-copy{max-width:680px}.sw-ecosystem{max-width:600px;width:100%;margin:auto}.sw-grid{grid-template-columns:1fr}.sw-card{padding:28px}.sw-card .text-link{padding-top:12px}.sw-core-panel,.sw-resource-grid{grid-template-columns:1fr;gap:28px}.sw-strip .shell{flex-wrap:wrap;justify-content:center}.sw-services{align-items:flex-start;flex-direction:column}.sw-roadmap{grid-template-columns:1fr}.sw-product-visual{max-width:600px;width:100%;margin:auto}}
@media(max-width:480px){.sw-hero{padding-block:36px 42px}.sw-home h1,.sw-product h1,.sw-hub h1{font-size:38px}.sw-hero .lead,.sw-product .lead{font-size:15px}.sw-platforms{font-size:10px}.sw-platforms span{margin:0 6px}.sw-ecosystem{padding:18px;border-radius:24px}.sw-node-row{gap:10px}.sw-node-row .sw-node{padding:16px}.sw-node strong{font-size:17px}.sw-node small{font-size:9px}.sw-core-panel{padding:28px 22px}.sw-capabilities{gap:10px}.sw-capabilities>div{padding:20px 13px;font-size:12px}.sw-cloud-panel{padding:25px}.sw-end .button-row{flex-wrap:wrap}.sw-strip .shell{gap:12px;padding-block:18px;font-size:11px}.sw-product-visual{padding:22px}}
@media(prefers-reduced-motion:reduce){.sw-node{transition:none}.sw-node:hover{transform:none}}
