/* ==========================
   AYG GALLERY
========================== */

.dryfruit-gallery-section{
    padding:80px 20px 100px;
    background:linear-gradient(180deg, rgba(255,255,255,0.92), rgba(255,248,241,0.98));
}

.dryfruit-gallery-heading{
    max-width:900px;
    margin:0 auto 32px;
    text-align:center;
}

.dryfruit-gallery-kicker{
    text-transform:uppercase;
    letter-spacing:0.28em;
    font-size:0.85rem;
    color:#b56f2d;
    font-weight:700;
}

.dryfruit-gallery-title{
    font-size:clamp(2rem, 5vw, 3rem);
    margin:6px 0 10px;
    color:#2c1b10;
}

.dryfruit-gallery-copy{
    color:#5e4b3d;
    font-size:1rem;
}

.dryfruit-gallery-grid{
    max-width:1300px;
    margin:auto;

    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:22px;
}

.dryfruit-gallery-item{
    overflow:hidden;
    border-radius:18px;
    cursor:pointer;
    position:relative;
    border:1px solid rgba(181,111,45,0.18);
    background:#fff;
    box-shadow:0 18px 35px rgba(56, 37, 26, 0.12);
    transition:transform .25s ease, box-shadow .25s ease;
    padding:0;
}

.dryfruit-gallery-item:hover{
    transform:translateY(-4px);
    box-shadow:0 22px 45px rgba(56, 37, 26, 0.18);
}

.dryfruit-gallery-image{
    width:100%;
    height:280px;
    display:block;
    object-fit:cover;
    transition:.5s ease;
}

.dryfruit-gallery-item:hover .dryfruit-gallery-image{
    transform:scale(1.08);
}

.dryfruit-gallery-badge{
    position:absolute;
    left:12px;
    bottom:12px;
    background:rgba(20, 18, 16, 0.82);
    color:#fff;
    font-size:0.82rem;
    padding:7px 10px;
    border-radius:999px;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.dryfruit-gallery-empty{
    max-width:720px;
    margin:0 auto;
    padding:24px;
    border-radius:18px;
    background:#fffaf5;
    border:1px dashed #e4c6a0;
    text-align:center;
    color:#5e4b3d;
}

/* ==========================
   MODAL
========================== */

.dryfruit-gallery-modal{
    position:fixed;
    inset:0;
    background:rgba(8, 6, 5, 0.88);
    display:none;
    justify-content:center;
    align-items:center;
    z-index:999999;
    padding:20px;
}

.dryfruit-gallery-modal::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(0,0,0,0.35), rgba(0,0,0,0.75));
}

.dryfruit-gallery-modal.dryfruit-gallery-active{
    display:flex;
}

.dryfruit-gallery-modal-box{
    position:relative;

    border:12px solid #ffffff;
    border-radius:12px;

    background:#fff;

    max-width:1000px;
    width:100%;

    overflow:hidden;
}

.dryfruit-gallery-modal-box img{
    width:100%;
    max-height:85vh;
    display:block;
    object-fit:contain;
}

.dryfruit-gallery-close-btn{
    position:absolute;
    top:12px;
    right:12px;

    width:42px;
    height:42px;

    border:none;
    border-radius:50%;

    background:#fff;
    color:#000;

    font-size:28px;
    line-height:1;

    cursor:pointer;

    z-index:5;
}

/* ==========================
   TABLET
========================== */

@media(max-width:991px){

    .dryfruit-gallery-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .dryfruit-gallery-image{
        height:240px;
    }
}

/* ==========================
   MOBILE
========================== */

@media(max-width:768px){

    .dryfruit-gallery-grid{
        grid-template-columns:repeat(2,1fr);
        gap:15px;
    }

    .dryfruit-gallery-image{
        height:180px;
    }

    .dryfruit-gallery-modal-box{
        border-width:8px;
    }
}

@media(max-width:480px){

    .dryfruit-gallery-grid{
        grid-template-columns:1fr;
    }

    .dryfruit-gallery-image{
        height:240px;
    }

    .dryfruit-gallery-close-btn{
        width:36px;
        height:36px;
        font-size:24px;
    }
}