/* ===============================
   PROFESSIONAL SLIDER (Scoped)
   =============================== */

.psw-wrapper{
    --gap: 1.25rem;
    --speed: 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    --closed: 5rem;
    --open: 22rem;
    --accent: #EC3D26;
}

/* ===== Header ===== */

.psw-wrapper .head{
    max-width: 1400px;
    margin: auto;
    padding: 70px 20px 40px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 2rem;
}

.psw-wrapper .head h2{
    font: 400 1.5rem/1.2 Inter, sans-serif;
    color: #fff;
}

@media (min-width:1024px){
    .psw-wrapper .head h2{
        font-size: 2.25rem;
    }
}

/* ===== Buttons ===== */

.psw-wrapper .nav-btn{
    width: 2.5rem;
    height: 2.5rem;
    border: none;
    border-radius: 50%;
    background: rgba(255,255,255,0.12);
    color:#fff;
    font-size:1.5rem;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:0.3s;
}

.psw-wrapper .nav-btn:hover{
    background:var(--accent);
}

.psw-wrapper .nav-btn:disabled{
    opacity:0.3;
    cursor:default;
}

/* ===== Layout ===== */

.psw-wrapper .slider{
    max-width:1400px;
    margin:auto;
    overflow:hidden;
}

.psw-wrapper .controls{
    display:flex;
    gap:0.5rem;
}

.psw-wrapper .track{
    display:flex;
    gap:15px;
    align-items:flex-start;
    justify-content:center;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    padding:40px 0 40px 20px;
}

.psw-wrapper .track::-webkit-scrollbar{
    display:none;
}

/* ===== Cards ===== */

.psw-wrapper .project-card{
    position:relative;
    flex:0 0 var(--closed);
    height:26rem;
    border-radius:1rem;
    overflow:hidden;
    cursor:pointer;
    transition:flex-basis var(--speed), transform var(--speed);
}

.psw-wrapper .project-card[active]{
    flex-basis:var(--open);
    transform:translateY(-6px);
}

.psw-wrapper .project-card__bg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    filter:brightness(0.75) saturate(75%);
    transition:filter 0.3s, transform var(--speed);
}

.psw-wrapper .project-card:hover .project-card__bg{
    filter:brightness(0.9) saturate(100%);
    transform:scale(1.06);
}

.psw-wrapper .project-card__content{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:0.7rem;
    background:linear-gradient(transparent 40%, rgba(0,0,0,0.85) 100%);
    z-index:2;
}

.psw-wrapper .project-card__title{
    color:#fff;
    font-weight:700;
    font-size:1.35rem;
    writing-mode:vertical-rl;
    transform:rotate(180deg);
}

.psw-wrapper .project-card__thumb,
.psw-wrapper .project-card__desc,
.psw-wrapper .project-card__btn{
    display:none;
}

/* Active Card */

.psw-wrapper .project-card[active] .project-card__content{
    flex-direction:row;
    align-items:center;
    padding:1.2rem 2rem;
    gap:1.1rem;
}

.psw-wrapper .project-card[active] .project-card__title{
    writing-mode:horizontal-tb;
    transform:none;
    font-size:2.4rem;
}

.psw-wrapper .project-card[active] .project-card__thumb,
.psw-wrapper .project-card[active] .project-card__desc,
.psw-wrapper .project-card[active] .project-card__btn{
    display:block;
}

.psw-wrapper .project-card__thumb{
    width:133px;
    border-radius:0.45rem;
    object-fit:cover;
    box-shadow:0 4px 10px rgba(0,0,0,0.4);
}

.psw-wrapper .project-card__desc{
    color:#ddd;
    font-size:1rem;
    line-height:1.4;
    max-width:16rem;
}

.psw-wrapper .project-card__btn{
    padding:0.55rem 1.3rem;
    border:none;
    border-radius:9999px;
    background:var(--accent);
    color:#fff;
    font-size:0.9rem;
    font-weight:600;
    cursor:pointer;
}

.psw-wrapper .project-card__btn:hover{
    background:#ff824f;
}

/* ===== Dots ===== */

.psw-wrapper .dots{
    display:flex;
    gap:0.5rem;
    justify-content:center;
    padding:20px 0;
}

.psw-wrapper .dot{
    width:13px;
    height:13px;
    border-radius:50%;
    background:rgba(255,255,255,0.35);
    cursor:pointer;
    transition:0.3s;
}

.psw-wrapper .dot.active{
    background:var(--accent);
    transform:scale(1.2);
}

.psw-slider .controls{
position:absolute;

left:auto;
right:auto ;
align-items:center ;
justify-content:center;
width:100%;
bottom:0 !important;
}

/* ===== Mobile ===== */

@media (max-width:767px){

    .psw-wrapper{
        --closed:100%;
        --open:100%;
        --gap:0.8rem;
    }

    .psw-wrapper .head{
        padding:30px 15px 20px;
        flex-direction:column;
        align-items:flex-start;
        gap:1rem;
    }

/*     .psw-wrapper .track{
        flex-direction:column;
        scroll-snap-type:y mandatory;
        gap:0.8rem;
        padding-bottom:20px;
    } */

    .psw-wrapper .project-card{
        height:auto;
        min-height:80px;
        width:100%;
    }

    .psw-wrapper .project-card[active]{
        min-height:300px;
        transform:none;
    }

    .psw-wrapper .project-card__title{
        writing-mode:horizontal-tb;
        transform:none;
        font-size:1.2rem;
        margin-right:auto;
    }

    .psw-wrapper .controls{
        width:100%;
        justify-content:space-between;
        padding:0 15px 20px;
    }
}