/* 32m custom styles */
/* Note the default style are mobile versions, with overrides for desktop. */

:root {
	--red32m: #A02827;
	--white32m: #FFFFFF;
        --grey32m: #ECECEC;
        --lrmargin: 2vw;
        --desktop-lrmargin: 25vw;
        --typeface: 'Fivo Sans';
        --typeface-body: 'Fivo Sans';
        --font-weight-bold: 700;
        --font-weight-medium: 400;
        --font-size-normal: 1.3rem;
        --font-size-large: 1.3em;
        --font-size-xlarge: 1.5em;
}

html {
	background: none;
	padding: 0 !important;
	margin: 0 !important;
}

body {
    background-color: var(--white32m);
    font-family: var(--typeface);
    font-weight: var(--weight-medium);
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: none;
    box-shadow: none;
    max-width: 100%;
    font-size: var(--font-size-normal);
}

p#copyright-footer {
    display: none;
}

div#page {
    font-family: var(--typeface);
    font-weight: var(--weight-medium);
    width: 100%;
    margin: 0;
    padding: 0;
    border-radius: none;
    box-shadow: none;
    max-width: 100%;
}

body.home {
    background-color: var(--red32m);
    color: var(--white32m);
    padding: 0;
    margin: auto;
}

body > div#page header#masthead {
    background-color: var(--red32m);
}

body.home > div#page header#masthead {
	background-color: var(--white32m);
}

body.home > div#page article header {
    display: none;
}

body.home > div#page article div.entry-content {
    color: white;
    font-weight: var(--weight-bold);
    font-size: var(--font-size-normal);
}

body.home form#search-form {
	display: none;
}

header#masthead {
    display: flex;
    flex-direction: column;
}

h1.site-title {
	display: none;
}

div.site-logo > a > img.custom-logo {
	width: 8.5rem;
	height: 8.5rem;
}

div.site-logo {
    margin: auto;
}

div#content {
    margin-left: var(--lrmargin);
    margin-right: var(--lrmargin);
}


footer#colophon {
    background: var(--grey32m);
    margin: 0;
    padding: 0;
    margin-top: 2em;
}

footer#colophon > p {
    margin-left: var(--lrmargin);
    margin-right: var(--lrmargin);
}

footer#colophon div.widget-area {
    margin-left: var(--lrmargin);
    margin-right: var(--lrmargin);
}

footer#colophon {
    background: none;
    color: var(--red32m);
}

body.home footer#colophon {
    background: none;
    color: var(--white32m);
}

footer#colophon a,
footer#colophon a:link,
footer#colophon a:visited,
footer#colophon a:hover {
    background: none;
    color: var(--red32m);
    text-decoration: none;
}

footer#colophon a:hover {
    background: none;
    color: var(--red32m);
    text-decoration: underline;
}


body.home footer#colophon a,
body.home footer#colophon a:link,
body.home footer#colophon a:visited,
body.home footer#colophon a:hover {
    color: var(--white32m);
}

body.home footer#colophon a:hover {
    color: var(--white32m);
}

nav#site-navigation {
    display: flex;
    height: auto;
  margin: auto;
}

nav#site-navigation ul#primary-menu-list {
    display: flex;
    margin: 0;
    padding: 0;
}

nav#site-navigation ul#primary-menu-list li.menu-item {
    margin: 1em;
    list-style-type: none;
}

nav#site-navigation ul#primary-menu-list li.menu-item a,
nav#site-navigation ul#primary-menu-list li.menu-item a:hover,
nav#site-navigation ul#primary-menu-list li.menu-item a:visited  {
    color: var(--white32m);
    text-decoration: underline;
    text-transform: uppercase;
}

body.home nav#site-navigation ul#primary-menu-list li.menu-item a,
body.home nav#site-navigation ul#primary-menu-list li.menu-item a:hover,
body.home nav#site-navigation ul#primary-menu-list li.menu-item a:visited  {
    color: var(--red32m);
}

.compact-keyvalue-table .wp-block-columns {
    margin: 0;
    padding: 0;
}

.compact-keyvalue-table .wp-block-column {
    margin: 0;
    padding: 0;
    flex-grow: 0;

}
.compact-keyvalue-table .wp-block-column p {
    margin: 0;
    padding: 0.25em;
}

.compact-keyvalue-table.ckt-right .wp-block-column p {
    text-align: left;
}

.widget-area div#address-widget p {
    margin: 0;
    padding: 0.25em;
}

:where(.wp-block-columns.is-layout-flex) {
    gap: 0.25em;
}

/* override wordpress automatic squishing for mobile */
footer#colophon div.widget-area div.compact-keyvalue-table {
    flex-basis: auto !important;
}

footer#colophon .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: auto !important;
}




/* Normal desktop size */
@media (min-width: 785px) {
    header#masthead {
        display: flex;
        flex-direction: row;
    }

    body.home > div#page article div.entry-content {
        color: white;
        font-weight: var(--weight-bold);
        font-size: var(--font-size-xlarge);
    }

    body.home > div#page header#masthead {
        margin-bottom: 15vh;
    }

    div#content {
        margin-bottom: 20vh;
    }

    div.site-logo {
        margin: 0;
        margin-left: var(--desktop-lrmargin);
    }

    div#content {
        margin-left: var(--desktop-lrmargin);
        margin-right: var(--desktop-lrmargin);
    }

    footer#colophon {
        margin: 0;
    }

    footer#colophon > p {
        margin-left: var(--desktop-lrmargin);
        margin-right: var(--desktop-lrmargin);
    }

    footer#colophon > div.widget-area {
        margin-left: var(--desktop-lrmargin);
        margin-right: var(--desktop-lrmargin);
    }

    nav#site-navigation {
        margin-right: var(--desktop-lrmargin);
        height: 5.5rem;
    }

    nav#site-navigation ul#primary-menu-list {
        padding-left: 2em;
        margin-top: 1em;
        margin-bottom: 1em;
    }

    footer#colophon .compact-keyvalue-table {
        white-space: nowrap;
    }

    footer#colophon .compact-keyvalue-table.ckt-right .wp-block-column p {
        text-align: right;
    }

    footer#colophon .compact-keyvalue-table .wp-block-column p {
        padding: 0;
    }

    footer#colophon .widget-area div#address-widget p {
        padding: 0;
    }

    footer#colophon div.widget-area div.compact-keyvalue-table {
        flex-basis: 50% !important;
    }

    footer#colophon .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 50% !important;
    }

}


/* Very small screens should cause the menu to fold up and the header to get smol */
@media (max-width: 400px) {
    div.site-logo > a > img.custom-logo {
	width: 5.5rem;
	height: 4.5rem;
    }

    header#masthead > div.site-branding { heigt: 0px; margin: 0px; padding: 0px;}
    header#masthead > p.site-description { heigt: 0px; margin: 0px; padding: 0px;}
    header#masthead li.menu-item { margin: 0.25em; }
    nav#site-navigation ul#primary-menu-list { flex-wrap: wrap; padding: 0.5em; }
}
