body {
margin: 0;
font-family: Georgia, serif;
background: linear-gradient(to bottom, #17120d, #090807);
color: #efe6d2;
line-height: 1.7;
}

/* Header */

.header {
text-align: center;
padding: 55px 20px 25px;
}

.header h1 {
margin: 0;
font-size: 2.8rem;
color: #d4af37;
}

.header p {
opacity: 0.75;
}

/* Grid */

.grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 24px;
max-width: 1100px;
margin: auto;
padding: 40px;
}

/* Cards */

.card {
display: block;
background: rgba(30, 24, 18, 0.82);
border: 1px solid rgba(212, 175, 55, 0.12);
border-radius: 14px;
padding: 15px;
text-decoration: none;
color: inherit;
transition: 0.25s;
backdrop-filter: blur(5px);
}

.card:hover {
transform: translateY(-6px);
border-color: rgba(212, 175, 55, 0.4);
box-shadow: 0 0 25px rgba(212, 175, 55, 0.08);
}

.card img {
width: 100%;
border-radius: 10px;
}

.card h2 {
margin-bottom: 4px;
color: #d4af37;
}

/* Exhibit Pages */

.exhibit-page {
max-width: 900px;
margin: auto;
padding: 40px 20px;
}

.hero-img {
width: 100%;
border-radius: 12px;
border: 1px solid rgba(212, 175, 55, 0.1);
}

/* Panels */

.panel {
background: rgba(30, 24, 18, 0.82);
border: 1px solid rgba(212, 175, 55, 0.12);
border-radius: 14px;
padding: 22px;
margin-top: 22px;
backdrop-filter: blur(5px);
}

.panel h2 {
margin-top: 0;
color: #d4af37;
}

/* Navigation */

nav {
text-align: center;
margin: 25px 0;
}

nav a {
color: #f2df9f;
text-decoration: none;
}

nav a:hover {
color: #d4af37;
}

/* Footer */

footer {
text-align: center;
padding: 30px;
opacity: 0.5;
}
