/* KadePay marketing brand: self-hosted fonts, Bootstrap 5.3.8, forest and mint.
   Readability floor: 16px body copy, 12px+ labels and 44px+ touch targets on phones. */
@font-face{font-family:Inter;src:url('../fonts/InterVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('../fonts/manrope-latin.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
:root{--kp-forest:#003428;--kp-deep:#00261e;--kp-green:#007a5e;--kp-mint:#acddd2;--kp-pale:#edf6f2;--kp-paper:#fafbf8;--kp-white:#fff;--kp-black:#101512;--kp-ink:#141c18;--kp-muted:#4d5e55;--kp-line:#dce6df;--kp-shadow:rgba(0,52,40,.08);--kp-dark-line:rgba(172,221,210,.22);--kp-hero-copy:#d9e9e0;--bs-primary:var(--kp-green);--bs-font-sans-serif:Inter,Arial,sans-serif}

/* Base */
html{scroll-padding-top:96px;-webkit-text-size-adjust:100%}
body{font-family:var(--bs-font-sans-serif);font-size:16px;line-height:1.7;color:var(--kp-ink);background:var(--kp-white);-webkit-font-smoothing:antialiased}
body.km-menu-open{overflow:hidden}
h1,h2,h3,h4{font-family:Manrope,Inter,Arial,sans-serif;line-height:1.13;letter-spacing:-.04em;font-weight:600;color:var(--kp-forest)}
h1{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:600;letter-spacing:-.05em;margin:0 0 24px}
h2{font-size:clamp(2rem,3.6vw,3.1rem);margin-bottom:24px}
h3{font-size:1.5rem;line-height:1.25}
p{margin-bottom:1.15rem}
a{color:var(--kp-green);text-underline-offset:4px}
a:hover{color:var(--kp-forest)}
button{font:inherit}
img{max-width:100%;height:auto}
.container{max-width:1256px;padding-left:34px;padding-right:34px}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--kp-green);outline-offset:4px;border-radius:4px}
.km-header :focus-visible,.km-hero-dark :focus-visible,.km-footer :focus-visible,.km-fact-band :focus-visible{outline-color:var(--kp-mint)}

/* Shared building blocks */
.km-section{padding:88px 0}
.km-eyebrow{color:var(--kp-green);text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700;line-height:1.6;margin-bottom:18px}
.km-micro,.km-demo-note{font-size:13px;line-height:1.6;color:var(--kp-muted)}
.km-micro{margin:18px 0 0}
.km-actions{display:flex;gap:14px 24px;align-items:center;flex-wrap:wrap}
.km-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:50px;padding:12px 24px;font-size:15px;font-weight:700;line-height:1.3;text-decoration:none;border-radius:32px;border:1px solid transparent;transition:background .2s,color .2s,border-color .2s,transform .2s}
.km-btn:active{transform:translateY(1px)}
.km-btn>span,.km-text-link>span{font-size:18px;line-height:1}
.km-btn-green{color:var(--kp-white);background:var(--kp-green)}
.km-btn-green:hover{background:var(--kp-forest);color:var(--kp-white)}
.km-btn-mint{background:var(--kp-mint);color:var(--kp-forest)}
.km-btn-mint:hover{background:var(--kp-white);border-color:var(--kp-mint);color:var(--kp-forest)}
.km-btn-outline{background:var(--kp-white);border-color:var(--kp-line);color:var(--kp-forest)}
.km-btn-outline:hover{background:var(--kp-pale);border-color:var(--kp-green)}
.km-text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;font-size:15px;line-height:1.5;font-weight:650;text-decoration:none;color:var(--kp-green);background:none;border:0}
.km-text-link:hover{text-decoration:underline}
.km-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:38px}
.km-section-heading h2{margin:0}
.km-section-heading>p{max-width:380px;font-size:16px;color:var(--kp-muted);margin:0 0 4px}
.km-card-index{display:block;color:var(--kp-green);font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:18px}
.km-soft{background:var(--kp-paper)}
.km-skip{position:fixed;left:12px;top:10px;z-index:5000;transform:translateY(-180%);padding:11px 20px;background:var(--kp-white);color:var(--kp-forest)}
.km-skip:focus{transform:none}
.km-ico-circle{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:14px;background:var(--kp-pale);color:var(--kp-green);font-size:20px;flex-shrink:0}
.km-ico-circle .km-ico{width:1.2em;height:1.2em}

/* Header and navigation */
.km-header{position:sticky;top:0;z-index:100;background:var(--kp-forest);border-bottom:1px solid var(--kp-dark-line)}
.admin-bar .km-header{top:32px}
.km-nav{display:flex;align-items:center;gap:56px;min-height:84px;position:relative}
.km-brand{flex-shrink:0;display:inline-flex}
.km-brand img{width:137px;height:34px;object-fit:contain}
#km-navigation{display:flex;align-items:center;gap:30px;flex:1}
.km-menu>summary,.km-nav-link{font-size:15px;color:var(--kp-hero-copy);font-weight:500;line-height:1.5;text-decoration:none;cursor:pointer;list-style:none;padding:14px 0}
.km-menu>summary::-webkit-details-marker{display:none}
.km-menu>summary:after{content:'+';font-size:15px;margin-left:8px;opacity:.65}
.km-menu[open]>summary:after{content:'-'}
.km-menu>summary:hover,#km-navigation>.km-nav-link:hover{color:var(--kp-white)}
.km-menu-panel{position:absolute;top:100%;left:34px;right:34px;background:var(--kp-white);border:1px solid var(--kp-line);border-top:0;border-radius:0 0 16px 16px;box-shadow:0 24px 48px var(--kp-shadow);padding:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px;max-height:calc(100vh - 110px);overflow:auto}
.km-menu-panel a{display:flex;align-items:flex-start;gap:14px;padding:12px 14px;text-decoration:none;border-radius:10px;color:var(--kp-forest)}
.km-menu-panel a:hover{background:var(--kp-pale)}
.km-menu-panel a>.km-ico{margin-top:3px;color:var(--kp-green);font-size:18px}
.km-menu-panel a strong{display:block;font-size:15px;line-height:1.5;font-weight:650}
.km-menu-panel a small{display:block;color:var(--kp-muted);font-size:13px;line-height:1.5}
.km-menu-panel .km-menu-overview{grid-column:1/-1;border-bottom:1px solid var(--kp-line);border-radius:0;margin-bottom:8px;padding-bottom:18px;color:var(--kp-green);font-size:15px;font-weight:700}
.km-menu-overview>span{display:inline!important;margin-left:12px}
.km-nav-actions{margin-left:auto;display:flex;align-items:center;gap:24px}
.km-signin{font-size:15px;color:var(--kp-hero-copy);text-decoration:none;white-space:nowrap;padding:12px 0}
.km-signin:hover{color:var(--kp-white)}
.km-nav-cta{font-size:14px;padding:10px 20px;min-height:44px;gap:14px}
.km-menu-toggle,.km-mobile-cta{display:none}

/* Hero */
.km-hero{padding:64px 0 66px;background:var(--kp-paper)}
.km-hero h1{max-width:600px}
.km-hero .col-lg-6:first-child{padding-right:38px}
.km-hero-intro{max-width:500px;font-size:18px;line-height:1.7;color:var(--kp-muted);margin-bottom:28px}
.km-hero-art{margin:0;position:relative;border-radius:18px 18px 66px 18px;overflow:hidden;background:var(--kp-pale)}
.km-hero-art>img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.km-hero-art figcaption{position:absolute;bottom:22px;left:22px;display:flex;align-items:center;gap:14px;max-width:320px;padding:14px 20px;border-radius:12px;background:var(--kp-white);color:var(--kp-forest);font-size:14px;line-height:1.5;box-shadow:0 7px 25px var(--kp-shadow)}
.km-caption-mark{font-size:26px;color:var(--kp-green);line-height:1}
.km-hero-art figcaption strong{font-weight:650}
.km-hero-scene{background:none;border-radius:0;overflow:visible}
.km-hero-dark{background:var(--kp-forest);padding-bottom:62px}
.km-hero-dark h1{color:var(--kp-white)}
.km-hero-dark .km-eyebrow,.km-hero-dark .km-text-link{color:var(--kp-mint)}
.km-hero-dark .km-hero-intro{color:var(--kp-hero-copy)}
.km-hero-dark .km-micro{color:var(--kp-mint)}
.km-trust{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;padding:0;margin:22px 0 0;font-size:14px;line-height:1.5;color:var(--kp-muted)}
.km-trust li{display:inline-flex;align-items:center;gap:8px}
.km-trust .km-ico{color:var(--kp-green)}
.km-hero-dark .km-trust{color:var(--kp-hero-copy)}
.km-hero-dark .km-trust .km-ico{color:var(--kp-mint)}

/* Fact band, payment methods and outcomes */
.km-fact-band{background:var(--kp-forest);color:var(--kp-hero-copy)}
.km-fact-band>.container{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;border-top:1px solid var(--kp-dark-line);padding-top:26px;padding-bottom:28px}
.km-fact-band p{display:flex;gap:14px;align-items:flex-start;margin:0;font-size:14px;line-height:1.6}
.km-fact-band p>.km-ico{color:var(--kp-mint);font-size:22px;margin-top:2px}
.km-fact-band strong{display:block;font-size:17px;color:var(--kp-mint);font-weight:650;margin-bottom:2px}
.km-methods{padding:44px 0;background:var(--kp-white);border-bottom:1px solid var(--kp-line)}
.km-methods-title{font-size:clamp(1.35rem,2.2vw,1.7rem);letter-spacing:-.03em;text-align:center;margin:0 auto 22px;max-width:760px}
.km-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;list-style:none;padding:0;margin:0}
.km-chips li{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:9px 16px;border:1px solid var(--kp-line);border-radius:30px;background:var(--kp-paper);font-size:15px;font-weight:600;color:var(--kp-forest);line-height:1.3}
.km-chips .km-ico{color:var(--kp-green)}
.km-methods-note{font-size:13px;color:var(--kp-muted);text-align:center;margin:18px auto 0;max-width:700px}
.km-outcomes{padding:60px 0}
.km-outcome{border-left:1px solid var(--kp-line);padding:0 24px;height:100%}
.km-outcome .km-ico-circle{margin-bottom:18px}
.km-outcome h2{font-size:1.4rem;line-height:1.3;letter-spacing:-.025em;margin-bottom:12px}
.km-outcome p{font-size:16px;line-height:1.7;color:var(--kp-muted)}
.km-example{font-size:15px!important;line-height:1.7;border-top:1px solid var(--kp-line);padding-top:16px;margin-top:18px;margin-bottom:0;color:var(--kp-muted)}
.km-example strong{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--kp-green);margin-bottom:6px}

/* Workflow tabs */
.km-flow{background:var(--kp-paper)}
.km-flow-tabs{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap}
.km-flow-tabs>button{display:inline-flex;align-items:center;gap:9px;min-height:46px;border:1px solid var(--kp-line);border-radius:30px;padding:10px 22px;font-size:15px;font-weight:650;line-height:1.3;background:var(--kp-white);color:var(--kp-muted);white-space:nowrap}
.km-flow-tabs>button:hover{border-color:var(--kp-green);color:var(--kp-forest)}
.km-flow-tabs>button[aria-selected=true]{background:var(--kp-forest);color:var(--kp-white);border-color:var(--kp-forest)}
.km-flow-panel{background:var(--kp-white);border-radius:18px;overflow:hidden;border:1px solid var(--kp-line);padding:0 40px 0 0}
.km-flow-art{background:var(--kp-pale);padding:28px 18px}
.km-flow-art>img{display:block;width:100%;height:390px;object-fit:cover}
.km-flow-art .km-scene{max-width:400px}
.km-flow-panel h3{font-size:2rem;max-width:460px;line-height:1.2;letter-spacing:-.04em;margin-bottom:16px}
.km-flow-panel p:not(.km-eyebrow){font-size:16px;color:var(--kp-muted);line-height:1.7}
.km-flow-panel .km-eyebrow{margin-bottom:14px}
.km-flow-panel ol{list-style:none;counter-reset:flow;padding:0;margin:20px 0 12px}
.km-flow-panel li{counter-increment:flow;display:flex;align-items:center;gap:12px;font-size:16px;line-height:1.6;color:var(--kp-forest);margin:10px 0}
.km-flow-panel li:before{content:counter(flow);display:inline-flex;justify-content:center;align-items:center;width:28px;height:28px;border-radius:50%;background:var(--kp-pale);color:var(--kp-green);font-size:13px;font-weight:700;flex-shrink:0}
.km-flow .km-demo-note{margin:16px 0 0}

/* Link, icon and photo cards */
.km-link-card{display:flex;flex-direction:column;height:100%;position:relative;background:var(--kp-white);border:1px solid var(--kp-line);border-radius:14px;padding:26px 24px 48px;text-decoration:none;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.km-link-card:hover{background:var(--kp-pale);border-color:var(--kp-green);transform:translateY(-2px);box-shadow:0 12px 30px var(--kp-shadow)}
.km-link-card .km-ico-circle{margin-bottom:18px}
.km-link-card h3{font-size:1.25rem;line-height:1.3;margin-bottom:8px;letter-spacing:-.03em}
.km-link-card p{font-size:15px;line-height:1.6;color:var(--kp-muted);margin:0}
.km-link-card>span:last-child{position:absolute;right:22px;bottom:16px;font-size:20px;color:var(--kp-green)}
.km-link-card .km-card-index{margin-bottom:18px}
.km-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:18px}
.km-photo-card{position:relative;display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:var(--kp-white);border:1px solid var(--kp-line);text-decoration:none;color:var(--kp-forest);transition:transform .2s,box-shadow .2s}
.km-photo-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px var(--kp-shadow);color:var(--kp-forest)}
.km-photo-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--kp-pale)}
.km-photo-copy{display:flex;flex-direction:column;gap:4px;padding:18px 20px 22px}
.km-photo-copy strong{font-family:Manrope,Inter,Arial,sans-serif;font-size:1.15rem;line-height:1.3;letter-spacing:-.02em}
.km-photo-copy span{font-size:15px;line-height:1.5;color:var(--kp-muted)}
.km-photo-card>.km-photo-tag{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--kp-white);color:var(--kp-green);font-size:19px;box-shadow:0 6px 18px rgba(0,38,30,.18)}
.km-mini-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.km-mini-card{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 16px;border:1px solid var(--kp-line);border-radius:14px;background:var(--kp-white);text-decoration:none;color:var(--kp-forest);font-size:15px;font-weight:650;line-height:1.35;transition:background .2s,border-color .2s}
.km-mini-card:hover{background:var(--kp-pale);border-color:var(--kp-green);color:var(--kp-forest)}
.km-mini-card .km-ico{color:var(--kp-green);font-size:20px}

/* Proof: testimonial and trust */
.km-proof{background:var(--kp-paper)}
.km-quote{height:100%;margin:0;padding:40px;border-radius:20px;background:var(--kp-forest);color:var(--kp-white);display:flex;flex-direction:column;justify-content:space-between;gap:28px;position:relative;overflow:hidden}
.km-quote:before{content:'\201C';position:absolute;right:28px;top:-34px;font-family:Manrope,Inter,Arial,sans-serif;font-size:220px;line-height:1;color:rgba(172,221,210,.16)}
.km-quote blockquote{margin:0;position:relative}
.km-quote blockquote p{font-family:Manrope,Inter,Arial,sans-serif;font-size:clamp(1.3rem,2.1vw,1.7rem);line-height:1.45;letter-spacing:-.02em;margin:0}
.km-quote figcaption{display:flex;align-items:center;gap:14px;font-size:15px;line-height:1.45;color:var(--kp-hero-copy)}
.km-quote figcaption strong{display:block;color:var(--kp-white);font-size:16px}
.km-avatar{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--kp-mint);color:var(--kp-forest);font-weight:800;font-size:18px;flex-shrink:0}
.km-trust-card{height:100%;padding:36px;border-radius:20px;background:var(--kp-white);border:1px solid var(--kp-line)}
.km-trust-card h2{font-size:clamp(1.7rem,2.6vw,2.2rem);margin-bottom:18px}
.km-trust-card ul{list-style:none;padding:0;margin:0 0 14px}
.km-trust-card li{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--kp-line);font-size:16px;line-height:1.55;color:var(--kp-muted)}
.km-trust-card li:last-child{border-bottom:0}
.km-trust-card li strong{display:block;color:var(--kp-forest);font-weight:650}
.km-trust-card li>.km-ico{color:var(--kp-green);font-size:21px;margin-top:2px}

/* Video facades: nothing loads from YouTube until a visitor presses play */
.km-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.km-video{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--kp-forest)}
.km-video:hover{color:var(--kp-forest)}
.km-video-poster{position:relative;display:block;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:radial-gradient(circle at 78% 18%,rgba(172,221,210,.38),transparent 42%),linear-gradient(135deg,var(--kp-forest),var(--kp-deep));color:var(--kp-mint)}
.km-video-poster>.km-ico{position:absolute;left:22px;top:20px;font-size:30px}
.km-video-brand{position:absolute;right:20px;top:20px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--kp-hero-copy)}
.km-video-play{position:absolute;left:50%;top:50%;width:68px;height:68px;margin:-34px 0 0 -34px;border-radius:50%;background:var(--kp-mint);color:var(--kp-forest);display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 10px 30px rgba(0,0,0,.25);transition:transform .2s}
.km-video-play .km-ico{margin-left:4px}
.km-video:hover .km-video-play{transform:scale(1.08)}
.km-video-length{position:absolute;right:14px;bottom:14px;padding:3px 10px;border-radius:20px;background:rgba(0,0,0,.45);color:var(--kp-white);font-size:13px;font-weight:600}
.km-video-title{font-family:Manrope,Inter,Arial,sans-serif;font-size:1.15rem;font-weight:650;line-height:1.35;letter-spacing:-.02em}
.km-video-note{font-size:13px;color:var(--kp-muted);margin-top:-8px}
.km-video-frame{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:var(--kp-deep)}
.km-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.km-video-more{margin:22px 0 0}

/* Kady section and animated chat example */
.km-kady-section{background:var(--kp-pale)}
.km-kady-section .col-lg-5>p:not(.km-eyebrow){max-width:400px;font-size:17px;color:var(--kp-muted)}
.km-kady-example{border:1px solid var(--kp-line);background:var(--kp-paper);border-radius:18px;padding:28px 32px}
.km-kady-example>.km-eyebrow{margin-bottom:14px}
.km-prompt{padding:16px 20px;background:var(--kp-forest);color:var(--kp-white);border-radius:16px 16px 4px 16px;font-size:16px;line-height:1.6;max-width:90%;margin-left:auto}
.km-draft-wrap{position:relative;margin-top:16px}
.km-typing{position:absolute;left:0;top:0;display:flex;gap:6px;padding:14px 16px;border-radius:16px 16px 16px 4px;background:var(--kp-white);border:1px solid var(--kp-line);opacity:0}
.km-typing>span{width:8px;height:8px;border-radius:50%;background:var(--kp-green)}
.km-draft{padding:24px;background:var(--kp-white);border:1px solid var(--kp-line);border-radius:14px}
.km-draft>span{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--kp-green)}
.km-draft h3{font-size:1.45rem;margin:12px 0 16px}
.km-draft ul{list-style:none;padding:0;margin-bottom:16px}
.km-draft li{font-size:16px;color:var(--kp-muted);padding:7px 0 7px 28px;position:relative}
.km-draft li:before{content:'\2713';position:absolute;left:0;color:var(--kp-green);font-weight:700}
.km-draft p{border-top:1px solid var(--kp-line);padding-top:16px;margin:0;color:var(--kp-green);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.km-draft p span{margin:0 12px;color:var(--kp-muted)}
.km-kady-example>.km-demo-note{margin:16px 0 0}

/* Pricing */
.km-pricing-section{background:var(--kp-paper)}
.km-price-card{height:100%;border:1px solid var(--kp-line);border-radius:16px;padding:30px;background:var(--kp-white);display:flex;flex-direction:column;align-items:flex-start}
.km-price-card>.km-eyebrow{margin-bottom:14px}
.km-price{font-size:48px;letter-spacing:-.05em;font-weight:600;line-height:1.2;color:var(--kp-forest);margin-bottom:10px}
.km-price>span{font-size:15px;letter-spacing:0;font-weight:400;color:var(--kp-muted);margin-left:8px}
.km-price-card>p:not(.km-price):not(.km-eyebrow){font-size:16px;color:var(--kp-muted);margin-bottom:14px}
.km-price-card ul{list-style:none;padding:0;margin-bottom:26px}
.km-price-card li{font-size:15px;line-height:1.55;margin:10px 0;color:var(--kp-muted);padding-left:26px;position:relative}
.km-price-card li:before{content:'\2713';position:absolute;left:0;color:var(--kp-green);font-weight:700}
.km-price-card li strong{color:var(--kp-forest);font-weight:650}
.km-price-card>.km-btn{margin-top:auto;width:100%;justify-content:space-between}
.km-featured{background:var(--kp-forest);border-color:var(--kp-forest);position:relative}
.km-featured>.km-eyebrow,.km-featured .km-price,.km-featured li:before{color:var(--kp-mint)}
.km-featured>p:not(.km-price):not(.km-eyebrow),.km-featured .km-price span,.km-featured li{color:var(--kp-hero-copy)}
.km-featured li strong{color:var(--kp-white)}
.km-plan-badge{position:absolute;top:-13px;right:24px;padding:3px 12px;border-radius:20px;background:var(--kp-mint);color:var(--kp-forest);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.km-pricing-note{font-size:13px;line-height:1.7;color:var(--kp-muted);margin:20px 0 8px}
.km-fee-note{margin-top:34px;border-top:1px solid var(--kp-line);padding-top:26px;max-width:860px}
.km-fee-note h3{font-size:1.25rem;margin-bottom:10px}
.km-fee-note p{font-size:15px;line-height:1.75;color:var(--kp-muted);margin:0}
.km-pricing-section table{width:100%;border-collapse:collapse;background:var(--kp-white);font-size:15px;line-height:1.6;margin:26px 0}
.km-pricing-section table th,.km-pricing-section table td{padding:14px 18px;border-bottom:1px solid var(--kp-line);vertical-align:top}
.km-pricing-section table thead{background:var(--kp-forest);color:var(--kp-white)}
.km-pricing-section table th[scope=row]{font-weight:500;max-width:330px}
.km-pricing-section table caption{font-size:13px;color:var(--kp-muted)}
.km-pricing-section section{margin-top:50px}
.km-pricing-section section>p{font-size:15px;color:var(--kp-muted)}
.km-pricing-section .table-responsive,.km-pricing-section .kpm-table-wrap,.km-pricing-section .pricing-table-wrap{overflow:auto}

/* FAQ, final call to action and footer */
.km-faq details{border-bottom:1px solid var(--kp-line)}
.km-faq summary{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:56px;padding:16px 0;font-size:17px;color:var(--kp-forest);font-weight:650;line-height:1.5;cursor:pointer;list-style:none}
.km-faq summary::-webkit-details-marker{display:none}
.km-faq summary:after{content:'+';flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--kp-pale);color:var(--kp-green);font-size:20px;font-weight:500}
.km-faq details[open] summary:after{content:'-'}
.km-faq details p{font-size:16px;line-height:1.75;color:var(--kp-muted);max-width:680px;margin:0 0 20px}
.km-final{padding:56px 0;background:var(--kp-pale)}
.km-final>.container{display:flex;justify-content:space-between;align-items:center;gap:30px}
.km-final .km-eyebrow{margin-bottom:12px}
.km-final h2{font-size:2.3rem;margin:0}
.km-footer{background:var(--kp-deep);padding:60px 0 28px;color:var(--kp-hero-copy)}
.km-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;padding-bottom:42px}
.km-footer-brand img{width:131px;height:32px;object-fit:contain}
.km-footer-brand p{font-size:15px;line-height:1.7;margin-top:20px}
.km-footer-kady{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:var(--kp-mint);border:0;background:none;font-size:15px;padding:0;font-weight:650}
.km-social{display:flex;gap:8px;list-style:none;padding:0;margin:14px 0 0}
.km-social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--kp-dark-line);color:var(--kp-mint);font-size:19px}
.km-social a:hover{background:rgba(172,221,210,.12);color:var(--kp-white)}
.km-review{margin-top:18px;padding:14px 16px;border:1px solid var(--kp-dark-line);border-radius:14px;max-width:260px}
.km-review p{margin:0}
.km-review-stars{display:flex;gap:3px;margin-bottom:8px!important}
.km-review-stars svg{width:22px;height:22px;padding:3px;border-radius:4px;background:var(--kp-green);fill:var(--kp-white)}
.km-review-title{color:var(--kp-white);font-weight:650;margin-bottom:6px!important}
.km-review-links{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:14px}
.km-review-links a{display:inline-flex;align-items:center;gap:4px;min-height:32px;color:var(--kp-hero-copy);text-decoration:none}
.km-review-links a.km-review-cta{color:var(--kp-mint);font-weight:650}
.km-review-links a:hover{color:var(--kp-white);text-decoration:underline}
@media (max-width:575.98px){.km-review{max-width:none}}
.km-credit{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--kp-mint);font-size:12px;text-decoration:none}
.km-credit img{height:30px;width:auto;opacity:.9}
.km-credit:hover img{opacity:1}
.km-footer nav h2{font-family:Inter,Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--kp-mint);margin:6px 0 14px}
.km-footer nav a{display:block;color:var(--kp-hero-copy);font-size:15px;line-height:1.5;text-decoration:none;padding:8px 0}
.km-footer nav a:hover{text-decoration:underline;color:var(--kp-white)}
.km-footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--kp-dark-line);padding-top:22px;font-size:13px;color:var(--kp-mint)}
.km-footer-bottom>div{display:flex;flex-wrap:wrap;gap:4px 20px}
.km-footer-bottom a,.km-footer-bottom button{display:inline-flex;align-items:center;min-height:40px;font-size:13px;color:var(--kp-mint);background:none;border:0;padding:0;text-decoration:none}
.km-footer-bottom a:hover,.km-footer-bottom button:hover{text-decoration:underline}

/* Product detail pages, journal and articles */
.km-detail-row{display:grid;grid-template-columns:65px 1fr 1.25fr;gap:30px;padding:34px 0;border-top:1px solid var(--kp-line)}
.km-detail-row:first-child{padding-top:0;border:0}
.km-detail-row h2{font-size:1.85rem;line-height:1.2;max-width:400px;margin:0}
.km-detail-row>div>p{font-size:16px;color:var(--kp-muted);line-height:1.75;max-width:540px}
.km-detail-row .km-card-index{padding-top:6px}
.km-vertical-link{padding-top:24px;padding-bottom:24px}
.km-blog-hero{padding:66px 0 56px;background:var(--kp-paper);border-bottom:1px solid var(--kp-line)}
.km-blog-hero h1{font-size:clamp(2.4rem,4.6vw,4rem);max-width:900px}
.km-blog-hero p:not(.km-eyebrow){font-size:17px;color:var(--kp-muted);max-width:650px;margin:0}
.km-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.km-post-card{border:1px solid var(--kp-line);border-radius:14px;background:var(--kp-white);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}
.km-post-card:hover{box-shadow:0 14px 34px var(--kp-shadow);transform:translateY(-2px)}
.km-post-card>a{color:inherit;text-decoration:none;display:flex;flex-direction:column;flex:1}
.km-post-card img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;background:var(--kp-pale)}
.km-post-card a>div{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.km-post-card .km-eyebrow{margin-bottom:12px}
.km-post-card h2,.km-post-card h3{font-size:1.25rem;line-height:1.35;letter-spacing:-.02em;margin-bottom:10px}
.km-post-card p:not(.km-eyebrow){font-size:15px;color:var(--kp-muted);line-height:1.65;margin-bottom:18px}
.km-post-card .km-text-link{margin-top:auto}
.km-section-link{margin:22px 0 0}
.km-article{max-width:800px}
.km-single{padding-top:64px;padding-bottom:74px}
.km-article h1{font-size:clamp(2rem,4.2vw,3.5rem);line-height:1.15;letter-spacing:-.04em}
.km-byline{font-size:14px;color:var(--kp-muted);line-height:1.6;margin:20px 0 32px}
.km-byline>span{margin:0 12px;color:var(--kp-line)}
.km-article-body{font-size:17px;line-height:1.8;color:var(--kp-ink)}
.km-article-body h2,.km-article>h2{font-size:1.85rem;line-height:1.3;letter-spacing:-.03em;margin:38px 0 18px}
.km-article-body h3{font-size:1.4rem;line-height:1.35;margin:30px 0 16px}
.km-article-body p,.km-article-body li{overflow-wrap:anywhere}
.km-article-body figure{margin:28px 0}
.km-article-body img{border-radius:12px;width:auto;max-width:100%;height:auto}
.km-article-body a{overflow-wrap:anywhere}
.km-article-body blockquote{border-left:3px solid var(--kp-mint);margin:26px 0;padding:8px 0 8px 22px;color:var(--kp-muted)}
.km-article-body table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;font-size:15px;line-height:1.6;margin:24px 0}
.km-article-body td,.km-article-body th{padding:12px;border:1px solid var(--kp-line);min-width:110px}
.km-article-body p:empty{display:none}
.km-article-next{background:var(--kp-pale);border-radius:16px;padding:30px;margin-top:42px}
.km-article-next h2{font-size:1.5rem;margin:0 0 12px}
.km-article-next .km-text-link{margin-right:24px}
.km-archive-notice{padding:16px 20px;border-radius:12px;background:var(--kp-pale);color:var(--kp-forest);font-weight:600}
.km-plain-page{padding:70px 0}
.km-plain-page .km-article>div{margin-bottom:1.15rem;line-height:1.75}
.km-plain-page .km-article>div>strong:first-child{display:block;color:var(--kp-forest);letter-spacing:.04em;margin-bottom:4px}
.km-contact-choice{max-width:800px}
.km-contact-choice p{color:var(--kp-muted);font-size:17px}
.km-pagination{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:40px}
.km-pagination a,.km-pagination span{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--kp-line);border-radius:10px;font-size:15px;text-decoration:none}
.km-pagination .current{background:var(--kp-forest);color:var(--kp-white)}
.km-breadcrumbs{font-size:14px;color:var(--kp-muted);margin-bottom:24px;display:flex;gap:12px;flex-wrap:wrap}
.km-search-label{display:block;color:var(--kp-forest);font-size:15px;font-weight:650;margin-bottom:10px}
.km-blog-search{max-width:520px;min-height:50px;padding:12px 16px;border-color:var(--kp-line);font-size:16px;margin-bottom:22px;border-radius:12px}
.km-search-note{font-size:14px;color:var(--kp-muted)}
.km-status{position:fixed;bottom:24px;left:24px;background:var(--kp-forest);color:var(--kp-white);border:1px solid var(--kp-dark-line);border-radius:12px;padding:14px 20px;max-width:calc(100% - 48px);font-size:15px;z-index:4000}
.km-consent{position:fixed;left:22px;bottom:22px;z-index:4000;max-width:480px;background:var(--kp-white);border:1px solid var(--kp-line);border-radius:16px;padding:20px 22px;box-shadow:0 12px 45px rgba(0,38,30,.16)}
.km-consent p{font-size:15px;line-height:1.6;color:var(--kp-muted);margin:0 0 14px}
.km-consent>div{display:flex;gap:10px;flex-wrap:wrap}
.km-consent .km-btn{font-size:15px;min-height:46px;padding:10px 20px}

/* Animated product scenes (generated by tools/visuals.py): decorative inline SVG */
.km-scene{max-width:500px;margin:0 auto}
.km-scene svg{display:block;width:100%;height:auto;overflow:visible;font-family:Inter,Arial,sans-serif}
.ks-a{transform-box:fill-box;transform-origin:center}
.ks-glow{fill:var(--kp-pale)}
.ks-dot{fill:var(--kp-mint)}
.ks-shadow{fill:rgba(0,38,30,.1)}
.ks-body,.ks-bodyfill,.ks-cam{fill:var(--kp-deep)}
.ks-screen,.ks-card,.ks-mask{fill:var(--kp-white)}
.ks-soft,.ks-oksoft{fill:var(--kp-pale)}
.ks-key{fill:var(--kp-paper);stroke:var(--kp-line)}
.ks-outline{fill:var(--kp-white);stroke:var(--kp-line);stroke-width:1.5}
.ks-dotoff{fill:var(--kp-white);stroke:var(--kp-line);stroke-width:2}
.ks-faint{fill:var(--kp-line)}
.ks-mint,.ks-chip{fill:var(--kp-mint)}
.ks-pill{fill:var(--kp-pale);stroke:var(--kp-mint)}
.ks-greenfill{fill:var(--kp-green)}
.ks-inkfill{fill:var(--kp-forest)}
.ks-blackfill{fill:var(--kp-black)}
.ks-mfill{fill:var(--kp-muted)}
.ks-veil{fill:rgba(0,38,30,.35)}
.ks-camline{fill:none;stroke:var(--kp-white);stroke-linecap:round}
.ks-camqr{fill:rgba(255,255,255,.75)}
.ks-ring{fill:none;stroke:var(--kp-mint);stroke-width:2;opacity:0}
.ks-arcs{fill:none;stroke:var(--kp-green);stroke-linecap:round}
.ks-tick{fill:none;stroke:var(--kp-white);stroke-linecap:round;stroke-linejoin:round}
.ks-stroke,.ks-sign{fill:none;stroke:var(--kp-forest);stroke-linecap:round;stroke-linejoin:round}
.ks-sign{stroke-dasharray:260;stroke-dashoffset:0}
.ks-glyph{fill:none;stroke:var(--kp-forest);stroke-width:1.6}
.ks-glyphline{fill:none;stroke:var(--kp-forest);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ks-mline{fill:none;stroke:var(--kp-muted)}
.ks-spark{fill:var(--kp-mint);stroke:var(--kp-mint);stroke-linejoin:round}
.ks-shine{fill:rgba(255,255,255,.6)}
.ks-eye{fill:var(--kp-forest)}
.ks-t{fill:var(--kp-ink)}
.ks-ink-t{fill:var(--kp-forest)}
.ks-m{fill:var(--kp-muted)}
.ks-w{fill:var(--kp-white)}
.ks-g{fill:var(--kp-green)}
.ks-mint-t{fill:var(--kp-mint)}
.ks-cap{letter-spacing:.12em}
.km-hero-dark .ks-glow{fill:rgba(172,221,210,.13)}
.km-hero-dark .ks-dot{fill:rgba(172,221,210,.5)}
.km-hero-dark .ks-shadow{fill:rgba(0,0,0,.22)}
.km-hero-dark .ks-body{stroke:rgba(172,221,210,.35);stroke-width:1.5}
/* Static frame: motion runs only under .is-playing, which site.js sets while a scene is on screen;
   the hidden states below are revealed only by that motion. */
.ks-ripple{fill:var(--kp-white);opacity:0}
.ks-pay-success,.ks-pay-toast,.ks-book-sheet,.ks-book-review,.ks-qr-scan,.ks-qr-camera,.ks-qr-amt0,.ks-qr-amt1,.ks-qr-amt2,.ks-qr-success,.ks-qr-toast,.ks-pack-scan,.ks-pack-before,.ks-pack-toast,.ks-forms-success,.ks-tap-success,.ks-tap-toast{opacity:0}
.ks-mask{transform:scaleX(0);transform-origin:100% 50%}
.is-playing .ks-float{animation:ks-float 6s ease-in-out infinite}
.is-playing .ks-float-b{animation-delay:-2s}
.is-playing .ks-float-c{animation-delay:-4s}
.is-playing .ks-kady{animation:ks-float 5s ease-in-out infinite}
.is-playing .ks-blink{animation:ks-blink 4.5s infinite}
.is-playing .ks-ring{animation:ks-ring 2.4s ease-out infinite}
.is-playing .ks-ring-b{animation-delay:1.2s}
.is-playing .ks-pay-press{animation:ks-pay-press 9s infinite}
.is-playing .ks-pay-ripple{animation:ks-pay-ripple 9s infinite}
.is-playing .ks-pay-success{animation:ks-pay-success 9s infinite}
.is-playing .ks-pay-toast{animation:ks-pay-toast 9s infinite}
.is-playing .ks-book-pick{animation:ks-book-pick 9s infinite}
.is-playing .ks-book-press{animation:ks-book-press 9s infinite}
.is-playing .ks-book-ripple{animation:ks-book-ripple 9s infinite}
.is-playing .ks-book-sheet{animation:ks-book-sheet 9s infinite}
.is-playing .ks-book-review{animation:ks-book-review 9s infinite}
.is-playing .ks-book-ok{animation:ks-book-ok 9s infinite}
.is-playing .ks-book-row{animation:ks-book-row 9s infinite}
.is-playing .ks-qr-scan{animation:ks-qr-scan 9s infinite}
.is-playing .ks-qr-camera{animation:ks-qr-camera 9s infinite}
.is-playing .ks-qr-amt0{animation:ks-qr-amt0 9s infinite}
.is-playing .ks-qr-amt1{animation:ks-qr-amt1 9s infinite}
.is-playing .ks-qr-amt2{animation:ks-qr-amt2 9s infinite}
.is-playing .ks-qr-amt3{animation:ks-qr-amt3 9s infinite}
.is-playing .ks-qr-press{animation:ks-qr-press 9s infinite}
.is-playing .ks-qr-ripple{animation:ks-qr-ripple 9s infinite}
.is-playing .ks-qr-success{animation:ks-qr-success 9s infinite}
.is-playing .ks-qr-toast{animation:ks-qr-toast 9s infinite}
.is-playing .ks-pack-scan{animation:ks-pack-scan 9s infinite}
.is-playing .ks-pack-fill{animation:ks-pack-fill 9s infinite}
.is-playing .ks-pack-before{animation:ks-pack-before 9s infinite}
.is-playing .ks-pack-after{animation:ks-pack-after 9s infinite}
.is-playing .ks-pack-toast{animation:ks-pack-toast 9s infinite}
.is-playing .ks-forms-type1{animation:ks-forms-type1 9s steps(14) infinite}
.is-playing .ks-forms-type2{animation:ks-forms-type2 9s steps(14) infinite}
.is-playing .ks-forms-type3{animation:ks-forms-type3 9s steps(12) infinite}
.is-playing .ks-forms-tick{animation:ks-forms-tick 9s infinite}
.is-playing .ks-forms-sign{animation:ks-forms-sign 9s ease-in-out infinite}
.is-playing .ks-forms-press{animation:ks-forms-press 9s infinite}
.is-playing .ks-forms-ripple{animation:ks-forms-ripple 9s infinite}
.is-playing .ks-forms-success{animation:ks-forms-success 9s infinite}
.is-playing .ks-forms-card{animation:ks-forms-card 9s infinite}
.is-playing .ks-tap-card{animation:ks-tap-card 9s ease-in-out infinite}
.is-playing .ks-tap-success{animation:ks-tap-success 9s infinite}
.is-playing .ks-tap-toast{animation:ks-tap-toast 9s infinite}
@keyframes ks-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes ks-blink{0%,90%,100%{transform:scaleY(1)}94%{transform:scaleY(.1)}}
@keyframes ks-ring{0%{opacity:.7;transform:scale(.55)}100%{opacity:0;transform:scale(1.25)}}
@keyframes ks-pay-press{0%,19%,24%,100%{transform:none}21.5%{transform:scale(.95)}}
@keyframes ks-pay-ripple{0%,19%{opacity:0;transform:scale(.3)}21%{opacity:.55}29%,100%{opacity:0;transform:scale(2.2)}}
@keyframes ks-pay-success{0%,25%{opacity:0}29%,84%{opacity:1}89%,100%{opacity:0}}
@keyframes ks-pay-toast{0%,32%{opacity:0;transform:translateY(12px)}37%,82%{opacity:1;transform:none}87%,100%{opacity:0;transform:translateY(12px)}}
@keyframes ks-book-pick{0%,12%{opacity:0}15%,82%{opacity:1}85%,100%{opacity:0}}
@keyframes ks-book-press{0%,25%,30%,100%{transform:none}27.5%{transform:scale(.95)}}
@keyframes ks-book-ripple{0%,25%{opacity:0;transform:scale(.3)}27%{opacity:.55}35%,100%{opacity:0;transform:scale(2.2)}}
@keyframes ks-book-sheet{0%,31%{opacity:0;transform:translateY(40px)}36%,82%{opacity:1;transform:none}87%,100%{opacity:0;transform:translateY(40px)}}
@keyframes ks-book-review{0%,55%{opacity:1}58%,97%{opacity:0}100%{opacity:1}}
@keyframes ks-book-ok{0%,55%{opacity:0}58%,97%{opacity:1}100%{opacity:0}}
@keyframes ks-book-row{0%,56%{opacity:0;transform:translateX(-8px)}60%,95%{opacity:1;transform:none}100%{opacity:0}}
@keyframes ks-qr-scan{0%{opacity:0;transform:translateY(0)}3%{opacity:1}18%{opacity:1;transform:translateY(112px)}21%,100%{opacity:0;transform:translateY(112px)}}
@keyframes ks-qr-camera{0%,20%{opacity:1}24%,100%{opacity:0}}
@keyframes ks-qr-amt0{0%,26%{opacity:1}27%,100%{opacity:0}}
@keyframes ks-qr-amt1{0%,26%{opacity:0}27%,31%{opacity:1}32%,100%{opacity:0}}
@keyframes ks-qr-amt2{0%,31%{opacity:0}32%,36%{opacity:1}37%,100%{opacity:0}}
@keyframes ks-qr-amt3{0%,36%{opacity:0}37%,100%{opacity:1}}
@keyframes ks-qr-press{0%,44%,49%,100%{transform:none}46.5%{transform:scale(.95)}}
@keyframes ks-qr-ripple{0%,44%{opacity:0;transform:scale(.3)}46%{opacity:.55}54%,100%{opacity:0;transform:scale(2.2)}}
@keyframes ks-qr-success{0%,50%{opacity:0}54%,88%{opacity:1}92%,100%{opacity:0}}
@keyframes ks-qr-toast{0%,56%{opacity:0;transform:translateY(12px)}61%,88%{opacity:1;transform:none}92%,100%{opacity:0;transform:translateY(12px)}}
@keyframes ks-pack-scan{0%,24%{opacity:0;transform:none}26%{opacity:1}40%{opacity:1;transform:translateY(100px)}43%,100%{opacity:0;transform:translateY(100px)}}
@keyframes ks-pack-fill{0%,42%{opacity:0;transform:scale(.4)}46%,92%{opacity:1;transform:none}96%,100%{opacity:0}}
@keyframes ks-pack-before{0%,43%{opacity:1}46%,95%{opacity:0}100%{opacity:1}}
@keyframes ks-pack-after{0%,43%{opacity:0}46%,95%{opacity:1}100%{opacity:0}}
@keyframes ks-pack-toast{0%,44%{opacity:0;transform:translateY(12px)}49%,88%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(12px)}}
@keyframes ks-forms-type1{0%,4%{transform:scaleX(1)}16%,90%{transform:scaleX(0)}91%,100%{transform:scaleX(1)}}
@keyframes ks-forms-type2{0%,17%{transform:scaleX(1)}28%,90%{transform:scaleX(0)}91%,100%{transform:scaleX(1)}}
@keyframes ks-forms-type3{0%,28%{transform:scaleX(1)}37%,90%{transform:scaleX(0)}91%,100%{transform:scaleX(1)}}
@keyframes ks-forms-tick{0%,40%{opacity:0;transform:scale(.5)}43%,90%{opacity:1;transform:none}91%,100%{opacity:0}}
@keyframes ks-forms-sign{0%,45%{stroke-dashoffset:260}60%,90%{stroke-dashoffset:0}91%,100%{stroke-dashoffset:260}}
@keyframes ks-forms-press{0%,63%,68%,100%{transform:none}65.5%{transform:scale(.95)}}
@keyframes ks-forms-ripple{0%,63%{opacity:0;transform:scale(.3)}65%{opacity:.55}73%,100%{opacity:0;transform:scale(2.2)}}
@keyframes ks-forms-success{0%,68%{opacity:0}72%,92%{opacity:1}95%,100%{opacity:0}}
@keyframes ks-forms-card{0%,72%{opacity:0;transform:translateY(12px)}77%,95%{opacity:1;transform:none}99%,100%{opacity:0}}
@keyframes ks-tap-card{0%,14%{transform:none}26%,40%{transform:translate(-132px,-150px)}52%,100%{transform:none}}
@keyframes ks-tap-success{0%,32%{opacity:0}36%,86%{opacity:1}90%,100%{opacity:0}}
@keyframes ks-tap-toast{0%,36%{opacity:0;transform:translateY(12px)}41%,86%{opacity:1;transform:none}90%,100%{opacity:0;transform:translateY(12px)}}
/* Kady chat example: the prompt, a typing indicator, then the draft. */
.km-anim.is-playing .km-prompt{animation:kc-prompt 10s infinite}
.km-anim.is-playing .km-typing{animation:kc-typing 10s infinite}
.km-anim.is-playing .km-typing>span{animation:kc-dot 1s infinite}
.km-anim.is-playing .km-typing>span:nth-child(2){animation-delay:.15s}
.km-anim.is-playing .km-typing>span:nth-child(3){animation-delay:.3s}
.km-anim.is-playing .km-draft{animation:kc-draft 10s infinite}
.km-anim.is-playing .km-draft li:nth-child(1){animation:kc-item1 10s infinite}
.km-anim.is-playing .km-draft li:nth-child(2){animation:kc-item2 10s infinite}
.km-anim.is-playing .km-draft li:nth-child(3){animation:kc-item3 10s infinite}
@keyframes kc-prompt{0%{opacity:0;transform:translateY(10px)}5%,94%{opacity:1;transform:none}99%,100%{opacity:0}}
@keyframes kc-typing{0%,8%{opacity:0}11%,25%{opacity:1}28%,100%{opacity:0}}
@keyframes kc-dot{0%,60%,100%{transform:none;opacity:.35}30%{transform:translateY(-4px);opacity:1}}
@keyframes kc-draft{0%,26%{opacity:0;transform:translateY(14px)}31%,94%{opacity:1;transform:none}99%,100%{opacity:0}}
@keyframes kc-item1{0%,33%{opacity:0;transform:translateX(-6px)}37%,94%{opacity:1;transform:none}99%,100%{opacity:0}}
@keyframes kc-item2{0%,38%{opacity:0;transform:translateX(-6px)}42%,94%{opacity:1;transform:none}99%,100%{opacity:0}}
@keyframes kc-item3{0%,43%{opacity:0;transform:translateX(-6px)}47%,94%{opacity:1;transform:none}99%,100%{opacity:0}}

/* Large tablets and small laptops */
@media(max-width:1199px) and (min-width:992px){.km-nav{gap:36px}#km-navigation{gap:22px}.km-nav-actions{gap:18px}.km-hero h1{font-size:3.6rem}.km-flow-panel{padding-right:26px}.km-flow-panel h3{font-size:1.8rem}.km-photo-copy{padding:16px 16px 18px}.km-photo-copy strong{font-size:1.05rem}.km-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Tablets and phones */
@media(max-width:991px){
.container{padding-left:24px;padding-right:24px}
.km-section{padding:64px 0}
.km-nav{min-height:72px;gap:12px;justify-content:space-between}
.km-brand img{width:128px;height:32px}
.km-mobile-cta{display:inline-flex;margin-left:auto;min-height:42px;padding:8px 16px;font-size:14px;gap:10px}
.km-menu-toggle{display:inline-flex;justify-content:center;align-items:center;width:46px;height:46px;background:none;border:1px solid var(--kp-dark-line);border-radius:10px;font-size:22px;color:var(--kp-mint)}
#km-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:var(--kp-forest);padding:12px 24px 28px;max-height:calc(100dvh - 72px);overflow:auto;border-top:1px solid var(--kp-dark-line)}
#km-navigation.is-open{display:block}
.km-menu>summary,.km-nav-link{font-size:17px;display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:12px 0;border-bottom:1px solid var(--kp-dark-line)}
.km-menu>summary:after{font-size:20px}
.km-menu-panel{position:static;max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;border-radius:12px;margin:10px 0 14px;box-shadow:none}
.km-menu-panel .km-menu-overview{padding-top:10px}
.km-menu-panel a{padding:10px}
.km-nav-actions{margin-top:20px;padding-top:4px;justify-content:space-between}
.km-signin{font-size:16px}
.km-nav-cta{font-size:15px;padding:12px 22px;min-height:48px}
.km-hero{padding:44px 0 50px}
.km-hero h1{max-width:680px;font-size:clamp(2.6rem,7vw,3.8rem)}
.km-hero .col-lg-6:first-child{padding-right:12px}
.km-hero-intro{max-width:640px}
.km-hero-art{max-width:640px}
.km-hero-art>img{max-height:460px}
.km-hero-scene{max-width:500px;margin:0 auto}
.km-fact-band>.container{gap:26px}
.km-outcomes{padding:46px 0}
.km-outcome{padding:0 18px}
.km-section-heading{gap:30px}
.km-section-heading>p{max-width:320px}
.km-flow-panel{padding:0 0 30px}
.km-flow-panel .col-lg-6:last-child{padding:0 36px}
.km-flow-art>img{height:340px}
.km-flow-panel h3{max-width:620px}
.km-flow-panel p:not(.km-eyebrow){max-width:620px}
.km-kady-section .col-lg-5>p:not(.km-eyebrow){max-width:620px}
.km-price-card{padding:28px}
.km-price-card>.km-btn{max-width:340px}
.km-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.km-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.km-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.km-footer-grid{grid-template-columns:1.2fr 1fr 1fr;gap:34px}
.km-footer-brand{grid-column:1/-1}
.km-footer-bottom{align-items:flex-start;flex-wrap:wrap;gap:12px}
.km-final>.container{flex-direction:column;align-items:flex-start}
.km-detail-row{grid-template-columns:45px 1fr;gap:18px}
.km-detail-row>div{grid-column:2}
.km-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
}

/* Phones */
@media(max-width:575px){
.container{padding-left:20px;padding-right:20px}
.km-section{padding:52px 0}
.km-nav{min-height:66px}
.km-brand img{width:112px;height:28px}
.admin-bar .km-header{top:46px}
#km-navigation{padding:8px 20px 26px;max-height:calc(100dvh - 66px)}
.km-menu-panel{grid-template-columns:1fr;padding:8px;gap:2px}
h2{font-size:clamp(1.85rem,8vw,2.2rem)}
.km-hero{padding:36px 0 40px}
.km-hero h1{font-size:clamp(2.35rem,10.5vw,2.75rem);line-height:1.08;margin-bottom:18px}
.km-hero-intro{font-size:17px;margin-bottom:24px}
.km-actions{gap:8px 20px}
.km-actions>.km-btn{width:100%;justify-content:space-between}
.km-btn{padding:12px 22px}
.km-hero-art{border-radius:14px 14px 44px 14px}
.km-hero-art figcaption{bottom:14px;left:14px;padding:10px 14px;gap:10px;font-size:13px}
.km-caption-mark{font-size:22px}
.km-trust{gap:8px 16px;font-size:13px}
.km-fact-band>.container{grid-template-columns:1fr;gap:16px;padding-top:22px;padding-bottom:24px}
.km-methods{padding:36px 0}
.km-chips{gap:8px}
.km-chips li{font-size:14px;padding:8px 13px}
.km-outcomes{padding:40px 0}
.km-outcome{border-left:0;border-top:1px solid var(--kp-line);padding:24px 0 0}
.km-outcomes .col-lg-4:first-child .km-outcome{border-top:0;padding-top:0}
.km-section-heading{display:block;margin-bottom:26px}
.km-section-heading>p{margin:16px 0 0;max-width:none}
.km-flow-tabs{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px 22px;padding:2px 20px 6px;scroll-snap-type:x mandatory;scroll-padding-inline:20px;scrollbar-width:none}
.km-flow-tabs::-webkit-scrollbar{display:none}
.km-flow-tabs>button{scroll-snap-align:start;padding:10px 18px}
.km-flow-art{padding:20px 10px}
.km-flow-art>img{height:250px}
.km-flow-panel .col-lg-6:last-child{padding:0 22px}
.km-flow-panel h3{font-size:1.65rem}
.km-link-card{padding:22px 20px 44px}
.km-photo-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:20px;gap:14px;margin:0 -20px 16px;padding:4px 20px 10px;scrollbar-width:none}
.km-photo-grid::-webkit-scrollbar{display:none}
.km-photo-card{flex:0 0 78%;scroll-snap-align:start}
.km-mini-grid{grid-template-columns:1fr}
.km-quote{padding:28px 24px}
.km-quote:before{font-size:160px;top:-24px}
.km-trust-card{padding:26px 22px}
.km-video-grid{grid-template-columns:1fr;gap:26px}
.km-kady-example{padding:22px 18px}
.km-prompt{max-width:96%;font-size:15px;padding:14px 16px}
.km-draft{padding:20px 18px}
.km-draft h3{font-size:1.3rem}
.km-price-card{padding:26px 22px}
.km-price{font-size:44px}
.km-pricing-section table{min-width:640px;font-size:14px}
.km-pricing-section section{overflow-x:auto}
.km-faq summary{font-size:16px}
.km-final{padding:42px 0}
.km-final h2{font-size:1.95rem}
.km-footer{padding-top:42px}
.km-footer-grid{grid-template-columns:1fr 1fr;gap:26px 18px;padding-bottom:26px}
.km-footer-brand{grid-column:1/-1}
.km-footer-bottom{flex-direction:column;gap:6px}
.km-detail-row{grid-template-columns:1fr;gap:10px}
.km-detail-row>div{grid-column:1}
.km-detail-row h2{font-size:1.6rem}
.km-blog-grid{grid-template-columns:1fr;gap:20px}
.km-blog-hero{padding:42px 0 36px}
.km-blog-hero h1{font-size:2.4rem}
.km-single{padding-top:40px;padding-bottom:50px}
.km-article h1{font-size:2.15rem}
.km-article-body{font-size:17px;line-height:1.75}
.km-article-body h2,.km-article>h2{font-size:1.55rem}
.km-article-body h3{font-size:1.25rem}
.km-article-next{padding:22px}
.km-consent{left:10px;right:10px;padding:16px 16px 14px;max-width:none;border-radius:14px}
.km-consent p{font-size:14px;margin-bottom:10px}
.km-consent>div{flex-wrap:nowrap}
.km-consent .km-btn{flex:1;min-height:44px;padding:8px 14px;font-size:14px}
.km-status{left:12px;right:12px;max-width:none}
}
/* The official Kady launcher is fixed 20px above the bottom-right corner; keep consent buttons clear of it. */
@media(max-width:719px){.km-consent,.km-status{bottom:76px}}
@media(max-width:359px){.km-mobile-cta{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Native journal template layout. */
.km-blog{padding-top:64px;padding-bottom:74px}
.km-blog>.km-section-heading{display:block}
.km-blog>.km-section-heading>p:not(.km-eyebrow){margin-top:18px;max-width:600px}
.km-post-card>div{padding:24px;display:flex;flex-direction:column;flex:1}
.km-article-header{padding-top:64px}
.km-article-summary{font-size:18px;color:var(--kp-muted);line-height:1.7}
.km-page>.km-article{padding-bottom:74px}
.km-article-image{border-radius:12px;margin:10px 0 30px}
.navigation.pagination .nav-links{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:36px}
.navigation.pagination .page-numbers{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--kp-line);border-radius:10px;font-size:15px;text-decoration:none}
.navigation.pagination .current{background:var(--kp-forest);color:var(--kp-white)}
.km-footer-bottom{padding-bottom:64px}
