﻿@font-face {
    font-family: 'Cascadia Code';
    src: url('res/CascadiaCode.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

html {
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    background-color: #f0f7ff; /* Light pastel blue background */
    display: flex;
    flex-direction: column;
    height: 100%;
    margin: 0;
    font-family: 'Cascadia Code', monospace;
}

.content {
    flex: 1 0 auto; /* The content area is flexible but always takes the space it needs, the 0 value for the flex-basis property means it doesn't have an initial height */
    overflow-y: auto; /* Enables scroll for the content area if the content overflows */
    -webkit-overflow-scrolling: touch; /* Allows momentum-based scrolling for touch devices */
}

.container {
    max-width: 800px;
    margin: auto;
    padding: 20px;
    flex-grow: 1;
}

.logo {
    margin-top: 20px;
}

    .logo > img {
        height: 150px;
        width: 150px;
    }

.slogan {
    margin: 20px 0;
    font-size: 1.5em;
    font-weight: bold;
}

.contact-info, .references {
    background: #fff;
    padding: 15px;
    margin: 30px 0;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.reference-item {
    margin-bottom: 20px;
}

.reference-link {
    color: #0066cc;
    text-decoration: none;
    font-weight: bold;
}

.reference-description {
    color: #555;
    font-size: 0.9em;
    margin-top: 5px;
}

footer {
    padding: 20px;
    background: #333;
    font-size: smaller;
    background-color: #003366; /* Dark blue background */
    color: #ffffff;
    text-align: center;
    flex-shrink: 0; /* This prevents the footer from shrinking */
    width: 100%;
    position: fixed; /* Fixes the footer to the bottom of the viewport */
    bottom: 0; /* Positions the footer at the bottom of the viewport */
}
