/*
 * Rekrutacja – czysty moduł CSS.
 * Ten plik odpowiada wyłącznie za sekcję dokumentów rekrutacyjnych.
 * Nagłówek podstrony obsługuje assets/css/subpage-headers.css.
 */

.recruitment-section{
    background:transparent;
    padding-top:40px;
}

.recruitment-section .container{
    max-width:1180px;
}

.recruitment-intro{
    max-width:980px;
    margin:0 auto 34px;
    text-align:center;
}

.recruitment-docs-card{
    max-width:1180px;
    margin:0 auto;
    padding:0;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
}

.recruitment-docs-grid{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:stretch;
    max-width:848px;
    width:100%;
    margin:10px auto 0;
    gap:38px 34px;
    text-align:center;
}

.recruitment-doc{
    display:flex;
    flex:0 0 260px;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    box-sizing:border-box;
    width:100%;
    max-width:260px;
    min-height:336px;
    height:336px;
    padding:22px 24px 20px;
    color:#253041;
    text-align:center;
    text-decoration:none;
    background:#ffffff;
    border:1px solid #f0d8cf;
    border-radius:28px;
    box-shadow:0 10px 30px rgba(0,0,0,.06);
    transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease;
}

.recruitment-doc:hover{
    transform:translateY(-4px);
    color:#CC4B33;
    background:#ffffff;
    box-shadow:0 18px 42px rgba(31,41,55,.09);
}

.recruitment-doc-disabled{
    cursor:default;
    opacity:.75;
}

.recruitment-doc-disabled:hover{
    transform:none;
    color:#253041;
    background:#ffffff;
    box-shadow:0 10px 30px rgba(0,0,0,.06);
}

.recruitment-doc-icon{
    display:flex;
    flex:0 0 120px;
    align-items:center;
    justify-content:center;
    width:140px;
    max-width:140px;
    height:120px;
    min-height:120px;
    margin:0 auto 18px;
}

.recruitment-doc-icon img{
    display:block;
    width:auto;
    height:auto;
    max-width:140px;
    max-height:120px;
    object-fit:contain;
    margin:0 auto;
}

.recruitment-doc-title{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    max-width:235px;
    min-height:92px;
    margin:0 auto;
    color:#253041;
    font-family:var(--pm-font-display, "Baloo 2", "Nunito", system-ui, sans-serif);
    font-size:17px;
    font-weight:700;
    line-height:1.34;
    letter-spacing:0;
    text-align:center;
    text-wrap:balance;
}

.recruitment-doc:hover .recruitment-doc-title{
    color:#CC4B33;
}

.recruitment-doc::after{
    content:"Pobierz PDF →";
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:auto;
    padding:14px 28px;
    border-radius:999px;
    background:linear-gradient(135deg,#ef7a56,#d95b3c);
    color:#fff;
    font-size:15px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:0;
    transition:transform .2s ease,color .2s ease;
}

.recruitment-doc:hover::after{
    transform:translateX(4px);
    color:#CC4B33;
}

.recruitment-doc-disabled::after{
    content:"Dokument wkrótce";
    color:#8a7d75;
}

.recruitment-doc-divider{
    display:none;
}

@media (max-width:900px){
    .recruitment-docs-grid{
        max-width:554px;
        gap:26px 34px;
    }
}

@media (max-width:768px){
    .recruitment-section{
        padding-top:32px;
    }

    .recruitment-docs-grid{
        gap:26px;
    }

    .recruitment-doc{
        flex:0 0 calc(50% - 13px);
        max-width:calc(50% - 13px);
        min-height:300px;
        height:auto;
        padding:24px 20px;
        border-radius:24px;
    }

    .recruitment-doc-title{
        min-height:78px;
        font-size:17px;
    }
}

@media (max-width:640px){
    .recruitment-docs-grid{
        max-width:100%;
        gap:24px;
    }

    .recruitment-doc{
        flex:0 0 100%;
        max-width:360px;
    }
}


/* v1.3.99 spacing adjustment */
.recruitment-docs-card{
    margin-bottom:80px;
}
.recruitment-section{
    padding-top:20px;
}

/* ChatGPT fix */
.recruitment-card img,.recruitment-item img,.pm-recruitment-card img{transform:scale(1.12);filter:drop-shadow(0 6px 10px rgba(0,0,0,.12));}

/* Recruitment page refinements – spacing, cards, PDF icons and button hover */
.recruitment-intro{
    margin-top:42px;
    margin-bottom:36px;
}

.recruitment-intro h1,
.recruitment-intro h2{
    margin-top:0;
    margin-bottom:0;
}

.recruitment-doc{
    background:#ffffff;
    border-color:#f0d8cf;
    box-shadow:0 14px 38px rgba(31,41,55,.075);
}

.recruitment-doc:hover{
    background:#ffffff;
    box-shadow:0 20px 48px rgba(31,41,55,.11);
}

.recruitment-doc-icon{
    flex-basis:138px;
    width:164px;
    max-width:164px;
    height:138px;
    min-height:138px;
    margin-bottom:16px;
}

.recruitment-doc-icon img{
    max-width:164px;
    max-height:138px;
    filter:drop-shadow(0 7px 12px rgba(0,0,0,.16));
}

.recruitment-doc::after,
.recruitment-doc:hover::after,
.recruitment-doc:focus::after,
.recruitment-doc:focus-visible::after{
    color:#ffffff;
}

.recruitment-doc:hover::after,
.recruitment-doc:focus::after,
.recruitment-doc:focus-visible::after{
    background:linear-gradient(135deg,#f07d59,#d94f32);
    transform:translateY(-1px);
}

@media (max-width:768px){
    .recruitment-intro{
        margin-top:34px;
        margin-bottom:30px;
    }

    .recruitment-doc-icon{
        flex-basis:128px;
        width:152px;
        max-width:152px;
        height:128px;
        min-height:128px;
    }

    .recruitment-doc-icon img{
        max-width:152px;
        max-height:128px;
    }
}


/* Final recruitment refinements */
.recruitment-section{
    padding-top:55px;
}
.recruitment-intro{
    margin-top:70px;
    margin-bottom:42px;
}
.recruitment-intro h2{
    background:transparent !important;
}
.recruitment-doc{
    background:#fffdfc;
    box-shadow:0 16px 42px rgba(31,41,55,.08);
}
.recruitment-doc-icon{
    flex-basis:155px;
    width:180px;
    max-width:180px;
    height:155px;
    min-height:155px;
}
.recruitment-doc-icon img{
    max-width:180px;
    max-height:155px;
    filter:drop-shadow(0 8px 14px rgba(0,0,0,.18));
}
.recruitment-doc:hover::after{
    color:#ffffff !important;
}


/* Contrast improvement */
.news-card,.post-card,.pm-post-card{background:#fff!important;border:1px solid rgba(0,0,0,.06)!important;box-shadow:0 10px 30px rgba(0,0,0,.06)!important;}


/* Recruitment cards: keep PDF buttons away from the lower card edge */
.recruitment-doc{
    min-height:356px !important;
    height:356px !important;
    padding-bottom:32px !important;
}

.recruitment-doc::after{
    margin-top:18px !important;
    margin-bottom:0 !important;
}

@media (max-width:768px){
    .recruitment-doc{
        min-height:330px !important;
        height:auto !important;
        padding-bottom:30px !important;
    }
}


/* Recruitment page visual refinements */
.recruitment-section{
    padding-top:15px !important;
}

.recruitment-intro{
    margin-top:15px !important;
    margin-bottom:28px !important;
}

.recruitment-docs-grid{
    gap:42px 42px !important;
}

.recruitment-doc{
    background:#ffffff !important;
    border:1px solid rgba(0,0,0,.08) !important;
    box-shadow:0 14px 38px rgba(0,0,0,.08) !important;
    flex:0 0 280px !important;
    max-width:280px !important;
    min-height:390px !important;
    height:390px !important;
    padding:24px 24px 38px !important;
}

.recruitment-doc::after{
    margin-top:28px !important;
}

.recruitment-doc-title{
    max-width:250px !important;
}

/* Mobile safety for recruitment cards */
@media (max-width: 640px){
  .recruitment-docs-grid{
    width: 100% !important;
    max-width: 100% !important;
    gap: 24px !important;
  }

  .recruitment-doc{
    flex: 0 1 100% !important;
    width: 100% !important;
    max-width: 360px !important;
    min-height: 360px !important;
    height: auto !important;
    padding: 24px 22px 34px !important;
  }
}
