body {
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
    overflow-x: hidden;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
}


.logo-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url('img/FunshineHanddrawnLogo_transp.jpg') center/contain no-repeat; /* Adjust the logo image URL and positioning */
    transition: opacity 0.5s ease; /* Add a transition for smooth fading */
    z-index: -256;
}

.logo {
    width: 100%; /* Initially as broad as the window */
    height: auto; /* Maintain aspect ratio */
}

.menu {
    display: none; /* Initially hide the menu */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #ddddd0; /* Light grey background for the menu */
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
    padding: 1px 20px;
    z-index: 256;
}

.menu title {
    margin: 0;
    padding: 2px 20px;
}

.menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.menu ul li {
    margin: 0;
    padding: 0;
    margin-right: 20px;
}

.menu ul li:last-child {
    margin-right: 40px;
}

.menu ul li a {
    text-decoration: none;
    color: #333;
    font-weight: bold;
    transition: color 0.3s ease;
}

.menu ul li a:active {
    color: #ff5722;
}

.menu ul li a:hover {
    color: #ff5722;
}

.menu ul li a.active {
    color: #ff5722;
}

.title a {
    text-decoration: none;
    font-size: 40px;
    color: #333;
    font-weight: bold;
    transition: color 0.3s ease;
}

.title a:active {
    color: #ff5722;
}

.title a:hover {
    color: #ff5722;
}

.title img {
    width: 34;
    height: auto;
}


.section {
    min-height: 80vh; /* Ensure each section fills at least the window height */
    padding: 100px 0; /* Add vertical spacing for sections */
    font-size: 24px;
    text-align: center; /* Center section content horizontally */
}



.smalltextblock {
    padding: 0 100px; /* Add vertical spacing for sections */
    width: 50vw;
    font-size: 12px;
    text-align: left; /* Center section content horizontally */
}



.textblock {
    padding: 0 100px; /* Add vertical spacing for sections */
    width: 70vw;
    font-size: 18px;
    text-align: left; /* Center section content horizontally */
}

.section table {
    font-size: 18px;
    align-items: center;
    justify-content: center;
}

.section table tr:nth-child(even) {
    background-color: #eeeee0;
}

.section table td {
	padding: 10px 10px;
    font-size: 18px;
    text-align: left; /* Center section content horizontally */
    vertical-align: top;
}

.section table img {
	padding: 10px 10px;
	float: left;
}

.section a {
    text-decoration: none;
    font-size: 24px;
    color: #333;
    font-weight: bold;
    transition: color 0.3s ease;
}

.section a:active {
    color: #ff5722;
}

.section a:hover {
    color: #ff5722;
}

.table-year {
	writing-mode: vertical-rl;
	text-orientation: mixed;
    font-weight: bold;
}

.small-pict {
    width: 25vw;
    height: auto;
    position: relative;
    text-align: center; /* Center section content horizontally */
}

.medium-pict {
    width: 45vw;
    height: auto;
    position: relative;
    text-align: center; /* Center section content horizontally */
}

.large-pict {
    width: 70vw;
    height: auto;
    position: relative;
    text-align: center; /* Center section content horizontally */
}

/* Define styles for the scrolling image */
.scrolling-image {
    width: 300vw; /* Adjust the width and height of the image */
    height: auto;
    position: absolute;
    bottom: 10%; 
    right: -300vw; /* Start position at the right edge of the section */
    background: url('img/FunshineSingers_Banner_v4_noLogo.png') center/cover no-repeat; /* Add your image URL and styling */
}

/* Define styles for the scrolling image */
.bottom-pict {
    width: 100vw;
    height: auto;
    position: relative;
}

.bottom-pict img {
    width: 98vw;
    height: auto;
    position: relative;
}

.section table tr td {
    font-size: 14px;
    justify-content: top;
}

.table-year {
    font-size: 22px;
    justify-content: top;
}

.slideshow {
	position: relative;
	width: 90vw;
	max-width: 80vw; /* Max width for large screens */
	height: calc(90vw * 2384 / 4064); /* Maintain aspect ratio based on image dimensions */
	max-height: calc(80vw * 2384 / 4064); /* Max height for large screens */
	overflow: hidden;
}

.slideshow img {
	position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
	width: 100%;
	height: 100%;
	object-fit: contain;
	opacity: 0;
	transition: opacity 1s ease-in-out;
}

.slideshow img.active {
	opacity: 1;
}

.controls {
	margin-top: 20px;
}

@media (max-width: 768px) {
	.slideshow {
		width: 100vw; /* Full width on small screens */
		height: calc(100vw * 2384 / 4064); /* Maintain aspect ratio for small screens */
	}
    .title a {
        font-size: 20px; /* Reduce font size to half */
    }
    
	.medium-pict {
    	width: 90vw;
    }
        
	.textblock {
		padding: 0 10px; /* Add vertical spacing for sections */
		width: 90vw;
		font-size: 10px;
	}

	.smalltextblock {
		padding: 0 10px; /* Add vertical spacing for sections */
		width: 90vw;
		font-size: 9px;
	}

}
