.pfl-hero{
    margin:40px 0 28px;
}

.pfl-hero__content{
    max-width:900px;
}

.pfl-hero__badge{
    display:inline-block;
    margin-bottom:10px;
    font-size:14px;
    color:#666;
}

.pfl-hero__title{
    margin:0 0 14px;
    font-size:48px;
    font-weight:700;
    line-height:1.1;
}

.pfl-hero__text{
    margin:0 0 24px;
    font-size:18px;
    line-height:1.6;
    color:#555;
}

/* ===========================
   Sökruta
=========================== */

.pfl-hero__search{

    display:flex;
    align-items:center;

    max-width:900px;
    height:58px;

    background:#fff;

    border:1px solid #e5e5e5;
    border-radius:18px;

    overflow:hidden;

}

.pfl-hero__search-icon{

    width:56px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:22px;

    color:#8a8a8a;

    flex-shrink:0;

}

.pfl-hero__search input{

    flex:1;

    height:100%;

    border:0;

    outline:none;

    font-size:17px;

    background:transparent;

    padding:0;

}

.pfl-hero__search input::placeholder{

    color:#9b9b9b;

}

.pfl-hero__filter{

    width:60px;
    height:100%;

    border:0;

    background:#fff;

    color:#777;

    cursor:pointer;

    font-size:22px;

    transition:.2s;

}

.pfl-hero__filter:hover,
.pfl-hero__filter.is-open{

    background:#f5f5f5;

    color:#111;

}

/* ===========================
   Filterpanel
=========================== */

.pfl-filter-panel{

    max-height:0;

    overflow:hidden;

    margin-top:-18px;
    margin-bottom:22px;

    padding:0 26px;

    background:#fff;

    border:1px solid #e5e5e5;
    border-top:0;

    border-radius:0 0 18px 18px;

    opacity:0;

    transform:translateY(-12px);

    transition:
        max-height .35s ease,
        padding .25s ease,
        opacity .25s ease,
        transform .25s ease;

}

.pfl-filter-panel.is-open{

    max-height:600px;

    padding:26px;

    opacity:1;

    transform:translateY(0);

}

.pfl-filter-group{

    margin-bottom:24px;

}

.pfl-filter-group:last-child{

    margin-bottom:0;

}

.pfl-filter-group > label{

    display:block;

    margin-bottom:12px;

    font-size:15px;

    font-weight:600;

    color:#222;

}

.pfl-filter-options{

    display:flex;

    flex-wrap:wrap;

    gap:16px;

}

.pfl-filter-options label{

    display:flex;

    align-items:center;

    gap:8px;

    cursor:pointer;

    font-size:15px;

}

.pfl-filter-options input{

    margin:0;

}

.pfl-filter-group select{

    width:100%;
    max-width:320px;

    height:44px;

    padding:0 14px;

    border:1px solid #ddd;
    border-radius:10px;

    background:#fff;

    font-size:15px;

}

.pfl-filter-actions{

    display:flex;

    justify-content:flex-end;

}

.pfl-filter-apply{

    min-width:180px;
    height:46px;

    border:0;
    border-radius:12px;

    background:#111;

    color:#fff;

    font-size:15px;
    font-weight:600;

    cursor:pointer;

    transition:.2s;

}

.pfl-filter-apply:hover{

    background:#000;

}