/* JK Base: osioiden tyylit. Värit ja fontit tulevat theme.json:sta. */
:root{--jk-gold:var(--wp--preset--color--gold);--jk-line:var(--wp--preset--color--line);--jk-black:var(--wp--preset--color--black)}
body{overflow-x:clip}
.jk-main>*{margin-block-start:0}
.jk-header{padding:0 clamp(20px,4vw,40px);min-height:68px;background:var(--jk-black);border-bottom:1px solid var(--jk-line);max-width:none}
header.wp-block-template-part{position:sticky;top:0;z-index:20}
.admin-bar header.wp-block-template-part{top:32px}
.jk-logo img{display:block;height:54px;width:auto}
.jk-header .wp-block-navigation{font-family:var(--wp--preset--font-family--body);font-weight:500;color:var(--wp--preset--color--muted)}
.jk-header .wp-block-navigation a:hover{color:var(--wp--preset--color--foreground)}
.jk-header .wp-block-button__link{padding:13px 22px;font-size:1.05rem}
.wp-block-button__link{position:relative;overflow:hidden;transition:transform .2s,filter .2s}
.wp-block-button__link:hover{transform:translateY(-2px);filter:brightness(1.1)}
.wp-block-button.is-style-outline .wp-block-button__link{background:none;color:var(--wp--preset--color--foreground);box-shadow:inset 0 0 0 1px var(--jk-line);border:0}
.wp-block-button.is-style-outline .wp-block-button__link:hover{box-shadow:inset 0 0 0 1px var(--jk-gold)}
.jk-footer{max-width:none;padding:28px clamp(20px,4vw,40px);border-top:1px solid var(--jk-line);color:var(--wp--preset--color--muted)}
.jk-footer p{margin:0}
/* Hero */
.jk-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;padding:120px 0 clamp(40px,7vw,80px);margin-block-start:0}
.jk-hero__img{position:absolute;inset:0 0 0 auto;width:min(62%,880px);height:100%;margin:0;z-index:-1}
.jk-hero__img img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;-webkit-mask-image:linear-gradient(to right,transparent,#000 45%);mask-image:linear-gradient(to right,transparent,#000 45%)}
.jk-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,var(--jk-black) 2%,transparent 38%)}
.jk-hero__in{width:100%;max-width:1180px;margin-inline:auto;padding-inline:clamp(20px,4vw,40px)}
.jk-hero .jk-hero__in>*{margin-inline:0!important}
.jk-mask{overflow:hidden;padding-bottom:.08em}
.jk-h1{font-size:clamp(2.6rem,8.5vw,7rem);font-weight:800;margin:0 0 clamp(24px,4vw,44px)}
.jk-rule{width:220px;max-width:100%;height:2px;border:0;background:var(--jk-gold);margin:0 0 26px;margin-inline:0}
.jk-lead{max-width:36rem;color:var(--wp--preset--color--muted);font-size:1.2rem}
@media(max-width:860px){.jk-hero__img{width:100%;opacity:.55}.jk-hero__img img{-webkit-mask-image:none;mask-image:none}.jk-hero::after{background:linear-gradient(to top,var(--jk-black) 6%,transparent 62%)}}
@media(prefers-reduced-motion:no-preference){
.jk-h1{animation:jk-up 1.1s .1s cubic-bezier(.2,.8,.2,1) both}
.jk-rule{animation:jk-line 1.4s .6s cubic-bezier(.7,0,.2,1) both;transform-origin:left}
.jk-lead,.jk-hero .wp-block-buttons{animation:jk-fade .9s 1s ease both}
}
@keyframes jk-up{from{transform:translateY(110%)}to{transform:none}}
@keyframes jk-line{from{transform:scaleX(0)}to{transform:none}}
@keyframes jk-fade{from{opacity:0}to{opacity:1}}
/* Elementorin globaalit tyylit voivat ylikirjoittaa teeman tyylit niin kauan kuin Elementor on asennettuna. Voi poistaa, kun Elementor poistetaan. */
body .wp-site-blocks h1,body .wp-site-blocks h2,body .wp-site-blocks h3,body .wp-site-blocks h4{font-family:var(--wp--preset--font-family--display);text-transform:uppercase;font-weight:700;line-height:.95;letter-spacing:normal}
body .wp-site-blocks .jk-h1{font-weight:800}
body .wp-site-blocks a{font-family:inherit;text-decoration:none}
body .wp-site-blocks .jk-footer a:hover,body .wp-site-blocks .jk-header a:hover{color:var(--wp--preset--color--gold)}
body .wp-site-blocks .wp-block-button .wp-block-button__link{font-family:var(--wp--preset--font-family--display);font-weight:700;letter-spacing:.07em;text-transform:uppercase}

/* Osiot */
.jk-section{padding:clamp(56px,8vw,104px) 0;border-top:1px solid var(--jk-line);margin-block-start:0}
.jk-section--alt{background:var(--wp--preset--color--surface)}
.jk-in{max-width:1180px;margin-inline:auto;padding-inline:clamp(20px,4vw,40px)}
.jk-in>h2,.jk-section h2{font-size:clamp(2.4rem,6vw,4.4rem);font-weight:700;margin:0 0 clamp(24px,4vw,40px)}
.jk-section p{color:var(--wp--preset--color--muted)}
.jk-section :is(strong){color:var(--wp--preset--color--foreground);font-weight:500}
.jk-link a{font-family:var(--wp--preset--font-family--display);font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--jk-gold)!important;text-decoration:none}
.jk-link a:hover{text-decoration:underline;text-underline-offset:5px}
.jk-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px)}
.jk-card img,.jk-ev__img img,.jk-about__img img{display:block;width:100%;height:auto}
.jk-card__img{margin:0 0 18px}.jk-card__img img{aspect-ratio:4/3;object-fit:cover;object-position:center 30%;box-shadow:0 0 0 1px var(--jk-line)}
.jk-card h3{font-size:clamp(1.8rem,3vw,2.4rem);margin:0 0 10px}.jk-card p{margin:0 0 14px}
.jk-ev{display:grid;grid-template-columns:.62fr 1.38fr;gap:clamp(28px,5vw,72px);align-items:start}
.jk-ev__img{position:sticky;top:96px;margin:0}.jk-ev__img img{box-shadow:0 0 0 1px var(--jk-line)}
.jk-ev__col{display:grid;gap:clamp(24px,3vw,40px);min-width:0}
.jk-phases{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(10px,2vw,24px);align-items:end}
.jk-ph{--n:.4;display:flex;flex-direction:column;justify-content:flex-end;border-bottom:2px solid var(--jk-gold);padding-bottom:12px}
.jk-ph--2{--n:.65}.jk-ph--3{--n:1}.jk-ph--4{--n:.3}
.jk-ph::before{content:"";display:block;height:calc(var(--n)*220px);margin-bottom:14px;background:linear-gradient(to top,#a47a28,#ecd08a);transform-origin:bottom}
.jk-ph--4::before{background:none;box-shadow:inset 0 0 0 1px var(--jk-gold)}
.jk-ph h3{font-size:clamp(1.3rem,2.6vw,2rem);margin:0}.jk-ph p{margin:2px 0 0;color:var(--jk-gold);font-family:var(--wp--preset--font-family--display);font-weight:600;letter-spacing:.06em}
.jk-price{border:1px solid var(--jk-line);padding:clamp(22px,3vw,36px);background:var(--jk-black)}
.jk-price__n{font-family:var(--wp--preset--font-family--display);font-weight:800;font-size:clamp(2.6rem,5vw,3.6rem);line-height:1;color:var(--jk-gold)!important;margin:0}
.jk-price ul{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:10px}.jk-price li{position:relative;padding-left:22px}
.jk-price li::before{content:"";position:absolute;left:0;top:.8em;width:10px;height:2px;background:var(--jk-gold)}
.jk-about{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(28px,6vw,88px);align-items:stretch}
.jk-about__img{position:relative;margin:0;min-height:380px}.jk-about__img img{position:absolute;inset:0;height:100%;object-fit:cover;box-shadow:0 0 0 1px var(--jk-line)}
.jk-fact{padding:20px 0;border-bottom:1px solid var(--jk-line)}.jk-fact:first-of-type{border-top:1px solid var(--jk-line);margin-top:28px}
.jk-fact p{margin:0}.jk-fact__t{font-family:var(--wp--preset--font-family--display);font-weight:700;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.05;text-transform:uppercase;color:var(--wp--preset--color--foreground)!important}
.jk-quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px)}
.jk-quote{border-left:2px solid var(--jk-gold);padding-left:24px}.jk-quote p{margin:0 0 14px}
.jk-cite{font-family:var(--wp--preset--font-family--display);font-weight:600;letter-spacing:.05em;color:var(--jk-gold)!important}
.jk-cta__h{font-size:clamp(3rem,10vw,8rem)!important;font-weight:800!important;max-width:11ch;margin-bottom:36px!important}
.jk-contact{margin-top:32px}.jk-contact a{color:var(--wp--preset--color--muted)}
@media(max-width:860px){.jk-cards,.jk-quotes,.jk-ev,.jk-about{grid-template-columns:1fr}.jk-ev__img{position:static;max-width:340px;margin-inline:auto}.jk-about__img{min-height:0;aspect-ratio:4/5}.jk-phases{grid-template-columns:repeat(2,1fr);row-gap:28px}.jk-quotes{gap:28px}}
@media(prefers-reduced-motion:no-preference){
.jk-js .jk-reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.jk-js .jk-reveal.is-in{opacity:1;transform:none}
.jk-js .jk-ph::before{transform:scaleY(0);transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.jk-js .jk-phases.is-in .jk-ph::before{transform:none}
.jk-card__img img{transition:transform .6s}.jk-card:hover .jk-card__img img{transform:scale(1.03)}.jk-card__img{overflow:hidden}
}

/* Palvelut – tankorullaus */
.jk-load{background:var(--wp--preset--color--surface)}
.jk-bar{display:block;width:100%;height:auto;margin:6px 0 22px}
.jk-step__img{margin:0}.jk-step__img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 30%;box-shadow:0 0 0 1px var(--jk-line)}
.jk-step__txt h3{font-size:clamp(2rem,4.5vw,3.6rem);margin:0 0 12px}.jk-step__txt p{max-width:34rem;margin:0 0 14px}
.jk-steps{display:grid;gap:44px}
.jk-step{display:grid;gap:14px}
.jk-tabs{display:none}
.jk-load.is-pinned{height:260vh;padding:0}
.jk-load.is-pinned .jk-load__stage{position:sticky;top:68px;height:calc(100vh - 68px);display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:auto 1fr;column-gap:clamp(32px,5vw,72px);align-content:center;padding-block:28px}
.admin-bar .jk-load.is-pinned .jk-load__stage{top:100px;height:calc(100vh - 100px)}
.jk-load.is-pinned .jk-load__head{grid-column:1;grid-row:1}
.jk-load.is-pinned .jk-steps{display:contents}
.jk-load.is-pinned .jk-step{grid-column:1/-1;grid-row:1/3;display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;pointer-events:none}
.jk-load.is-pinned .jk-step__txt{grid-column:1;grid-row:2;align-self:start;opacity:0;transform:translateY(24px);transition:opacity .45s ease,transform .45s ease}
.jk-load.is-pinned .jk-step__img{grid-column:2;grid-row:1/3;align-self:center;opacity:0;transform:scale(1.06);transition:opacity .6s ease,transform .9s cubic-bezier(.2,.8,.2,1)}
.jk-load.is-pinned .jk-step__img img{aspect-ratio:4/5;max-height:calc(100vh - 160px)}
.jk-load.is-pinned .jk-step.is-on{pointer-events:auto}
.jk-load.is-pinned .jk-step.is-on .jk-step__txt,.jk-load.is-pinned .jk-step.is-on .jk-step__img{opacity:1;transform:none}
.jk-load.is-pinned .jk-bar{max-height:26vh}
.jk-load.is-pinned .jk-tabs{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0 0 22px}
.jk-tabs button{font:600 1.05rem var(--wp--preset--font-family--display);letter-spacing:.07em;text-transform:uppercase;background:none;color:var(--wp--preset--color--muted);border:0;border-bottom:2px solid var(--jk-line);padding:8px 0;cursor:pointer;transition:color .25s,border-color .25s}
.jk-tabs button:hover{color:var(--wp--preset--color--foreground)}.jk-tabs button.on{color:var(--wp--preset--color--foreground);border-color:var(--jk-gold)}
.jk-load.is-pinned .jk-p1,.jk-load.is-pinned .jk-p2{opacity:0}

/* 0.3.1: leveämpi sisältö isoilla näytöillä, isompi kuva tankorullauksessa, siistimpi tekstin vaihto */
.jk-in,.jk-hero__in{max-width:1320px}
.jk-load.is-pinned .jk-load__stage{grid-template-columns:1fr 1fr}
.jk-load.is-pinned .jk-step__img img{aspect-ratio:4/5;max-height:calc(100vh - 140px);width:auto;max-width:100%;margin-left:auto}
.jk-load.is-pinned .jk-step__txt{transition:opacity .2s ease,transform .2s ease}
.jk-load.is-pinned .jk-step.is-on .jk-step__txt{transition:opacity .45s ease .18s,transform .45s ease .18s}
.jk-js .jk-ph::before{transition-delay:calc(var(--i,0) * 120ms)}
.jk-ph--2{--i:1}.jk-ph--3{--i:2}.jk-ph--4{--i:3}

/* 0.3.2: mobiilikorjaukset */
@media(max-width:860px){
.jk-about__img{min-height:0;aspect-ratio:auto;width:100%;max-width:420px}
.jk-about__img img{position:static;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.jk-phases{grid-template-columns:repeat(4,1fr);gap:8px;row-gap:0}
.jk-ph::before{height:calc(var(--n)*110px);margin-bottom:10px}
.jk-ph h3{font-size:1rem}.jk-ph p{font-size:.8rem;letter-spacing:.02em}
}

/* Etävalmennussivu */
.jk-evhero{padding:clamp(48px,7vw,96px) 0;margin-block-start:0}
.jk-evhero__grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,5vw,72px);align-items:center}
.jk-evhero__img{margin:0;justify-self:end;width:100%;max-width:440px}.jk-evhero__img img{display:block;width:100%;height:auto;box-shadow:0 0 0 1px var(--jk-line)}
.jk-evhero .jk-h1{font-size:clamp(3rem,9vw,7.5rem)}
.jk-bens{list-style:none;padding:0;margin:0 0 30px;display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;max-width:38rem}
.jk-bens li{position:relative;padding-left:22px}.jk-bens li::before{content:"";position:absolute;left:0;top:.8em;width:10px;height:2px;background:var(--jk-gold)}
.jk-note{color:var(--wp--preset--color--muted);font-size:.98rem;max-width:38rem;margin:0 0 8px}.jk-note a{color:var(--wp--preset--color--foreground);text-decoration:underline}
.jk-evhero .wp-block-buttons{margin-bottom:26px}
.jk-intro{max-width:46rem}
.jk-phases--full{margin-top:32px}.jk-ph__d{color:var(--wp--preset--color--muted)!important;font-family:var(--wp--preset--font-family--body)!important;font-weight:400!important;letter-spacing:0!important;font-size:1rem;margin-top:10px!important}
.jk-phases--full .jk-ph{border-bottom:0;justify-content:flex-start}
.jk-phases--full .jk-ph::before{border-bottom:2px solid var(--jk-gold);background-clip:padding-box}
.jk-phases--full{align-items:start}
.jk-phases--full .jk-ph::before{height:calc(var(--n)*220px);margin-top:calc((1 - var(--n))*220px)}
.jk-fit{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px);margin:32px 0}
.jk-fit__i{border-top:2px solid var(--jk-gold);padding-top:18px}.jk-fit__i h3{font-size:1.9rem;margin:0 0 10px}.jk-fit__i p{margin:0}
.jk-faq{margin-top:28px;max-width:52rem}
.jk-faq__i{border-bottom:1px solid var(--jk-line)}.jk-faq__i:first-child{border-top:1px solid var(--jk-line)}
.jk-faq__i summary{cursor:pointer;list-style:none;padding:22px 48px 22px 0;position:relative;font-family:var(--wp--preset--font-family--display);font-weight:600;font-size:clamp(1.25rem,2.6vw,1.6rem);line-height:1.2;color:var(--wp--preset--color--foreground)}
.jk-faq__i summary::-webkit-details-marker{display:none}
.jk-faq__i summary::after{content:"+";position:absolute;right:6px;top:14px;font-size:2rem;color:var(--jk-gold);transition:transform .3s}
.jk-faq__i[open] summary::after{transform:rotate(45deg)}
.jk-faq__i>*:not(summary){max-width:46rem}.jk-faq__i>:last-child{margin-bottom:24px}
.jk-faq__i ol{color:var(--wp--preset--color--muted);padding-left:20px}
@media(max-width:860px){.jk-evhero__grid,.jk-fit{grid-template-columns:1fr}.jk-evhero__img{justify-self:center;max-width:340px}.jk-bens{grid-template-columns:1fr}
.jk-phases--full{grid-template-columns:1fr 1fr;row-gap:28px}.jk-phases--full .jk-ph::before{height:calc(var(--n)*110px);margin-top:calc((1 - var(--n))*110px)}.jk-phases--full .jk-ph h3{font-size:1.3rem}.jk-phases--full .jk-ph p{font-size:.95rem}}
@media(prefers-reduced-motion:no-preference){.jk-evhero .jk-lead,.jk-evhero .jk-bens,.jk-evhero .wp-block-buttons,.jk-evhero .jk-note{animation:jk-fade .9s 1s ease both}.jk-evhero__img{animation:jk-fade 1s .5s ease both}}

/* 0.4.1: ruudukoiden kohdat samalle tasolle (WordPress lisää muuten väliä 2. kohdasta alkaen), isompi hero-kuva ja UKK */
.jk-phases>*,.jk-fit>*,.jk-cards>*,.jk-quotes>*,.jk-ev>*,.jk-about>*,.jk-evhero__grid>*,.jk-steps>*,.jk-load__stage>*{margin-block-start:0!important}
.jk-evhero__grid{grid-template-columns:1.05fr .95fr}
.jk-evhero__img{max-width:600px}.jk-evhero__img img{max-height:82vh;width:auto;max-width:100%;margin-left:auto}
.jk-faq{max-width:60rem}
.jk-faq__i summary{font-size:clamp(1.4rem,2.4vw,1.9rem);padding:28px 56px 28px 0}
.jk-faq__i summary::after{top:20px;font-size:2.4rem}
.jk-faq__i>*:not(summary){font-size:1.1rem;line-height:1.7}
@media(max-width:860px){.jk-evhero__img{max-width:380px}.jk-evhero__img img{max-height:none;margin:0 auto}.jk-faq__i summary{font-size:1.3rem;padding:22px 44px 22px 0}}

/* 0.4.2: kultainen viiva piirtyy ensin, sitten palkit kasvavat hitaammin ja pehmeämmin */
.jk-ph{--i:0;border-bottom:0!important;background:linear-gradient(var(--jk-gold),var(--jk-gold)) left bottom/100% 2px no-repeat}
.jk-ph--2{--i:1}.jk-ph--3{--i:2}.jk-ph--4{--i:3}
.jk-phases--full .jk-ph{background-position:left 220px;padding-bottom:0}
.jk-phases--full .jk-ph::before{border-bottom:0;margin-bottom:16px}
@media(max-width:860px){.jk-phases--full .jk-ph{background-position:left 110px}}
@media(prefers-reduced-motion:no-preference){
.jk-js .jk-ph{background-size:0% 2px;transition:background-size .35s linear calc(var(--i)*.35s)}
.jk-js .jk-phases.is-in .jk-ph{background-size:100% 2px}
.jk-js .jk-ph::before{transform:scaleY(0);transition:transform 1.4s cubic-bezier(.16,1,.3,1) calc(1.3s + var(--i)*.22s)}
.jk-js .jk-phases.is-in .jk-ph::before{transform:none}
}

/* Valmennus-sivu */
.jk-hero--short{min-height:min(76svh,720px)}
.jk-tier{display:flex;flex-direction:column;border:1px solid var(--jk-line);padding:clamp(22px,3vw,34px);background:var(--wp--preset--color--surface)}
.jk-tier>*{margin-block-start:0!important}
.jk-tier h3{font-size:clamp(1.7rem,3vw,2.3rem);margin:0 0 8px}
.jk-tier__for{margin:0 0 20px}.jk-tier__note{font-size:.95rem;margin:4px 0 20px}
.jk-tier .jk-bens{grid-template-columns:1fr;margin-bottom:24px}
.jk-tier .wp-block-buttons{margin-top:auto}
.jk-tier--main{border-color:var(--jk-gold);display:grid;grid-template-columns:minmax(200px,280px) 1fr;gap:clamp(20px,3.5vw,48px);align-items:center;margin:32px 0 clamp(16px,2.4vw,28px)}
.jk-tier__img{margin:0}.jk-tier__img img{display:block;width:100%;height:auto}
.jk-tier__body{display:flex;flex-direction:column}.jk-tier__body>*{margin-block-start:0!important}
.jk-bens--2{grid-template-columns:1fr 1fr!important;max-width:34rem}
.jk-tier--main .wp-block-buttons{margin-top:4px}
.jk-tiers2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2.4vw,28px)}.jk-tiers2>*{margin-block-start:0!important}
.jk-ptable{list-style:none;padding:0;margin:0 0 22px;border-top:1px solid var(--jk-line)}
.jk-ptable li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--jk-line);color:var(--wp--preset--color--muted)}
.jk-ptable strong{color:var(--jk-gold);font-family:var(--wp--preset--font-family--display);font-weight:700;font-size:1.2rem}
.jk-xrs>*{margin-block-start:0!important}
.jk-xr{display:grid;grid-template-columns:1fr 1.5fr auto;gap:10px 36px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--jk-line)}
.jk-xr:first-child{border-top:1px solid var(--jk-line)}.jk-xr>*{margin:0!important}
.jk-xr h3{font-size:clamp(1.5rem,3vw,2.1rem)}
.jk-xr__p{font-family:var(--wp--preset--font-family--display);font-weight:800;font-size:1.8rem;line-height:1;color:var(--jk-gold)!important;white-space:nowrap}
.jk-psteps{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2.4vw,32px)}.jk-psteps>*{margin-block-start:0!important}
.jk-pstep{border-top:2px solid var(--jk-gold);padding-top:16px}.jk-pstep h3{font-size:1.7rem;margin:0 0 10px}.jk-pstep p{margin:0;font-size:1rem}
@media(max-width:860px){.jk-tier--main,.jk-tiers2,.jk-psteps,.jk-xr{grid-template-columns:1fr}.jk-tier__img{max-width:300px}.jk-bens--2{grid-template-columns:1fr!important}}

/* 0.5.1: valmennuksen hero-kuva */
.jk-hero--short .jk-hero__img img{object-position:62% 30%}
.jk-tier .jk-price__n+.jk-ptable{margin-top:16px}

/* Hieronta-sivu */
.jk-hihero__img img{aspect-ratio:4/5;object-fit:cover;object-position:center 30%}
.jk-hps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,24px);margin:28px 0}.jk-hps>*{margin-block-start:0!important}
.jk-hp{border:1px solid var(--jk-line);background:var(--jk-black);padding:clamp(20px,2.4vw,28px);display:flex;flex-direction:column}
.jk-hp>*{margin:0!important}
.jk-hp__d{font-family:var(--wp--preset--font-family--display);font-weight:700;font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1;text-transform:uppercase;color:var(--wp--preset--color--foreground)!important}
.jk-hp__t{margin:10px 0 18px!important;flex:1}
.jk-hp__p{font-family:var(--wp--preset--font-family--display);font-weight:800;font-size:2rem;line-height:1;color:var(--jk-gold)!important;padding-top:14px;border-top:1px solid var(--jk-line)}
@media(max-width:860px){.jk-hps{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.jk-hps{grid-template-columns:1fr}}

/* 0.6.1: hieronnan hero-kuva isompi puhelimella */
@media(max-width:860px){.jk-evhero__img.jk-hihero__img{max-width:none;width:100%;justify-self:stretch}.jk-hihero__img img{width:100%;max-height:none}}

/* 0.6.2: hero-ruudukko yhteen sarakkeeseen puhelimella (0.4.1:n leveyssääntö kumosi sen) */
@media(max-width:860px){.jk-evhero__grid{grid-template-columns:1fr}.jk-evhero__img{justify-self:center}.jk-evhero__img img{margin:0 auto}}

/* Yhteystiedot */
.jk-yh{border-top:0;padding-top:clamp(48px,7vw,96px)}
.jk-yh__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,88px);align-items:start}.jk-yh__grid>*{margin-block-start:0!important}
.jk-yh__h{font-size:clamp(3rem,8vw,6.5rem)!important}
.jk-cis{margin-top:36px;border-top:1px solid var(--jk-line)}.jk-cis>*{margin-block-start:0!important}
.jk-ci{display:grid;grid-template-columns:8rem 1fr;gap:4px 20px;padding:16px 0;border-bottom:1px solid var(--jk-line)}.jk-ci>*{margin:0!important}
.jk-ci__l{font-family:var(--wp--preset--font-family--display);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--jk-gold)!important}
.jk-ci__v{color:var(--wp--preset--color--foreground)!important}.jk-ci__v a{color:inherit;text-decoration:underline;text-underline-offset:4px}.jk-ci__v a:hover{color:var(--jk-gold)}
.jk-form{border:1px solid var(--jk-line);background:var(--wp--preset--color--surface);padding:clamp(22px,3.5vw,44px)}
.jk-form h2{font-size:clamp(1.8rem,3.4vw,2.6rem)!important;margin-bottom:20px!important}
.jk-form__ph{border:1px dashed var(--jk-gold);padding:18px}
/* Lomakekentät (Fluent Forms, WPForms ja tavalliset lomakkeet) */
.jk-form label,.jk-form .ff-el-input--label label,.jk-form .wpforms-field-label{color:var(--wp--preset--color--foreground)!important;font-family:var(--wp--preset--font-family--body)!important;font-weight:500!important;font-size:.95rem!important}
.jk-form input[type=text],.jk-form input[type=email],.jk-form input[type=tel],.jk-form textarea,.jk-form select{width:100%!important;max-width:none!important;background:var(--jk-black)!important;color:var(--wp--preset--color--foreground)!important;border:1px solid var(--jk-line)!important;border-radius:0!important;padding:14px 16px!important;font:inherit!important;box-shadow:none!important}
.jk-form input:focus,.jk-form textarea:focus,.jk-form select:focus{outline:2px solid var(--jk-gold)!important;outline-offset:0;border-color:var(--jk-gold)!important}
.jk-form button[type=submit],.jk-form input[type=submit],.jk-form .ff-btn-submit,.jk-form .wpforms-submit{background:var(--jk-gold)!important;color:#000!important;border:0!important;border-radius:0!important;font-family:var(--wp--preset--font-family--display)!important;font-weight:700!important;letter-spacing:.07em!important;text-transform:uppercase!important;font-size:1.1rem!important;padding:16px 30px!important;cursor:pointer}
.jk-form input[type=checkbox]{accent-color:var(--jk-gold)}
.jk-form p,.jk-form .ff-el-form-check-label{color:var(--wp--preset--color--muted)}
@media(max-width:860px){.jk-yh__grid{grid-template-columns:1fr}.jk-ci{grid-template-columns:1fr}}

/* Tekstisivu: sopimusehdot, tietosuojaseloste */
.jk-text{padding:clamp(48px,7vw,96px) clamp(20px,4vw,40px) clamp(64px,9vw,120px)}
.jk-text__in{max-width:46rem;margin-inline:auto}
.jk-text__title{font-size:clamp(2.4rem,6vw,4.4rem)!important;font-weight:800!important;margin:0 0 24px!important}
.jk-text .jk-rule{margin-bottom:40px}
.jk-text .wp-block-post-content{color:var(--wp--preset--color--muted);font-size:1.0625rem;line-height:1.75}
.jk-text .wp-block-post-content :is(h2,h3,h4){color:var(--wp--preset--color--foreground);font-size:clamp(1.5rem,3vw,2rem)!important;margin:2.4em 0 .6em!important;line-height:1.1!important}
.jk-text .wp-block-post-content>:is(h2,h3,h4):first-child{margin-top:0!important}
.jk-text .wp-block-post-content strong{color:var(--wp--preset--color--foreground);font-weight:500}
.jk-text .wp-block-post-content a{color:var(--jk-gold);text-decoration:underline;text-underline-offset:4px}
.jk-text .wp-block-post-content :is(ul,ol){padding-left:1.3em}.jk-text .wp-block-post-content li{margin:.35em 0}
.jk-text .wp-block-post-content li::marker{color:var(--jk-gold)}

/* 0.7.2: Fluent Forms -lomake tummaksi */
.jk-form .ff-el-form-control{width:100%!important;background:var(--jk-black)!important;color:var(--wp--preset--color--foreground)!important;border:1px solid var(--jk-line)!important;border-radius:0!important;padding:14px 16px!important;font:inherit!important;box-shadow:none!important;height:auto!important}
.jk-form .ff-el-form-control:focus{border-color:var(--jk-gold)!important;outline:2px solid var(--jk-gold)!important}
.jk-form .ff-el-form-control::placeholder{color:var(--wp--preset--color--muted)!important}
.jk-form select.ff-el-form-control{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#d2ab57 50%),linear-gradient(135deg,#d2ab57 50%,transparent 50%)!important;background-position:calc(100% - 22px) 52%,calc(100% - 16px) 52%!important;background-size:6px 6px!important;background-repeat:no-repeat!important;padding-right:44px!important}
.jk-form select.ff-el-form-control option{background:#000;color:#f2efe8}
.jk-form .ff-el-is-required.asterisk-right label:after{color:var(--jk-gold)!important}
.jk-form .ff-el-group{margin-bottom:18px!important}
.jk-form .ff-el-form-check-label,.jk-form .ff-el-form-check-label span{color:var(--wp--preset--color--muted)!important}
.jk-form .ff-el-form-check-label a{color:var(--jk-gold)!important}
.jk-form .ff-btn-submit:hover{filter:brightness(1.1)}
.jk-form .ff-message-success{background:var(--jk-black)!important;color:var(--wp--preset--color--foreground)!important;border:1px solid var(--jk-gold)!important}
.jk-form .fluentform a,.jk-form .ff-el-group a{color:var(--jk-gold)!important;text-decoration:underline;text-underline-offset:4px}
.jk-form input[type=checkbox]{width:18px;height:18px;vertical-align:-3px;margin-right:8px}
.error404 .jk-text>*{max-width:46rem;margin-inline:auto}
.error404 .jk-text a{color:var(--jk-gold);text-decoration:underline}
.jk-evhero__txt>p:not([class]){color:#d9d6cf;font-size:1rem;line-height:1.65;max-width:36rem;margin:0 0 30px}
.jk-evhero .jk-lead{margin-bottom:22px}
.jk-evhero .jk-bens{margin-top:0}

@media (min-width:600px) and (max-width:1000px){.jk-header .wp-block-navigation{font-size:.92rem;--navigation-layout-justification-setting:flex-end}.jk-header .wp-block-navigation .wp-block-navigation__container{gap:16px}.jk-header .wp-block-button__link{padding:11px 16px;font-size:.95rem}}

/* Mobiilivalikko (avattu) */
.jk-header .wp-block-navigation .jk-nav-cta{display:none}
.jk-header .wp-block-navigation__responsive-container.is-menu-open{padding:18px 24px 32px!important;background:var(--jk-black)!important}
.jk-header .is-menu-open .wp-block-navigation__responsive-container-content{align-items:stretch!important;padding-top:64px!important}
.jk-header .is-menu-open .wp-block-navigation__container{align-items:stretch!important;justify-content:flex-start!important;gap:0!important;width:100%}
.jk-header .is-menu-open .wp-block-navigation-item{width:100%;border-bottom:1px solid var(--jk-line)}
.jk-header .is-menu-open .wp-block-navigation-item__content{display:block!important;width:100%;padding:18px 0!important;font-family:var(--wp--preset--font-family--display);font-size:2.1rem;line-height:1;font-weight:700;text-transform:uppercase;letter-spacing:.01em;color:var(--wp--preset--color--foreground)!important;text-align:left}
.jk-header .is-menu-open .wp-block-navigation-item__content[aria-current="page"]{color:var(--jk-gold)!important}
.jk-header .is-menu-open .jk-nav-cta{display:block;border-bottom:0;margin-top:32px}
.jk-header .is-menu-open .jk-nav-cta .wp-block-navigation-item__content{background:var(--jk-gold);color:var(--wp--preset--color--black)!important;text-align:center;font-size:1.4rem;padding:18px 0!important;border-radius:0}
.jk-header .wp-block-navigation__responsive-container-close svg,.jk-header .wp-block-navigation__responsive-container-open svg{width:30px;height:30px}

/* Etävalmennus: sovellus käytännössä */
.jk-app__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:36px}
.jk-app__i{margin:0}
.jk-app__ph{display:block;border:8px solid #1a1917;border-radius:30px;overflow:hidden;background:#1a1917;box-shadow:0 0 0 1px var(--jk-line);transition:transform .2s}
.jk-app__ph:hover{transform:translateY(-4px)}
.jk-app__ph img{display:block;width:100%;height:auto}
.jk-app__i figcaption{margin-top:16px}
.jk-app__i figcaption strong{display:block;font-family:var(--wp--preset--font-family--display);text-transform:uppercase;letter-spacing:.04em;font-size:1.25rem;color:var(--jk-gold);margin-bottom:6px}
.jk-app__i figcaption span{display:block;color:var(--wp--preset--color--muted);font-size:.98rem;line-height:1.55}
@media (max-width:1000px){.jk-app__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}}
@media (max-width:600px){.jk-app__grid{grid-template-columns:1fr;gap:44px}.jk-app__ph{max-width:260px;margin:0 auto}.jk-app__i figcaption{text-align:center;max-width:340px;margin-left:auto;margin-right:auto}}
.jk-app__grid .jk-app__i:nth-child(4){order:-1}
.jk-lb{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.97);display:flex;align-items:center;justify-content:center;padding:56px 16px 24px;cursor:zoom-out;animation:jkLb .18s ease}
.jk-lb[hidden]{display:none}
.jk-lb img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:18px;box-shadow:0 10px 40px rgba(0,0,0,.6)}
.jk-lb__x{position:absolute;top:10px;right:14px;width:44px;height:44px;border:0;background:none;color:#f2efe8;font-size:40px;line-height:1;cursor:pointer}
.jk-lb-open,.jk-lb-open body{overflow:hidden}
@keyframes jkLb{from{opacity:0}to{opacity:1}}
