@font-face{font-family:Fraunces;src:url(/fonts/Fraunces-Soft-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Figtree;src:url(/fonts/Figtree-Variable.woff2) format("woff2");font-weight:300 900;font-style:normal;font-display:swap}@font-face{font-family:Figtree;src:url(/fonts/Figtree-Italic-Variable.woff2) format("woff2");font-weight:300 900;font-style:italic;font-display:swap}:root{--shadow-card: 0 1px 2px rgba(46,46,51,.06), 0 8px 24px rgba(46,46,51,.08);--shadow-raised: 0 2px 4px rgba(46,46,51,.06), 0 16px 40px rgba(46,46,51,.12);--accent: #E8481A;--accent-soft: #FCE9E2;--on-accent: #FFFFFF;--bg: #FFFFFF;--surface: #FFFFFF;--soft: #F6F6F7;--ink: #2E2E33;--muted: #6B6B74;--line: #E4E4E8;--line-strong: #8E8E96;--art: #3A3A40;--focus-ring: #2E2E33;--ok: #1F7A4D;--ok-bg: #E3F1E9;--error: #B3261E;--error-bg: #F8E4E2;--warning: #8A5A00;--warning-bg: #FBF0D9;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--space-18: 72px;--space-24: 96px;--radius-sm: 10px;--radius-md: 12px;--radius-card: 18px;--radius-pill: 999px;--font-display: Fraunces, Georgia, serif;--font-sans: Figtree, system-ui, -apple-system, "Segoe UI", sans-serif}[data-theme=dark]{--shadow-card: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35);--shadow-raised: 0 2px 4px rgba(0,0,0,.45), 0 16px 40px rgba(0,0,0,.45);--accent: #E8481A;--accent-soft: #3A2119;--on-accent: #FFFFFF;--bg: #17171A;--surface: #1F1F23;--soft: #26262B;--ink: #EDEDEF;--muted: #A6A6AE;--line: #34343A;--line-strong: #7C7C85;--art: #D0D0D6;--focus-ring: #EDEDEF;--ok: #7FD6A6;--ok-bg: #173A33;--error: #F4A39C;--error-bg: #4A1F24;--warning: #F2C46B;--warning-bg: #3D3018}.type-display{font-family:var(--font-display);font-size:64px;line-height:66px;font-weight:500;letter-spacing:-.02em}.type-h1{font-family:var(--font-display);font-size:44px;line-height:48px;font-weight:500;letter-spacing:-.015em}.type-h2{font-family:var(--font-display);font-size:32px;line-height:38px;font-weight:500;letter-spacing:-.01em}.type-h3{font-family:var(--font-display);font-size:22px;line-height:28px;font-weight:500}.type-lead{font-family:var(--font-sans);font-size:20px;line-height:31px;font-weight:400}.type-body{font-family:var(--font-sans);font-size:17px;line-height:26px;font-weight:400}.type-body-sm{font-family:var(--font-sans);font-size:15px;line-height:22px;font-weight:400}.type-button{font-family:var(--font-sans);font-size:19px;line-height:24px;font-weight:700}.type-label{font-family:var(--font-sans);font-size:15px;line-height:20px;font-weight:600}.type-caption{font-family:var(--font-sans);font-size:13px;line-height:18px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}:root{--ease: cubic-bezier(.2, .7, .2, 1);--nav-h: 72px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:17px;line-height:1.55;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:clip}img,svg,video{max-width:100%}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}a{color:var(--ink)}:where(a,button,input,select,textarea,summary,video):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}[tabindex="-1"]:focus{outline:none}.ohitus{position:absolute;left:var(--space-4);top:-100px;z-index:50;background:var(--bg);color:var(--ink);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-weight:600;box-shadow:var(--shadow-raised)}.ohitus:focus{top:var(--space-3)}section[id],#video,.lomake-virheet,.lomake [id]{scroll-margin-top:calc(var(--nav-h) + var(--space-4))}.wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-6)}.wrap.kapea{max-width:860px}.sec{padding-block:var(--space-18)}.nauha{background:var(--soft)}.sp-display,.sp-h1,.sp-h2,.sp-h3{font-family:var(--font-display);font-weight:500;text-wrap:balance;color:var(--ink)}.sp-display{font-size:64px;line-height:66px;letter-spacing:-.02em}.sp-h1{font-size:44px;line-height:48px;letter-spacing:-.015em}.sp-h2{font-size:32px;line-height:38px;letter-spacing:-.01em}.sp-h3{font-size:22px;line-height:28px}.sp-eyebrow{font:600 13px/18px var(--font-sans);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.lead{font-size:20px;line-height:31px;color:var(--muted);text-wrap:pretty}.sp-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:0;border-radius:var(--radius-pill);padding:13px 28px;font:700 19px/24px var(--font-sans);cursor:pointer;text-decoration:none;text-align:center;transition:background-color .15s,filter .15s}.sp-btn-primary{background:var(--accent);color:var(--on-accent)}.sp-btn-primary:hover{filter:brightness(.93)}.sp-btn-secondary{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}.sp-btn-secondary:hover{background:var(--soft)}.sp-btn-sm{padding:9px 18px;font-size:15px;line-height:20px}.sp-btn[disabled]{opacity:.45;cursor:not-allowed}.sp-link{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:5px}.sp-link:hover{text-decoration-thickness:3px}.sp-card{background:var(--surface);border:0;box-shadow:var(--shadow-card);transition:box-shadow .15s;border-radius:var(--radius-card);padding:var(--space-6);display:flex;flex-direction:column;gap:10px;min-width:0}.sp-card p{font-size:15px;line-height:22px;color:var(--muted)}.sp-badge{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;font:600 13px/18px var(--font-sans);color:var(--ink);background:var(--soft);border-radius:var(--radius-pill);padding:4px 10px}.sp-badge svg{color:var(--accent);flex:none}.sp-art{display:block;height:auto;fill:none;stroke:var(--art);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.sp-art .ac{stroke:var(--accent)}.sp-art .af{fill:var(--accent);stroke:none}.sp-art .as{fill:var(--accent-soft)}.sp-art .lattia{stroke-dasharray:2 7}.kuittaus{color:var(--accent);flex:none}.numero{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--ink);background:var(--bg);font:500 20px/1 var(--font-display);flex:none;position:relative;z-index:1}.sec-head{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center;max-width:780px;margin:0 auto var(--space-12)}.sec-head .lead{max-width:680px}.nav{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.nav-in{display:flex;align-items:center;gap:var(--space-6);height:var(--nav-h)}.nav-logo{display:flex;margin-right:auto;text-decoration:none}.logo{display:block}.logo svg{display:block;height:auto}.logo-teksti{fill:var(--ink)}.logo-kuittaus{fill:var(--accent)}.nav-linkit{display:flex;gap:var(--space-6)}.nav-linkit a{color:var(--muted);text-decoration:none;font:500 15px/20px var(--font-sans);transition:color .15s}.nav-linkit a:hover{color:var(--ink)}.mvalikko{display:none}.mvalikko-nappi{display:inline-flex;align-items:center;gap:var(--space-2);padding:9px 14px;border-radius:var(--radius-pill);font:600 15px/20px var(--font-sans);color:var(--ink);cursor:pointer;list-style:none;transition:background-color .15s}.mvalikko-nappi::-webkit-details-marker{display:none}.mvalikko-nappi:hover,.mvalikko[open] .mvalikko-nappi{background:var(--soft)}.mvalikko .auki-on,.mvalikko[open] .auki-ei{display:none}.mvalikko[open] .auki-on{display:block}.mvalikko-paneeli{position:absolute;left:0;right:0;top:100%;background:var(--bg);box-shadow:var(--shadow-raised);border-radius:0 0 var(--radius-card) var(--radius-card);padding:var(--space-2) var(--space-6) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.mvalikko-paneeli ul{list-style:none;padding:0}.mvalikko-paneeli li+li{border-top:1px solid var(--line)}.mvalikko-paneeli a:not(.sp-btn){display:block;padding:var(--space-4) 0;font:600 18px/24px var(--font-sans);color:var(--ink);text-decoration:none}.mvalikko-paneeli .sp-btn{align-self:flex-start}.bar{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--accent);transform-origin:0 50%;transform:scaleX(0)}.foot{border-top:1px solid var(--line);padding:var(--space-8) 0;font-size:15px;color:var(--muted)}.foot-in{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-6)}.foot-in .logo{margin-right:var(--space-2)}.korostus{position:relative;white-space:nowrap}.korostus-viiva{position:absolute;left:-2%;width:104%;bottom:-.16em;height:.3em;overflow:visible;fill:none;stroke:var(--accent);stroke-width:2.4;stroke-linecap:round;pointer-events:none}.hero{padding:var(--space-18) 0 0;background:var(--accent-soft)}.hero .sp-eyebrow,.hero .hero-lead{color:var(--ink)}.hero-in{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-6)}.hero .sp-display{max-width:1120px}.hero-lead{max-width:640px}.hero-toiminnot{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-4) var(--space-8);margin-top:var(--space-2)}.lupaukset{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;margin-top:var(--space-6)}.lupaukset li{display:flex;align-items:center;gap:10px;padding:0 var(--space-6);font-size:16px}.lupaukset li+li{border-left:1px solid var(--line)}.lupaukset-pysty{flex-direction:column;align-items:flex-start;gap:var(--space-3);text-align:left;margin-inline:auto}.lupaukset-pysty li{padding:0}.lupaukset-pysty li+li{border:0}.hero-in{position:relative;z-index:1}.maisema{position:relative;height:clamp(280px,36.1vw,600px);margin-top:var(--space-6);overflow:hidden}@media(min-width:1280px){.maisema{margin-top:calc(-1*min(8.4vw,130px))}}.maisema svg{display:block;width:100%;height:100%}.maisema .maa{fill:var(--soft);stroke:none}.maisema .t{fill:var(--bg);stroke:var(--line-strong);stroke-opacity:.45;stroke-width:1.6}.maisema .t2{fill:var(--bg);opacity:.6;stroke:none}.maisema .hieno{stroke-width:1.3}.maisema .etuala :is(rect,path,circle){fill:var(--bg)}.maisema .etuala .lattia{fill:none}.maisema .alat-teksti{fill:var(--muted);stroke:none;font:500 15px var(--font-sans)}.alat-lista{display:none}.esittely{display:flex;flex-direction:column;gap:var(--space-8)}.esittely-ylä{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.esittely-ylä .sp-badge{align-self:center}.esittely:not(.valmis) .valilehdet{display:none}.valilehdet{display:inline-flex;gap:var(--space-1);padding:var(--space-1);background:var(--soft);border-radius:var(--radius-pill)}.valilehdet button{border:0;background:transparent;color:var(--ink);font:600 15px/20px var(--font-sans);padding:9px 20px;border-radius:var(--radius-pill);cursor:pointer;transition:background-color .15s,color .15s}.valilehdet button:hover{background:var(--line)}.valilehdet button[aria-selected=true]{background:var(--ink);color:var(--bg)}.paneeli{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--space-12);align-items:end;background:var(--soft);border-radius:28px;padding:var(--space-12)}.paneeli[hidden]{display:none}.paneeli:focus-visible{outline:2px solid var(--focus-ring);outline-offset:8px;border-radius:var(--radius-card)}.ruutu{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.huomautus{display:flex;align-items:flex-start;gap:var(--space-1);font:500 17px/22px var(--font-display);white-space:nowrap;color:var(--ink);padding-left:var(--space-2)}.huomautus .nuoli{flex:none;width:46px;height:auto;margin-top:4px;fill:none;stroke:var(--art);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.huomautus-oikea{justify-content:flex-end;padding:0 var(--space-2) 0 0}.huomautus-oikea .nuoli{transform:scaleX(-1)}.puhelin{border:2px solid var(--ink);box-shadow:var(--shadow-card);border-radius:36px;padding:var(--space-8) var(--space-6) var(--space-6);min-height:460px;display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface);position:relative;font-size:15px;line-height:22px}.puhelin:before{content:"";position:absolute;top:12px;left:50%;width:64px;height:6px;margin-left:-32px;border-radius:var(--radius-pill);background:var(--line)}.puh-yla{display:flex;justify-content:space-between;font:600 13px/18px var(--font-sans);color:var(--muted);margin-top:var(--space-2)}.puh-num{font-variant-numeric:tabular-nums}.puh-edistys{height:6px;border-radius:3px;background:var(--soft);overflow:hidden}.puh-edistys i{display:block;height:100%;border-radius:3px;background:var(--accent)}.puh-otsikko{font-family:var(--font-display);font-weight:500;font-size:22px;line-height:28px;margin-top:var(--space-2);text-wrap:balance}.puh-lahde{font-size:13px;line-height:18px;color:var(--muted)}.puh-nappi{margin-top:auto;align-self:stretch;text-align:center;padding:10px;border-radius:var(--radius-pill);box-shadow:inset 0 0 0 1.5px var(--ink);font:700 15px/20px var(--font-sans)}.puh-3d{flex:1;display:flex;align-items:center;justify-content:center;background:var(--soft);border-radius:var(--radius-md);padding:var(--space-2);min-height:0}.puh-3d .malli3d{width:100%}.chat{display:flex;flex-direction:column;gap:var(--space-2);flex:1}.chat-rivi{display:flex;align-items:flex-end;gap:var(--space-2)}.opas{flex:none;width:26px;height:26px;border-radius:8px}.kupla{max-width:88%;padding:10px 14px;border-radius:18px 18px 18px 6px;background:var(--soft);font-size:14px;line-height:20px}.kupla-kortti{margin-left:34px;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);text-align:center;border-radius:18px;background:var(--surface);border:1px solid var(--line);padding:var(--space-3) var(--space-4)}.kupla-kortti .sp-art{width:110px}.kortti-iso{font-family:var(--font-display);font-weight:500;font-size:26px;line-height:1;vertical-align:-2px}.kupla-oma{align-self:flex-end;border-radius:18px 18px 6px;background:var(--ink);color:var(--bg);font-weight:600;min-width:44px;text-align:center}.kupla-ok{background:var(--ok-bg)}.kupla-ok strong{color:var(--ok);font-weight:700}.chat-tehtava{margin-top:var(--space-2)}.vastaukset{list-style:none;padding:0;margin:0 0 0 34px;display:flex;gap:var(--space-2)}.vastaukset li{flex:1;text-align:center;padding:8px 0;border:1.5px solid var(--line-strong);border-radius:var(--radius-pill);font-weight:600;font-variant-numeric:tabular-nums}.vastaukset li.valittu{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.malli3d{touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none;border-radius:var(--radius-md)}.malli3d.vetaa{cursor:grabbing}.malli3d svg{display:block;width:100%;height:auto}.malli3d .m-laatta{fill:var(--line)}.malli3d .m-lattia{fill:var(--soft);stroke:var(--line-strong);stroke-width:.8}.malli3d .m-valo{fill:var(--surface)}.malli3d .m-varjo{fill:var(--line)}.malli3d .m-seina{fill:var(--art)}.malli3d .m-kaluste{fill:var(--surface)}.malli3d .m-reuna{fill:none;stroke:var(--art);stroke-width:.9;stroke-linejoin:round;stroke-linecap:round}.malli3d .m-apuviiva{stroke:var(--accent);stroke-width:1;stroke-dasharray:2 3}.malli3d .m-varjo-lattia{fill:var(--accent-soft);stroke:var(--accent);stroke-width:.8}.malli3d .m-tunnistin{fill:var(--surface);stroke:var(--accent);stroke-width:1.6}.malli3d .m-tunnistin-sivu{fill:var(--accent)}.dia{container-type:inline-size;aspect-ratio:16 / 9;border:0;box-shadow:var(--shadow-card);border-radius:var(--radius-md);background:var(--surface);padding:4.5% 5.5% 3%;display:flex;flex-direction:column;gap:clamp(4px,1.2vw,14px);overflow:hidden}.dia-otsikko{font:600 max(12px,2.4cqi)/1.3 var(--font-sans);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.dia-iso{font-family:var(--font-display);font-weight:500;font-size:9cqi;line-height:1.05;letter-spacing:-.02em;margin-top:2cqi}.dia-teksti{font-size:max(15px,4cqi);line-height:1.3;color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:.08em;text-underline-offset:.2em;align-self:flex-start}.dia-kysymys{font-family:var(--font-display);font-weight:500;font-size:max(17px,5cqi);line-height:1.15;text-wrap:balance;margin-top:1cqi}.dia-vaihtoehdot{list-style:none;padding:0;display:flex;gap:2.4cqi;margin-top:2cqi}.dia-vaihtoehdot li{flex:1;text-align:center;padding:2cqi;border:1.5px solid var(--line-strong);border-radius:var(--radius-md);font:600 max(16px,4.4cqi)/1 var(--font-sans);font-variant-numeric:tabular-nums}.dia-3d .malli3d{flex:1;min-height:0;display:flex;justify-content:center}.dia-3d .malli3d svg{width:auto;max-width:100%;height:100%}.dia-alas{margin-top:auto;display:flex;justify-content:space-between;font-size:max(12px,2cqi);line-height:1.3;color:var(--muted);font-variant-numeric:tabular-nums}.materiaalit{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--space-12);margin-top:var(--space-8)}.materiaali-teksti{display:flex;flex-direction:column;gap:var(--space-2)}.materiaali-teksti p{color:var(--muted)}.luotto{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-12);align-items:center}.kohdat{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--space-8)}.kohdat li{display:flex;gap:var(--space-4);align-items:flex-start}.kohdat p{color:var(--muted);margin-top:var(--space-1)}.esimerkki{padding:var(--space-8);gap:var(--space-4)}.esimerkki dl>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--line)}.esimerkki dt{font:600 13px/24px var(--font-sans);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.esimerkki dd{font-size:16px;line-height:24px}.esimerkki .tieto{font-family:var(--font-display);font-size:20px;line-height:27px}.esimerkki .merkit{display:flex;flex-wrap:wrap;gap:var(--space-2)}.video{margin:var(--space-18) auto 0;max-width:960px;display:flex;flex-direction:column;gap:var(--space-4)}.videobox{aspect-ratio:16 / 9;border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);background:var(--surface)}.videobox video{display:block;width:100%;height:100%;object-fit:cover}.video figcaption{text-align:center;display:flex;flex-direction:column;gap:var(--space-1)}.video figcaption p{color:var(--muted)}.kurssit{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6)}.kurssi{padding:0;overflow:hidden;gap:0}.kurssi-iso{grid-column:span 2;flex-direction:row}.kurssi-kuva{background:var(--soft);display:flex;align-items:center;justify-content:center;padding:var(--space-6);border-bottom:1px solid var(--line)}.kurssi-kuva .sp-art{width:100%;max-width:170px}.tyon-alla-kuva{background:var(--accent-soft)}.kurssi-iso .kurssi-kuva{flex:1 1 50%;border-bottom:0;border-right:1px solid var(--line)}.kurssi-iso .kurssi-kuva .sp-art{max-width:240px}.kurssi-teksti{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-6);flex:1}.kurssi-iso .kurssi-teksti{justify-content:center;padding:var(--space-8)}.kurssi-teksti .sp-h3{margin-top:var(--space-1)}.kurssi-iso .kurssi-teksti .sp-h3{font-size:26px;line-height:32px}.sp-badge.tyon-alla:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}.tulossa-loppu{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center;margin-top:var(--space-12)}.vaiheet{position:relative;view-timeline:--vaiheet block}.vaiheet ol{list-style:none;padding:22px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8);position:relative}.vaiheet li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-3);position:relative;z-index:1;background:var(--surface);box-shadow:var(--shadow-card);border-radius:var(--radius-card);padding:0 var(--space-6) var(--space-8)}.vaiheet li .numero{margin-top:-22px;margin-bottom:var(--space-2)}.vaiheet li p{color:var(--muted)}.vaihe-viiva{position:absolute;top:21px;z-index:0;left:calc(100% / 6);right:calc(100% / 6);height:2px;background:var(--line)}.tayttyva{position:absolute;inset:0;background:var(--accent);transform-origin:0 50%;--tyhja: scaleX(0)}.faq-asettelu{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--space-12);align-items:start}.faq-otsikko{display:flex;flex-direction:column;gap:var(--space-6);position:sticky;top:calc(var(--nav-h) + var(--space-8))}.faq-otsikko .sp-art{width:180px}.faq-lista{background:var(--surface);box-shadow:var(--shadow-card);border-radius:var(--radius-card);padding:var(--space-2) var(--space-8)}.faq:last-child{border-bottom:0}.faq{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-6) 0;cursor:pointer;list-style:none;font:600 18px/26px var(--font-sans)}.faq summary::-webkit-details-marker{display:none}.faq-ikoni{flex:none;display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:50%;background:var(--soft);transition:background-color .15s}.faq summary:hover .faq-ikoni{background:var(--line)}.faq .auki-on,.faq[open] .auki-ei{display:none}.faq[open] .auki-on{display:block}.faq p{padding:0 var(--space-12) var(--space-6) 0;color:var(--muted)}.alasivu-alku{padding-bottom:var(--space-12)}.alasivu-alku .sec-head{margin-bottom:0}.alasivu-kuva{width:160px}.lomake-pohja{background:var(--surface);box-shadow:var(--shadow-card);border-radius:var(--radius-card);padding:var(--space-12)}.lomake{display:flex;flex-direction:column;gap:var(--space-6)}.lomake-rivi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}.sp-field{display:flex;flex-direction:column;gap:6px;min-width:0}.sp-field label{font:600 15px/20px var(--font-sans)}.sp-input{width:100%;font:400 17px/24px var(--font-sans);color:var(--ink);background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);padding:11px 14px;transition:border-color .15s}.sp-input:hover{border-color:var(--ink)}select.sp-input{min-height:50px}textarea.sp-input{resize:vertical;min-height:120px}.sp-input[aria-invalid=true]{border-color:var(--error);border-width:2px}.sp-help{font-size:14px;line-height:20px;color:var(--muted)}.vap{font-weight:400;color:var(--muted)}.kvirhe{font-size:14px;line-height:20px;color:var(--error)}.kvirhe:empty{display:none}.ruksi{display:flex;gap:var(--space-3);align-items:flex-start;font-size:16px;line-height:24px}.ruksi input{width:20px;height:20px;margin:2px 0 0;flex:none;accent-color:var(--ink)}.lomake-virheet{background:var(--error-bg);border-radius:var(--radius-md);padding:var(--space-4)}.lomake-virheet p{font-weight:600;color:var(--error)}.lomake-virheet ul{margin:var(--space-2) 0 0;padding-left:20px}.lomake-virheet a{color:var(--ink)}.lomake-ansa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.lomake-ts:empty{display:none}.lomake-lahetys{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-6)}.lomake-kiitos{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center;padding:var(--space-6) 0}.lomake-kiitos[hidden],.lomake[hidden]{display:none}.nauha:has(.loppumaisema){padding-bottom:0}.loppumaisema :is(circle,path,rect):not(.lattia){fill:var(--bg)}.loppumaisema{display:block;width:100%;height:clamp(90px,9vw,130px);margin-top:var(--space-12)}.kiintea-cta{display:none}.piirto .piirtyva:not(.piirretty) .v{stroke-dasharray:1;stroke-dashoffset:1}.piirto .piirtyva.piirretty:not(.valmis) .v{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset .4s var(--ease) calc(var(--viive, 0ms) + var(--d, 0ms))}.piirto .piirtyva:not(.piirretty) .af{opacity:0}.piirto .piirtyva.piirretty .af{transition:opacity .3s var(--ease) calc(var(--viive, 0ms) + .3s)}@supports (animation-timeline: view()){.bar{animation:barg linear both;animation-timeline:scroll(root)}.hpar{animation:hpar linear both;animation-timeline:scroll(root);animation-range:0 700px}.tayttyva{animation:tayttyy linear both;animation-timeline:--vaiheet;animation-range:cover 25% cover 60%}}@keyframes barg{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes hpar{to{transform:translateY(calc(var(--par, 0px) * -1))}}@keyframes tayttyy{0%{transform:var(--tyhja)}to{transform:none}}.io-anim .hpar{transform:translateY(calc(var(--par, 0px) * -1 * var(--p, 0)))}.io-anim .tayttyva{transform:scaleX(var(--t, 0))}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.piirto .piirtyva .v{stroke-dashoffset:0!important;stroke-dasharray:none!important}.piirto .piirtyva .af{opacity:1!important}.bar{display:none}.hpar,.tayttyva{transform:none!important}}@media(max-width:1080px){.nav-linkit{display:none}.mvalikko{display:block}.nav-in{gap:var(--space-3)}}@media(max-width:960px){.kurssit{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-asettelu{grid-template-columns:minmax(0,1fr);gap:var(--space-6)}.faq-otsikko{position:static;flex-direction:row;align-items:center;justify-content:space-between}.faq-otsikko .sp-art{width:120px}.paneeli,.materiaalit{grid-template-columns:260px minmax(0,1fr);gap:var(--space-8)}.luotto{grid-template-columns:minmax(0,1fr)}}@media(max-width:767px){.wrap{padding:0 var(--space-4)}.sec{padding-block:var(--space-12)}.sp-display{font-size:40px;line-height:44px}.sp-h1{font-size:32px;line-height:38px}.sp-h3{font-size:20px;line-height:26px}.lead{font-size:18px;line-height:28px}.sec-head{margin-bottom:var(--space-8)}.hero{padding:var(--space-12) 0 0}.maisema{height:250px;margin-top:0}.maisema .alat-teksti{display:none}.alat-lista{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);list-style:none;padding:var(--space-4);margin:0;background:var(--soft)}.alat-lista li{font:600 13px/18px var(--font-sans);color:var(--ink);background:var(--bg);border-radius:var(--radius-pill);padding:4px 10px}.hero-in{gap:var(--space-4)}.hero-toiminnot{flex-direction:column;gap:var(--space-4)}.lupaukset{flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-4)}.lupaukset li{padding:0}.lupaukset li+li{border:0}.paneeli,.materiaalit{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}.paneeli{padding:var(--space-6) var(--space-4);border-radius:var(--radius-card)}.faq-lista{padding:0 var(--space-4)}.puhelin{min-height:420px;max-width:320px;width:100%;margin:0 auto}.materiaalit{margin-top:var(--space-4)}.esimerkki{padding:var(--space-6)}.esimerkki dl>div{grid-template-columns:minmax(0,1fr);gap:var(--space-1)}.video{margin-top:var(--space-12)}.kurssit{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.kurssi-iso{grid-column:auto;flex-direction:column}.kurssi-iso .kurssi-kuva{border-right:0;border-bottom:1px solid var(--line)}.kurssi-iso .kurssi-teksti{padding:var(--space-6)}.kurssi-iso .kurssi-teksti .sp-h3{font-size:22px;line-height:28px}.huomautus,.huomautus-oikea{justify-content:center;padding:0}.huomautus-oikea{flex-direction:row-reverse}.huomautus-oikea .nuoli{transform:none}.vaiheet ol{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}.vaiheet ol{padding-top:0}.vaiheet li{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:var(--space-4);row-gap:var(--space-1);align-items:start;text-align:left;padding:var(--space-4)}.vaiheet li .numero{margin:0}.vaiheet li .numero{grid-row:1 / span 2}.vaiheet li .sp-h3{padding-top:8px}.vaiheet li p{grid-column:2}.vaihe-viiva{top:38px;bottom:var(--viiva-loppu, 120px);left:37px;right:auto;width:2px;height:auto}.tayttyva{transform-origin:50% 0;--tyhja: scaleY(0)}.io-anim .tayttyva{transform:scaleY(var(--t, 0))}.faq summary{font-size:17px;padding:var(--space-4) 0}.faq p{padding-right:0}.lomake-pohja{padding:var(--space-6) var(--space-4)}.lomake-rivi{grid-template-columns:minmax(0,1fr)}.lomake-lahetys .sp-btn{width:100%}.foot-in{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.kiintea-cta{display:block;position:fixed;z-index:30;left:var(--space-4);right:var(--space-4);bottom:calc(var(--space-4) + env(safe-area-inset-bottom));transform:translateY(calc(100% + var(--space-6)));opacity:0;visibility:hidden;transition:transform .3s var(--ease),opacity .3s var(--ease),visibility 0s .3s}.kiintea-cta.nayta{transform:none;opacity:1;visibility:visible;transition:transform .3s var(--ease),opacity .3s var(--ease),visibility 0s}.kiintea-cta .sp-btn{width:100%;box-shadow:var(--shadow-raised)}}@media(max-width:520px){.nav-btn{display:none}.mvalikko-paneeli{padding-inline:var(--space-4)}.mvalikko-paneeli .sp-btn{align-self:stretch}}
