/* Motion inspired by UMANO; all visual tokens remain Klarjahr's own. */
.ks-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ks-preview-depth{min-width:0;transform-origin:50% 35%;will-change:transform;position:relative;z-index:1}
.ks-hero-grid{perspective:1100px}
.ks-hero{border-bottom-left-radius:var(--ks-hero-round,0px);border-bottom-right-radius:var(--ks-hero-round,0px);isolation:isolate}
.ks-hero h1>span{transform-origin:0 50%;position:relative}
.ks-copy-cycle{display:block;position:relative;min-height:1.6em;color:#00748c;font-size:clamp(21px,2vw,27px);font-weight:600;line-height:1.6}
.ks-copy-cycle>span{position:absolute;inset:0;opacity:0;white-space:nowrap}
.ks-copy-cycle>span:first-child{opacity:1}
.ks-motion-enhanced .ks-copy-cycle>span{animation:ks-copy-cycle 9s ease-in-out infinite}
.ks-motion-enhanced .ks-copy-cycle>span:nth-child(2){animation-delay:-6s}
.ks-motion-enhanced .ks-copy-cycle>span:nth-child(3){animation-delay:-3s}
@keyframes ks-copy-cycle{0%,25%{opacity:1;transform:translateY(0);filter:blur(0)}32%,93%{opacity:0;transform:translateY(-8px);filter:blur(3px)}94%,100%{opacity:0;transform:translateY(8px);filter:blur(3px)}}
.ks-motion-enhanced .ks-app-impulse,.ks-motion-enhanced .ks-prompt-card{background-size:170% 170%;animation:ks-impulse-flow 16s ease-in-out infinite alternate}
@keyframes ks-impulse-flow{from{background-position:0% 25%}to{background-position:100% 75%}}
.ks-motion-paused .ks-copy-cycle>span,.ks-motion-paused .ks-app-impulse,.ks-motion-paused .ks-prompt-card,.ks-hero.ks-offscreen .ks-copy-cycle>span{animation-play-state:paused!important}
.ks-scroll-story{background:#fff1cf;padding:75px 0}
.ks-reading-sticky{max-width:1050px}
.ks-reading-sticky>.ks-kicker{color:#00748c;margin:0 0 28px}
.ks-reading-text{font-size:clamp(38px,5vw,68px);font-weight:700;letter-spacing:-.05em;line-height:1.15;text-wrap:balance;margin:0;color:#191919;max-width:960px}
.ks-reading-text>span{display:inline}
.ks-reading-steps{display:flex;flex-wrap:wrap;gap:25px;margin-top:40px;font:500 12px/1.5 ui-monospace,SFMono-Regular,monospace;color:#00748c;padding-top:22px;border-top:1px solid #ddceb0;position:relative}
.ks-reading-steps:before{content:'';position:absolute;left:0;right:0;top:-1px;height:2px;background:#00748c;transform-origin:left;transform:scaleX(var(--ks-reading-progress,0))}
.ks-motion-enhanced .ks-scroll-story{padding:0;height:150svh;min-height:780px}
.ks-motion-enhanced .ks-reading-sticky{position:sticky;top:calc(var(--ks-motion-header,166px) + 24px);min-height:calc(100svh - var(--ks-motion-header,166px) - 48px);display:flex;flex-direction:column;justify-content:center;padding-block:35px}
.ks-final{border-top-left-radius:var(--ks-final-round,0px);border-top-right-radius:var(--ks-final-round,0px)}
.ks-text-link .ks-arrow,.ks-nav-cta>span{display:inline-block;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.ks-text-link:hover .ks-arrow{transform:translateY(3px)}
.ks-nav-cta:hover>span{transform:translate(3px,-3px)}
.ks-faq summary:after{transition:transform .45s cubic-bezier(.34,1.56,.64,1)}
.ks-faq details[open] summary:after{transform:rotate(180deg)}
@media(min-width:1001px){.ks-story-title{align-self:start;position:sticky;top:calc(var(--ks-motion-header,166px) + 30px)}}
@media(max-width:700px){.ks-scroll-story{padding:55px 0}.ks-motion-enhanced .ks-scroll-story{height:125svh;min-height:680px}.ks-reading-text{font-size:clamp(34px,8.5vw,48px);line-height:1.2}.ks-reading-sticky>.ks-kicker{margin-bottom:25px}.ks-reading-steps{gap:16px;font-size:10px;margin-top:28px}.ks-copy-cycle{font-size:22px}.ks-preview-depth{will-change:auto}}
@media(prefers-reduced-motion:reduce){.ks-preview-depth{transform:none!important;will-change:auto}.ks-copy-cycle>span,.ks-app-impulse,.ks-prompt-card{animation:none!important}.ks-copy-cycle>span{display:none!important}.ks-copy-cycle>span:first-child{display:block!important;opacity:1!important;transform:none!important;filter:none!important}.ks-motion-enhanced .ks-scroll-story{height:auto;min-height:0;padding:65px 0}.ks-motion-enhanced .ks-reading-sticky{position:relative;top:auto;min-height:0;padding-block:0}.ks-reading-text>span{color:#191919!important}.ks-reading-steps:before{transform:scaleX(1)}.ks-story-title{position:static}.ks-text-link .ks-arrow,.ks-nav-cta>span,.ks-faq summary:after{transition:none;transform:none!important}}

.ks-motion-enhanced .ks-ambient-offscreen{animation-play-state:paused!important}

/* A paused word rotation always leaves a sharp, legible phrase. */
.ks-motion-paused .ks-copy-cycle>span{animation:none!important;opacity:0;transform:none;filter:none}.ks-motion-paused .ks-copy-cycle>span:first-child{opacity:1}

/* Native keyboard-accessible radios, presented as Klarjahr cards. */
.ks-breath-modes{border:0;padding:0;margin:26px 0 0;min-width:0}.ks-breath-modes legend{font-size:13px;color:#696256;margin:0 0 12px;padding:0}.ks-breath-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ks-breath-mode-card{display:block;position:relative;min-width:0;padding:18px;border:1.5px solid #ddceb0;border-radius:20px;background:#fffaf0;cursor:pointer;transition:background .25s,border-color .25s,box-shadow .25s}.ks-breath-mode-card input{position:absolute;left:18px;top:18px;opacity:0;width:1px;height:1px}.ks-mode-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.ks-mode-heading strong{font-size:25px;letter-spacing:-.04em;font-weight:700;line-height:1.15}.ks-mode-check{display:grid;place-items:center;width:23px;height:23px;border:1.5px solid #ddceb0;border-radius:50%;color:transparent;font-size:13px;flex-shrink:0}.ks-mode-detail{display:block;font-size:12px;line-height:1.5;color:#696256;margin-top:12px}.ks-mode-timing{display:block;font-size:10px;line-height:1.6;color:#696256;margin-top:5px}.ks-breath-mode-card:has(input:checked){border-color:#00748c;background:#e1f2ed;box-shadow:inset 0 0 0 .5px #00748c}.ks-breath-mode-card:has(input:checked) .ks-mode-check{background:#00748c;border-color:#00748c;color:white}.ks-breath-mode-card:has(input:focus-visible){outline:3px solid #00748c;outline-offset:4px}.ks-breath-mode-card:hover{border-color:#00748c}
@media(max-width:370px){.ks-breath-mode-card{padding:14px}.ks-mode-heading strong{font-size:23px}.ks-mode-detail{font-size:11px}.ks-mode-timing{font-size:10px}.ks-breath-mode-options{gap:10px}}
@media(prefers-reduced-motion:reduce){.ks-breath-mode-card{transition:none}}

/* Reserve room for the depth layer; keep the motion control above it. */
.ks-hero-bottom{position:relative;z-index:2;margin-top:100px}
@media(max-width:700px){.ks-hero-bottom{margin-top:64px}}
