/* Liity jäseneksi — native Gutenberg layout. */
.pk-join-hero,
.pk-join-process,
.pk-join-fee {
    position:relative;
    overflow:hidden;
    margin:0;
    color:#fff;
    background:#081014;
}

.pk-join-memberships,
.pk-join-apply {
    margin:0;
    color:#11191c;
    background:#f7f6ef;
}

.pk-join-inner {
    position:relative;
    z-index:1;
    width:min(1380px, calc(100% - 96px));
    margin-inline:auto;
}

.pk-join-hero::before,
.pk-join-process::before {
    content:"";
    position:absolute;
    width:520px;
    height:520px;
    border:1px solid rgba(245,183,44,.16);
    border-radius:50%;
    pointer-events:none;
}
.pk-join-hero::before { right:-180px; top:-260px; }
.pk-join-process::before { left:-300px; bottom:-360px; }

.pk-join-hero-inner { padding-block:88px 94px; }
.pk-join-kicker,
.pk-join-card-tag,
.pk-join-path-label,
.pk-join-fee-label {
    margin:0 0 14px;
    color:#f5b72c;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.16em;
    line-height:1.35;
    text-transform:uppercase;
}
.pk-join-title,
.pk-join-section-title,
.pk-join-fee-title {
    margin:0;
    font-family:Georgia,"Times New Roman",serif;
    font-weight:700;
    line-height:1.04;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
}
.pk-join-title { max-width:850px; color:#fff; font-size:clamp(3rem,6vw,5rem); }
.pk-join-rule { width:72px; margin:30px 0; border:0; border-top:4px solid #f5b72c; }
.pk-join-hero-lead { max-width:760px; margin:0 0 18px; font-size:clamp(1.3rem,2vw,1.65rem); font-weight:700; line-height:1.45; }
.pk-join-hero-text { max-width:760px; margin:0; color:#c8cfd1; font-size:1.05rem; line-height:1.75; }

.pk-join-memberships > .pk-join-inner,
.pk-join-apply > .pk-join-inner { padding-block:88px 100px; }
.pk-join-section-title { color:#0b1316; font-size:clamp(2.25rem,4vw,3.5rem); }
.pk-join-intro { max-width:780px; margin:20px 0 44px; color:#4c5558; font-size:1.08rem; line-height:1.7; }
.pk-join-card-grid { align-items:stretch; gap:28px; }
.pk-join-card-grid > .wp-block-column { margin:0; }
.pk-join-card {
    display:flex;
    flex-direction:column;
    min-height:100%;
    margin:0;
    padding:30px 28px 34px;
    border-top:4px solid #11191c;
    box-shadow:0 12px 34px rgba(5,12,15,.09);
    background:#fff;
}
.pk-join-card-featured { border-top-color:#f5b72c; }
.pk-join-card-number { margin:0 0 22px; color:#f5b72c; font-family:Georgia,"Times New Roman",serif; font-size:2.3rem; font-weight:700; }
.pk-join-card h3 { margin:0 0 14px; color:#0b1316; font-family:Georgia,"Times New Roman",serif; font-size:1.65rem; line-height:1.15; }
.pk-join-card > p:not(.pk-join-card-number):not(.pk-join-card-tag) { color:#4b5558; line-height:1.65; }
.pk-join-card-label { margin-top:auto!important; padding-top:18px; color:#0b1316!important; font-size:.9rem; font-weight:800; }
.pk-join-path { margin-top:48px; padding-top:30px; border-top:1px solid #d7dad7; }
.pk-join-path-flow { margin:0; color:#263034; font-size:1.05rem; font-weight:700; line-height:1.8; }

.pk-join-process > .pk-join-inner { padding-block:88px 98px; }
.pk-join-process .pk-join-section-title { color:#fff; }
.pk-join-process .pk-join-intro { color:#bfc7c9; }
.pk-join-steps { align-items:stretch; gap:0; margin-top:48px; }
.pk-join-steps > .wp-block-column { margin:0; }
.pk-join-step { position:relative; padding-right:34px; }
.pk-join-step-number {
    display:flex;
    align-items:center;
    justify-content:center;
    width:54px;
    height:54px;
    margin:0 0 24px;
    border:2px solid #f5b72c;
    border-radius:50%;
    color:#f5b72c;
    font-weight:800;
}
.pk-join-step:not(.pk-join-step-final)::after {
    content:"";
    position:absolute;
    top:27px;
    left:66px;
    right:12px;
    height:1px;
    background:rgba(245,183,44,.45);
}
.pk-join-step h3 { margin:0 0 12px; color:#fff; font-family:Georgia,"Times New Roman",serif; font-size:1.5rem; line-height:1.2; }
.pk-join-step > p:not(.pk-join-step-number) { margin:0; color:#bcc5c7; line-height:1.65; }
.pk-join-note { margin:50px 0 0; padding:22px 26px; border-left:4px solid #f5b72c; color:#dce1e2; background:rgba(255,255,255,.045); line-height:1.65; }

.pk-join-fee > .pk-join-inner { padding-block:60px; }
.pk-join-fee-columns { align-items:center; gap:60px; }
.pk-join-fee-title { color:#fff; font-size:clamp(2rem,3.5vw,3rem); }
.pk-join-fee-item { padding-left:32px; border-left:1px solid rgba(255,255,255,.2); }
.pk-join-season,
.pk-join-price { margin:0; color:#fff; font-family:Georgia,"Times New Roman",serif; font-size:1.55rem; font-weight:700; }
.pk-join-price { color:#f5b72c; font-size:2rem; }

.pk-join-apply-columns { align-items:center; gap:80px; }
.pk-join-apply-lead { color:#3f494c; font-size:1.08rem; line-height:1.75; }
.pk-join-apply-card { margin:0; padding:38px 40px; border-top:4px solid #f5b72c; box-shadow:0 12px 34px rgba(5,12,15,.1); background:#fff; }
.pk-join-apply-card h3 { margin-top:0; color:#0b1316; font-family:Georgia,"Times New Roman",serif; font-size:1.8rem; }
.pk-join-apply-card p { color:#4b5558; line-height:1.65; }
.pk-join-apply-button .wp-block-button__link { border:2px solid #f5b72c; border-radius:0; color:#050505; background:#f5b72c; font-weight:800; }
.pk-join-apply-button .wp-block-button__link:hover,
.pk-join-apply-button .wp-block-button__link:focus { color:#f5b72c; background:#050505; }
.pk-join-external-note { margin-bottom:0; font-size:.86rem; }

@media (max-width:900px) {
    .pk-join-inner { width:min(100% - 56px, 760px); }
    .pk-join-card-grid,
    .pk-join-steps,
    .pk-join-fee-columns,
    .pk-join-apply-columns { flex-wrap:wrap!important; }
    .pk-join-card-grid > .wp-block-column,
    .pk-join-steps > .wp-block-column { flex-basis:calc(50% - 14px)!important; }
    .pk-join-fee-columns > .wp-block-column,
    .pk-join-apply-columns > .wp-block-column { flex-basis:100%!important; }
    .pk-join-step:not(.pk-join-step-final)::after { display:none; }
    .pk-join-fee-item { padding:24px 0 0; border-top:1px solid rgba(255,255,255,.2); border-left:0; }
}

@media (max-width:600px) {
    .pk-join-inner { width:calc(100% - 36px); }
    .pk-join-hero-inner { padding-block:64px 70px; }
    .pk-join-memberships > .pk-join-inner,
    .pk-join-process > .pk-join-inner,
    .pk-join-apply > .pk-join-inner { padding-block:64px 72px; }
    .pk-join-title { font-size:clamp(2.55rem,13vw,3.45rem); }
    .pk-join-section-title { font-size:2.25rem; }
    .pk-join-card-grid > .wp-block-column,
    .pk-join-steps > .wp-block-column { flex-basis:100%!important; }
    .pk-join-card { padding:26px 22px 30px; }
    .pk-join-step { padding:0 0 22px; }
    .pk-join-note { margin-top:24px; padding:20px; }
    .pk-join-fee-columns { gap:30px; }
    .pk-join-apply-columns { gap:38px; }
    .pk-join-apply-card { padding:30px 24px; }
}
