/* Navbar links */
nav a, .dropbtn {
    padding: 10px;
    text-decoration: none;
}

/* Dropdown menu */
.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f1f1f1;
    min-width: 160px;
    z-index: 1000;
}

.dropdown:hover .dropdown-content {
    display: block;
}

.dropdown-content a {
    display: block;
    padding: 8px;
}

/* Full height for body */
html, body {
    height: 100%;
}

/* Flex layout to push footer to bottom */
body {
    display: flex;
    flex-direction: column;
}

main {
    flex: 1 0 auto; /* ensures footer is pushed to bottom */
}

footer {
    flex-shrink: 0;
}

/* Hover lift + subtle jiggle for cards */
.card.hover-jiggle {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
    position: relative;
    overflow: visible !important;
}

.card.hover-jiggle:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 35px rgba(0,0,0,0.25) !important;
    animation: jiggle 0.5s ease-in-out;
}

@keyframes jiggle {
    0%   { transform: translateY(-10px) rotate(0deg); }
    25%  { transform: translateY(-10px) rotate(1deg); }
    50%  { transform: translateY(-10px) rotate(-1deg); }
    75%  { transform: translateY(-10px) rotate(0.5deg); }
    100% { transform: translateY(-10px) rotate(0deg); }
}
/* Gallery tile shadow & hover effect */
.gallery-tile {
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    border-radius: 12px;
}

.gallery-tile:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.25);
}

