* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Silka Mono', sans-serif;
    height: auto; /* Full viewport height */
    display: flex;
    justify-content: flex-start; /* Center the entire container horizontally */
    align-items: center; /* Center the container vertically */
    margin: 0;
    padding: 0;
    background-color: #f4f1f1;
    flex-flow: column nowrap;
}

.container {
    display: flex;
    flex-direction: row; /* Ensure items are in a single row */
    justify-content: flex-start; /* Align items to the start */
    align-items: center; /* Center items vertically */
    max-width: 95vw; /* Maximum width of container */
    width: 100%; /* Take full width of viewport */
    margin: 0;
    gap: 20px; /* Space between container items */
}

.text-column {
    flex: 1;
    padding: 20px; /* Add padding inside the text column */
    margin-bottom: 20px; /* Margin below the text column */
    display: flex;
    flex-direction: column; /* Stack child elements vertically */
    justify-content: center; /* Center text vertically */
    align-items: flex-start; /* Align text to the left */
    max-width: 50%; /* Limit text column width to half of the container */
}

.text-column h1 {
    font-size: 2.5rem; /* Font size for the main heading */
    margin-bottom: 20px; /* Space below the heading */
    font-weight: 600; /* Medium weight */
}

.text-column h2 {
    font-size: 1.5rem; /* Font size for subheadings */
    margin-bottom: 15px; /* Space below the subheading */
    font-weight: 600; /* Medium weight */
}

.text-column p {
    font-size: 1.2rem; /* Font size for paragraphs */
    margin-bottom: 20px; /* Space below the paragraph */
}

.contact-link {
    display: inline-block;
    margin-top: 10px; /* Space above the contact link */
    padding: 10px 20px; /* Padding for better appearance */
    background-color: transparent; /* Transparent background */
    color: black;
    text-decoration: underline;
    font-size: 1.5rem; /* Font size for the contact link */
}

.contact-link:hover {
    background-color: #FFE135; /* Background color on hover */
}

.image-column {
    flex: 1;
    display: flex;
    justify-content: center; /* Center image horizontally */
    align-items: center; /* Center image vertically */
}

.carousel img {
    max-width: 100%; /* Ensure image doesn't exceed container width */
    height: auto; /* Maintain aspect ratio */
    border-radius: 10px; /* Rounded corners */
}

.menu {
    position: absolute;
    top: 50px;
    left: 2.5vw;
    padding-left: 20px;
}


/* Responsive Design */
@media (max-width: 768px) {
    .container {
        flex-direction: column; /* Stack items vertically on small screens */
        align-items: flex-start; /* Align items to the left */
    }

    .menu {
    position: initial;
}

    .image-column {
        margin-top: 20px; /* Margin above image column */
    }
}

/*** FONT ***/

@font-face {
    font-family: 'Silka Mono';
    src: url('../fonts/silkamono-regular-webfont.woff2') format('woff2');
    font-weight: 400; /* Regular weight */
    font-style: normal;
}

body {
    font-family: 'Silka Mono', sans-serif; /* Ensure body uses the custom font */
}
