.social-gallery-section{

    padding:70px 0;
    background:#f3f3f3;
    font-family:var(--font-body,'League Spartan',sans-serif);

}

.social-gallery-section .container{

    width:92%;
    max-width:1400px;
    margin:auto;

}

.gallery-heading{

    font-size:36px;
    font-weight:700;
    margin-bottom:25px;
    color:#222;
    font-family:var(--font-heading,'League Spartan',sans-serif);

}

.social-grid{

    display:grid;

    grid-template-columns:repeat(5,1fr);

    grid-auto-rows:170px;

    gap:12px;

}

.gallery-item{

    position:relative;

    overflow:hidden;

    border-radius:12px;

    display:block;

}

.gallery-item img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.5s;

}

.gallery-overlay{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.25);

    display:flex;

    justify-content:center;

    align-items:center;

    opacity:0;

    transition:.35s;

}

.gallery-overlay span{

    color:#fff;

    font-size:17px;

    font-weight:600;

    font-family:var(--font-body,'League Spartan',sans-serif);

}

.gallery-item:hover img{

    transform:scale(1.08);

}

.gallery-item:hover .gallery-overlay{

    opacity:1;

}

.large-vertical{

    grid-row:span 2;

}

.large-horizontal{

    grid-column:span 1;

    grid-row:span 1;

}

.small{

    grid-row:span 1;

}

.wide{

    grid-column:span 2;

}

.social-links{

    margin-top:35px;

    text-align:center;

}

.social-links p{

    color:#888;

    margin-bottom:12px;

    font-family:var(--font-body,'League Spartan',sans-serif);

}

.social-links a{

    color:#d45c22;

    text-decoration:none;

    margin:0 12px;

    font-weight:600;

    transition:.3s;

    font-family:var(--font-body,'League Spartan',sans-serif);

}

.social-links a:hover{

    color:#111;

}

@media(max-width:1100px){

.social-grid{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:768px){

.social-grid{

grid-template-columns:repeat(2,1fr);

grid-auto-rows:150px;

}

.wide{

grid-column:span 2;

}

.gallery-heading{

font-size:28px;

}

}

@media(max-width:500px){

.social-grid{

grid-template-columns:1fr;

}

.large-vertical,
.wide{

grid-column:span 1;

grid-row:span 1;

}

}