@font-face {
    font-family: charter;
    font-style: normal;
    font-weight: normal;
    font-stretch: normal;
    font-display: swap;
    src: url('Charer/charter_regular.woff2') format('woff2');
}

@font-face {
    font-family: charter;
    font-style: italic;
    font-weight: normal;
    font-stretch: normal;
    src: url('Charer/charter_italic.woff2') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: charter;
    font-style: normal;
    font-weight: bold;
    font-stretch: normal;
    src: url('Charer/charter_bold.woff2') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: charter;
    font-style: italic;
    font-weight: bold;
    font-stretch: normal;
    src: url('Charer/charter_bold_italic.woff2') format('woff2');
    font-display: swap;
}

/* Establish the root base size for all rem calculations */
html {
    font-size: 16px;
}

body {
    font-family: "charter", serif;
    background-color: ##b8c2b9;
    margin: 0;
    padding: 1.5rem; /* 16px */
    display: flex;
    justify-content: center;
}

/* Main single-column container */
.farm-container {
    display: flex;
    flex-direction: column;
    max-width: 30rem; /* ~400px */
    width: 100%;
    gap: 0.5rem; /* 8px */
    box-sizing: border-box;
}

/* Header layout */
.site-header {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0 0.625rem; /* 10px */
}

/* Groups the logo and title block together */
.header-left {
    display: flex;
    align-items: center;
    gap: 1rem; /* 16px */
}

.logo {
    width: 3.75rem; /* 60px */
    height: auto;
}

.title-block h1 {
    margin: 0 0 0.125rem 0; /* Tucked subtitle right under */
    font-weight: bold;
    text-align: left;
}

.subtitle {
    font-size: clamp(0.9rem, 1vw, 1.1rem);
    margin: 0;
    color: #593e44;
    text-align: left;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

h1 {
    /* Scales from ~20.8px on tiny phones up to 32px on desktops */
    font-size: clamp(1.3rem, 3vw + 1rem, 2rem);
    text-align: center;
}

p {
    /* Scales body text from 18px on phones to ~20.8px on desktops */
    font-size: clamp(1.125rem, 1.5vw + 0.8rem, 1.3rem);
    line-height: 1.4;
    text-align: left;
}

a:link {
    color: #0030AD;
    text-decoration: none;

}

a:visited {
    text-decoration: none;
    color: #593e44;
}

a:hover,
a:active {
    background-color: #fef6d6 ;
}