@charset "UTF-8";
* {
    margin:0;
    padding:0
}
html {
    scroll-behavior:smooth!important;
    font-size:100%;
    min-width:fit-content;
}
body {
    margin:0 0 2em 1.7em;
    align-content:flex-start;
    max-width:1200px;
    min-height:100vh;
    background-color:#f5f0e4;
    letter-spacing:.007em;
}
header {
    background-color:#f5f0e4;
    position:fixed;
    width:100%;
    top:0;
    left:0;
    z-index:1;
}
header p {
    float:left;
    display:block;
    margin-left:230px;
    margin-bottom:75px;
}
aside {
    position:sticky;
    top:115px;
    flex:0 0 200px;
    align-self:flex-start;
}
main {
    display:flex;
    flex-direction:row;
    flex-basis:550px;
    flex-shrink:1;
    flex-grow:.5;
    z-index:2;
}
article {
    padding-right:25px;
    margin-top:77px;
    max-width:725px;
}
h2 {
    scroll-margin-top:100px;
}

li,ol,p,ul,table {
    scroll-margin-top:116px;
}
footer {
    margin-top:3em;
    clear:both;
}
figure {
	margin-top:2rem;
    margin-bottom:2rem;
}
figure img {
    display:block;
    border:1rem solid #fff;
    width:100%;
    margin-bottom:1rem;
    margin-left:-1rem;
}
figure img.noborder {
	border:none;
	margin-left: 0;
}
address {
	all:unset;
	display:inline-block;
    margin-left:4em;
	scroll-margin-top:7.3rem;
}
p + address, .featured + address {
    margin-top: 1rem;
}


@media screen and (max-width:800px) {
    html body {
        display:block;
    }
    main {
        margin:0;
        display:block;
        flex:none;
    }
    aside {
        display:none;
    }
    article {
        max-width:100vw;
        margin-top:100px;
    }
    header {
        margin-left:0;
        height:4em;
    }
    header p {
        margin:18px 0 -1.9em 100px;
        text-align:right;
    }
    h1 {
        font-size:2.2rem;
    }
}
@media print {
    aside,header,nav,figure {
        display:none;
    }
    body {
        display:block!important;
    }
    body {
        background-color:#fff!important;
        zoom:80%;
    }
    article,body {
        width:100%;
        margin:0!important;
        padding:0;
    }
    article {
        margin-top:2em;
    }
    p {
        orphans:2!important;
        widows:2!important;
    }
    h1 {
        padding-right:0!important;
    }
    a,article,h1,h2,li,p,strong {
        color:#000!important;
    }
    h1,h2,h3 {
        page-break-after:avoid;
    }
    h1,h2,h3 {
        break-after:avoid;
    }
    a {
        border-bottom:#000 1px solid;
    }
    ol,ul {
        margin-left:2em;
        margin-right:1em;
    }
    @page {
        margin:35pt 80pt 50pt;
    }
}
.text li,p,blockquote.text p {
    font-family:Lora,serif;
    font-size:1.08rem;
    word-spacing:-.03em;
}
footer p,h1,h2,li,strong,table,blockquote p, address, form,figcaption,.sans {
    font-family:'Libre Franklin',sans-serif;
    font-size:1.03rem;
    word-spacing:0;
}
h1 {
    font-weight:300;
    font-size:2.5rem;
    line-height:45px;
    margin:35px 0 26px -3px;
}
h2, form {
    font-size:1.15rem;
    font-weight:600;
    padding-top:1.25em;
}
h2 {
    font-size:1.35rem;
}
h2,p {
    margin-top:1.25em;
    margin-bottom:1.25em;
}
h2 + h1 {
    margin-top: -1.3rem;  /* to tighten spacing on news pages without a photo or use h2 as a subhead above h1 */
}
article > h2 {
    margin-top: 1rem;  /* for pages where h2 is the first text within article */
}
li,p,address {
    line-height:1.7;
}
article strong,strong a, h2 a, article h2 a:visited {
    font-weight:600;
    letter-spacing:.02rem;
    color:#915417;
}
article em {
	font-style:italic;
}
figcaption, figcaption strong, article figcaption a, article figcaption a:visited, figcaption strong a:visited {
	color: #ad8713;
	line-height: 1.4;
	margin-bottom: 3rem;
}
header p a {
    font-family:'Lexend Peta',sans-serif;
    font-weight:600;
}
footer p,nav li {
    font-size:.8rem;
}
header p {
    font-size:.85rem;
    text-transform:uppercase;
}
aside li,aside ol {
    margin:0;
    list-style-type:none;
}
aside ol {
    margin-top:.25em;
    margin-bottom:24px;
}
aside li {
    padding-right:0;
    font-weight:500;
	font-size: 1rem;
}
footer p {
    margin-top:0;
    margin-bottom:0;
}

.featured {
	scroll-margin-top:7.75rem;
	border: 1px solid #b59571;
	border-width: 1px 1px 1rem 1px;
	margin: 2rem -1rem;
	padding: 0 3rem .5rem;
	background-color: white;
}
.featured h2 {
	margin: 0 -3rem 1.75rem;
	padding: 1rem 2rem;
	color: white;
	background-color: #b59571; /* was #d5a307 #f4951f */
	font-size: 1.6rem;
}
.featured ul, .featured ol {
	padding-right: 0;
	max-width: 100%;
	margin: 0 2rem 2rem;
}
.featured li, .featured li strong {
	font-size: 1.2rem;
}
.featured ul strong, .featured ol strong {
	color: black;
	font-weight: 600;
}
.featured.red { 	border-color:#af1818; }
.featured.red h2 { 	background-color: #CC0000; }
.featured-gray { 	border-color: #666; }
.featured-gray h2 { background-color: #666; }
.featured-green { 	border-color: #70973c; }
.featured-green h2 { background-color: #70973c; }




ol,ul,blockquote {
    margin-left:4em;
    margin-bottom:1.75em;
}
blockquote.courier p {
	font-family:monospace;
	font-size:.95rem;
	word-spacing:-.03em;
}
blockquote.large p {
	font-size: 2rem;	
	line-height: 1.3;
	padding-right: 6rem;
	color: #ad8713;
}
ol,ul {
    margin-right:5em;
}
ul.bullet li {
    list-style-type:disc;
}
li ol,li ul {
    margin-top:0;
    margin-left:0;
}
li {
    margin-bottom:.75em;
}
article ol,article ul {
    max-width:530px;
}
article li ul {
    max-width:498px;
}
footer p,li,.sans {
    font-weight:300;
}
.highlight {
	background-color: yellow;
}

table.monospace td {
	font-family:monospace;
	font-size:1.1rem;
	word-spacing:-.03em;
}


@media screen and (max-width:900px) {
    ol,ul {
        margin-left:2em;
        margin-right:1em;
    }
	address {
		margin-left:2em;
	}
	figure img {
		border:none;
		width:100%;
		margin-left:0;
	}
	figcaption, figcaption strong {
		padding-left:0;
		margin-top:-0.5rem;
		margin-right:0;
		font-size: .9rem;
	}
	table.monospace td {
    font-size: 0.9rem;
}
	.featured {
		margin-left: 0;
		margin-right: 0;
	}
	.featured ol, .featured ul {
		margin-left: 1rem;
		margin-right: 0;
	}
}
article,article a:visited,table a {
    color:#5a5745;
}
h1,h2 {
    color:#000;
}
article li a,article p a,figcaption a, address a, table a {
    border-bottom:#ffc000 1px solid;
}
a,aside a,footer p a,header a,nav a {
    text-decoration:none;
    background-color:transparent;
    border-bottom:none;
}
li a,p a:link,article a:link,p a:visited {
    color:#5a5745;
}
footer a:link,footer a:visited,footer p,header a:link,header a:visited,nav,nav a:link,nav a:visited {
    color:#7c7a76;
}
nav li {
    color:#fff;
}
a:active,a:hover,footer a:active,footer a:hover,header a:hover,nav a:active,nav a:hover {
    color:#000;
}
a:hover {
    transition:color .2s ease-in;
}
::selection {
    background:#d3cebf;
    color:#2a2422
}



table {
   table-layout: inherit;
   background-color: white;
   width: 100%;
  	border-collapse:collapse;
  border-spacing: 0;
  line-height: 1.5;
  font-weight: 300;
  overflow-x: visible; overflow-y: auto;
  white-space:normal;
  margin: 2rem 0 2.5rem;
}
table tr.border {
	border-top:3px solid #9b846d;  
}

@media screen and (max-width: 900px) {
table { 
  /*  margin-left: -2em;
    margin-right: -2em; */
	font-size: 0.8rem;   }
tr td:last-child, tr th:last-child {
	width: inherit;
}
}
th {
	font-weight: 600;
	color: #5a5745;
  text-align: left;
}
thead tr th {
    background-color: #9b846d;
    color: white;
}
tbody {
  word-wrap: break-word;
}
th, td {
  padding: 10px 12px 10px 12px;
  border: 1px solid #c1bfb8;
  vertical-align:baseline;
}
tr th:first-child {
	white-space: nowrap;
}
tr.td-right th, table.td-right td {
	text-align: right;
}
/* TURNED OFF b/c messing up county page SN tables
tr th:first-child {
    border-left: 0px solid;
} 
tr td:last-child, tr th:last-child {
    border-right: 0px solid;
} */
/* 
tbody.dingbats tr td:first-of-type {   for dogs-at-large by county chart, to make dingbats larger 
    font-size: 1.4rem;
} */








#menuToggle {
    display:block;
    position:fixed;
    top:20px;
    left:1.7em;
    z-index:1;
    -webkit-user-select:none;
    user-select:none;
}
#menuToggle a {
    text-decoration:none;
    color:#ffeab7;
    transition:color .3s ease;
}
#menuToggle a:hover {
    color:#fff;
}
#menuToggle input {
    display:block;
    width:40px;
    height:32px;
    position:absolute;
    top:-7px;
    left:-5px;
    cursor:pointer;
    opacity:0;
    z-index:2;
    -webkit-touch-callout:none;
}
#menuToggle span {
    display:block;
    width:33px;
    height:4px;
    margin-bottom:5px;
    position:relative;
    background:#cdcdcd;
    border-radius:3px;
    z-index:1;
    transform-origin:4px 0;
    transition:transform .5s cubic-bezier(.77,.2,.05,1),background .5s cubic-bezier(.77,.2,.05,1),opacity .55s ease;
}
#menuToggle span:first-child {
    transform-origin:0 0;
}
#menuToggle span:nth-last-child(2) {
    transform-origin:0 100%;
}
#menuToggle input:checked~span {
    opacity:1;
    transform:rotate(45deg) translate(-2px,-1px);
    background:#232323;
}
#menuToggle input:checked~span:nth-last-child(3) {
    opacity:0;
    transform:rotate(0) scale(.2,.2);
}
#menuToggle input:checked~span:nth-last-child(2) {
    transform:rotate(-45deg) translate(0,-1px);
}
#menu {
    position:absolute;
    width:140vw;
 /*   max-height:100vh; removed so that menu is full height on mobile */  
    margin:-100px 0 0 -50px;
    padding:115px 50px 25px 50px;
    box-sizing:border-box;
    overflow-y:auto;
    background:#666;
    list-style-type:none;
    -webkit-font-smoothing:antialiased;
    transform-origin:0 0;
    transform:translate(-100%,0);
    transition:transform .5s cubic-bezier(.77,.2,.05,1);
}
#menu li {
    max-width:750px;
    padding:0;
    font-size:1.25rem;
    font-weight:600;
}
#menu li ul {
    padding:0 0 0 2em;
    margin-bottom:0;
    list-style-type:none;
}
#menu li ul li {
    padding:0;
    margin-bottom:0;
    font-weight:300;
}
#menuToggle input:checked~ul {
    transform:none;
}
@media screen and (max-width:800px) {
    #menu li ul {
        padding-left:0;
    }
}


form.search button, form.search input {
	padding: .5rem;
}
form.search input {
	min-width: 250px;
}




.cards {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.card {
  background-color: #9b846d;
  color: white;
  padding: 1rem;
  padding-bottom: 1.1rem;
  text-align: center;
}
.card p, article .card p.caps {
	margin:0;
    font-family:'Libre Franklin',sans-serif;
    font-size:1.03rem;
  color:white;
}
.caps {
	text-transform:uppercase;
	letter-spacing: .15rem;
}