/*
Theme Name: Pyroteknikkojen Kilta
Author: Pyroteknikkojen Kilta ry
Description: Pyroteknikkojen Kilta ry:n kevyt block theme. Ulkoasu ja layout teemassa; jäsenyys- ja sovelluslogiikka Core-lisäosassa.
Version: 0.10.47
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: pyroteknikkojen-kilta
*/

:root { --pk-max-width:1180px; --pk-gold:#F5B72C; --pk-black:#050505; --pk-ivory:#FDFDF6; --pk-line:#D9DBDB; --pk-charcoal:#333435; }
html { scroll-behavior:smooth; }
body { text-rendering:optimizeLegibility; }
* { box-sizing:border-box; }
a { text-underline-offset:.18em; }
:focus-visible { outline:2px solid var(--pk-gold); outline-offset:3px; }
img { max-width:100%; height:auto; }

/* Kaikkien sisältösivujen Gutenberg-peitekuvat näytetään kokonaisina. */
.wp-block-post-content .wp-block-cover,
.editor-styles-wrapper .wp-block-cover {
    background-color:#050505;
}
.wp-block-post-content .wp-block-cover > .wp-block-cover__image-background,
.editor-styles-wrapper .wp-block-cover > .wp-block-cover__image-background {
    object-fit:contain!important;
}


/* Header */
.pk-site-header { background:#050505; }
.pk-top-row, .pk-nav-row { width:100%; }
.pk-top-title {
    display:inline-flex;
    align-items:center;
    gap:14px;
    color:#fff;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1.7rem;
    font-weight:700;
    line-height:1.15;
    text-decoration:none;
}
.pk-top-title:hover, .pk-top-title:focus { color:var(--pk-gold); }
.pk-top-title__logo {
    display:block;
    width:64px;
    height:64px;
    min-width:64px;
    background:url("assets/images/kilta-logo.png") center/contain no-repeat;
}
.pk-user-status { margin-left:auto; text-align:right; line-height:1.35; white-space:nowrap; font-size:.88rem; }
.pk-user-status__identity { color:#fff; }
.pk-user-status__links a { color:var(--pk-gold); text-decoration:none; }
.pk-user-status__links a:hover, .pk-user-status__links a:focus { text-decoration:underline; }
.pk-login-button { margin-left:auto; }
.pk-login-button .wp-element-button { background:var(--pk-gold); color:var(--pk-black); padding:10px 18px; font-weight:700; text-decoration:none; }

.pk-main-nav { width:100%; }
.pk-main-nav-list {
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    align-items:center;
    gap:1.35rem;
    list-style:none;
    margin:0;
    padding:0;
}
.pk-main-nav-list a { color:var(--pk-ivory); text-decoration:none; white-space:nowrap; font-weight:600; }
.pk-main-nav-list a:hover, .pk-main-nav-list a:focus { color:var(--pk-gold); }
.pk-home-link { display:inline-flex; align-items:center; justify-content:center; }
.pk-home-link svg { width:21px; height:21px; fill:currentColor; }

/* Main content */
.pk-main-content { min-height:55vh; }
.pk-main-content > h1,
.pk-main-content .wp-block-post-title { color:var(--pk-gold); }
.pk-content-page, .pk-faq { max-width:980px; margin:0 auto; }
.pk-content-page h1, .pk-faq > h1 { display:none; } /* template owns the page H1 */
.pk-content-page p { font-size:1.05rem; line-height:1.75; margin:0 0 1.35em; }

/* Login */
.pk-member-login { max-width:520px; margin:0 auto; padding:32px; border:1px solid var(--pk-line); background:var(--pk-ivory); }
.pk-member-login h2 { margin-top:0; }
.pk-login-form label { display:block; font-weight:700; margin-bottom:6px; }
.pk-login-form input[type="text"], .pk-login-form input[type="password"] {
    width:100%; padding:12px; border:1px solid #777; background:#fff;
}
.pk-login-form .pk-remember label { display:inline; font-weight:400; }
.pk-login-error { margin:18px 0; padding:12px 14px; border-left:4px solid #b32d2e; background:#fff; }
.pk-login-links { margin-top:24px; padding-top:18px; border-top:1px solid var(--pk-line); }

/* Front page */
.pk-home-hero {
    min-height:640px;
    margin-top:28px;
    display:flex;
    align-items:center;
    background-image:linear-gradient(rgba(5,5,5,.36),rgba(5,5,5,.42)),url("assets/images/etusivu-pyroteknikko.jpg");
    background-size:cover;
    background-position:center 30%;
    overflow:hidden;
}
.pk-home-hero__content { width:100%; padding:0 30px; display:flex; align-items:center; }
.pk-home-hero__text { max-width:820px; margin-top:110px; padding:34px 42px; background:rgba(5,5,5,.56); border-left:4px solid var(--pk-gold); }
.pk-home-hero__title { margin:0 0 18px; color:var(--pk-ivory); font-family:Georgia,serif; font-size:clamp(2.7rem,4.3vw,4.4rem); line-height:1.02; }
.pk-home-hero__subtitle { margin:0; color:var(--pk-ivory); font-family:Georgia,serif; font-size:clamp(1.25rem,2vw,1.8rem); line-height:1.3; }

/* FAQ */
.pk-faq details { border-top:1px solid var(--pk-line); }
.pk-faq details:last-of-type { border-bottom:1px solid var(--pk-line); }
.pk-faq summary { cursor:pointer; font-family:Georgia,serif; font-size:1.2rem; font-weight:700; padding:22px 42px 22px 0; position:relative; }
.pk-faq summary::after { content:"+"; position:absolute; right:6px; top:18px; font-family:Arial,sans-serif; font-size:1.6rem; font-weight:400; }
.pk-faq details[open] summary::after { content:"−"; }
.pk-faq__answer { padding:0 42px 20px 0; }
.pk-faq__answer p { line-height:1.7; margin:0 0 1.15em; }

/* Ajankohtaista / Tapahtumat */
.pk-events-list { max-width:1380px; width:100%; margin:48px auto; }
.pk-event-card { display:block; width:100%; padding:28px 0; border-bottom:1px solid var(--pk-line); }
.pk-event-card__image { display:block; margin-bottom:24px; overflow:hidden; background:#e8e5dc; }
.pk-event-card__image img { display:block; width:100%; height:auto; }
.pk-event-card__date { margin-bottom:8px; color:#8a6417; font-family:Arial,sans-serif; font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.pk-event-card__title { margin:0 0 14px; color:#10191d; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.45rem,2vw,2rem); font-weight:400; line-height:1.18; }
.pk-event-card__title a { color:inherit; text-decoration:none; }
.pk-event-card__title a:hover, .pk-event-card__title a:focus { color:#9a6800; text-decoration:none; }
.pk-event-card__content { color:#39454a; font-size:1rem; line-height:1.65; }
.pk-event-card__content > :first-child { margin-top:0; }
.pk-event-card__content > :last-child { margin-bottom:0; }

/* Ajankohtaista: toimituksellinen kolmen palstan korttinäkymä */
.pk-events-list--current { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:54px 36px; align-items:start; }
.pk-events-list--current .pk-event-card { padding:0 0 28px; border-bottom:1px solid rgba(16,25,29,.18); }
.pk-events-list--current .pk-event-card__image { margin:0 0 22px; overflow:hidden; }
.pk-events-list--current .pk-event-card__image img { display:block; width:100%; height:auto; object-fit:contain; transition:transform .35s ease; }
.pk-events-list--current .pk-event-card__image:hover img { transform:scale(1.025); }
.pk-events-list--current .pk-event-card__content { font-size:.98rem; }
.pk-events-list--current .pk-events-pagination,
.pk-events-list--current > p { grid-column:1 / -1; }
.pk-events-pagination ul { display:flex; gap:8px; list-style:none; padding:24px 0 0; margin:0; }
.pk-events-pagination a, .pk-events-pagination span { display:inline-flex; min-width:40px; min-height:40px; align-items:center; justify-content:center; padding:8px 12px; border:1px solid rgba(16,25,29,.2); color:#10191d; text-decoration:none; }
.pk-events-pagination .current { background:var(--pk-gold); border-color:var(--pk-gold); font-weight:700; }
.pk-events-pagination a:hover, .pk-events-pagination a:focus { border-color:#b17b17; color:#8a6417; }

@media (max-width:1000px) {
    .pk-events-list--current { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
    .pk-events-list { margin:32px auto; }
    .pk-events-list--current { grid-template-columns:1fr; gap:38px; }
}

/* Footer */
.pk-contact-footer { border-top:1px solid #333435; background:var(--pk-black); color:#d9dbdb; padding:28px 24px; }
.pk-contact-footer__inner { width:min(1180px,100%); margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:20px 32px; flex-wrap:wrap; }
.pk-contact-footer__title { color:var(--pk-ivory); font-family:Georgia,serif; font-size:1.05rem; font-weight:700; }
.pk-contact-footer__details { display:flex; gap:10px 24px; flex-wrap:wrap; font-size:.92rem; }
.pk-contact-footer a { color:var(--pk-ivory); text-decoration:none; }
.pk-contact-footer a:hover { text-decoration:underline; }

/* bbPress / bbp Style Pack */
body.bbpress .bbpress-container.bsp-fse-container {
    width:min(1180px,calc(100% - 48px)) !important;
    max-width:1180px !important;
    margin:0 auto !important;
    padding:28px 0 56px !important;
}
body.bbpress .bsp-fse-container > h1,
body.bbpress .bsp-fse-container > .wp-block-post-title,
body.bbpress .bsp-fse-container h1:first-child { margin-top:0 !important; margin-bottom:28px !important; }
body.bbpress #bbpress-forums { width:100% !important; max-width:none !important; margin:0 !important; font-size:1rem; line-height:1.55; }
#bbpress-forums ul.bbp-forums, #bbpress-forums ul.bbp-topics, #bbpress-forums ul.bbp-replies { border:1px solid var(--pk-line); background:var(--pk-ivory); }
#bbpress-forums li.bbp-header { background:var(--pk-black); color:var(--pk-ivory); border:0; padding:14px 16px; font-weight:700; }
#bbpress-forums li.bbp-body ul.forum, #bbpress-forums li.bbp-body ul.topic { padding:18px 16px; background:var(--pk-ivory); border-top:1px solid var(--pk-line); }
#bbpress-forums li.bbp-body ul.forum:hover, #bbpress-forums li.bbp-body ul.topic:hover { background:#f4f4f2; }
#bbpress-forums .bbp-forum-title, #bbpress-forums .bbp-topic-permalink { font-family:Georgia,serif; font-size:1.18rem; font-weight:700; color:var(--pk-charcoal); text-decoration:none; }
#bbpress-forums .bbp-forum-title:hover, #bbpress-forums .bbp-topic-permalink:hover { color:#9a6800; text-decoration:underline; }
#bbpress-forums fieldset.bbp-form { border:1px solid var(--pk-line); background:var(--pk-ivory); padding:20px; margin-top:20px !important; }
#bbpress-forums fieldset.bbp-form legend { font-family:Georgia,serif; font-weight:700; padding:0 8px; }
#bbpress-forums input[type="text"], #bbpress-forums input[type="email"], #bbpress-forums input[type="url"],
#bbpress-forums input[type="password"], #bbpress-forums select, #bbpress-forums textarea {
    border:1px solid #bfc2c2; background:#fff; padding:10px 12px;
}
#bbpress-forums textarea { min-height:180px; height:220px; max-height:300px; }
#bbpress-forums button, #bbpress-forums input[type="submit"], #bbpress-forums .button {
    border:0; border-radius:0; background:var(--pk-gold); color:var(--pk-black); padding:10px 18px; font-weight:700; cursor:pointer;
}
#bbpress-forums .bbp-template-notice { border:1px solid var(--pk-line); background:#f4f4f2; color:var(--pk-charcoal); }

/* Responsive */
@media (max-width:781px) {
    .pk-top-row { align-items:flex-start; gap:12px; }
    .pk-top-title { font-size:1.3rem; }
    .pk-top-title__logo { width:50px; height:50px; min-width:50px; }
    .pk-user-status { white-space:normal; }
    body.home .pk-home-hero { min-height:560px; margin-top:18px; background-position:64% 24%; }
    body.home .pk-home-hero__content { padding:0 16px; }
    body.home .pk-home-hero__text { margin-top:130px; padding:26px 24px; }
    .pk-contact-footer__inner, .pk-contact-footer__details { flex-direction:column; align-items:flex-start; }
}
@media (max-width:700px) {
    body.bbpress .bbpress-container.bsp-fse-container { width:calc(100% - 32px) !important; padding-top:20px !important; }
}

/* v0.10.31 — saavutettava mobiilin hampurilaisvalikko. */
.pk-menu-toggle {
    display:none;
}

@media (max-width:820px) {
    .pk-v93-header.pk-menu-ready .pk-v93-header__inner {
        display:flex!important;
        flex-flow:row wrap!important;
        align-items:center!important;
    }

    .pk-v93-header.pk-menu-ready .pk-v93-logo {
        order:1;
    }

    .pk-v93-header.pk-menu-ready .pk-v93-account {
        order:2;
        margin-left:auto!important;
    }

    .pk-v93-header.pk-menu-ready .pk-menu-toggle {
        order:3;
        display:inline-flex;
        width:46px;
        height:46px;
        margin:0 0 0 12px;
        padding:10px;
        flex:0 0 46px;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:5px;
        border:1px solid #f5b72c;
        border-radius:0;
        background:transparent;
        color:#f5b72c;
        cursor:pointer;
    }

    .pk-v93-header.pk-menu-ready .pk-menu-toggle__bar {
        display:block;
        width:23px;
        height:2px;
        background:currentColor;
        transition:transform .2s ease, opacity .2s ease;
    }

    .pk-v93-header.pk-menu-ready .pk-menu-toggle[aria-expanded="true"] .pk-menu-toggle__bar:nth-child(1) {
        transform:translateY(7px) rotate(45deg);
    }

    .pk-v93-header.pk-menu-ready .pk-menu-toggle[aria-expanded="true"] .pk-menu-toggle__bar:nth-child(2) {
        opacity:0;
    }

    .pk-v93-header.pk-menu-ready .pk-menu-toggle[aria-expanded="true"] .pk-menu-toggle__bar:nth-child(3) {
        transform:translateY(-7px) rotate(-45deg);
    }

    .pk-v93-header.pk-menu-ready .pk-main-nav {
        order:4!important;
        flex:0 0 100%!important;
        width:100%!important;
        margin:10px 0 0!important;
        overflow:visible!important;
    }

    .pk-v93-header.pk-menu-ready:not(.is-menu-open) .pk-main-nav {
        display:none!important;
    }

    .pk-v93-header.pk-menu-ready.is-menu-open .pk-main-nav {
        display:block!important;
    }

    .pk-v93-header.pk-menu-ready .pk-main-nav-list {
        display:flex!important;
        flex-flow:column nowrap!important;
        align-items:stretch!important;
        justify-content:flex-start!important;
        width:100%!important;
        gap:0!important;
        padding:6px 0 4px!important;
        border-top:1px solid #282828;
    }

    .pk-v93-header.pk-menu-ready .pk-main-nav-list li,
    .pk-v93-header.pk-menu-ready .pk-main-nav-list a {
        width:100%!important;
    }

    .pk-v93-header.pk-menu-ready .pk-main-nav-list a {
        min-height:46px;
        padding:12px 4px!important;
        border-bottom:1px solid #282828;
        font-size:15px!important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    *, *::before, *::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}

/* v0.9.3 — header layout isolation. Do not inherit old nav/account sizing. */
.pk-v93-header{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#070809!important;
    border-bottom:1px solid #282828!important;
    color:#fff!important;
}
.pk-v93-header__inner{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:1296px!important;
    min-height:86px!important;
    margin:0 auto!important;
    padding:0 32px!important;
    display:flex!important;
    flex-flow:row nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
}
.pk-v93-logo{
    display:block!important;
    flex:0 0 68px!important;
    width:68px!important;height:68px!important;
    margin:0!important;padding:0!important;line-height:0!important;
}
.pk-v93-logo img{
    display:block!important;width:68px!important;height:68px!important;
    max-width:none!important;object-fit:contain!important;margin:0!important
}
.pk-v93-header .pk-main-nav{
    display:block!important;
    flex:0 1 auto!important;
    width:auto!important;
    margin:0 0 0 auto!important;
    padding:0!important;
}
.pk-v93-header .pk-main-nav-list{
    display:flex!important;
    flex-flow:row nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:auto!important;
    margin:0!important;padding:0!important;
    gap:28px!important;
    list-style:none!important;
}
.pk-v93-header .pk-main-nav-list li{
    display:block!important;float:none!important;
    width:auto!important;margin:0!important;padding:0!important;
}
.pk-v93-header .pk-main-nav-list a{
    display:flex!important;align-items:center!important;
    color:#fff!important;text-decoration:none!important;
    font-size:14px!important;font-weight:700!important;line-height:1.2!important;
    white-space:nowrap!important;
}
.pk-v93-header .pk-home-link svg{width:20px!important;height:20px!important;fill:currentColor!important}
.pk-v93-account{
    display:block!important;
    flex:0 0 auto!important;
    width:auto!important;
    margin:0 0 0 30px!important;
    padding:0!important;
    align-self:center!important;
}
.pk-v93-account .pk-user-status,
.pk-v93-account .pk-login-button,
.pk-v93-account .pk-user-status__links{
    width:auto!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
    white-space:nowrap!important;
}
.pk-v93-account .pk-user-status__identity,
.pk-v93-account .pk-user-status__links span,
.pk-v93-account .pk-user-status__links a:first-child{display:none!important}
.pk-v93-account .pk-user-status__links{display:block!important}
.pk-v93-account .pk-user-status__links a:last-child,
.pk-v93-account .pk-login-button a{
    display:inline-block!important;
    margin:0!important;
    padding:10px 15px!important;
    border:1px solid #f5b72c!important;
    background:transparent!important;
    color:#f5b72c!important;
    font-size:12px!important;font-weight:700!important;
    line-height:1.2!important;text-decoration:none!important;
}

/* Footer v93 uses same successful v92 visual rules. */
.pk-v93-footer{
    margin:0!important;color:#fff;background-color:#090a0b;
    background-image:linear-gradient(rgba(0,0,0,.86),rgba(0,0,0,.92)),
                     url("assets/images/etusivu-pyroteknikko.jpg");
    background-size:cover;background-position:center 72%
}
.pk-v93-footer__overlay{padding:38px 32px 18px}
.pk-v93-footer__grid{max-width:1296px;margin:0 auto;display:grid;grid-template-columns:1.25fr .7fr 1fr;gap:72px;align-items:start}
.pk-v93-footer__brand{display:flex;align-items:center;gap:20px}
.pk-v93-footer__brand img{display:block;width:86px;height:86px;object-fit:contain}
.pk-v93-footer__brand strong{font-size:16px;letter-spacing:.03em}
.pk-v93-footer__brand p{margin:8px 0 0;color:#f5b72c;font-family:Georgia,serif}
.pk-v93-footer h3{margin:5px 0 15px;color:#f5b72c;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.pk-v93-footer__links{display:flex!important;flex-direction:column!important;align-items:flex-start!important}
.pk-v93-footer__links a{display:block!important;margin:0 0 8px!important;color:#fff!important;text-decoration:none!important;font-size:14px;line-height:1.2}
.pk-v93-footer__contact p{margin:0;color:#eee;font-size:14px;line-height:1.75}
.pk-v93-footer__contact a{color:#eee!important;text-decoration:none!important}
.pk-v93-footer__bottom{max-width:1296px;margin:28px auto 0;padding-top:14px;border-top:1px solid #555;display:flex;justify-content:space-between;gap:20px;color:#aaa;font-size:12px}
.pk-v93-footer__bottom a{color:#aaa!important;text-decoration:none!important}

@media(max-width:1000px){
 .pk-v93-header__inner{padding:0 18px!important}
 .pk-v93-header .pk-main-nav-list{gap:17px!important}
 .pk-v93-header .pk-main-nav-list a{font-size:13px!important}
 .pk-v93-account{margin-left:18px!important}
}
@media(max-width:820px){
 .pk-v93-header__inner{flex-wrap:wrap!important;padding:10px 18px!important}
 .pk-v93-logo,.pk-v93-logo img{width:58px!important;height:58px!important;flex-basis:58px!important}
 .pk-v93-account{margin-left:auto!important}
 .pk-v93-header .pk-main-nav{order:3!important;flex:0 0 100%!important;width:100%!important;margin:8px 0 0!important;overflow-x:auto!important}
 .pk-v93-header .pk-main-nav-list{justify-content:flex-start!important;padding-bottom:7px!important}
 .pk-v93-footer__grid{grid-template-columns:1fr;gap:30px}
}


/* v0.9.4 — centered navigation, larger logo, conditional member area */
.pk-v93-header__inner{
    max-width:1380px!important;
    min-height:104px!important;
    padding:0 34px!important;
    display:grid!important;
    grid-template-columns:110px minmax(0,1fr) 150px!important;
    column-gap:24px!important;
}
.pk-v93-logo{
    width:92px!important;height:92px!important;flex:none!important;
    justify-self:start!important;
}
.pk-v93-logo img{
    width:92px!important;height:92px!important;
}
.pk-v93-header .pk-main-nav{
    margin:0!important;
    justify-self:center!important;
    width:auto!important;
}
.pk-v93-header .pk-main-nav-list{
    justify-content:center!important;
    gap:27px!important;
}
.pk-v93-account{
    width:150px!important;
    margin:0!important;
    justify-self:end!important;
    text-align:right!important;
}
.pk-v93-account .pk-user-status,
.pk-v93-account .pk-login-button{
    text-align:right!important;
}
.pk-v93-header .pk-member-area-link a{
    color:#f5b72c!important;
}
@media(max-width:1100px){
 .pk-v93-header__inner{
   grid-template-columns:90px minmax(0,1fr) 130px!important;
   column-gap:16px!important;padding:0 18px!important
 }
 .pk-v93-logo,.pk-v93-logo img{width:78px!important;height:78px!important}
 .pk-v93-header .pk-main-nav-list{gap:17px!important}
 .pk-v93-header .pk-main-nav-list a{font-size:13px!important}
 .pk-v93-account{width:130px!important}
}
@media(max-width:820px){
 .pk-v93-header__inner{display:flex!important;min-height:0!important}
 .pk-v93-logo,.pk-v93-logo img{width:68px!important;height:68px!important}
 .pk-v93-account{width:auto!important;margin-left:auto!important}
}


/* v0.9.5 — deterministic desktop header.
   Absolute placement prevents inherited flex/grid/mobile rules from moving account under logo. */
@media(min-width:821px){
 .pk-v93-header__inner{
   position:relative!important;
   display:block!important;
   width:100%!important;
   max-width:1440px!important;
   height:112px!important;
   min-height:112px!important;
   margin:0 auto!important;
   padding:0!important;
 }
 .pk-v93-logo{
   position:absolute!important;
   left:32px!important;
   top:8px!important;
   display:block!important;
   width:96px!important;height:96px!important;
   margin:0!important;padding:0!important;
 }
 .pk-v93-logo img{
   width:96px!important;height:96px!important;
   display:block!important;margin:0!important;
 }
 .pk-v93-header .pk-main-nav{
   position:absolute!important;
   left:50%!important;
   top:50%!important;
   transform:translate(-50%,-50%)!important;
   display:block!important;
   width:max-content!important;
   max-width:none!important;
   margin:0!important;padding:0!important;
 }
 .pk-v93-header .pk-main-nav-list{
   display:flex!important;
   flex-flow:row nowrap!important;
   align-items:center!important;
   justify-content:center!important;
   gap:27px!important;
   width:max-content!important;
   margin:0!important;padding:0!important;
 }
 .pk-v93-account{
   position:absolute!important;
   right:32px!important;
   top:50%!important;
   transform:translateY(-50%)!important;
   display:block!important;
   width:auto!important;
   margin:0!important;padding:0!important;
   text-align:right!important;
 }
 .pk-v93-account .pk-user-status,
 .pk-v93-account .pk-user-status__links,
 .pk-v93-account .pk-login-button{
   display:block!important;width:auto!important;margin:0!important;padding:0!important;
 }
 .pk-v93-header .pk-member-area-link a{color:#f5b72c!important}
}


/* v0.9.6 — larger logos + gold home icon */
@media(min-width:821px){
 .pk-v93-header__inner{height:272px!important;min-height:272px!important}
 .pk-v93-logo{
   width:256px!important;height:256px!important;
   left:32px!important;top:8px!important;
 }
 .pk-v93-logo img{
   width:256px!important;height:256px!important;
 }
 .pk-v93-header .pk-home-link,
 .pk-v93-header .pk-home-link:visited{
   color:#f5b72c!important;
 }
 .pk-v93-header .pk-home-link svg{
   fill:#f5b72c!important;
 }
}
.pk-v93-footer__brand img{
 width:256px!important;
 height:256px!important;
 object-fit:contain!important;
}
@media(max-width:820px){
 .pk-v93-logo,.pk-v93-logo img{width:96px!important;height:96px!important}
 .pk-v93-footer__brand img{width:128px!important;height:128px!important}
 .pk-v93-header .pk-home-link,.pk-v93-header .pk-home-link:visited{color:#f5b72c!important}
 .pk-v93-header .pk-home-link svg{fill:#f5b72c!important}
}


/* v0.9.8 — front page content belongs to the editable WordPress Page.
   Theme supplies only chrome and reusable styling helpers. */
body.home .pk-front-main,
body.home .pk-front-main > .wp-block-post-content{
    margin:0!important;
    padding:0!important;
    max-width:none!important;
    width:100%!important;
}


/* v0.9.9 — true full-width Gutenberg blocks on the front page */
body.home .wp-site-blocks,
body.home main.pk-front-main,
body.home main.pk-front-main > .wp-block-post-content {
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
}

body.home main.pk-front-main > .wp-block-post-content > .alignfull,
body.home main.pk-front-main > .wp-block-post-content > .wp-block-cover.alignfull,
body.home main.pk-front-main > .wp-block-post-content > .wp-block-group.alignfull {
    width:100vw !important;
    max-width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
}

body.home main.pk-front-main > .wp-block-post-content > .alignwide {
    width:min(1380px, calc(100% - 64px)) !important;
    max-width:1380px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

@media (max-width:600px) {
    body.home main.pk-front-main > .wp-block-post-content > .alignwide {
        width:calc(100% - 36px) !important;
    }
}


/* v0.10.3 — remove any top offset above the site header */
html {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
body {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
body > .wp-site-blocks {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.wp-site-blocks > header:first-child,
.wp-site-blocks > .wp-block-template-part:first-child,
header.wp-block-template-part {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* v0.10.4 — remove the actual FSE template-part/shortcode gap above header.
   The visible band can be created by the outer template-part or shortcode
   wrapper even when html/body margins are already zero. */
html,
body,
body > .wp-site-blocks,
.wp-site-blocks {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.wp-site-blocks {
    gap: 0 !important;
    row-gap: 0 !important;
}

.wp-site-blocks > header.wp-block-template-part:first-child,
.wp-site-blocks > .wp-block-template-part:first-child,
header.wp-block-template-part,
header.wp-block-template-part > .wp-block-shortcode {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: #070809 !important;
}

header.wp-block-template-part > .wp-block-shortcode {
    line-height: 0 !important;
    font-size: 0 !important;
}

header.wp-block-template-part .pk-v93-header,
header.wp-block-template-part .pk-v93-header__inner {
    margin-top: 0 !important;
}


/* v0.10.25 — readable default page canvas.
   Header, footer and explicitly dark content blocks retain their own dark
   backgrounds. Ordinary page content follows theme.json: ivory canvas with
   charcoal text. */
html,
body,
body > .wp-site-blocks {
    background-color:var(--pk-ivory) !important;
    color:var(--pk-charcoal);
}
main.pk-main-content,
main.pk-front-main,
.wp-block-post-content {
    background-color:var(--pk-ivory);
    color:var(--pk-charcoal);
}

/* Keep theme chrome explicitly dark despite the light default canvas. */
header.wp-block-template-part,
header.wp-block-template-part > .wp-block-shortcode,
.pk-v93-header,
.pk-v93-footer {
    background-color:#070809 !important;
}

/* 0.10.9 — editorial article system; preserve featured image aspect ratios */
.pk-event-card__content p{margin:0}.pk-event-card__more{display:inline-block;margin-top:20px;color:#9a6800;font-family:Arial,sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.pk-event-card__more:hover,.pk-event-card__more:focus{color:#10191d}
.pk-single{margin:0!important}.pk-article-hero{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;background:#10191d}.pk-article-hero__inner{width:min(1180px,calc(100% - 96px));margin:0 auto;padding:88px 0 76px}.pk-article-hero__cats,.pk-article-hero__cats a{color:#f5b72c;font-family:Arial,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.13em;text-decoration:none;text-transform:uppercase}.pk-article-hero__title{max-width:1050px;margin:14px 0 26px!important;color:#fff!important;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.8rem,6vw,4.75rem);font-weight:400;line-height:1.06}.pk-article-hero__rule{width:72px;height:3px;margin-bottom:24px;background:#f5b72c}.pk-article-hero__date{color:#aeb9be;font-family:Arial,sans-serif;font-size:.92rem}.pk-article-body{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;background:#f4f1e9}.pk-article-body__inner{width:min(1180px,calc(100% - 96px));margin:0 auto;padding:64px 0 92px}.pk-article-featured{margin:0 0 56px}.pk-article-featured img{display:block;width:auto;max-width:100%;height:auto;max-height:900px;object-fit:contain;margin-left:auto;margin-right:auto}.pk-article-lead,.pk-article-content,.pk-article-back{width:min(920px,100%);margin-left:auto!important;margin-right:auto!important}.pk-article-lead{margin-bottom:34px!important;color:#10191d;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.35rem,2.2vw,1.75rem);line-height:1.55}.pk-article-content{color:#263238;font-family:Arial,sans-serif;font-size:1.12rem;line-height:1.8}.pk-article-content h2,.pk-article-content h3{color:#10191d;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.2}.pk-article-content h2{margin-top:3rem;font-size:clamp(2rem,3.5vw,2.8rem)}.pk-article-content h3{margin-top:2.3rem;font-size:1.65rem}.pk-article-content blockquote{margin:3rem 0;padding:.4rem 0 .4rem 1.8rem;border-left:4px solid #f5b72c;color:#10191d;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.4rem,2.5vw,2rem);font-style:italic;line-height:1.5}.pk-article-back{margin-top:60px!important;padding-top:30px;border-top:1px solid rgba(16,25,29,.18)}.pk-article-back a{color:#9a6800;font-family:Arial,sans-serif;font-size:.85rem;font-weight:700;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.pk-related{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:#10191d}.pk-related__inner{width:min(1380px,calc(100% - 96px));margin:0 auto;padding:78px 0 92px}.pk-related__eyebrow{margin:0 0 10px;color:#f5b72c;font:700 .78rem Arial,sans-serif;letter-spacing:.13em}.pk-related__heading{margin:0 0 42px;color:#fff;font:400 clamp(2.2rem,4vw,3.2rem)/1.1 Georgia,"Times New Roman",serif}.pk-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.pk-related-card__image{display:block;margin-bottom:20px;overflow:hidden}.pk-related-card__image img{display:block;width:100%;height:auto;object-fit:contain}.pk-related-card__meta{margin:0 0 9px;color:#f5b72c;font:700 .75rem Arial,sans-serif;letter-spacing:.09em}.pk-related-card__title{margin:0 0 18px;color:#fff;font:400 1.55rem/1.25 Georgia,"Times New Roman",serif}.pk-related-card__title a{color:inherit;text-decoration:none}.pk-related-card__link{color:#f5b72c;font:700 .78rem Arial,sans-serif;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}@media(max-width:900px){.pk-related__grid{grid-template-columns:1fr 1fr}.pk-article-hero__inner,.pk-article-body__inner,.pk-related__inner{width:calc(100% - 48px)}}@media(max-width:600px){.pk-related__grid{grid-template-columns:1fr}.pk-article-hero__inner{padding:64px 0 56px}.pk-article-body__inner{padding:32px 0 64px}.pk-article-featured{margin-bottom:36px}.pk-article-hero__inner,.pk-article-body__inner,.pk-related__inner{width:calc(100% - 32px)}}


.pk-membership-status {
    display:flex;
    align-items:flex-start;
    gap:14px;
    width:100%;
    margin:0 0 30px;
    padding:16px 20px;
    border:1px solid rgba(245,183,44,.35);
    background:rgba(245,183,44,.08);
    color:#f4f1e9;
    font-family:Arial,sans-serif;
    font-size:1rem;
    line-height:1.5;
}
.pk-membership-status__icon {
    flex:0 0 auto;
    font-size:1.35rem;
    line-height:1.2;
}
.pk-membership-status__text > :first-child { margin-top:0 !important; }
.pk-membership-status__text > :last-child { margin-bottom:0 !important; }
.pk-membership-status--negative {
    border-color:#f5b72c;
    background:rgba(245,183,44,.12);
}
.pk-membership-status--negative .pk-membership-status__icon,
.pk-membership-status--positive .pk-membership-status__icon {
    color:#f5b72c;
}
.pk-membership-status--positive {
    border-color:rgba(244,241,233,.28);
    background:rgba(244,241,233,.06);
}
/* v0.10.47 — Dokumenttipankin ulkoasu siirretty: assets/css/page-dokumenttipankki.css */

/* v0.10.17 — Keskustelut / bbPress */
body.pk-page-keskustelut {
    background:#10191d;
}
body.pk-page-keskustelut .wp-block-post-content {
    width:100vw;
    max-width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
    padding:52px 0 72px;
    background:#10191d;
}
body.pk-page-keskustelut .kilta-discussions {
    width:min(1380px, calc(100% - 96px));
    max-width:1380px;
    margin:0 auto;
    font-family:Arial, Aptos, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.pk-page-keskustelut #bbpress-forums {
    font-size:16px;
    color:#333435;
}
body.pk-page-keskustelut #bbpress-forums a {
    color:#333435;
}
body.pk-page-keskustelut #bbpress-forums .bbp-breadcrumb {
    margin:0 0 20px;
    color:#c8c8c2;
}
body.pk-page-keskustelut #bbpress-forums .bbp-breadcrumb p {
    margin:0;
    font-size:14px;
}
body.pk-page-keskustelut #bbpress-forums .bbp-breadcrumb a {
    color:#F5B72C;
    text-decoration:none;
}
body.pk-page-keskustelut #bbpress-forums .bbp-breadcrumb-sep {
    color:#777;
    padding:0 7px;
}

/* Haku */
body.pk-page-keskustelut #bbpress-forums .bbp-search-form {
    float:none;
    width:100%;
    margin:0 0 28px;
}
body.pk-page-keskustelut #bbpress-forums #bbp-search-form > div {
    display:grid;
    grid-template-columns:minmax(0,1fr) 120px;
    gap:0;
    width:100%;
}
body.pk-page-keskustelut #bbpress-forums #bbp_search {
    box-sizing:border-box;
    width:100%;
    min-height:52px;
    padding:0 18px;
    border:1px solid #d9dbdb;
    border-right:0;
    border-radius:3px 0 0 3px;
    background:#f4f1e9;
    color:#10191d;
    font:16px Arial, sans-serif;
}
body.pk-page-keskustelut #bbpress-forums #bbp_search:focus {
    outline:2px solid #F5B72C;
    outline-offset:-2px;
}
body.pk-page-keskustelut #bbpress-forums #bbp_search_submit {
    min-height:52px;
    margin:0;
    padding:0 24px;
    border:0;
    border-radius:0 3px 3px 0;
    background:#F5B72C;
    color:#10191d;
    font-weight:700;
    font-size:16px;
    cursor:pointer;
}

/* Foorumihakemisto */
body.pk-page-keskustelut #bbpress-forums ul.bbp-forums {
    border:0;
    background:transparent;
    font-size:inherit;
}
body.pk-page-keskustelut #bbpress-forums li.bbp-header {
    padding:14px 22px;
    border:0;
    border-bottom:3px solid #F5B72C;
    background:#0b1215;
    color:#f4f1e9;
}
body.pk-page-keskustelut #bbpress-forums li.bbp-header .forum-titles {
    display:grid;
    grid-template-columns:minmax(0,1fr) 110px 110px 260px;
    align-items:center;
    width:100%;
}
body.pk-page-keskustelut #bbpress-forums li.bbp-header ul {
    font-size:13px;
    font-weight:700;
    letter-spacing:.07em;
    text-transform:uppercase;
}
body.pk-page-keskustelut #bbpress-forums li.bbp-header li {
    width:auto;
    float:none;
    color:#f4f1e9;
}
body.pk-page-keskustelut #bbpress-forums li.bbp-header .bbp-forum-topic-count,
body.pk-page-keskustelut #bbpress-forums li.bbp-header .bbp-forum-reply-count {
    text-align:center;
}
body.pk-page-keskustelut #bbpress-forums li.bbp-body {
    border:0;
}
body.pk-page-keskustelut #bbpress-forums li.bbp-body > ul {
    display:grid;
    grid-template-columns:minmax(0,1fr) 110px 110px 260px;
    align-items:center;
    min-height:118px;
    margin:0 0 14px;
    padding:22px;
    box-sizing:border-box;
    border:1px solid rgba(245,183,44,.18);
    border-radius:4px;
    background:#f4f1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.12);
}
body.pk-page-keskustelut #bbpress-forums li.bbp-body > ul:hover {
    border-color:rgba(245,183,44,.55);
}
body.pk-page-keskustelut #bbpress-forums li.bbp-body > ul > li {
    float:none;
    width:auto;
    box-sizing:border-box;
}
body.pk-page-keskustelut #bbpress-forums .bbp-forum-info {
    width:auto;
    padding-right:24px;
}
body.pk-page-keskustelut #bbpress-forums .bbp-forum-title {
    display:inline-block;
    margin-bottom:8px;
    color:#10191d;
    font-family:Georgia, "Times New Roman", serif;
    font-size:25px;
    line-height:1.15;
    font-weight:700;
    text-decoration:none;
}
body.pk-page-keskustelut #bbpress-forums .bbp-forum-title:hover {
    color:#b17b17;
}
body.pk-page-keskustelut #bbpress-forums .bbp-forum-content {
    margin:0;
    color:#555;
    font-size:14px;
    line-height:1.55;
}
body.pk-page-keskustelut #bbpress-forums .bbp-forum-topic-count,
body.pk-page-keskustelut #bbpress-forums .bbp-forum-reply-count {
    width:auto;
    text-align:center;
    color:#10191d;
    font-size:18px;
    font-weight:700;
}
body.pk-page-keskustelut #bbpress-forums .bbp-forum-freshness {
    width:auto;
    text-align:left;
    color:#555;
    font-size:13px;
    line-height:1.45;
}
body.pk-page-keskustelut #bbpress-forums .bbp-forum-freshness > a {
    color:#b17b17;
    font-weight:700;
    text-decoration:none;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-meta {
    margin:7px 0 0;
    font-size:13px;
}
body.pk-page-keskustelut #bbpress-forums .bbp-author-link {
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#555;
    text-decoration:none;
}
body.pk-page-keskustelut #bbpress-forums .bbp-author-avatar img {
    width:22px;
    height:22px;
    border-radius:50%;
    vertical-align:middle;
}
body.pk-page-keskustelut #bbpress-forums li.bbp-footer {
    display:none;
}

/* Muut bbPress-näkymät: aiheet, vastaukset ja lomakkeet */
body.pk-page-keskustelut #bbpress-forums ul.bbp-topics,
body.pk-page-keskustelut #bbpress-forums ul.bbp-replies {
    border:0;
    background:transparent;
}
body.pk-page-keskustelut #bbpress-forums div.even,
body.pk-page-keskustelut #bbpress-forums ul.even,
body.pk-page-keskustelut #bbpress-forums div.odd,
body.pk-page-keskustelut #bbpress-forums ul.odd {
    background:#f4f1e9;
}
body.pk-page-keskustelut #bbpress-forums fieldset.bbp-form {
    border:1px solid rgba(245,183,44,.28);
    border-radius:4px;
    background:#f4f1e9;
    color:#333435;
    padding:22px;
}
body.pk-page-keskustelut #bbpress-forums fieldset.bbp-form legend {
    padding:0 8px;
    color:#b17b17;
    font-family:Georgia, "Times New Roman", serif;
    font-weight:700;
}
body.pk-page-keskustelut #bbpress-forums textarea,
body.pk-page-keskustelut #bbpress-forums input[type="text"],
body.pk-page-keskustelut #bbpress-forums input[type="password"],
body.pk-page-keskustelut #bbpress-forums select {
    box-sizing:border-box;
    border:1px solid #c9cbc8;
    border-radius:2px;
    background:#fff;
    color:#10191d;
    padding:10px 12px;
}
body.pk-page-keskustelut #bbpress-forums button,
body.pk-page-keskustelut #bbpress-forums input[type="submit"] {
    border:0;
    border-radius:2px;
    background:#F5B72C;
    color:#10191d;
    font-weight:700;
}

/* Mobiili */
@media(max-width:900px) {
    body.pk-page-keskustelut .kilta-discussions {
        width:min(100% - 48px, 1380px);
    }
    body.pk-page-keskustelut #bbpress-forums li.bbp-header {
        display:none;
    }
    body.pk-page-keskustelut #bbpress-forums li.bbp-body > ul {
        grid-template-columns:1fr 1fr;
        gap:16px 24px;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-forum-info {
        grid-column:1/-1;
        padding-right:0;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-forum-topic-count,
    body.pk-page-keskustelut #bbpress-forums .bbp-forum-reply-count {
        text-align:left;
        font-size:14px;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-forum-topic-count::before {
        content:"Aiheet: ";
        font-weight:400;
        color:#777;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-forum-reply-count::before {
        content:"Artikkelit: ";
        font-weight:400;
        color:#777;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-forum-freshness {
        grid-column:1/-1;
    }
}
@media(max-width:600px) {
    body.pk-page-keskustelut .wp-block-post-content {
        padding:34px 0 48px;
    }
    body.pk-page-keskustelut .kilta-discussions {
        width:calc(100% - 32px);
    }
    body.pk-page-keskustelut #bbpress-forums #bbp-search-form > div {
        grid-template-columns:1fr;
        gap:8px;
    }
    body.pk-page-keskustelut #bbpress-forums #bbp_search {
        border-right:1px solid #d9dbdb;
        border-radius:3px;
    }
    body.pk-page-keskustelut #bbpress-forums #bbp_search_submit {
        border-radius:3px;
    }
}


/* v0.10.18 — bbPress: yksittäinen foorumi, aihelista ja uuden aiheen lomake */

/* bbPressin oma single-forum-kuori samalle 1380 px linjalle */
body.pk-page-keskustelut .bbpress-container.bsp-fse-container {
    width:min(1380px, calc(100% - 96px));
    max-width:1380px;
    margin:0 auto;
    padding:48px 0 72px;
}
body.pk-page-keskustelut .bbpress-container > .wp-block-query-title {
    max-width:none !important;
    margin:0 0 24px !important;
    color:#F5B72C;
    font-family:Georgia, "Times New Roman", serif;
    font-size:clamp(36px, 4.4vw, 58px) !important;
    line-height:1.05;
}
body.pk-page-keskustelut .bbpress-content {
    width:100%;
}

/* Yläosa */
body.pk-page-keskustelut #bbpress-forums {
    position:relative;
}
body.pk-page-keskustelut #bbpress-forums #subscription-toggle {
    position:absolute;
    right:0;
    top:-2px;
}
body.pk-page-keskustelut #bbpress-forums #subscription-toggle a {
    display:inline-block;
    padding:8px 15px;
    border:1px solid rgba(245,183,44,.55);
    border-radius:2px;
    background:#F5B72C;
    color:#10191d;
    font-size:13px;
    font-weight:700;
    text-decoration:none;
}
body.pk-page-keskustelut #bbpress-forums .bbp-template-notice {
    box-sizing:border-box;
    margin:20px 0 24px;
    padding:12px 16px;
    border:1px solid rgba(245,183,44,.22);
    border-left:4px solid #F5B72C;
    border-radius:2px;
    background:#f4f1e9;
    color:#444;
}
body.pk-page-keskustelut #bbpress-forums .bbp-template-notice ul,
body.pk-page-keskustelut #bbpress-forums .bbp-template-notice li {
    margin:0;
    padding:0;
    list-style:none;
    font-size:13px;
    line-height:1.5;
}
body.pk-page-keskustelut #bbpress-forums .bbp-template-notice a {
    color:#b17b17;
}
body.pk-page-keskustelut #bbpress-forums .bbp-pagination {
    float:none;
    width:100%;
    margin:18px 0;
    color:#aeb4b5;
    font-size:13px;
}
body.pk-page-keskustelut #bbpress-forums .bbp-pagination-count {
    float:none;
}

/* Aihelista */
body.pk-page-keskustelut #bbpress-forums ul.bbp-topics li.bbp-header .forum-titles {
    display:grid;
    grid-template-columns:minmax(0,1fr) 90px 110px 250px;
    gap:24px;
}
body.pk-page-keskustelut #bbpress-forums ul.bbp-topics li.bbp-header li {
    float:none;
    width:auto;
}
body.pk-page-keskustelut #bbpress-forums ul.bbp-topics li.bbp-body > ul {
    display:grid;
    grid-template-columns:minmax(0,1fr) 90px 110px 250px;
    gap:24px;
    align-items:center;
    min-height:108px;
    margin:0 0 14px;
    padding:22px 24px;
    border:1px solid rgba(245,183,44,.18);
    border-radius:4px;
    background:#f4f1e9;
}
body.pk-page-keskustelut #bbpress-forums ul.bbp-topics li.bbp-body > ul > li {
    float:none;
    width:auto;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-title {
    padding-right:16px;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-permalink {
    color:#10191d;
    font-family:Georgia, "Times New Roman", serif;
    font-size:21px;
    font-weight:700;
    text-decoration:none;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-permalink:hover {
    color:#b17b17;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-voice-count,
body.pk-page-keskustelut #bbpress-forums .bbp-topic-reply-count {
    text-align:center;
    font-weight:700;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-freshness {
    font-size:13px;
    line-height:1.45;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-freshness > a {
    color:#b17b17;
    font-weight:700;
    text-decoration:none;
}

/* Uuden aiheen lomake */
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form {
    clear:both;
    margin-top:38px;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form fieldset.bbp-form {
    margin:0;
    padding:30px 32px 28px;
    border:1px solid rgba(245,183,44,.25);
    border-top:4px solid #F5B72C;
    border-radius:4px;
    background:#f4f1e9;
    box-shadow:0 10px 28px rgba(0,0,0,.14);
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form fieldset.bbp-form > legend {
    display:block;
    width:auto;
    max-width:100%;
    margin:0 0 12px;
    padding:0 8px;
    color:#10191d;
    font-family:Georgia, "Times New Roman", serif;
    font-size:25px;
    line-height:1.2;
    font-weight:700;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form p {
    margin:18px 0;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form label {
    display:inline-block;
    margin-bottom:7px;
    color:#333435;
    font-size:14px;
    font-weight:700;
}
body.pk-page-keskustelut #bbpress-forums #bbp_topic_title,
body.pk-page-keskustelut #bbpress-forums #bbp_topic_tags {
    display:block;
    width:100%;
    max-width:none;
    min-height:46px;
    padding:10px 13px;
    border:1px solid #c9cbc8;
    border-radius:2px;
    background:#fff;
    color:#10191d;
    font-size:16px;
}
body.pk-page-keskustelut #bbpress-forums .bbp-the-content-wrapper {
    margin:18px 0 22px;
}
body.pk-page-keskustelut #bbpress-forums .wp-editor-container {
    border:1px solid #c9cbc8;
    border-radius:2px;
    background:#fff;
    overflow:hidden;
}
body.pk-page-keskustelut #bbpress-forums .quicktags-toolbar {
    box-sizing:border-box;
    min-height:42px;
    padding:7px 9px;
    border:0;
    border-bottom:1px solid #d9dbdb;
    background:#ecebe5;
}
body.pk-page-keskustelut #bbpress-forums .quicktags-toolbar input.ed_button {
    min-width:auto;
    min-height:28px;
    margin:2px;
    padding:3px 8px;
    border:1px solid #c7c8c4;
    border-radius:2px;
    background:#fff;
    color:#333435;
    font-size:11px;
    font-weight:700;
}
body.pk-page-keskustelut #bbpress-forums textarea.bbp-the-content {
    display:block;
    box-sizing:border-box;
    width:100% !important;
    min-height:240px;
    margin:0;
    padding:14px;
    border:0;
    border-radius:0;
    resize:vertical;
    background:#fff;
    color:#10191d;
    font:15px/1.55 Arial, sans-serif;
}
body.pk-page-keskustelut #bbpress-forums textarea.bbp-the-content:focus,
body.pk-page-keskustelut #bbpress-forums #bbp_topic_title:focus,
body.pk-page-keskustelut #bbpress-forums #bbp_topic_tags:focus,
body.pk-page-keskustelut #bbpress-forums .bbp_dropdown:focus {
    outline:2px solid #F5B72C;
    outline-offset:1px;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form .bbp_dropdown {
    min-width:190px;
    min-height:42px;
    padding:8px 36px 8px 11px;
    border:1px solid #c9cbc8;
    border-radius:2px;
    background:#fff;
    color:#10191d;
    font-size:14px;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form input[type="checkbox"] {
    width:17px;
    height:17px;
    margin:0 7px 0 0;
    vertical-align:-3px;
    accent-color:#F5B72C;
}
body.pk-page-keskustelut #bbpress-forums .bbp-submit-wrapper {
    float:none;
    display:flex;
    justify-content:flex-end;
    margin-top:26px;
}
body.pk-page-keskustelut #bbpress-forums #bbp_topic_submit {
    min-width:132px;
    min-height:46px;
    padding:10px 22px;
    border:0;
    border-radius:2px;
    background:#F5B72C;
    color:#10191d;
    font-size:15px;
    font-weight:700;
    cursor:pointer;
}
body.pk-page-keskustelut #bbpress-forums #bbp_topic_submit:hover {
    filter:brightness(.94);
}

/* Aihe- ja vastausnäkymien perusviimeistely */
body.pk-page-keskustelut #bbpress-forums ul.bbp-replies li.bbp-header {
    border-bottom:3px solid #F5B72C;
    background:#0b1215;
    color:#f4f1e9;
}
body.pk-page-keskustelut #bbpress-forums .bbp-reply-header,
body.pk-page-keskustelut #bbpress-forums .topic {
    border-color:#d9dbdb;
}
body.pk-page-keskustelut #bbpress-forums .bbp-reply-content {
    color:#333435;
    font-size:15px;
    line-height:1.65;
}

/* Mobiili */
@media(max-width:900px) {
    body.pk-page-keskustelut .bbpress-container.bsp-fse-container {
        width:min(100% - 48px, 1380px);
    }
    body.pk-page-keskustelut #bbpress-forums ul.bbp-topics li.bbp-header {
        display:none;
    }
    body.pk-page-keskustelut #bbpress-forums ul.bbp-topics li.bbp-body > ul {
        grid-template-columns:1fr 1fr;
        gap:14px 22px;
    }
    body.pk-page-keskustelut #bbpress-forums ul.bbp-topics .bbp-topic-title {
        grid-column:1/-1;
    }
    body.pk-page-keskustelut #bbpress-forums ul.bbp-topics .bbp-topic-freshness {
        grid-column:1/-1;
    }
}
@media(max-width:600px) {
    body.pk-page-keskustelut .bbpress-container.bsp-fse-container {
        width:calc(100% - 32px);
        padding:34px 0 48px;
    }
    body.pk-page-keskustelut #bbpress-forums #subscription-toggle {
        position:static;
        display:block;
        margin:14px 0;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-topic-form fieldset.bbp-form {
        padding:22px 18px;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-topic-form fieldset.bbp-form > legend {
        font-size:21px;
    }
}


/* v0.10.19 — Foorumilistan sarakeotsikot yhtenäiseen kokoon */
body.pk-page-keskustelut #bbpress-forums li.bbp-header .forum-titles,
body.pk-page-keskustelut #bbpress-forums ul.bbp-topics li.bbp-header .forum-titles {
    font-size:13px;
}
body.pk-page-keskustelut #bbpress-forums li.bbp-header .forum-titles > li,
body.pk-page-keskustelut #bbpress-forums ul.bbp-topics li.bbp-header .forum-titles > li {
    font-size:13px !important;
    line-height:1.25;
    letter-spacing:.07em;
    font-weight:700;
    text-transform:uppercase;
    white-space:nowrap;
}


/* v0.10.19 — Yleinen keskustelu: lomakkeen viimeistely */

/* Poista aihelistan jälkeinen toinen sivutuslaskuri ennen uuden aiheen lomaketta */
body.pk-page-keskustelut #bbpress-forums ul.bbp-topics + .bbp-pagination {
    display:none;
}

/* Tiivistä aihelistan ja lomakkeen väli */
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form {
    margin-top:26px;
}

/* Fieldset toimii korttina, mutta legend ei enää leikkaa yläreunaa */
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form fieldset.bbp-form {
    position:relative;
    margin:0;
    padding:72px 32px 30px;
    border:1px solid rgba(245,183,44,.28);
    border-top:4px solid #F5B72C;
    border-radius:4px;
    background:#f4f1e9;
    box-shadow:0 10px 28px rgba(0,0,0,.14);
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form fieldset.bbp-form > legend {
    position:absolute;
    top:25px;
    left:32px;
    display:block;
    width:calc(100% - 64px);
    margin:0;
    padding:0;
    color:#10191d;
    font-family:Georgia, "Times New Roman", serif;
    font-size:25px;
    line-height:1.2;
    font-weight:700;
}

/* HTML-oikeuksien ilmoitus hillitymmäksi */
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form .bbp-template-notice {
    margin:0 0 22px;
    padding:9px 12px;
    border:1px solid #ded9c9;
    border-left:3px solid #F5B72C;
    background:#f8f6ef;
    color:#666;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form .bbp-template-notice li {
    font-size:12px;
}

/* Lomakkeen pystyrhythm */
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form p {
    margin:15px 0;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form label {
    margin-bottom:6px;
}

/* Editorin työkalupalkki osaksi samaa käyttöliittymää */
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form .quicktags-toolbar {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:5px;
    min-height:44px;
    padding:7px 9px;
    border-bottom:1px solid #d9dbdb;
    background:#e9e8e2;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form .quicktags-toolbar input.ed_button {
    min-height:28px;
    margin:0;
    padding:3px 8px;
    border:1px solid #c5c6c2;
    border-radius:2px;
    background:#fff;
    color:#333435;
    box-shadow:none;
    font-size:11px;
    line-height:1;
    font-weight:700;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form .quicktags-toolbar input.ed_button:hover {
    border-color:#b17b17;
    color:#8a5e0c;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form textarea.bbp-the-content {
    min-height:220px;
}

/* Aiheen tyyppi ja tila samalle riville.
   bbPress ei anna niille omaa wrapperia, joten käytetään niiden p-elementtejä. */
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form p:has(#bbp_stick_topic_select),
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form p:has(#bbp_topic_status_select) {
    display:inline-block;
    width:calc(50% - 10px);
    margin-right:16px;
    vertical-align:top;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form p:has(#bbp_topic_status_select) {
    margin-right:0;
}
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form .bbp_dropdown {
    width:100%;
    max-width:320px;
}

/* Sähköposti-ilmoitus omaksi rauhalliseksi rivikseen */
body.pk-page-keskustelut #bbpress-forums .bbp-topic-form p:has(#bbp_topic_subscription) {
    margin:20px 0 4px;
}

/* Selkeämpi toimintopainike */
body.pk-page-keskustelut #bbpress-forums #bbp_topic_submit {
    min-width:150px;
    min-height:48px;
    padding:11px 26px;
    font-size:15px;
}

/* Seuraa-painike */
body.pk-page-keskustelut #bbpress-forums #subscription-toggle a {
    min-width:82px;
    padding:9px 16px;
    box-sizing:border-box;
    text-align:center;
    font-size:13px;
}

/* Mobiili */
@media(max-width:700px) {
    body.pk-page-keskustelut #bbpress-forums .bbp-topic-form fieldset.bbp-form {
        padding:66px 18px 22px;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-topic-form fieldset.bbp-form > legend {
        top:22px;
        left:18px;
        width:calc(100% - 36px);
        font-size:21px;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-topic-form p:has(#bbp_stick_topic_select),
    body.pk-page-keskustelut #bbpress-forums .bbp-topic-form p:has(#bbp_topic_status_select) {
        display:block;
        width:100%;
        margin-right:0;
    }
    body.pk-page-keskustelut #bbpress-forums .bbp-topic-form .bbp_dropdown {
        max-width:none;
    }
    body.pk-page-keskustelut #bbpress-forums #bbp_topic_submit {
        width:100%;
    }
}


/* v0.10.19 FINAL — bbPress yksittäinen keskustelu / topic */

/* Topicin ylätoiminnot */
body.single-topic.pk-page-keskustelut #bbpress-forums #favorite-toggle {
    position:absolute;
    right:96px;
    top:-2px;
}
body.single-topic.pk-page-keskustelut #bbpress-forums #favorite-toggle a {
    display:inline-block;
    box-sizing:border-box;
    min-width:82px;
    padding:9px 16px;
    border:1px solid rgba(245,183,44,.38);
    border-radius:2px;
    color:#F5B72C;
    font-size:13px;
    font-weight:700;
    text-align:center;
    text-decoration:none;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-topic-tags {
    margin:10px 0 18px;
    color:#aeb4b5;
    font-size:13px;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-topic-tags p { margin:0; }
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-topic-tags a { color:#F5B72C; }

/* Vain ensimmäinen sivutuslaskuri näkyviin; toinen ennen vastauslomaketta pois */
body.single-topic.pk-page-keskustelut #bbpress-forums ul.bbp-replies + .bbp-pagination {
    display:none;
}

/* Viestilista */
body.single-topic.pk-page-keskustelut #bbpress-forums ul.bbp-replies {
    margin:20px 0 0;
    border:0;
    background:transparent;
}
body.single-topic.pk-page-keskustelut #bbpress-forums ul.bbp-replies > li.bbp-header {
    display:grid;
    grid-template-columns:190px minmax(0,1fr);
    gap:0;
    padding:13px 20px;
    border:0;
    border-bottom:3px solid #F5B72C;
    background:#111a1e;
    color:#f4f1e9;
}
body.single-topic.pk-page-keskustelut #bbpress-forums ul.bbp-replies > li.bbp-header > div {
    float:none;
    width:auto;
    color:#f4f1e9;
    font-size:13px;
    line-height:1.25;
    font-weight:700;
    letter-spacing:.07em;
    text-transform:uppercase;
}
body.single-topic.pk-page-keskustelut #bbpress-forums ul.bbp-replies > li.bbp-header .bbp-reply-content {
    margin:0;
}

/* Footer on bbPressin duplikaatti eikä tuo lisäarvoa */
body.single-topic.pk-page-keskustelut #bbpress-forums ul.bbp-replies > li.bbp-footer {
    display:none;
}

/* Viestin metarivi */
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-header {
    box-sizing:border-box;
    margin:0;
    padding:10px 18px;
    border:0;
    border-bottom:1px solid #dedbd1;
    background:#ebe9e1;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-header .bbp-meta {
    display:flex;
    align-items:center;
    gap:14px;
    min-height:24px;
    color:#6b6b67;
    font-size:12px;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-post-date {
    margin-right:auto;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-permalink {
    order:3;
    color:#777;
    text-decoration:none;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-admin-links {
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:5px 10px;
    float:none;
    margin:0;
    font-size:10px;
    text-transform:uppercase;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-admin-links a {
    color:#626461;
    text-decoration:none;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-admin-links a:hover {
    color:#b17b17;
}

/* Varsinainen viesti */
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body > .topic,
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body > .reply {
    display:grid;
    grid-template-columns:190px minmax(0,1fr);
    min-height:150px;
    margin:0 0 18px;
    border:0;
    border-radius:0 0 4px 4px;
    overflow:hidden;
    background:#f4f1e9;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body .bbp-reply-author {
    float:none;
    box-sizing:border-box;
    width:auto;
    margin:0;
    padding:22px 18px;
    border-right:1px solid #dedbd1;
    background:#efede5;
    color:#333435;
    text-align:center;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body .bbp-reply-author .bbp-author-link {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:8px;
    color:#10191d;
    font-weight:700;
    text-decoration:none;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body .bbp-reply-author img.avatar {
    width:56px;
    height:56px;
    margin:0;
    border-radius:50%;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-author-role {
    margin-top:8px;
    color:#777;
    font-size:12px;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-ip {
    margin-top:8px;
    color:#999;
    font-size:10px;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body .bbp-reply-content {
    float:none;
    box-sizing:border-box;
    width:auto;
    margin:0;
    padding:26px 30px;
    background:#f4f1e9;
    color:#252a2c;
    font-size:16px;
    line-height:1.65;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body .bbp-reply-content p:first-child {
    margin-top:0;
}

/* Vastauslomake — sama visuaalinen järjestelmä kuin uuden aiheen lomakkeessa */
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form {
    clear:both;
    margin-top:30px;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form fieldset.bbp-form {
    position:relative;
    box-sizing:border-box;
    margin:0;
    padding:72px 32px 30px;
    border:1px solid rgba(245,183,44,.28);
    border-top:4px solid #F5B72C;
    border-radius:4px;
    background:#f4f1e9;
    box-shadow:0 10px 28px rgba(0,0,0,.14);
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form fieldset.bbp-form > legend {
    position:absolute;
    top:25px;
    left:32px;
    display:block;
    width:calc(100% - 64px);
    margin:0;
    padding:0;
    color:#10191d;
    font-family:Georgia, "Times New Roman", serif;
    font-size:25px;
    line-height:1.2;
    font-weight:700;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form .bbp-template-notice {
    margin:0 0 22px;
    padding:9px 12px;
    border:1px solid #ded9c9;
    border-left:3px solid #F5B72C;
    background:#f8f6ef;
    color:#666;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form .bbp-template-notice li {
    font-size:12px;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form .quicktags-toolbar {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:5px;
    min-height:44px;
    padding:7px 9px;
    border-bottom:1px solid #d9dbdb;
    background:#e9e8e2;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form .quicktags-toolbar input.ed_button {
    min-height:28px;
    margin:0;
    padding:3px 8px;
    border:1px solid #c5c6c2;
    border-radius:2px;
    background:#fff;
    color:#333435;
    box-shadow:none;
    font-size:11px;
    line-height:1;
    font-weight:700;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form textarea.bbp-the-content {
    display:block;
    box-sizing:border-box;
    width:100% !important;
    min-height:210px;
    margin:0;
    padding:14px;
    border:0;
    background:#fff;
    color:#10191d;
    font:15px/1.55 Arial, sans-serif;
    resize:vertical;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form #bbp_topic_tags {
    display:block;
    box-sizing:border-box;
    width:100%;
    max-width:none;
    min-height:44px;
    padding:9px 12px;
    border:1px solid #c9cbc8;
    border-radius:2px;
    background:#fff;
    color:#10191d;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form p {
    margin:15px 0;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form label {
    color:#333435;
    font-size:14px;
    font-weight:700;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form input[type="checkbox"] {
    width:17px;
    height:17px;
    margin:0 7px 0 0;
    vertical-align:-3px;
    accent-color:#F5B72C;
}
body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form .bbp-submit-wrapper {
    float:none;
    display:flex;
    justify-content:flex-end;
    margin-top:24px;
}
body.single-topic.pk-page-keskustelut #bbpress-forums #bbp_reply_submit {
    min-width:150px;
    min-height:48px;
    padding:11px 26px;
    border:0;
    border-radius:2px;
    background:#F5B72C;
    color:#10191d;
    font-size:15px;
    font-weight:700;
    cursor:pointer;
}

/* Topic-listan bbPress-termi "Artikkelit" -> käyttöliittymässä "Viestit".
   Varsinainen tekstin vaihto tehdään forum-labels.js:ssä. */

@media(max-width:760px) {
    body.single-topic.pk-page-keskustelut #bbpress-forums #favorite-toggle {
        position:static;
        display:inline-block;
        margin:12px 8px 12px 0;
    }
    body.single-topic.pk-page-keskustelut #bbpress-forums ul.bbp-replies > li.bbp-header {
        display:none;
    }
    body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body > .topic,
    body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body > .reply {
        display:block;
    }
    body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body .bbp-reply-author {
        border-right:0;
        border-bottom:1px solid #dedbd1;
        text-align:left;
    }
    body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-body .bbp-reply-author .bbp-author-link {
        flex-direction:row;
        justify-content:flex-start;
    }
    body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-header .bbp-meta {
        flex-wrap:wrap;
    }
    body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-admin-links {
        width:100%;
        justify-content:flex-start;
    }
    body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form fieldset.bbp-form {
        padding:66px 18px 22px;
    }
    body.single-topic.pk-page-keskustelut #bbpress-forums .bbp-reply-form fieldset.bbp-form > legend {
        top:22px;
        left:18px;
        width:calc(100% - 36px);
        font-size:21px;
    }
body.single-topic.pk-page-keskustelut #bbpress-forums #bbp_reply_submit {
        width:100%;
    }
}


/* v0.10.24 — koko sivuston mobiilivarmistukset. */
@media (max-width:700px) {
    html,
    body,
    body > .wp-site-blocks {
        max-width:100%;
        overflow-x:hidden;
    }

    /* Gutenberg-sisältöjen suuret 1380/1180 px sisäkehykset saavat
       puhelimella 16 px reunukset työpöydän 48 px reunusten sijaan. */
    .wp-block-post-content [style*="width:min(1380px, calc(100% - 96px))"],
    .wp-block-post-content [style*="width:min(1180px, calc(100% - 96px))"] {
        width:calc(100% - 32px) !important;
        max-width:calc(100% - 32px) !important;
    }

    /* Etusivun kiinteä 420 px nostokortti ei saa ylittää näyttöä. */
    body.home .wp-block-post-content [style*="width:420px"] {
        width:100% !important;
        max-width:100% !important;
        flex-basis:auto !important;
    }

    .wp-block-post-content .wp-block-columns,
    .wp-block-post-content .wp-block-column,
    .wp-block-post-content .wp-block-group,
    .wp-block-post-content .wp-block-cover__inner-container {
        min-width:0;
    }

    /* Otsikoita ei koskaan katkaista sanan sisältä. Sivukohtaiset
       fonttikoot huolehtivat siitä, että pitkätkin otsikot mahtuvat. */
    .wp-block-post-content h1,
    .wp-block-post-content h2,
    .wp-block-post-content h3 {
        overflow-wrap:normal !important;
        word-break:normal !important;
        hyphens:none !important;
    }

    /* Leipäteksti saa rivittyä turvallisesti, mutta sanat säilyvät ehjinä.
       Linkeissä sallitaan viimeisenä keinona katkaisu mistä tahansa, jotta
       pitkä URL-osoite ei aiheuta vaakasuuntaista ylivuotoa. */
    .wp-block-post-content p,
    .wp-block-post-content summary {
        overflow-wrap:break-word;
        word-break:normal;
    }
    .wp-block-post-content a {
        overflow-wrap:anywhere;
    }

    .wp-block-post-content img,
    .wp-block-post-content video,
    .wp-block-post-content iframe,
    .wp-block-post-content canvas,
    .wp-block-post-content svg {
        max-width:100%;
        height:auto;
    }

    .wp-block-table,
    .wp-block-post-content .table-responsive,
    .wp-block-post-content [class*="table-wrap"] {
        max-width:100%;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
    }

    .wp-block-post-content input:not([type="checkbox"]):not([type="radio"]),
    .wp-block-post-content select,
    .wp-block-post-content textarea,
    .wp-block-post-content button {
        max-width:100%;
    }

    .pk-v93-header .pk-main-nav {
        scrollbar-width:thin;
        -webkit-overflow-scrolling:touch;
    }
}


/* v0.10.46 — compact sticky header.
   The full-size official Guild logo is retained at the top of the page.
   After scrolling, the same logo scales down and the header becomes compact. */
.wp-site-blocks > header.wp-block-template-part,
header.wp-block-template-part {
    position:sticky!important;
    top:0!important;
    z-index:9999!important;
}

.pk-v93-header,
.pk-v93-header__inner,
.pk-v93-logo,
.pk-v93-logo img,
.pk-v93-header .pk-main-nav-list,
.pk-v93-header .pk-main-nav-list a,
.pk-v93-account .pk-user-status__links a:last-child,
.pk-v93-account .pk-login-button a,
.pk-menu-toggle {
    transition:height .22s ease, min-height .22s ease, width .22s ease,
        top .22s ease, padding .22s ease, margin .22s ease,
        gap .22s ease, font-size .22s ease, box-shadow .22s ease,
        background-color .22s ease!important;
}

.pk-v93-header.is-scrolled {
    box-shadow:0 4px 16px rgba(0,0,0,.28)!important;
}

@media (min-width:821px) {
    .pk-v93-header.is-scrolled .pk-v93-header__inner {
        height:64px!important;
        min-height:64px!important;
    }
    .pk-v93-header.is-scrolled .pk-v93-logo {
        width:48px!important;
        height:48px!important;
        left:24px!important;
        top:8px!important;
    }
    .pk-v93-header.is-scrolled .pk-v93-logo img {
        width:48px!important;
        height:48px!important;
    }
    .pk-v93-header.is-scrolled .pk-main-nav-list {
        gap:clamp(14px,1.6vw,24px)!important;
    }
    .pk-v93-header.is-scrolled .pk-main-nav-list a {
        font-size:13px!important;
    }
    .pk-v93-header.is-scrolled .pk-v93-account {
        right:24px!important;
    }
    .pk-v93-header.is-scrolled .pk-v93-account .pk-user-status__links a:last-child,
    .pk-v93-header.is-scrolled .pk-v93-account .pk-login-button a {
        padding:8px 12px!important;
        font-size:11px!important;
    }
}

@media (max-width:820px) {
    .pk-v93-header.is-scrolled .pk-v93-header__inner {
        min-height:56px!important;
        padding:6px 14px!important;
    }
    .pk-v93-header.is-scrolled .pk-v93-logo,
    .pk-v93-header.is-scrolled .pk-v93-logo img {
        width:40px!important;
        height:40px!important;
        flex-basis:40px!important;
    }
    .pk-v93-header.is-scrolled .pk-v93-account .pk-user-status__links a:last-child,
    .pk-v93-header.is-scrolled .pk-v93-account .pk-login-button a {
        padding:7px 10px!important;
        font-size:11px!important;
    }
    .pk-v93-header.is-scrolled.pk-menu-ready .pk-menu-toggle {
        width:40px!important;
        height:40px!important;
        flex-basis:40px!important;
        margin-left:10px!important;
        padding:8px!important;
    }
    .pk-v93-header.is-scrolled.pk-menu-ready .pk-main-nav {
        margin-top:6px!important;
    }
}

/* WordPress admin bar remains usable for administrators. */
body.admin-bar .wp-site-blocks > header.wp-block-template-part,
body.admin-bar header.wp-block-template-part {
    top:32px!important;
}
@media (max-width:782px) {
    body.admin-bar .wp-site-blocks > header.wp-block-template-part,
    body.admin-bar header.wp-block-template-part {
        top:46px!important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pk-v93-header,
    .pk-v93-header__inner,
    .pk-v93-logo,
    .pk-v93-logo img,
    .pk-v93-header .pk-main-nav-list,
    .pk-v93-header .pk-main-nav-list a,
    .pk-v93-account .pk-user-status__links a:last-child,
    .pk-v93-account .pk-login-button a,
    .pk-menu-toggle {
        transition:none!important;
    }
}
