@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700&family=Source+Code+Pro&display=swap');

body {
    background-color: #d3d3d3; /* Light gray theme */
    font-family: 'Inter', sans-serif;
    color: #333;
    margin: 0 auto;
    padding: 20px;
    max-width: 1000px;
}

.banner img { width: 100%; height: auto; }

.main-nav {
    display: flex;
    gap: 20px;
    font-family: 'Source Code Pro', monospace;
    font-size: 1.5rem;
    padding: 20px 0;
    flex-wrap: wrap;
}

h1 { border-bottom: 2px solid #000; }

.hosts-table {
    width: 100%;
    border-collapse: collapse;
    background-color: #e0f7fa; /* Light blue table background */
}

.hosts-table th, .hosts-table td {
    border: 1px solid #000;
    padding: 10px;
    text-align: left;
    min-width: 120px;
}

.hosts-table img {
    max-width: 100px;
    height: auto;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    position: relative;
    transform-origin: right center;
}

.hosts-table img:hover {
    transform: scale(5);
    z-index: 100;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
}

footer {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
    font-family: 'Source Code Pro', monospace;
    flex-wrap: wrap;
    gap: 20px;
}

.footer-links a,
.main-nav a {
    transition: color 0.3s ease;
}

.footer-links a:hover,
.main-nav a:hover {
    color: orange;
    cursor: pointer;
}

.shows-grid {
    display: grid;
    /* Flexes from 1 to 2 columns based on screen size */
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    /* Adds space between the grid items */
    gap: 20px;
    margin-top: 20px;
}

.show-item {
    padding: 15px;
    border: 1px solid #000;
    /* Optional: helps separate the content visually */
    background-color: #f9f9f9; 
}

.show-item h3 {
    margin: 0;
    font-size: 1.1rem;
    font-family: 'Inter', sans-serif;
}

@media (max-width: 768px) {
    .hosts-table {
        display: block;
        overflow-x: auto;
    }
}