/* =====================================================
   ARSP GLOBAL BASE STYLES
   Header/navbar/footer/home styles are handled separately.
===================================================== */

:root{
    --primary:#16246D;
    --primary-dark:#0D1A57;
    --gold:#B8902D;
    --white:#ffffff;
    --light:#F4F6FB;
    --text:#333333;
    --text-light:#687089;
    --bg:#ffffff;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:Arial,Helvetica,sans-serif;
    background:var(--bg);
    color:var(--text);
    line-height:1.7;
    overflow-x:hidden;
    width:100%;
    min-width:0;
}

img{
    max-width:100%;
    height:auto;
    display:block;
}

a{
    text-decoration:none;
    color:inherit;
}

button,
input,
textarea,
select{
    font:inherit;
}

/* Global container - homepage may refine this in home.css */
.container{
    width:100%;
    max-width:1400px;
    margin-left:auto;
    margin-right:auto;
    padding-left:40px;
    padding-right:40px;
}

/* =====================================================
   GALLERY
===================================================== */

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:20px;
    margin-top:20px;
}

.gallery-card{
    background:#fff;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 2px 10px rgba(0,0,0,.1);
    text-align:center;
}

.gallery-card img{
    width:100%;
    height:220px;
    object-fit:cover;
    display:block;
}

.gallery-card h3{
    padding:15px 10px 5px;
}

.gallery-card p{
    padding:0 10px 15px;
}

/* =====================================================
   LIGHTBOX
===================================================== */

.lightbox{
    display:none;
    position:fixed;
    inset:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.9);
    justify-content:center;
    align-items:center;
    z-index:9999;
}

.lightbox-content{
    max-width:95%;
    max-height:90%;
    border-radius:8px;
}

.lightbox-close{
    position:absolute;
    top:20px;
    right:30px;
    font-size:40px;
    color:#fff;
    cursor:pointer;
    font-weight:bold;
}

.lightbox-prev,
.lightbox-next{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    font-size:50px;
    color:#fff;
    cursor:pointer;
    user-select:none;
    padding:15px;
    font-weight:bold;
}

.lightbox-prev{left:20px;}
.lightbox-next{right:20px;}

.lightbox-prev:hover,
.lightbox-next:hover{
    background:rgba(255,255,255,.2);
    border-radius:50%;
}

/* =====================================================
   RESPONSIVE GLOBAL CONTAINER
===================================================== */

@media(max-width:1400px){
    .container{
        padding-left:30px;
        padding-right:30px;
    }
}

@media(max-width:768px){
    .container{
        width:100%;
        max-width:100%;
        padding-left:14px;
        padding-right:14px;
    }
}

@media(max-width:480px){
    .container{
        padding-left:10px;
        padding-right:10px;
    }
}
