body.menu_open [id], body.menu_open [id][style] {scroll-margin-top: 5rem !important}
h1 {font-size: 3rem}
h2 {font-size: 2.25rem}
h3 {font-size: 1.75rem}
h4 {font-size: 1.5rem}
h5 {font-size: 1.25rem}
h6 {font-size: 1.125rem}
.container {margin: 0 auto; max-width: 80rem}
.container.narrow {max-width: 60rem}
.subhead {margin: 0 auto; max-width: 60rem}

.boxes {align-items: stretch; display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; margin: 1rem 0}
.box {box-sizing: border-box; flex-basis: calc(25% - 0.75rem); margin: 0}
.boxes.col3 .box {flex-basis: calc(100% / 3 - 2rem / 3)}

/* form */
.fieldset {border-collapse: collapse; border-style: hidden; display: table; margin: 1rem 0; table-layout: fixed; width: 100%}
.fieldset .field {border: 1rem solid transparent; display: table-cell; margin: 0}

/* header */
#header .container {flex-wrap: nowrap; gap: 1rem}
#header_logo {flex-basis: auto}
/*menu*/
#main_menu_open {display: none}
#main_menu {align-items: center; display:  flex !important; flex-basis: auto; flex-grow: 1; gap: 1rem; justify-content: end; padding: 0}
#main_menu_menu, #main_menu_links {align-items: center; display: flex; gap: 0 1rem}
#main_menu_menu {flex-grow: 1; justify-content: center}
#main_menu_menu > li {border-bottom: 2px solid transparent; border-top: 2px solid transparent}
#main_menu_menu > li.current-menu-item {border-bottom-color: var(--highlight)}
#main_menu_menu > li > a {background-color: transparent !important; padding: 0.25rem 0.5rem}
#main_menu_menu > li:hover > a {color: var(--highlight)}
#main_menu_links a:not(.button) {padding: 0}

/* hero */
#hero {padding: 3rem 0}
#hero_wrap {align-items: center; display: flex; gap: 2rem; padding: 4rem 0; text-align: left}
#hero_img {aspect-ratio: auto; flex-basis: 45%; flex-shrink: 0; height: 30rem; margin: 0}
#hero_img:has(#hero_stats) {margin: 0 0 2rem 2rem}
#hero_img #hero_stats {margin: 0 0 -2rem -2rem}
#hero_copy {flex-grow: 1; flex-shrink: 1}
#hero #hero_wrap .subhead {margin: 0; max-width: none}
#hero_wrap h1 {font-size: 3.75rem}
#hero_wrap .buttonholder {justify-content: start}

/* sections */
/*contact*/
.contact_boxes {display: flex; gap: 1rem; margin: 3rem 0}
.contact_boxes_column {flex-basis: 100%; flex-shrink: 1}
/*row*/
.row {border-collapse: collapse; border-style: hidden; display: table; height: 1px; table-layout: fixed; width: 100%}
.row .copyholder, .row .imgholder {border: 4rem solid transparent; display: table-cell; vertical-align: middle}
.row .imgholder .img {aspect-ratio: auto; height: 100%; left: 0; position: absolute; top: 0; width: 100%}
.row .imgholder {position: relative}

/* posts */
#posts .box {flex-basis: calc(100% / 3 - 2rem / 3)}
.page-numbers {padding: 0.125rem 0.25rem}

/*footer*/
#footer {text-align: left}
.footercols {align-content: start; display: flex; gap: 2rem; justify-content: space-between}
.footercol {flex-basis: 0; flex-grow: 1; width: max-content}
.footercol > :first-child {margin-top: 0}
.footercol > :last-child {margin-bottom: 0}	
#footer_logo img {margin: 0}
#footer_copyright {text-align: center}