
/* These are overall page elements that apply to the entire document unless redefined in .class or #id */

html, body {
	height: 100%;
}

body {
	margin: 0px;
	padding: 0px;
	background: #F5F5F5;
	font-family: 'Open Sans', sans-serif;
	font-size: 14pt;
	color: #747474;
	background-image: url(images/sleigh.png);
	background-size: 21%;
	background-position: left top;
	background-repeat: no-repeat;
	background-attachment: scroll;

}


h1, h2, h3 {
	margin: 0;
	padding: 0;
	text-align: center;
	
}

p, ol, ul {
	margin-top: 0px;
}

p {
	line-height: 180%;
}

a {
	color: #706C53;
}

a:hover {
	text-decoration: none;
}

a img {
	border: none;
}


img.alignleft {
	float: left;
}

img.alignright {
	float: right;
}

img.aligncenter {
	margin: 0px auto;
	display: flex;
	justify-content: center;
}
img {
    max-width: 100%;
    height: auto;
    width: auto; /* ie8 */
}

hr {
	display: none;
}

ul.style1
{
	margin: 0;
	padding: 0;
	list-style: none;
}

ul.style1 li
{
	padding: 15px 0px 15px 0px;
	border-top: 1px solid #E5E5E5;
}

ul.style1 a
{
	color: #747474;
}

ul.style1 .first
{
	padding-top: 0;
	border-top: none;
}

/** WRAPPER */
/**
#wrapper {
} */

.container {
	width: 80%;
	margin: 0px auto;
}

.clearfix {
	clear: both;
}

/* FormerHeader */

#formerheader-wrapper {
	overflow: hidden;
	height: 600px;
}

#formerheader {
	width: 80%;
	height: 150px;
	margin: 0 auto;
	padding: 0px 20px;
}

/* former logo, now header for modernization */

#header {
	overflow: hidden;
	padding: 3em 0em;
}

#header h1, #header p, #header h3 {
	text-align: center;
}

#header h1 {
	padding: 0px 0px 0px 0px;
	font-size: 3em;
	font-weight: 600;
	color: #8A2419
}

#header h3 {
	padding: 0px 0px 0px 0px;
	font-size: 1em;
  	font-style: italic;
	font-weight: 300;
	color: #8A2419
}

#header p {
	margin-top: -20px;
	padding: 0px 0px 0px 5px;
	font-size: 20px;
	font-weight: 300;
	color: #8A2419;
}

#header p a {
	color: #8A2419;
}

#header a {
	border: none;
	background: none;
	text-decoration: none;
	color: #8A2419;
}

/* Menu now nav */

#nav-wrapper {
	float: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	overflow: visible;
	height: 52px;
	margin-bottom: 2em;
	border-top: 0px solid #D7CFAD;
	border-bottom: 0px solid #D7CFAD;
	background: #255210;
	text-align: center;
}

#nav {
	text-align: center;
	float: center;
	overflow: visible;
	height: 52px;
    	list-style: none;
   	margin: 0;
   	padding: 0;
  	width: 100%;
}

#nav ul {
	margin: 0;
	padding: 0px 0px 0px 0px;
	list-style: none;
	line-height: normal;
	text-align: center;
}

#nav li {
	display: inline-block;
    /* general */
    white-space: nowrap;
    border: 0px solid #555555;
	background: #255210;
	text-align: center;

    /* fallback */
    float: none;
	background: #255210;
	text-align: center;
}


#nav a {
	display: block;
	padding: 0px 30px;
	line-height: 52px;
	border: none;
	text-decoration: none;
	text-transform: lowercase;
	text-align: center;
	text-transform: uppercase;
	font-size: 15px;
	font-weight: 300;
	color: #F5f5f5;
}


#nav .current_page_item a {
	background: #77A860;
	text-decoration: none;
	color: #f5f5f5;
}


.flexbox ul {
    display: flex;
    flex-flow: row wrap;
	background: #255210;
}

.flexbox li {
    flex: auto;
	background: #255210;
}

/* Wrapper grows naturally */
#nav-wrapper {
  background: #255210;
  height: auto;
  min-height: 52px;
}

/* Make the UL the flex container that can wrap */
#nav {
  float: none; /* remove invalid 'float: center' */
  background: transparent;
  height: auto;
  min-height: 52px;
}

#nav ul {
  display: flex;
  flex-wrap: wrap;           /* allows multiple rows */
  justify-content: center;   /* center items per row */
  align-items: stretch;
  gap: 0;                    /* no gaps unless you want spacing */
  margin: 0;
  padding: 0;
  list-style: none;
}

#nav li {
  /* Each item sizes to its content; no floats needed */
  background: transparent;   /* let wrapper green show everywhere */
  border: 0;
}

#nav a {
  display: block;
  padding: 0 30px;
  line-height: 52px;         /* each row stays 52px tall */
  text-decoration: none;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: 300;
  color: #F5F5F5;
}

#nav a:hover {
	background: #8A2419; 
  color: #F5F5F5;}

#nav .current_page_item a {
  background: #77A860;
  color: #F5F5F5;
}



/** PAGE was, now main */


#main {
	overflow: auto;
	width: 70%;
	margin-bottom: 3em;
	padding: 2em 15px;
	background: #FaFaFa;
	border: 1px solid #D9D2A5;
}

#main h2, #main h3
{
	color: #8A2419;
}

#main h2 a
{
	letter-spacing: -2px;
	text-decoration: none;
	font-size: 1.7em;
	font-weight: 400;
	color: #706C53;
}

#main h3 a
{
	letter-spacing: -2px;
	text-decoration: none;
	font-size: 1.7em;
	font-weight: 400;
	color: #8A2419;
}

#main ul li {
  margin-bottom: 10px; /* Adds 10px space below each list item */
}

#box1
{
	display: block;
	text-align: justify;
	float: center;
	margin-right: 15px;
	margin-left: 15px;
}

#box1alt
{
	display: block;
	text-align: center;
	float: center;
	margin-right: 5px;
	margin-left: 5px;
}

#box2
{
	float: left;
	width: 300px;
}


#box3
{
	float: right;
	width: 300px;
}

/* Two equal columns, with a nice gap */
#gridbox {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(16px, 3vw, 28px);
}

/* Visuals (optional) */
#pageleft, #pageright {
  background: #eee;
  padding: 20px;
  border-radius: 8px;
}

/* Stack on smaller screens */
@media (max-width: 800px) {
  #gridbox {
    grid-template-columns: 1fr;
  }
}

.center {
  margin-left: auto;
  margin-right: auto;
  width: 80%;
  text-align: center;
}

.media {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}

.media .media-text { flex: 1 1 0; }
.media .media-img  { flex: 0 0 auto; }

.media .media-img img { 
  display: block; 
  max-width: 320px; 
  width: 100%; 
  height: auto; 
}

/* Stack on small screens */
@media (max-width: 700px) {
  .media { flex-direction: column; }
  .media .media-img { order: -1; } /* image first, optional */
}


/** CONTENT */

/** #content {
} */

/** SIDEBAR */

/** #sidebar {
} */

/* Footer */

#footer {
	margin-left: auto;
	margin-right: auto;
	padding-top: 15px;
	width: 100%;
	height: 32px;
	overflow: na;
	border-top: 0px solid #D9D2A5;
	color: #f5f5f5;
	background: #255210;

}

#footer p {
	text-align: center;
	font-size: 10px;
}

#footer a {
	color: #ffffff;
}
