form {
    font-size: 1rem;
}

.form-body {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr 20%;
    grid-template-areas: "main types";

    @media (max-width: 700px) {
        grid-template-columns: 1fr;
        grid-template-areas: "types" "main";
    }
}

.results-buttons {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr 20%;
    grid-template-areas: "results buttons";

    @media (max-width: 700px) {
        grid-template-columns: 1fr;
        grid-template-areas: "buttons" "results";
    }
}



#search {
    grid-area: main;
}

#institutions {
    display: flex;
    padding-block: 0.5rem;
    padding-inline: 0.25em;
    border-left: 2px solid #307190;
    @media (max-width: 700px) {
        border-left: none;
        border-bottom: 2px solid #307190;
        
    }
    flex-direction: column;
    grid-area: types;
}

.type-select-instruct {
    display: flex;
    flex-direction: column;
}

.type-select-container {
    margin-top: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    max-width: fit-content;
    align-items: flex-start;

    @media (max-width: 700px) {
        gap: 0.5rem;
        flex-direction: row;
        flex-wrap: wrap;
        padding-bottom: 0.25rem;
    }
}

.type-radio-container {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: end;
    
    @media (max-width: 700px) {
        gap: 0rem;
    }

    label {
        white-space: nowrap;
    }
}

.flex-row {
    display: flex;
    flex-direction: row;
    
}

.flex-col {
    display: flex;
    flex-direction: column;
}

.flex-wrap {
    flex-wrap: wrap
}

.flex-row-middle {
    display: flex;
    flex-direction: row;
    align-items: center;
}

fieldset {
    padding: 0;
    margin: 0;
    border-width: 1px;
    border-bottom: none;
    border-inline: none;
    border-color: #307190;
    
    padding-block: 0.75rem;
    padding-inline: 0.25rem;

    &:not(input) {
        font-family: serif;
    } 

    legend {
        font-family: sans-serif;
        color: #307190;
        font-weight: bold;
    }
}

.school-list {
    display: flex;
    flex-direction: column;
    font-size: 0.8rem;
}

.school-row {
    display: grid;
    flex-direction: row;
    grid-template-columns: 10% 1fr 20%;
    grid-template-areas: "miles desc grades";
    padding-block: 0.25rem;
    align-items: center;

    &.public {
        border-bottom: 1px solid #BFE9F0;
        background-color: #F0FDFF;
    }

    &.private {
        border-bottom: 1px solid #D8F0BD;
        background-color: #F8FFF0;
    }

    &.college {
        border-bottom: 1px solid #ECECAE;
        background-color: #FFFFF0;
    }

    .Miles {
        grid-area: miles;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        color: #900000;
        padding-inline: 0.25rem;
    }

    .InstDesc {
        grid-area: desc;
        padding-inline: 0.25rem;
        text-transform: capitalize;

        a {
            font-size: 0.9rem;
            text-transform: capitalize;
        }

        * {
            text-transform: capitalize !important;
        }
    }

    .InstDetail {
        grid-area: grades;
        padding-inline: 0.25rem;
        display: flex;
        flex-direction: column;
        gap: 0.10rem;
        align-items: center;
        justify-content: center;
        color: #216383;
    }
}

.chevron::after {
    content: "\2212";
    padding-inline: 0.5rem;
    font-weight: bold;
}

.chevron.closed::after {
    content: "\002B";
    padding-inline: 0.5rem; 
    font-weight: bold;
}