:root{
  --ui-pinktint-100:#13090e;
  --ui-pinktint-200:#1b0f12;
  --ui-pinktint-300:#240f1c;
  --ui-pinktint-deep:#371221;
  --ui-lilac:#150d13;
  --ui-lilac-deep:#1e111f;

  --ui-panel:#1a0e15;
  --ui-panel-tint:#21161f;
  --ui-panel-deep:#281a23;

  --ui-rose:#f3307a;
  --ui-rose-active:#fe2c6d;
  --ui-coral:#fe4b5d;
  --ui-coral-deep:#ff3a50;
  --ui-sun:#ff7c3c;
  --ui-sun-deep:#ff6826;
  --ui-heart:#fd3949;
  --ui-peri:#9a9ee1;

  --ui-copy:#f4eff0;
  --ui-copy-tint:#b4a8b3;
  --ui-subtle:#877d83;
  --ui-border:#382931;

  --ui-flip:#fdfffe;
  --ui-white:#fdfffe;
  --ui-positive:#34c575;
  --ui-border-tint:rgba(253,255,254,.06);
  --ui-panel-wash:rgba(18,8,16,.84);
  --ui-overlay:rgba(2,0,1,.63);
  --ui-baseline-wash:#0e050a;
  --ui-baseline:#c9bcc3;
  --ui-baseline-deep:#f4eff0;
  --ui-baseline-tint:#887b85;
  --ui-baseline-edge:rgba(253,255,254,.07);

  --ui-ro-sm:14px;
  --ui-ro-md:20px;
  --ui-ro-lg:28px;
  --ui-ro-xl:36px;
  --ui-ro-pill:999px;

  --ui-elev-sm:0 6px 16px -8px rgba(2,0,1,.55);
  --ui-elev-md:0 18px 38px -18px rgba(2,0,1,.59);
  --ui-elev-lg:0 30px 60px -24px rgba(2,0,1,.68);

  --ui-heading:"Trebuchet MS","Segoe UI",system-ui,-apple-system,"Helvetica Neue",sans-serif;
  --ui-face:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;

  --ui-container:1200px;
  --ui-gap:24px;
  --ui-section-pad:clamp(56px,7vw,104px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--ui-copy);font-family:var(--ui-face);background:
    radial-gradient(1200px 700px at 85% -8%, var(--ui-pinktint-300) 0%, transparent 55%),
    radial-gradient(900px 600px at -10% 8%, var(--ui-lilac) 0%, transparent 55%),
    linear-gradient(180deg, var(--ui-pinktint-100) 0%, var(--ui-panel-tint) 40%, var(--ui-pinktint-100) 100%);
  background-attachment:fixed;
  -webkit-font-smoothing:antialiased;line-height:1.6;
}
img{max-width:100%;display:block}

.jasenet-cols{gap:22px;display:grid;grid-template-columns:repeat(4,1fr)}
figure{margin:0}
:focus-visible{outline:3px solid var(--ui-rose);border-radius:6px;outline-offset:2px}
.otsikko,.rivi-a,.sidebar-mobile a,.paina,.jalki a,.main-alarivi a,.ymparisto-lista a,.jasen__messenger{text-decoration:none}

.ymparisto{display:flex;gap:32px;flex-direction:column}
.ymparisto-block h2{font-size:1.15rem;margin-bottom:16px;color:var(--ui-copy);font-weight:800}
.ymparisto-lista{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.ymparisto-lista a{border:1px solid var(--ui-border);gap:10px;box-shadow:var(--ui-elev-sm);transition:transform .14s,box-shadow .14s,color .14s;font-size:.92rem;justify-content:space-between;font-weight:600;display:flex;padding:13px 16px;border-radius:var(--ui-ro-md);align-items:center;color:var(--ui-copy);background:var(--ui-panel)}
.ymparisto-lista a:hover{box-shadow:var(--ui-elev-md);transform:translateY(-3px);color:var(--ui-rose-active)}
.ymparisto-lista a .pin{place-items:center;display:grid;color:var(--ui-rose);flex:none}
.ymparisto-lista a .pin svg{height:16px;width:16px}

.lue-section h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
.lue-section h2{color:var(--ui-rose-active);font-size:1.35rem;font-weight:800;margin-top:34px}
.lue-section p{color:var(--ui-copy-tint);font-size:1.04rem;margin-top:14px}
.lue-section p a{font-weight:600}
.lue-section ul{gap:10px;margin-top:14px;display:grid}
.lue-section li{position:relative;padding-left:24px;color:var(--ui-copy-tint)}
.lue-section li::before{content:"";position:absolute;height:10px;left:0;background:var(--ui-coral);top:.5em;border-radius:50%;width:10px}
.lue-info>.container>h2{margin-bottom:28px;text-align:center}
.missa-tile{box-shadow:var(--ui-elev-md);border-radius:var(--ui-ro-lg);background:var(--ui-lilac);position:relative;border:1px solid var(--ui-border-tint);overflow:hidden;aspect-ratio:4/3}
.missa-tile.missa-later{cursor:pointer}
.missa-ghost{position:absolute;background:linear-gradient(160deg,var(--ui-lilac-deep),var(--ui-panel-deep));padding:20px;text-align:center;display:grid;gap:10px;inset:0;place-items:center}
.missa-ghost p{font-weight:700;color:var(--ui-copy)}
.missa-pin{filter:drop-shadow(0 10px 12px rgba(251,72,100,.5));color:var(--ui-coral)}
.missa-pin svg{height:40px;stroke:none;fill:currentColor;width:40px}
.missa-tile iframe{width:100%;border:0;position:absolute;height:100%;inset:0}
.missa-tile.loaded .missa-ghost{display:none}
.council-nimi{font-family:var(--ui-heading);margin-bottom:14px;font-weight:800}
.council-row{margin-top:10px;align-items:flex-start;font-size:.94rem;gap:10px;display:flex;color:var(--ui-copy-tint)}
.council-row .pin{flex:none;color:var(--ui-rose)}
.council-row .pin svg{height:16px;width:16px}
.section{padding-block:var(--ui-section-pad)}
.section--inv{background:var(--ui-panel-deep)}

.pilleri-tag{gap:8px;padding:8px 16px;font-weight:700;align-items:center;color:var(--ui-rose);box-shadow:var(--ui-elev-sm);border:1px solid var(--ui-border);border-radius:var(--ui-ro-pill);background:var(--ui-panel);display:inline-flex;font-size:.82rem;letter-spacing:.06em}
.pilleri-tag svg{width:16px;color:var(--ui-coral);height:16px}
.jalki{flex-wrap:wrap;gap:6px;margin-bottom:14px;color:var(--ui-subtle);display:flex;justify-content:flex-start;font-size:.86rem}
.lead{color:var(--ui-copy-tint);font-size:1.06rem;margin-top:14px}

.main-alarivi{background:var(--ui-baseline-wash);color:var(--ui-baseline)}
.main-alarivi .container{padding-block:56px 22px}
.main-alarivi a{color:var(--ui-baseline)}
.main-alarivi a:hover{color:var(--ui-baseline-deep)}

.form-holder{max-width:640px}
.form-ghost{width:1px;overflow:hidden;height:1px;position:absolute;left:-9999px}
.info{border-radius:var(--ui-ro-md);align-items:center;padding:14px 16px;gap:12px;border:1px solid var(--ui-border-tint);display:flex;box-shadow:var(--ui-elev-sm);background:var(--ui-panel)}
.info-icon{flex:none;width:40px;display:grid;height:40px;color:var(--ui-rose);border-radius:12px;place-items:center;background:var(--ui-panel-deep)}
.info-icon svg{width:18px;height:18px}
.info-copy dt{letter-spacing:.05em;color:var(--ui-subtle);font-size:.78rem;text-transform:uppercase}
.info-copy dd{font-family:var(--ui-heading);font-weight:800;font-size:.98rem;margin:2px 0 0}
.form-muistio{font-weight:700}
.form-muistio--done{color:var(--ui-positive)}
.form-muistio--hidden{color:var(--ui-rose-active)}
.main-rivi{align-items:center;margin-left:auto;display:flex;gap:8px}

.kysely-form{border-radius:var(--ui-ro-pill);margin:0 auto;display:flex;box-shadow:var(--ui-elev-md);padding:12px;gap:12px;border:1px solid var(--ui-border-tint);background:var(--ui-panel)}
.kysely-form .syota{border:none;font-size:1.06rem;background:transparent;box-shadow:none}
.kysely-form .syota:focus{box-shadow:none}
.kysely-form+.ymparisto{margin-top:40px}
.icon-done svg{stroke:none;fill:currentColor}
.rivi-a{font-weight:600;color:var(--ui-copy);font-size:.96rem;padding:9px 14px;border-radius:var(--ui-ro-pill);transition:background .18s,color .18s}
.rivi-a:hover{background:var(--ui-panel-deep);color:var(--ui-rose-active)}
.rivi-hohto{align-items:center;padding:9px 12px;font-weight:600;text-decoration:none;transition:background .18s ease,color .18s ease;border:none;position:relative;gap:7px;color:var(--ui-copy);font-size:.96rem;display:inline-flex;cursor:pointer;background:none;border-radius:var(--ui-ro-pill)}
.rivi-hohto:hover{color:var(--ui-rose-active);background:var(--ui-panel-deep)}
.rivi-hohto svg{color:var(--ui-rose);height:20px;width:20px}
.rivi-hohto:hover svg{color:var(--ui-rose-active)}
.rivi-hohto__copy{white-space:nowrap}
.rivi-hohto .messenger-pilleri{top:auto;right:auto;position:static}
.rivi-hohto-mobile{width:100%;color:var(--ui-copy);border:none;font-weight:600;gap:9px;padding:14px 2px;font-size:15px;text-align:left;display:flex;background:none;cursor:pointer;text-decoration:none;border-bottom:1px solid var(--ui-border);align-items:center}
.rivi-hohto-mobile:hover{color:var(--ui-rose-active)}
.rivi-hohto-mobile svg{width:18px;color:var(--ui-rose);height:18px}

.doc-aloitus{padding-block:clamp(40px,6vw,80px) 20px}
.doc-aloitus h1{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:800}
.doc-aloitus p{color:var(--ui-copy-tint);font-size:1.08rem;margin:16px auto 0}
.ylaotsikko{text-transform:uppercase;color:var(--ui-rose);font-weight:800;font-size:.8rem;margin-bottom:10px;letter-spacing:.1em}

.main-otsikkorivi{border-bottom:1px solid var(--ui-border);position:sticky;z-index:60;background:var(--ui-panel);top:0}
.main-otsikkorivi__in{display:flex;padding-block:12px;gap:20px;align-items:center;justify-content:space-between;min-height:74px}

.syotti__box{color:var(--ui-flip);align-items:center;background:linear-gradient(100deg,var(--ui-rose-active),var(--ui-coral) 60%,var(--ui-sun));justify-content:space-between;overflow:hidden;box-shadow:var(--ui-elev-lg);gap:30px;border-radius:var(--ui-ro-xl);position:relative;display:flex;flex-wrap:wrap;padding:clamp(38px,5vw,64px)}
.syotti__blob{height:320px;border-radius:50%;right:-90px;top:-120px;position:absolute;background:rgba(253,255,254,.13);width:320px}
.syotti__copy{position:relative;z-index:2}
.syotti__copy h2{color:var(--ui-flip);max-width:16ch}
.syotti__copy p{color:rgba(253,255,254,.94);margin-top:10px;max-width:46ch}
.syotti__box .paina{position:relative;z-index:2}
.ttl{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}
.otsikko{letter-spacing:-.02em;font-family:var(--ui-heading);font-weight:800;font-size:1.28rem;color:var(--ui-copy);display:flex;gap:11px;align-items:center}
.otsikko:hover{color:var(--ui-copy)}
.otsikko__icon{border-radius:14px;box-shadow:0 8px 18px -8px rgba(234,78,149,.78);display:inline-flex;height:42px;width:42px;flex-shrink:0;color:var(--ui-flip);align-items:center;background:linear-gradient(135deg,var(--ui-rose),var(--ui-coral) 55%,var(--ui-sun));justify-content:center}
.otsikko__icon svg{height:22px;width:22px}
.hour{display:flex;font-size:.9rem;color:var(--ui-copy-tint);justify-content:space-between;gap:12px}
.meista-council{border-radius:var(--ui-ro-lg);padding:24px;border:1px solid var(--ui-border-tint);background:var(--ui-panel);box-shadow:var(--ui-elev-md)}
h1,h2,h3,h4{margin:0;letter-spacing:-.01em;color:var(--ui-copy);line-height:1.12;font-family:var(--ui-heading)}
.jasen__hohto{top:12px;z-index:2;display:grid;background:var(--ui-panel-wash);right:12px;cursor:pointer;place-items:center;transition:transform .16s,background .16s,color .16s;color:var(--ui-coral);border-radius:50%;position:absolute;height:36px;width:36px;border:none;box-shadow:var(--ui-elev-sm)}
.jasen__hohto svg{width:18px;height:18px}
.jasen__hohto:hover{transform:scale(1.08)}
.jasen__hohto.done{color:var(--ui-flip);background:var(--ui-coral)}
.jasen__hohto.done svg{fill:currentColor}
.jasen-shot__hohto{height:46px;width:46px;top:14px;right:14px}
.jasen-shot__hohto svg{height:21px;width:21px}
.jasen__in{padding:16px 18px}
.jasen__nimi{font-family:var(--ui-heading);font-weight:800;font-size:1.12rem}
.jasen__nimi a{text-decoration:none;color:inherit;outline-offset:3px}
.jasen__nimi a::after{position:absolute;z-index:1;content:"";inset:0}
.jasen__nimi span{color:var(--ui-subtle);font-weight:600}
.jasen__place{color:var(--ui-copy-tint);display:flex;margin-top:4px;gap:6px;align-items:center;font-size:.88rem}
.jasen__place .pin svg{width:14px;color:var(--ui-rose);height:14px}
.jasen__messenger{font-weight:700;gap:7px;position:relative;box-shadow:var(--ui-elev-sm);display:inline-flex;color:var(--ui-flip);width:100%;font-size:.9rem;border-radius:var(--ui-ro-pill);align-items:center;background:linear-gradient(135deg,var(--ui-rose),var(--ui-coral));justify-content:center;margin-top:12px;z-index:2;transition:transform .16s ease,box-shadow .16s ease;padding:9px 14px}
.jasen__messenger svg{width:16px;height:16px}
.jasen__messenger:hover{box-shadow:var(--ui-elev-md);transform:translateY(-1px)}
.jasen-cols{gap:clamp(24px,4vw,52px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:22px;align-items:start;display:grid}
.jasen-side{min-width:0}
.jasen-shot{background:linear-gradient(160deg,var(--ui-pinktint-200),var(--ui-lilac-deep));box-shadow:var(--ui-elev-md);border-radius:var(--ui-ro-lg);overflow:hidden;position:relative;margin:0}
.jasen-shot img{height:auto;aspect-ratio:4/5;width:100%;object-fit:cover;display:block}
.jasen-nav{place-items:center;box-shadow:var(--ui-elev-md);background:var(--ui-panel-wash);cursor:pointer;z-index:2;height:44px;transform:translateY(-50%);border-radius:50%;top:50%;display:grid;border:none;color:var(--ui-rose-active);position:absolute;width:44px;transition:transform .15s ease,background .15s ease}
.jasen-nav:hover{background:var(--ui-panel-wash);transform:translateY(-50%) scale(1.07)}
.jasen-nav svg{width:22px;height:22px}
.jasen-back{left:12px}
.jasen-right{right:12px}
.jasen-rail{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.jasen-cell{transition:transform .15s ease,border-color .15s ease;border:2px solid transparent;cursor:pointer;box-shadow:var(--ui-elev-sm);width:72px;aspect-ratio:3/4;flex:0 0 auto;overflow:hidden;padding:0;background:var(--ui-panel-deep);border-radius:var(--ui-ro-sm)}
.jasen-cell img{height:100%;display:block;width:100%;object-fit:cover}
.jasen-cell:hover{transform:translateY(-2px)}
.jasen-cell.done{border-color:var(--ui-rose)}
.jasen-sidebar{top:96px;position:sticky}
.jasen-intro{flex-wrap:wrap;margin-top:14px;display:flex;gap:12px;align-items:center}
.jasen-intro .pilleri-tag{flex:none}
.jasen-lead{line-height:1.1;font-family:var(--ui-heading);font-weight:800;font-size:clamp(1.7rem,3.2vw,2.3rem)}
.jasen-lead span{color:var(--ui-subtle);font-weight:600;font-size:.62em}
.jasen-muistio{font-size:1.02rem;align-items:center;gap:7px;margin-top:10px;color:var(--ui-copy-tint);display:flex}
.jasen-muistio .pin svg{color:var(--ui-rose);width:18px;height:18px}
.jasen-muistio a{font-weight:600;color:var(--ui-rose-active);border-bottom:1px solid transparent;transition:border-color .15s ease;text-decoration:none}
.jasen-muistio a:hover{border-bottom-color:currentColor}
.jasen-infos{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}
.jasen-sidebar .lead{margin-top:18px}
.jasen-set{display:flex;flex-wrap:wrap;margin-top:24px;gap:12px}
.lue__copy .paina{margin-top:26px}
svg{display:block}

.paina{
  cursor:pointer;gap:9px;border:1.5px solid transparent;justify-content:center;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;font-weight:700;align-items:center;padding:14px 26px;
  white-space:nowrap;border-radius:var(--ui-ro-pill);text-align:center;font-size:1rem;
  display:inline-flex;
}
.paina svg{height:18px;width:18px}
.paina--xs{padding:10px 18px;font-size:.9rem}
.paina--lg{padding:17px 32px;font-size:1.06rem}
.paina--block{width:100%}
.paina--main{color:var(--ui-flip);background:linear-gradient(95deg,var(--ui-sun),var(--ui-coral) 55%,var(--ui-rose));box-shadow:0 14px 26px -12px rgba(251,72,100,.77)}
.paina--main:hover{color:var(--ui-flip);box-shadow:0 20px 34px -12px rgba(251,72,100,.83);transform:translateY(-2px)}
.paina--ghost{background:var(--ui-panel);color:var(--ui-rose);border-color:var(--ui-border)}
.paina--ghost:hover{background:var(--ui-panel-deep);transform:translateY(-2px);color:var(--ui-rose-active)}
.paina--plain{color:var(--ui-rose-active);background:var(--ui-white)}
.paina--plain:hover{color:var(--ui-rose-active);box-shadow:var(--ui-elev-md);transform:translateY(-2px)}
.schedule{display:grid;margin-top:10px;gap:4px}
.jalki li:not(:last-child)::after{color:var(--ui-subtle);content:"\00203a";margin-left:6px}
.jalki a{color:var(--ui-copy-tint)}

.valikko-btn{padding:6px;z-index:1105;gap:5px;border:none;cursor:pointer;background:none;flex-direction:column;display:none}
.valikko-btn span{background:var(--ui-copy);transition:transform .3s ease,opacity .3s ease;height:3px;border-radius:2px;display:block;width:26px}
.valikko-btn.current span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.valikko-btn.current span:nth-child(2){opacity:0}
.valikko-btn.current span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}

.meista{display:grid;align-items:start;gap:clamp(28px,4vw,48px);grid-template-columns:1.2fr 1fr}
.meista-infos{display:grid;grid-template-columns:1fr 1fr;gap:16px}

.lue{grid-template-columns:1fr 1fr;align-items:center;display:grid;gap:clamp(28px,4vw,56px)}
.lue__copy>p:not(.ylaotsikko){margin-top:16px;font-size:1.04rem;color:var(--ui-copy-tint)}
.lue__deck{font-family:var(--ui-heading);font-size:1.1rem;color:var(--ui-rose-active);font-weight:800;margin-top:22px}
.sidebar-mobile{background:var(--ui-panel);transition:right .3s ease;top:0;z-index:1100;height:100vh;box-shadow:-6px 0 30px rgba(40,36,50,.21);width:80%;max-width:320px;right:-100%;position:fixed;padding:84px 22px 22px;overflow-y:auto;height:100dvh}
.sidebar-mobile.current{right:0}
.sidebar-mobile nav{flex-direction:column;display:flex}
.sidebar-mobile a:not(.paina){font-weight:600;font-size:15px;padding:14px 2px;border-bottom:1px solid var(--ui-border);color:var(--ui-copy)}
.sidebar-mobile a:not(.paina):hover{color:var(--ui-rose-active)}
.sidebar-mobile a.paina{margin-top:22px}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
.info-cell{box-shadow:var(--ui-elev-sm);background:var(--ui-panel);border-radius:var(--ui-ro-md);margin-bottom:14px;border:1px solid var(--ui-border);overflow:hidden}
.info-cell summary{list-style:none;justify-content:space-between;cursor:pointer;padding:20px 22px;font-family:var(--ui-heading);align-items:center;font-weight:800;gap:16px;display:flex;color:var(--ui-copy);font-size:1.05rem}
.info-cell summary::-webkit-details-marker{display:none}
.info-cell summary::after{color:var(--ui-rose);width:30px;background:var(--ui-panel-deep);display:grid;place-items:center;content:"+";transition:transform .25s ease;border-radius:50%;height:30px;font-size:1.2rem;flex:none}
.info-cell[open] summary::after{transform:rotate(45deg);color:var(--ui-flip);background:var(--ui-rose)}
.info-reply{padding:0 22px 20px;color:var(--ui-copy-tint)}
.legal{border-top:1px solid var(--ui-baseline-edge);color:var(--ui-baseline-tint);margin-top:34px;padding-top:22px;font-size:.86rem}

.container{max-width:var(--ui-container);margin-inline:auto;padding-inline:var(--ui-gap)}
.jalki a:hover{color:var(--ui-rose-active)}
button{font-family:inherit}
.round{color:var(--ui-positive);font-size:.6rem;line-height:1}
::selection{background:rgba(234,78,149,.22)}

.widget-syotti{border-radius:var(--ui-ro-lg);z-index:80;position:fixed;border:1px solid var(--ui-border-tint);padding:20px;max-width:calc(100vw - 44px);right:22px;background:var(--ui-panel);width:300px;box-shadow:var(--ui-elev-lg);bottom:22px}
.widget-x{padding:0;font-size:1.1rem;border-radius:50%;cursor:pointer;position:absolute;height:28px;line-height:1;background:var(--ui-panel-deep);color:var(--ui-copy-tint);width:28px;display:grid;top:12px;right:12px;border:none;place-items:center}
.widget-x:hover{color:var(--ui-flip);background:var(--ui-rose)}
.widget-nimi{padding-right:26px;font-family:var(--ui-heading);font-weight:800;font-size:1.04rem}
.widget-copy{margin-top:4px;color:var(--ui-copy-tint);font-size:.86rem;margin-bottom:14px}
.widget-trigger{z-index:80;background:linear-gradient(135deg,var(--ui-rose),var(--ui-coral));display:none;right:22px;width:60px;box-shadow:var(--ui-elev-lg);bottom:22px;color:var(--ui-flip);cursor:pointer;height:60px;border-radius:50%;justify-content:center;border:none;align-items:center;position:fixed}
.widget-trigger svg{stroke:none;height:26px;width:26px;fill:currentColor}
.rivi-screen{inset:0;z-index:1090;visibility:hidden;opacity:0;transition:opacity .3s ease;background:var(--ui-overlay);position:fixed}
.rivi-screen.current{visibility:visible;opacity:1}

.messenger-pilleri{min-width:22px;padding:0 6px;color:var(--ui-flip);background:var(--ui-heart);line-height:1;top:-3px;right:-3px;position:absolute;font-size:.72rem;box-shadow:var(--ui-elev-sm);border-radius:var(--ui-ro-pill);font-weight:800;height:22px;display:grid;place-items:center;border:2px solid var(--ui-panel)}
.messenger-pilleri[hidden]{display:none}

.form{border-radius:var(--ui-ro-lg);background:var(--ui-panel);box-shadow:var(--ui-elev-md);border:1px solid var(--ui-border-tint);padding:clamp(24px,3vw,40px)}
.form-cell{gap:7px;display:grid;margin-bottom:18px}
.form-cell label{font-weight:700;font-size:.92rem}
.alarivi-cols{gap:40px;display:grid;grid-template-columns:1.6fr 1fr 1fr}
.alarivi-otsikko{font-family:var(--ui-heading);gap:10px;font-weight:800;align-items:center;font-size:1.2rem;display:flex;color:var(--ui-baseline-deep);margin-bottom:12px}
.alarivi-side>p:not(.alarivi-nimi){max-width:34ch;font-size:.94rem;color:var(--ui-baseline-tint)}
.alarivi-nimi{font-size:1rem;font-weight:800;margin-bottom:14px;color:var(--ui-baseline-deep)}
.alarivi-lista{display:grid;gap:10px;font-size:.94rem}
.head-zone{text-align:center;max-width:640px;margin:0 auto 44px}
.syota-row{grid-template-columns:1fr 1fr;display:grid;gap:18px}
.syota{border-radius:var(--ui-ro-sm);border:1.5px solid var(--ui-border);background:var(--ui-panel-tint);width:100%;color:var(--ui-copy);font-family:inherit;font-size:1rem;padding:13px 16px;transition:border-color .16s,box-shadow .16s}
.syota:focus{border-color:var(--ui-rose);box-shadow:0 0 0 3px rgba(234,78,149,.15);outline:none}
textarea.syota{resize:vertical;min-height:140px}
.lue-section .jalki{display:flex}.lue-section .jalki li{padding-left:0}.lue-section .jalki li::before{display:none}

.ghost{padding-block:clamp(60px,10vw,140px);text-align:center}
.ghost__num{font-family:var(--ui-heading);font-weight:800;line-height:.9;font-size:clamp(6rem,20vw,13rem)}
.ghost__block{gap:14px;display:flex;margin-top:30px;justify-content:center;flex-wrap:wrap}
.miksi-set{gap:10px;margin-top:14px;display:grid}
.miksi-set li{position:relative;padding-left:24px;color:var(--ui-copy)}
.miksi-set li::before{content:"";background:var(--ui-coral);height:10px;left:0;width:10px;border-radius:50%;top:.5em;position:absolute}
.hl{background:linear-gradient(92deg,var(--ui-rose),var(--ui-coral) 60%,var(--ui-sun));-webkit-background-clip:text;background-clip:text;color:transparent}
.jasen-tile{border-radius:var(--ui-ro-lg);overflow:hidden;background:var(--ui-panel);border:1px solid var(--ui-border-tint);position:relative;box-shadow:var(--ui-elev-md);transition:transform .2s ease,box-shadow .2s ease}
.jasen-tile:hover{transform:translateY(-6px);box-shadow:var(--ui-elev-lg)}
.jasen__kasvot{overflow:hidden;background:linear-gradient(160deg,var(--ui-pinktint-200),var(--ui-lilac-deep));position:relative;aspect-ratio:1/1}
.jasen__kasvot img{object-fit:cover;display:block;height:100%;width:100%}
.jasen__pilleri{top:12px;display:inline-flex;z-index:2;border-radius:var(--ui-ro-pill);position:absolute;box-shadow:var(--ui-elev-sm);gap:6px;align-items:center;font-weight:700;color:var(--ui-positive);padding:5px 10px;background:var(--ui-panel-wash);font-size:.72rem;left:12px}

@media (max-width:980px){
  .jasenet-cols{grid-template-columns:repeat(3,1fr)}
  .jasen-cols{grid-template-columns:1fr}
  .jasen-shot{width:100%;max-width:380px;justify-self:start}
  .jasen-sidebar{position:static}
  .lue,.meista{grid-template-columns:1fr}
  .alarivi-cols{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .main-rivi{display:none}
  .valikko-btn{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .sidebar-mobile,.rivi-screen{display:none}
}
@media (max-width:600px){
  :root{--ui-section-pad:clamp(30px,7vw,48px)}
  .alarivi-cols,.syota-row{grid-template-columns:1fr}
  .jasenet-cols{grid-template-columns:repeat(2,1fr);gap:12px}
  .jasen__in{padding:16px 10px}
  .syotti__box{flex-direction:column;align-items:stretch;padding:32px 24px}
  .syotti__box .paina{width:100%;white-space:normal}
  .kysely-form{flex-direction:column;border-radius:var(--ui-ro-lg)}
  .kysely-form .paina{width:100%}
  .section--jasen{padding-top:0}
  .jasen-shot img{aspect-ratio:1/1;max-height:46vh}
  .jasen-cols{margin-top:0}
  .jasen-sidebar{display:flex;flex-direction:column;margin-top:14px}
  .jasen-intro{order:1;margin-top:0}
  .jasen-muistio{order:2}
  .jasen-set{order:3;margin-top:16px;gap:10px}
  .jasen-set .paina{flex:1 1 auto}
  .jasen-rail{display:none}
  .jasen-infos{order:4}
  .jasen-sidebar .lead{order:5}
  .meista-infos{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .info{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .info-icon{width:34px;height:34px}
  .info-copy{min-width:0}
  .info-copy dd{font-size:.92rem;overflow-wrap:anywhere}
}
