body {
    margin: 0;
    display: flex;
    background-color: #E8D9B5;
    font-family: Arial, sans-serif;
}

.site {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 100vh;
    width: 100%;
}

.header {
    display: flex;
    justify-content: space-between;
    height: 75px;
    background-color: #E8D9B5;
    align-items: center;
    padding: 0px 32px 0px;
    flex-shrink: 0;
}

.logo {
    display: flex;
    font-size: 32px;

}

#logoColor {
    color: #5C2121;
}

.login {
    display: flex;
}

.hero {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: auto;
    align-items: center;
    justify-content: center;
    height: 500px;
    background-color: #5C2121;
    color: #E8D9B5;
    gap: 8px
}

.footer {
    display: flex;
    flex-shrink: 0;
    height: 50px;
    align-items: center;
    justify-content: center;
    background-color: #E8D9B5;
    color: #5C2121;
}

.usp {
    display: flex;
    flex-grow: 0.5;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: center;
    padding: 50px 0px 50px 0px;
    gap: 50px;
    background-color: #E8D9B5;
}

.sp {
    display: flex;
    flex-direction: column;
    width: 236px;
    height: 436px;
    gap: 24px;
    flex-shrink: 0;
    flex-grow: 0;
    border-radius: 8px;
    background-color: #5C2121;
    padding: 32px;
    color: #E8D9B5;
}

#spHeading {
    font-size: 24px;
    padding: 0px 14px 0px;
    color: #D4A017;
}

#spImage {
    text-align: center;
}

#spText {
    height: 120px;
    padding: 0px 14px 0px;
    color: #E8D9B5;
}

.cta {
    display: flex;
    flex-grow: 1;
    height: 300px;
    justify-content: center;
    align-items: center;
    background-color: #5C2121;
}

.ctaBox {
    display: flex;
    flex-direction: column;
    flex-grow: 0.7;
    height: 200px;
    border-radius: 8px;
    background-color: #E8D9B5;
    justify-content: center;
    align-items: center;
    gap: 16px;
}

#ctaHeader {
    font-size: 30px;
}

button {
    border-radius: 8px;
    padding: 8px 16px 8px;
    color: #E8D9B5;
    background-color: #5C2121;
    border: 2px solid #D4A017;
    cursor: pointer;
}

button:hover {
    background-color: #D4A017; /* Aged Gold on hover for interactivity */
    color: #2E4A2F; /* Deep Forest Green text for contrast */
}

a {
    text-decoration: none;
    color: #E8D9B5; /* Creamy Off-White for links */
}

#heroText {
    font-size: 36px;
    color: #D4A017;
}

img {
    border-radius: 8px;
    border: 2px solid #4A5659;
}

#spacer {
    width: 24px;
}

/* visual debugging */
/*.site, .header, .hero, .footer, .logo, .login, .usp, .sp, .cta, .ctaBox {
    border: 1px solid red;
}
*/


