/* Top section layout container */
.top-grid-container {
    display: flex;
    justify-content: center;
    padding: 3rem 1rem;
}

/* Grid layout for info blocks */
.top-grid {
    display: flex;
    gap: 2rem;
    max-width: 1200px;
    justify-content: center;
    flex-wrap: wrap;
}

/* Individual info block styling */
.info-block {
    flex: 1 1 30%;
    min-width: 280px;
    padding: 2rem;
    background-color: var(--bg-light);
    border-radius: 1rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    text-align: center;
}

/* Paragraphs within info blocks */
.info-block p {
    font-size: 1.1rem;
    line-height: 1.6;
    color: var(--text-color);
}

/* Image styling within blocks */
.block-image {
    display: block;
    max-width: 80%;
    height: auto;
    margin: 0 auto 1rem;
    border-radius: 0.5rem;
}

/* Center alignment for section titles */
.section-title.center {
    text-align: center;
}

/* Centered button group layout */
.button-group.center {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 1.5rem;
}

/* Cast section padding */
.cast-section {
    padding: 0 2rem;
}

/* Grid layout for cast cards */
.cast-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

/* Styling for individual cast cards */
.cast-card {
    background-color: #eec3fa;
    border-radius: 1rem;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    padding: 1.5rem;
    width: 300px;
    text-align: center;
}

/* Cast profile image styling */
.profile-image {
    width: 180px;
    height: 180px;
    object-fit: cover;
    border-radius: 50%;
    margin-bottom: 1rem;
}

/* Cast name text styling */
.cast-name {
    font-size: 1.2rem;
    margin-bottom: 0.5rem;
    color: var(--secondary);
}

/* Cast bio text styling */
.cast-bio {
    font-size: 0.95rem;
    color: #333;
}