:root {
  --text-color: #2E2E2E; 
  --headline-font: 'Playfair Display', serif; 
  --body-font: "Open Sans", sans-serif;
  --accent-color: #88c1cb;
  --accent-color2: #6B4F3A;
  --background-color: #F5EFE6;
}

html, body{
    margin: 0;
    padding: 0;
}

body {
    font-family: var(--body-font);
    margin: 0; 
    padding-top: 0px; 
    color: var(--text-color);
    background-color: var(--background-color);
}



header {
    font-family: var(--headline-font);
    position: sticky;
    top: 0;
    z-index: 10; 
    background-color: var(--accent-color); 
    color: var(--text-color);          
    padding: 10px 20px;     
    display: flex;         
    justify-content: space-between;
    align-items: center;    
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); 
}

.navbar {
    color: var(--text-color);
    font-family: var(--body-font);
    padding: 10px 20px;
}

.nav-menu {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
}

.nav-menu li a {
    font-size: 20px;
    color: var(--text-color);
    text-decoration: none;
    padding: 10px 15px;
    display: block; 
}

footer{
    text-align: center; 
    padding: 20px; 
    background-color: var(--accent-color); 
    color: var(--text-color); 
    width: 100%; 
}
footer a{
    color: var(--text-color);
    text-decoration: none;
}
footer a:hover{
    color: blue;
}
.footerNav {
    color: var(--text-color);
    font-family: var(--body-font);
    padding: 10px 20px;
}

.footerNav-menu {
    display: flex;
    align-items: center;
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
}

.footerNav-menu li a {
    color: var(--text-color);
    text-decoration: none;
    padding: 10px 15px;
    display: block; 
}
h1, h2, h3{
    font-family: var(--headline-font);
}
h3{
    font-size: 27px;
}
.section{
    text-align: center;
}
/* Gallery Section */
.gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 15px;
    padding: 20px;
    margin-top: 20px;
}

.photo-item {
    background-color: white;
    border-radius: 10px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    padding: 10px;
}

.photo-item:hover {
    transform: scale(1.05); /* Slight zoom effect on hover */
    box-shadow: 0 10px 25px rgba(0,0,0,0.2);
}

.photo-item img {
    width: 100%;
    height: auto;
    border-radius: 8px;
}
.caption {
    text-align: center;
    padding-top: 10px;
    font-size: 1rem;
    color: #555;
}

/* Tablet */
@media (max-width: 900px) {
  .gallery {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Mobile */
@media (max-width: 600px) {
  .gallery {
    grid-template-columns: 1fr;
  }
}
.photo-item img {
  filter: contrast(1.05) saturate(1.05);
}