/* Shared product-page rhythm; embedded demos keep their original application UI. */
.keksu-live{--muted:#605665;--readable-width:66ch}
.keksu-live main :is(h1,h2,h3){text-wrap:balance}
.keksu-live main :is(p,li){text-wrap:pretty}
.keksu-live main .lede{font-size:19px;line-height:1.6;max-width:58ch;color:var(--muted)}
.keksu-live main :is(.page-intro,.module-hero){padding-top:40px;padding-bottom:40px}
.keksu-live main .page-intro h1{font-size:clamp(32px,4.2vw,56px);line-height:1.1;margin-block:14px 20px}
.keksu-live main :is(.page-intro,.module-hero) h1 em{font-style:normal}
.keksu-live main .section{padding-block:56px}
.keksu-live main .section.compact{padding-top:16px}
.keksu-live main :is(.prose,.article-content){font-size:18px;line-height:1.7}
.keksu-live main .prose p{max-width:var(--readable-width);color:var(--muted)}
.keksu-live main :is(.article-card,.module-card){background:#fffdfb;border:1px solid var(--line);border-radius:12px;box-shadow:none;overflow:hidden}
.keksu-live main .module-grid{gap:20px}
.keksu-live main .module-card{padding:26px;display:flex;flex-direction:column;align-items:stretch}
.keksu-live main .module-card p{font-size:17px;line-height:1.6;color:var(--muted);margin:12px 0 20px;max-width:52ch}
.keksu-live main .module-card h3{font-size:23px;line-height:1.25}
.keksu-live main .card-link{margin-top:auto;font-size:15px}
.keksu-live main .card-link .icon{display:none}
.keksu-live main .module-card:hover{border-color:#ab91b6;transform:none}
.keksu-live main .article-card p{font-size:17px;line-height:1.6;color:var(--muted)}
.keksu-live main .module-benefits{display:block;border:0}
.keksu-live main .module-benefits>div:first-child{margin-bottom:24px}
.keksu-live main .benefit-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.keksu-live main .benefit-list article{display:block;margin:0;padding:25px;border:1px solid var(--line);border-radius:12px;background:#fffdfb}
.keksu-live main .benefit-list h3{font-size:22px;line-height:1.25;margin:0 0 12px}
.keksu-live main .benefit-list p{font-size:18px;line-height:1.6;margin:0;color:var(--muted)}
.keksu-live main .included{display:block;padding:26px;border-radius:12px;background:#eee5f4;border:0}
.keksu-live main .included summary{font-size:21px;font-weight:800;cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none}
.keksu-live main .included summary::after{content:'+'}
.keksu-live main .included details[open] summary::after{content:'−'}
.keksu-live main .included ul{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:14px 28px}
.keksu-live main .included li{font-size:17px;line-height:1.55;align-items:start;padding:0;border:0}
.keksu-live main .included p{font-size:16px;line-height:1.65;max-width:78ch;margin-top:22px}
.keksu-live main .faq-list summary{font-size:18px;line-height:1.45;min-height:52px}
.keksu-live main .faq-list p{font-size:17px;line-height:1.7;max-width:66ch;color:var(--muted)}
.keksu-live main .ks-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.keksu-live main .ks-feature-grid>article{display:block;background:#fffdfb;border:1px solid var(--line);border-radius:12px;padding:26px;margin:0}
.keksu-live main .ks-feature-grid h3{font-size:23px;line-height:1.25;letter-spacing:-.02em;margin:0 0 12px}
.keksu-live main .ks-feature-grid p{font-size:18px;line-height:1.6;margin:0 0 14px;color:var(--muted)}
.keksu-live main .ks-feature-grid ul{font-size:17px;line-height:1.6;padding-left:20px;margin:0}
.keksu-live main .ks-feature-grid li+li{margin-top:6px}
.keksu-live main .ks-feature-grid>.kp-payroll-note,.keksu-live main .ks-feature-grid>.kw-fine{grid-column:1/-1;font-size:14px;margin:0}
.keksu-live main :is(.kp-scope,.kw-more){display:block;padding-block:52px;border:0}
.keksu-live main :is(.kp-scope-intro,.kw-more>div:first-child){max-width:70ch;margin-bottom:26px}
.keksu-live main :is(.kp-scope-intro>p,.kw-more>div:first-child>p,.kp-connected>div>p,.kw-connected>div>p){font-size:18px;line-height:1.6;color:var(--muted)}
.keksu-live main :is(.kp-connected,.kw-connected){border:0;padding-block:36px;gap:36px}
.keksu-live main :is(.kp-demo-head,.kw-demo-heading,.ktv-section-head,.kk-demo-intro){align-items:start}
.keksu-live main :is(.kp-demo-head,.kw-demo-heading,.ktv-section-head,.kk-demo-intro)>p,
.keksu-live main .kk-demo-intro>div>p{font-size:17px;line-height:1.6}
.keksu-live main :is(.kp-offer,.kw-offer){border:0;background:#eee5f4;border-radius:12px;padding:24px}
.keksu-live main :is(.kp-demo-section,.kw-demo,.ktv-admin,.kk-flow,.kk-demo,.kk-details){border-top:0;border-bottom:0}
.keksu-live main .ktv-usecases{gap:20px;padding-block:32px}
.keksu-live main .ktv-usecases>article{background:#fffdfb;border:1px solid var(--line);border-radius:12px;padding:26px}
.keksu-live main .ktv-usecases h2{font-size:26px;margin-block:12px}
.keksu-live main .ktv-usecases p{font-size:18px;line-height:1.6}
.keksu-live main .ktv-steps{gap:20px;list-style:none;padding:0}
.keksu-live main .ktv-steps li{border:1px solid var(--line);border-radius:12px;background:#fffdfb;padding:24px}
.keksu-live main .ktv-steps h3{font-size:22px;margin:0 0 12px}
.keksu-live main .ktv-steps p{font-size:18px;line-height:1.6;margin:0}
.keksu-live main .kk-demo-benefits{gap:20px}
.keksu-live main .kk-demo-benefits>div{background:#fffdfb;border:1px solid var(--line);border-radius:12px;padding:24px}
.keksu-live main .kk-demo-benefits h3{font-size:22px;line-height:1.25}
.keksu-live main .kk-demo-benefits p,.keksu-live main .kk-flow p,.keksu-live main .kk-details p{font-size:18px;line-height:1.6}
.keksu-live main :is(.kp-demo-note,.kw-demo-foot p,.ka-demo-note,.kk-demo-note,.ktv-preview figcaption){font-size:14px;line-height:1.6}
.keksu-live main .kv-pf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.keksu-live main .kv-pf-grid article{background:#fffdfb;border:1px solid var(--line);border-radius:12px;padding:26px}
.keksu-live main .kv-pf-grid p{font-size:18px;line-height:1.6}
.keksu-live main .article-content nav{background:#eee5f4;border-radius:12px;padding:22px}
.keksu-live main .article-content nav a{min-height:44px;font-size:16px;display:flex;align-items:center}
.keksu-live main .form-card :is(input,select,textarea){font-size:17px;min-height:46px}
.keksu-live main .form-card label{font-size:16px}
.keksu-live main :is(.dl-card p,.city-copy p){font-size:18px;line-height:1.65}
.keksu-live main .city-copy{max-width:900px}
.keksu-live main .kc-advantages-list li p{font-size:16px;line-height:1.55}
.keksu-live main :is(a,button,input,select,summary):focus-visible{outline:3px solid #9870af;outline-offset:4px}
@media(max-width:900px){
 .keksu-live main .benefit-list{grid-template-columns:1fr}
 .keksu-live main :is(.kp-hero,.kw-hero){gap:28px}
}
@media(max-width:650px){
 .keksu-live main .lede{font-size:18px;line-height:1.55}
 .keksu-live main :is(.page-intro,.module-hero){padding-block:26px 32px}
 .keksu-live main :is(.page-intro,.module-hero) h1{font-size:clamp(30px,8vw,38px);line-height:1.12}
 .keksu-live main .section{padding-block:36px}
 .keksu-live main :is(.ks-feature-grid,.kv-pf-grid){grid-template-columns:1fr;gap:16px}
 .keksu-live main :is(.module-card,.benefit-list article,.ks-feature-grid>article,.ktv-usecases>article,.ktv-steps li,.kk-demo-benefits>div,.kv-pf-grid article){padding:22px}
 .keksu-live main :is(.kp-scope,.kw-more){padding-block:36px}
 .keksu-live main .included{padding:22px}
 .keksu-live main .included ul{grid-template-columns:1fr}
 .keksu-live main .qr-demo-copy p{font-size:16px;line-height:1.55}
 .keksu-live main .qr-demo-note{font-size:14px}
 .keksu-live main .kw-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
 .keksu-live main .kw-tabs button{min-width:0;font-size:14px;min-height:48px;white-space:normal;justify-content:center;padding:10px}
 .keksu-live main .kw-tabs button:last-child{grid-column:1/-1}
 .keksu-live main :is(.kw-offer,.kp-offer){padding:20px}
 .keksu-live main .module-grid{grid-template-columns:1fr}
 .keksu-live main .end-cta{padding:26px;margin-block:36px;border-radius:12px}
 .keksu-live main .end-cta h2{font-size:30px}
 .keksu-live main .end-cta p{font-size:18px;line-height:1.55}
 .keksu-live main .dl-card{padding:22px}
 .keksu-live main .prose{font-size:18px;line-height:1.65}
}
@media(prefers-reduced-motion:reduce){.keksu-live{scroll-behavior:auto}.keksu-live main *{scroll-behavior:auto!important}}

/* Prices and comparisons need readable context as well as large headline amounts. */
.keksu-live main .kc-intro>p{font-size:18px;line-height:1.6}
.keksu-live main .kc-benefit-list p{font-size:17px;line-height:1.6}
.keksu-live main :is(.kc-tariff,.kc-input-note,.kc-cost-scope,.kc-table-note,.kc-annual-scope,.kc-benefit-context){font-size:14px;line-height:1.6}
.keksu-live main .kc-mobile-overview :is(p,small){font-size:13px;line-height:1.45}
.keksu-live main .kc-mobile-benefits{font-size:15px;line-height:1.45}
.keksu-live main .kc-mobile-costs{font-size:15px}
.keksu-live main .kc-mobile-overview .kc-benefit-lead{font-size:15px}
.keksu-live main :is(.kp-note,.kp-setup-note,.kp-summary-note,.kv-module-note,.kv-intro-footnote,.ktv-hardware){font-size:14px;line-height:1.6}
.keksu-live main :is(.kp-setup-service,.kp-included-grid p){font-size:17px;line-height:1.6}
.keksu-live main :is(.kp-option small,.kp-devices small,.kp-config-head>span,.kp-module-link){font-size:14px}
.keksu-live main .kv-intro-description{font-size:18px;line-height:1.6;max-width:46ch;margin:18px 0 0;color:var(--muted)}
@media(max-width:650px){
 .keksu-live main .kc-intro>p{font-size:17px}
 .keksu-live main .kc-mobile-overview{padding:18px}
 .keksu-live main .kc-mobile-context{gap:12px}
 .keksu-live main .kv-intro-description{font-size:17px;margin-top:14px}
}
