.ksw-online-product { --online-ink: #0a2c39; --online-sea: #103e4e; --online-gold: #e9c47f; }
.ksw-online-hero { background: radial-gradient(ellipse at 85% 30%, #216477 0, #103e4e 38%, #0a2533 100%); color: #f5f0e2; overflow: hidden; }
.ksw-online-hero h1 { color: #fff7df; font-size: clamp(2.8rem, 4.8vw, 4.7rem); font-weight: 700; letter-spacing: -.045em; line-height: 1.05; margin: 0 0 1rem; }
.ksw-online-eyebrow { color: #e9c47f; font-size: .8rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; margin-bottom: 1.25rem; }
.ksw-online-tagline { color: #f6e2b4; font-size: 1.5rem; line-height: 1.4; margin-bottom: 1rem; }
.ksw-online-intro { color: #d4e5e5; font-size: 1.05rem; line-height: 1.8; }
.ksw-online-hero .ksw-online-play { background: #e9c47f; border-color: #e9c47f; color: #102d38; font-weight: 700; padding: 1rem 1.7rem; }
.ksw-online-hero .ksw-online-play:hover { background: #f6d999; border-color: #f6d999; }
.ksw-online-secondary, .ksw-online-secondary:hover { color: #f8edcc; text-decoration: underline; text-underline-offset: 5px; }
.ksw-online-requirements { color: #bbd3d9; font-size: .85rem; line-height: 1.5; }
.ksw-online-hero-art { position: relative; margin: 1rem 0 1.5rem; }
.ksw-online-hero-art > img:first-child { border: 1px solid #91c8c24a; border-radius: 10px; box-shadow: 0 22px 55px #03192388; width: 100%; height: auto; }
.ksw-online-hero-icon { position: absolute; right: -12px; bottom: -24px; border-radius: 22px; box-shadow: 0 6px 24px #03192377; }
.ksw-online-nav { padding-top: .6rem; }
.ksw-online-product .tab-content { border: 0; padding-top: 1rem; }
.ksw-online-product .tab-pane { padding-bottom: 3rem; }
.ksw-online-product .ksw-online-kicker { color: #296876; font-weight: 600; font-size: .8rem; letter-spacing: .13em; text-transform: uppercase; }
.ksw-online-feature-card { border: 1px solid #e0e9e9; border-radius: 8px; background: #f7faf9; padding: 1.7rem; height: 100%; }
.ksw-online-feature-card i { font-size: 1.6rem; margin-bottom: 1rem; }
.ksw-online-feature-card h3 { font-size: 1.1rem; font-weight: 600; line-height: 1.4; margin-bottom: .7rem; }
.ksw-online-feature-card p { margin: 0; }
.ksw-online-section { margin-top: 3.5rem; padding-top: 3rem; border-top: 1px solid #e7eceb; }
.ksw-online-figure img { width: 100%; height: auto; border: 1px solid #d9e5e5; border-radius: 6px; }
.ksw-online-figure figcaption { color: #52696e; font-size: .9rem; line-height: 1.5; padding-top: .7rem; }
.ksw-online-gallery .ksw-online-figure { margin: 0 0 1rem; }
.ksw-online-question { border-top: 1px solid #e0e9e9; padding: 1.2rem 0; }
.ksw-online-question summary { font-weight: 600; color: #17495a; cursor: pointer; }
.ksw-online-question p { margin: .8rem 0 0; }
.ksw-online-cta { background: #eef5f3; border-radius: 10px; padding: 2rem; margin-top: 3rem; }
.ksw-online-product a:focus-visible, .ksw-online-product summary:focus-visible { outline: 3px solid #bd8935; outline-offset: 4px; }
@media (max-width: 991px) { .ksw-online-hero-icon { right: 10px; } .ksw-online-hero .container { padding-top: 2.5rem !important; } }
@media (prefers-reduced-motion: reduce) { .ksw-online-product *, .ksw-online-product *::before, .ksw-online-product *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
