body {
	background-color: #ecf0f1;
	font-family: Arial, sans-serif;
	font-size: 10.5pt;
	line-height: 1.4;
	margin: 0px;
	padding: 0;
	overflow-x: hidden;
	color: #454545;
}

h1{ 
	font-size: 24pt;
	line-height: 1;
	color: #223855;
 }

 h2 {
 	font-size: 16pt;
 }

 h3 {
 	font-size: 14pt;
 }

 h4 {
 	font-size: 12pt;
 	margin-bottom: 0px;
 }

 h5 {
 	font-size: 10pt;
 }

 h6 {
 	font-size: 8pt;
 }

img {
	max-width: 100%;
}

img.thumb {
	float: left;
	max-width: 30%;
	padding-right: .5em;
	padding-bottom: .5em;
}

img.left {
	float: left;
	max-width: 40%;
	padding-right: 8px;
	padding-bottom: 8px;
}

img.right {
	float: right;
	max-width: 40%;
	padding-left: 8px;
	padding-bottom: 8px;
}

a:link {
	color: blue;
	font-weight: bold;
}

a:visited {
	color: blue;
	font-weight: bold;
}

nav {
	display: flex;
	position: fixed;
	width: 100%;
	height: 65px;
	align-items: center;
	background-color: #2b2b35;
	bacolor: #ffffff;
	text-align: left;
	color: #ecf0f1;
}

nav img {
	max-width: 180px;
	max-height: 35px;
	margin: 20px;
}

nav a:link {
	color: white;
	text-decoration: none;
}

nav a:visited {
	color: white;
	text-decoration: none;
}

hr {
	border: 1px solid  #ccc;
	color: silver;
	margin-top: 40px;
	margin-bottom: 40px;
	clear: both
	}

div.box {
	background-color: #7f8996;
	color: #eee;
	padding: 5px;
	margin-top: 10px;
	border-radius: 5px;
}

small {
	color: #7f8996;
}

.content {
	max-width: 1200px;
	margin: 0px auto;
	padding: 15px;
}

article {
	max-width: 1200px;
	margin: 0px auto;
	padding-top: 6em;
	padding-bottom: 2em;
	padding-left: 1em;
	padding-right: 1em;
} 

section.main {
	max-width: 1200px;
	margin: 0px auto;
	padding: 1em;
} 

section.hero {
	background-color: #0c0c0c;
	background-image: url("images/banner-dakota-bench.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	color: #FFFFFF;
	height: 40vh;       /* 30% of the viewport height */
	padding: 2rem;       /* optional: internal spacing */
	padding-top: 60px;
	display: flex;       /* optional: for centering content */
	align-items: center; /* optional: vertical centering */
	justify-content: center; /* optional: horizontal centering */
	text-align: center;
}

section.hero h1 {
	font-size: 3em;
	color: white;
}

section.gallery {
	background-color: #2b2b35;
	color: #ecf0f1;
	padding: 30px;
}

/* .image-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 5px;
  padding: 0px;
}

.image-grid img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  border-radius: 0px;
  box-shadow: 0 0px 0px rgba(0, 0, 0, 0.1);
} */

.image-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.image-grid img {
  width: calc(33.333% - 5px);
  aspect-ratio: 4 / 5;
  object-fit: cover;
  display: block;
}

.clear {
	clear: both;
}

.image-text-container {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  max-width: 100%;
  margin: 0 auto;
  margin-top: 15px;
  margin-bottom: 15px;
  padding: 0px;
  box-sizing: border-box;
}

.image-text-container img {
  width: 100%;
  max-width: 40%;
  height: auto;
  border-radius: 0px;
  display: block;
}

@media (max-width: 600px) {
  .image-text-container {
    flex-direction: column;
    gap: 10px;
    padding: 0px; /* smaller padding on mobile */
  }

  .image-text-container img {
    max-width: 100%; /* ensures no overflow */
  }

  .text-content {
    text-align: left;
  }
}

.two-column-text {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 2rem;
  padding: 4rem;
  max-width: 1200px;
  margin: 0 auto;
}

/* Left Column - 40% width, large text */
.left-column {
  flex: 0 0 40%;
  font-size: 2.5rem;
  font-weight: bold;
}

/* Right Column - fills remaining space */
.right-column {
  flex: 1;
  font-size: 1.25rem;
  line-height: 1.6;
}

/* 📱 Responsive: Stack columns on small screens */
@media (max-width: 768px) {
  .two-column-text {
    flex-direction: column;
    padding: 30px;
    gap: 0px;
  }

  .left-column,
  .right-column {
    flex: 1 1 100%;
  }

  .left-column {
    font-size: 1.75rem; /* slightly smaller for mobile */
    margin-bottom: .5rem;
  }

  .right-column {
    font-size: 1.125rem; /* slightly smaller for mobile */
  }
  .content {
  	padding: 5px;
  }
  section.gallery {padding: 5px;}
}