/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
 html{
    line-height:1.15;
    -webkit-text-size-adjust:100%
}
body{
    margin:0
}
main{
    display:block
}
h1{
    font-size:4rem
}
hr{
    box-sizing:content-box;
    height:0;
    overflow:visible
}
pre{
    font-family:monospace, monospace;
    font-size:1em
}
a{
    background-color:transparent
}
abbr[title]{
    border-bottom:none;
    text-decoration:underline;
    text-decoration:underline dotted
}
b,strong{
    font-weight:bolder
}
code,kbd,samp{
    font-family:monospace, monospace;
    font-size:1em
}
small{
    font-size:80%
}
sub,sup{
    font-size:75%;
    line-height:0;
    position:relative;
    vertical-align:baseline
}
sub{
    bottom:-0.25em
}
sup{
    top:-0.5em
}
img{
    border-style:none
}
button,input,optgroup,select,textarea{
    font-family:inherit;
    font-size:100%;
    line-height:1.15;
    margin:0
}
button,input{
    overflow:visible
}
button,select{
    text-transform:none
}
button,[type="button"],[type="reset"],[type="submit"]{
    -webkit-appearance:button
}
button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{
    border-style:none;
    padding:0
}
button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{
    outline:1px dotted ButtonText
}
fieldset{
    padding:0.35em 0.75em 0.625em
}
legend{
    box-sizing:border-box;
    color:inherit;
    display:table;
    max-width:100%;
    padding:0;
    white-space:normal
}
progress{
    vertical-align:baseline
}
textarea{
    overflow:auto
}
[type="checkbox"],[type="radio"]{
    box-sizing:border-box;
    padding:0
}
[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{
    height:auto
}
[type="search"]{
    -webkit-appearance:textfield;
    outline-offset:-2px
}
[type="search"]::-webkit-search-decoration{
    -webkit-appearance:none
}
::-webkit-file-upload-button{
    -webkit-appearance:button;
    font:inherit
}
details{
    display:block
}
summary{
    display:list-item
}
template{
    display:none
}
[hidden]{
    display:none
}
body{
    margin:0;
    padding:0;
    font-family:"Lato",sans-serif;
    font-size:16px;
    line-height:1.5;
    color:#444
}
.wrapper{
    max-width:999px;
    margin:25px auto;
    padding:0 5%
}
h1.title{
    margin:0;
    font-family:"Pacifico",sans-serif;
    font-weight:700;
    line-height:1.3;
    text-align:center;
    color:#003977
}
h1.title a{
    color:inherit;
    text-decoration:inherit
}
a {
    color:#003977
}
img{
    max-width:100%
}
h2.subtitle{
    margin-top:0;
    font-family:"Lato",sans-serif;
    font-weight:700;
    font-size:1.5rem;
    line-height:1.0;
    text-align:center;
    text-decoration: none;
    color:#003977
}
nav{
    text-align:center;
    font-weight:700
}
nav ul{
    list-style:none;
    padding:0
}
nav ul li{
    display:inline-block;
    margin:0 5px
}
nav ul li:first-child{
    margin-left:0
}
nav ul li:last-child{
    margin-right:0
}
.newsletter-form{
    display:inline-block
}
h2{
    font-size:1.75rem
}
h3{
    font-size:1.25rem
}
h4{
    font-size:1.2rem
}
table{
    border-collapse:collapse;
    font-size:0.75rem;
    width:100%
}
th,td{
    border:1px solid #bbb;
    padding:5px;
    text-align:center
}
th:first-child,td:first-child{
    text-align:left
}
footer{
    margin:25px 0;
    text-align:center;
    font-size:0.85rem
}

.title-container {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  max-width: 900px;
  margin: auto;
  flex-wrap: wrap; /* Enables wrapping for small screens */
}

.title-image {
  height: 300px;
  width: 300px;
  height: auto;
  flex-shrink: 0;
}

.title-text {
  flex: 1;
  min-width: 250px;
}

.benefactor-container {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 20px;
  max-width: 900px;
  margin: auto;
  flex-wrap: wrap; /* Enables wrapping for small screens */
}

.benefactor-logo {
  height: 150px;
  width: 150px;
  height: auto;
  flex-shrink: 0;
}

.benefactor-blurb {
  flex: 1;
  min-width: 250px;
  text-align: left;
}

.map-frame {
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  aspect-ratio: 1 / 1;
  border:0;
}

@media (min-width: 500px){
    p,li{
        font-size:1.2rem
    }
    table{
        font-size:1rem
    }
    .map-frame {
        height: 500px;
        aspect-ratio: auto;
    }
}

@media (max-width: 650px){
  .benefactor-container {
    flex-direction: column;
    text-align: center;
  }

  .benefactor-logo {
    margin-bottom: 15px;
  }

  .title-container {
    flex-direction: column;
    text-align: center;
  }
}

@media (min-width: 750px){
    h1.title{
        font-size:5rem
    }
    h2.subtitle{
        font-size:2rem
    }
    table{
        font-size:1.25rem
    }
    th,td{
        padding:10px
    }
}
