@media only screen and (max-width: 768px) {
    header {
        grid-template-columns: auto 1fr auto;
        padding: 5px;
    }

    header h1 {
        font-size: 1.2rem;
        margin: 5px auto;
    }

    header h4 {
        font-size: 0.7rem;
        margin-top: -15px;
    }

    .titleImage {
        height: 60px;
    }

    .menu-toggle {
        display: block;
        font-size: 20px;
    }

    .sidebar {
        width: 70%;
        padding: 10px;
    }

    .sidebar a {
        font-size: 16px;
        padding: 8px;
    }

    main {
        width: 95%;
        padding: 5px;
    }

    .companyFilter button {
        margin: 0 5px;
        padding: 0.6rem;
        font-size: 20px;
    }

    .grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .grid section {
        width: 95%;
        min-height: auto;
        padding: 8px;
        margin: 5px 0;
    }

    .list section {
        grid-template-columns: 1fr;
        padding: 8px;
    }

    #home_page {
        width: 100%;
    }

    .hero {
        height: 180px;
        max-height: 180px;
    }

    .join {
        position: left;
        margin: 10px auto;
        width: 80%;
        padding: 8px;
        font-size: 16px;
    }

    .grid-weather {
        grid-template-columns: 1fr;
    }

    .grid-weather section {
        padding: 8px;
        margin: 5px 0;
        min-height: 120px;
    }

    .spotlights {
        grid-template-columns: 1fr;
    }

    form {
        padding: 10px;
        width: 95%;
        margin: 0 auto;
    }

    form label {
        font-size: 16px;
    }

    form input,
    form textarea {
        font-size: 14px;
        padding: 6px;
    }

    fieldset {
        padding: 8px;
        width: 95%;
    }

    fieldset legend {
        font-size: 16px;
    }

    #sendForm {
        font-size: 16px;
        padding: 8px;
        width: 80%;
        margin: 10px auto;
    }

    dialog {
        width: 90%;
        padding: 10px;
    }

    .modal-content {
        flex-direction: column;
    }

    #card {
        width: 100%;
        height: 50px;
        margin: 0;
    }

    #close-modal {
        margin: 10px auto 0;
        width: 40%;
    }

    #discoverInfo {
        grid-template-columns: 1fr;
    }

    .discoverInfo {
        height: auto;
        width: 100%;
    }

    .discoverInfo section {
        padding: 10px;
        height: auto !important;
        margin-bottom: 15px;
    }

    .discoverCard img {
        height: 100px;
    }

    .discoverCalendar iframe {
        height: 180px;
    }

    .lazyImages {
        height: auto;
    }

    .lazyImages img {
        margin: 10px auto;
        height: 150px;
    }

    #thanks h1 {
        font-size: 1.2rem;
        margin: 20px 0;
    }

    footer {
        grid-template-columns: 1fr;
        padding: 10px;
        font-size: 0.8rem;
    }

    .social img {
        width: 40px;
        height: 40px;
    }

    #weatherIcon {
        width: 50px;
        height: 50px;
    }

    .currentParagraphs p,
    .forecastParagraphs p {
        font-size: 14px;
    }

    .company-card img {
        max-width: 60px;
    }

    .company-card h3 {
        font-size: 1rem;
    }

    .sportlight-card {
        padding: 8px;
        height: 180px !important;
    }

    .sportlight-name {
        font-size: 1rem;
    }

    .sportlight-tagline {
        font-size: 0.8rem;
    }

    .sportlight-website {
        width: 80px;
        padding: 5px;
        font-size: 0.7rem;
    }
}