/* Master-based product diagrams; no fabricated application screenshots. */
.km-header{background:#fff}
.brand{font-size:23px;font-weight:700;letter-spacing:2.8px;min-height:44px}
.home-hero{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:56px;padding-block:76px 72px}
.home-hero h1,.hero-copy h1{font-size:clamp(48px,4.8vw,72px);letter-spacing:-3.3px;line-height:1.04}
.hero-description{max-width:380px;font-size:16px;line-height:1.75;margin-top:25px}
.hero-secondary{display:inline-flex;align-items:center;gap:12px;font-size:12px;color:var(--muted);margin-top:20px}.hero-secondary:hover{color:var(--blue)}.hero-secondary svg{width:16px}
.hero-stage{min-width:0;background:var(--blue);padding:32px 25px 22px;position:relative;border-radius:8px}
.workflow-figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.workflow-figure figcaption{display:flex;flex-direction:column;gap:5px;padding:22px 22px 20px;border-bottom:1px solid var(--line);font-size:15px;font-weight:500;line-height:1.4}
.workflow-figure figcaption small{font-weight:400;font-size:10px;color:var(--muted)}
.workflow-map{display:grid;grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr);gap:14px;align-items:center;padding:32px 20px 28px;background:var(--soft)}
.flow-label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:12px}
.flow-item{display:flex;align-items:center;gap:9px;min-height:44px;padding:9px 10px;margin-top:8px;border:1px solid var(--line);border-radius:3px;background:#fff;font-size:10px;line-height:1.35;position:relative}
.flow-item>span:not(.document-icon){overflow-wrap:anywhere}.flow-outputs .flow-item{justify-content:space-between}
.flow-core{position:relative;display:flex;align-items:center;flex-direction:column;gap:7px;margin-top:19px;color:var(--blue);text-align:center}
.flow-core::before,.flow-core::after{content:'';position:absolute;top:43px;height:1px;width:15px;background:var(--blue)}.flow-core::before{right:100%}.flow-core::after{left:100%}
.flow-core-symbol{width:88px;height:88px;display:grid;place-items:center;background:var(--blue);color:#fff;border-radius:8px}.flow-core-symbol svg{width:46px;height:46px}
.flow-core strong{font-size:11px;font-weight:500;letter-spacing:.5px}.flow-core>span{color:var(--muted);font-size:9px}
.document-icon{width:12px;height:16px;border:1px solid #9aa6be;border-radius:2px;flex-shrink:0;position:relative}.document-icon::after{content:'';position:absolute;left:2px;right:2px;top:5px;height:4px;border-block:1px solid #9aa6be}
.flow-modules{display:flex;padding:15px 18px;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line)}.flow-modules span{font-size:9px;padding:4px 7px;background:var(--soft);border:1px solid var(--line);border-radius:3px;color:var(--muted)}
.hero-stage-caption{display:flex;justify-content:space-between;gap:15px;margin-top:20px;font-size:10px;line-height:1.5;color:#fff}.hero-stage-caption span:last-child{opacity:.78}
.hero-visual{border-color:transparent;box-shadow:0 14px 30px rgba(0,0,0,.12)}
.product-card{position:relative;overflow:hidden;min-height:0;padding:0 24px 23px;gap:0}
.card-visual{height:144px;background:var(--soft);border-bottom:1px solid var(--line);margin:0 -24px 21px;display:grid;place-items:center;position:relative;overflow:hidden;color:var(--blue)}
.cover-connections{position:absolute;inset:0;width:100%;height:100%;color:#c6ccda;stroke-width:1;fill:var(--soft)}
.cover-symbol{display:grid;place-items:center;width:88px;height:88px;z-index:1;background:#fff;border:1px solid #ccd3e2;border-radius:12px;transition:transform .25s,border-color .25s}.cover-symbol .product-symbol{width:49px;height:49px}
.cover-sku{position:absolute;bottom:12px;left:16px;font-size:9px;letter-spacing:1px;color:var(--muted)}.product-card:hover .cover-symbol{transform:translateY(-4px);border-color:var(--blue)}
.card-top{margin-bottom:16px}.product-number{display:none}.card-top .tier{margin-left:auto}.card-main .eyebrow{margin-bottom:9px}.card-main h3{font-size:23px;min-height:56px;max-width:none}
.card-description{font-size:12px;line-height:1.65;margin-top:12px;margin-bottom:22px}.card-bottom{margin-top:auto;padding-top:18px}.card-price{font-size:27px}.catalog-section{padding-top:66px}
.license-band{background:var(--blue);color:#fff;border:0}.license-band .eyebrow,.license-band p,.license-band .license-points{color:#fff}.license-band .eyebrow{opacity:.75}.license-band .text-link{border-color:rgba(255,255,255,.65)}.license-band .text-link:hover{color:#fff;border-color:#fff}.license-band .license-points span{color:#fff;opacity:.8}.license-band-inner{padding-block:54px}.license-band h2{font-size:52px}
.detail-hero{padding-bottom:44px}.detail-visual{margin:0 0 48px;padding:28px;background:var(--blue);border-radius:8px}.detail-visual .workflow-figure{max-width:100%;display:grid;grid-template-columns:1fr 2fr}
.detail-visual figcaption{grid-row:1/3;justify-content:center;border-bottom:0;border-right:1px solid var(--line);padding:32px;font-size:24px;letter-spacing:-.5px}.detail-visual figcaption small{margin-top:10px;font-size:11px;letter-spacing:0}
.detail-visual .workflow-map{grid-template-columns:1fr 130px 1fr;gap:28px;padding:26px 30px}.detail-visual .flow-item{font-size:12px}.detail-visual .flow-core::before,.detail-visual .flow-core::after{width:29px}.detail-visual .flow-modules{padding-left:30px}
.modules-grid{gap:14px;border:0}.modules-grid article,.modules-grid article:nth-child(3n),.modules-grid article:nth-child(2n){margin:0;padding:24px;border:1px solid var(--line);border-radius:6px;background:var(--soft)}.module-number{width:30px;height:30px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);border-radius:4px;margin-bottom:20px}.modules-grid h3{font-size:20px}.modules-grid p{font-size:12px}
@media(min-width:901px){
 .catalog-section .product-card:last-child{padding:0 30px 27px;grid-template-columns:1fr 1fr;gap:0 40px;background:#fff}
 .catalog-section .product-card:last-child .card-visual{grid-column:1;grid-row:1/4;margin:0 0 -27px -30px;height:auto;min-height:230px;border-bottom:0;border-right:1px solid var(--line)}
 .catalog-section .product-card:last-child .cover-symbol{width:112px;height:112px}.catalog-section .product-card:last-child .cover-symbol svg{width:64px;height:64px}
 .catalog-section .product-card:last-child .card-top{grid-column:2;grid-row:1;margin:24px 0 16px}.catalog-section .product-card:last-child .card-main{grid-column:2;grid-row:2}.catalog-section .product-card:last-child .card-main h3{font-size:28px;max-width:420px}
 .catalog-section .product-card:last-child .card-description{font-size:13px;margin-bottom:20px}.catalog-section .product-card:last-child .card-bottom{grid-column:2;grid-row:3;padding-top:16px}.catalog-section .product-card:last-child .card-price{font-size:28px}
}
@media(max-width:1100px){.home-hero{gap:30px}.hero-stage{padding:24px 16px 18px}.workflow-map{gap:10px;grid-template-columns:1fr 80px 1fr;padding-inline:12px}.flow-core-symbol{width:72px;height:80px}.flow-core::before,.flow-core::after{width:11px}.flow-item{font-size:9px;padding:8px 6px;gap:5px}.document-icon{display:none}.hero-stage-caption{font-size:9px}.detail-visual figcaption{padding:24px;font-size:22px}}
@media(max-width:900px){.home-hero{grid-template-columns:1fr;gap:38px;padding-block:54px}.hero-copy h1{font-size:64px}.hero-description{max-width:460px}.hero-stage{padding:30px;max-width:100%;width:100%}.workflow-map{grid-template-columns:1fr 120px 1fr;gap:24px;padding:28px}.flow-item{font-size:12px;padding:12px}.flow-core-symbol{width:88px;height:88px}.flow-core::before,.flow-core::after{width:25px}.flow-label{font-size:10px}.flow-modules span{font-size:10px}.hero-stage-caption{font-size:11px}.detail-visual .workflow-figure{display:block}.detail-visual figcaption{font-size:18px;padding:20px;border-right:0;border-bottom:1px solid var(--line)}.detail-visual figcaption small{margin-top:0}.detail-visual .workflow-map{grid-template-columns:1fr 100px 1fr}.product-card{padding-inline:22px}.card-visual{margin-inline:-22px}}
@media(max-width:520px){.home-hero{padding-block:42px 32px;gap:30px}.home-hero h1{font-size:51px;letter-spacing:-2.6px}.hero-description{font-size:14px;max-width:320px;margin-top:20px}.hero-actions{margin-top:23px}.hero-secondary{font-size:11px;margin-top:15px}.hero-stage{padding:17px 12px 13px;border-radius:6px}.workflow-figure figcaption{font-size:12px;padding:14px 12px}.workflow-figure figcaption small{font-size:9px}.workflow-map,.detail-visual .workflow-map{grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);gap:8px;padding:18px 10px}.flow-item,.detail-visual .flow-item{font-size:9px;padding:8px 6px;min-height:39px;gap:4px}.flow-label{font-size:8px;letter-spacing:.35px;margin-bottom:8px}.flow-core{gap:5px}.flow-core-symbol{width:60px;height:66px;border-radius:6px}.flow-core-symbol svg{width:35px;height:35px}.flow-core::before,.flow-core::after,.detail-visual .flow-core::before,.detail-visual .flow-core::after{width:9px;top:32px}.flow-core strong{font-size:9px}.flow-core>span{font-size:8px}.flow-modules,.detail-visual .flow-modules{padding:10px;gap:5px}.flow-modules span{font-size:8px;padding:3px 5px}.flow-outputs svg{width:10px}.hero-stage-caption{font-size:9px;margin-top:12px;gap:8px}.hero-stage-caption span:last-child{max-width:125px;text-align:right}.card-main h3{font-size:26px;min-height:0}.card-description{font-size:13px}.card-visual{height:130px}.card-top{margin-bottom:12px}.product-card{padding:0 23px 22px}.card-visual{margin-inline:-23px}.card-price{font-size:28px}.license-band h2{font-size:40px}.detail-visual{padding:13px;margin-bottom:32px}.detail-visual figcaption{font-size:13px;letter-spacing:0}.detail-visual figcaption small{font-size:9px}.modules-grid article,.modules-grid article:nth-child(2n),.modules-grid article:nth-child(3n){padding:22px}.module-number{margin-bottom:15px}}
@media(prefers-reduced-motion:reduce){.product-card:hover .cover-symbol{transform:none}}
/* Homepage banner v3: one sculptural subject, not a diagram or mock dashboard. */
.hero-stage.brand-banner{padding:0;background:var(--soft);border:1px solid var(--line);border-radius:0;overflow:hidden}
.brand-composition.hero-visual{margin:0;border:0;box-shadow:none;background:transparent;display:flex;flex-direction:column}
.banner-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:27px 30px 0}
.banner-wordmark{font-size:18px;letter-spacing:2.8px;font-weight:700;color:var(--ink)}
.banner-heading>span:last-child{font-size:12px;color:var(--muted)}
.brand-sculpture{width:100%;height:auto;display:block;margin:-7px 0 -20px;aspect-ratio:640/450}
.brand-composition figcaption{padding:0 30px 29px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.brand-composition figcaption strong{font-size:29px;line-height:1.08;font-weight:500;letter-spacing:-1px;color:var(--ink)}
.brand-composition figcaption>span{font-size:12px;line-height:1.6;color:var(--muted)}
@media(min-width:901px){.home-hero{gap:48px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.brand-sculpture{max-height:365px;object-fit:contain}}
@media(max-width:900px){.hero-stage.brand-banner{max-width:640px}.brand-sculpture{max-height:400px;object-fit:contain}.banner-heading{padding-top:26px}.brand-composition figcaption{padding-top:6px}}
@media(max-width:520px){.brand{font-size:21px;letter-spacing:2.4px}.banner-heading{padding:21px 20px 0;gap:12px}.banner-wordmark{font-size:15px;letter-spacing:2px}.banner-heading>span:last-child{font-size:10px}.brand-sculpture{margin:0 0 -10px}.brand-composition figcaption{padding:4px 20px 22px;gap:18px}.brand-composition figcaption strong{font-size:25px}.brand-composition figcaption>span{font-size:10px}}
