html, body { height: 100%; font-size: 12px; font-family: Helvetica;}
a { color: #2453c1 !important;}
.Logo { text-align: center; }
.Logo a {display:block;}
.Logo img { width: auto; height: 144px; max-height: 144px;}
.gmap-img {
  max-width: 150px;
  max-height: 150px;
  width: 150px; 
  height: 150px;
  padding: 0;
  margin: 5px;
  display: inline-block;
  object-fit: scale-down;
  border: 1px solid black;  
}

.ad-box {
  display:inline-block;
  /* margin: 5px 5px 5px 5px; */
  /* background-color: green; */
  /* width: 150px;
  height: 150px; */
  position: relative;
}

#ad-img-spacer {
  max-width: 150px;
  max-height: 150px;
  width: 150px; 
  height: 150px;
  padding: 0;
  margin: 5px;
  display: inline-block;
  float: right;
}

.ad-img-stack {
  float:right;
  /* position: fixed;  */
  top:20;
}

.ad-img-stack div {
  margin-bottom:10px;
}

.ad-img-stack-left {
  float:left;
  margin-left:20px;
  margin-top:10px;
  font-size:14px;
}

.ad-img-banner, .ad-img-banner-w100 {
  float:left;
  margin-bottom: 0px;
  display:inline-block;
}

.nav a{
  font-size: 18px !important;
}

  
.ad-img-banner-w100 {
  width: 100%;
}

.ad-img-banner div {
  margin-right:10px;
}

.ad-img a {
  display:block;
  margin: 0 auto;
}

.ad-img-h a {
  display: inline-block;
  margin: 0 auto;
}

.ad-img {
  margin-top:0px;
  /* width: 100px;
  height: 100px; */
}

.ad-img-h {
  /* margin-top:10px; */
  width: 100px;
  height: 75px;
  display: inline-block;
  margin-right: 10px;
  /* border: 1px solid black; */
}

.ad-img-txt-h {
  margin-top:10px;
  width: 160px;
  height: 28px;
  display: inline-block;
  margin-right: 5px;
  
  /* border: 1px solid black; */
}

.ad-img-logo {
  width:160px;
  height:120px;
  display:inline-block;
  margin-right:50px;
  border:1px solid black;
}

.ad-img-logo img {
  max-width: 100%;
  max-height: 100%;
  padding: 0;
  /* margin-right: 5px; */
  /* margin-bottom:5px; */
  object-fit: contain;
  width: 160px;
  height:120px;
  border: 1px solid black;
  /* border-radius: 6px; */
}

.ad-img img {
  max-width: 100%;
  max-height: 100%;
  padding: 0;
  margin-right: 5px;
  /* margin-bottom:5px; */
  /* object-fit: scale-down !important; */
  object-fit: contain;
  width: 100px;
  height:100px;
  border: 1px solid black;
  border-radius: 6px;
}



.ad-img-h img {
  max-width: 100%;
  max-height: 100%;
  padding: 0;
  /* margin-right: 5px; */
  /* margin-bottom:5px; */
  object-fit: cover;
  width: 100px;
  height:75px;
  border: 1px solid black;
  /* border-radius: 6px; */
}

.ad-row {
  width: 100%;
  /* height: 500px; */
  background-color: red;
  display: inline-block;
}

.ad-row img {
  display: inline-block;
}

.ad-row a {
  display: inline-block;
}

.ad-img-sm {
  /* width: 75%; */
  height: 75px !important;
  max-height: 75px !important;
}
.ad-txt-box, .ad-txt-box-left, .ad-txt-box-sm {
  /* margin: 5px 5px 0 5px; */
  /* border-radius: 6px; */
  padding:5px;
  justify-content: center;
  display: block;
  border: 1px solid black;
  height: auto;
  width: 250px;
  align-items: center;
  float: right;
  text-align: center;
}

.ad-txt-box-h, .ad-txt-box-h2 {
  margin: 0;
  /* border-radius: 6px; */
  justify-content: center;
  border: 1px solid black;
  align-items: center;
  float: left;
  text-align: center;
  background-color: #2453c1;
  vertical-align: top;
  display: inline-block;
}

.ad-txt-box-h {
  width: 100px;
  margin-left:20px;
  height: 50px;
  font-size:14px;
}

.ad-txt-box-h2 {
  width: 150px;
  height: 40px;
}


.ad-txt-box a {
  display:block;
  margin: 0 auto;
  padding: 3px;
  text-align: center;
  justify-content: center;
  vertical-align: middle;
  font-size: 24px;
}

.ad-txt-box-sm a {
  display:block;
  margin: 0 auto;
  padding: 3px;
  text-align: center;
  justify-content: center;
  vertical-align: middle;
  font-size: 16px;
}

.ad-txt-box-left a {
  display:block;
  margin: 0 auto;
  padding: 3px;
  text-align: center;
  justify-content: center;
  vertical-align: middle;
  font-size: 14px;  
  padding:5px;
}

.ads-table {
	width:100%;
  height:150px;
  border-spacing:30px;
  font-size:12px;
}

.ads-table th, .ads-table td {
	border:1px solid black;
  padding:5px;
  background-color: #128f68;
}

.txt-table {
  border-spacing:0px;
  width:80%;
}

.txt-table th, .txt-table td {
  padding:5px;
  border:0;
}

.etable {
  border-spacing:0px;
  width:80%;
}

.etable th, .etable td {
  padding:5px;
  border:0;
}

.ad-txt-box-h, .ad-txt-box-h2 a {
  display:block;
  margin: 0 auto;
  padding: 3px;
  text-align: center;
  justify-content: center;
  vertical-align: middle;
  font-size: 12px;
}

.ad-txt-box-horizontal {
  border-radius: 6px;
  justify-content: center;
  display: inline-block;
  border: 1px solid black;
  height: auto;
  max-width: 100px;
  width: 100px;
  align-items: center;
  float: right;
  text-align: center;
}

.ad-txt-box a, .ad-txt-box a:hover, .ad-txt-box a:active, .ad-txt-box a:visited { color: white !important; }
.ad-txt-box-h a, .ad-txt-box-h a:hover, .ad-txt-box-h a:active, .ad-txt-box-h a:visited { color: white !important; }

.white-text-ad a, .white-text-ad a:hover, .white-text-ad a:active, .white-text-ad a:visited { color: white !important; }
.black-text-ad a, .black-text-ad a:hover, .black-text-ad a:active, .black-text-ad a:visited { color: black !important; }


.erosion-control-box {
  border: 1px solid white;
}

.bmp-table {
  border: 1px solid black;
  background-color: white;
}

.bmp-table-img {
  margin-top: 0px;
  margin-left: 0px;
  display: inline-block;
  background-color: orange;
  border: orange;
  top: 0;
  height: 100%;
  vertical-align: top;
}

.bmp-table-img a {
  position:relative;
  margin-left: 0px;
  margin-top: 0px;
  /* vertical-align: top; */
}

.bmp-table-img img {
  position:relative;
  margin-left: 0px;
  margin-top: 0px;
  /* vertical-align: top; */
}

.keep-together {
  display: block;
  page-break-inside: avoid;
  break-inside: avoid;
  position: relative;
}

.blueprint {
  font-family: Helvetica;
}

.report-title {
  font-size: 24;
}

.report-subtitle {
  margin-top: 10px;
  font-size: 18;
  width:80%;
  float:left;
  display:inline-block;
}

.bordered {
  border: 1px solid black;
}

.project-title {
  float:left;
  width:100%;
}

.date-today {
  float:right;
  width:20%;
}

.break-after {
  page-break-after: always;
}

.break-before {
  page-break-before: always;
}

.bmp-table-info {
  display: inline-block;
  width: 530px;
  /* background-color: blue; */
  text-align: left;
}

.bmp-table-name, .bmp-table-desc, .bmp-table-notes, .bmp-table-links {
  display: block;
}

.bmp-table-resources {
  display: flex;
  flex-wrap: wrap;
}

.bmp-table-resource > div{
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.image-row {
  margin-left: 20px;
  text-align: left; /* Centers the images and captions */
}

.image-container {
  display: inline-block; /* Aligns items horizontally */
  margin-right: 50px; /* 50px space between images */
  text-align: center; /* Centers the caption under the image */
  margin-top: 10px;
}

.image-container img {
  width: auto; /* Example width, adjust as necessary */
  height: 150px; /* Maintains aspect ratio */
  image-orientation: from-image;
  object-fit: contain;
}

.link-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* Creates 2 columns of equal width */
  grid-gap: 0px 50px; /* 20px row gap, 50px column gap */
  align-items: start;
  justify-content: start;
  padding: 10px;
  width: max-content; /* Ensures the grid container fits the content width */
  margin-left: 0; /* Aligns the grid to the left side of the page */
}

.columns {
  display: flex;
  justify-content: space-between;
}

.column {
  width: 23%;
}

.column a {
  display: block;
  margin: 5px 0;
  color: blue;
  text-decoration: none;
}

.column a:hover {
  text-decoration: underline;
}

.grid-item {
  padding: 5px;
  font-size: 14px;
}

/* Removes margin from the last image to prevent extra spacing at the end */
.image-container:last-child {
  margin-right: 0;
}


.chip, .addr-chip {
  display: inline-block;
  /* width: 160px; */
  margin: 5px 5px 13px 5px;
  padding: 5px;
  /* height: 160px; */
  height: auto;
  max-height: 160px;
  font-size: 12px;
  line-height: 13px;
  border-radius: 6px;
  /* border: 1px solid black; */
  /* box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);  */
  background-color: white;
}
.chip,.addr-chip p {
  margin: 3px;
  padding: 3px;
  text-align: left;
}
.chip img {
  border-radius: 6px;
}

.chip img:nth-of-type(1) {
  max-height: 75px;
  max-width: 75px;
  height: 75px;
  width: 75px;
  margin: 0 0 3px 0;
  object-fit: cover;
  /* border: 1px solid black; */
  /* border-radius: 50%; */
}
/* th td tr { border: 1px solid black; } */
table {
  vertical-align:middle; 
  padding: 2px;
  border-collapse: separate; 
  border-spacing: 0;
  /* padding: 0px; */
}
td {
  border: solid 1px #000;
  border-style: none solid solid none;
}
tr:first-child td:first-child { border-top-left-radius: 6px; }
tr:first-child td:last-child { border-top-right-radius: 6px; }
tr:last-child td:first-child { border-bottom-left-radius: 6px; }
tr:last-child td:last-child { border-bottom-right-radius: 6px; }

#footer {
  margin-top: -200px;
  background-color: red;
  height: 400px;
  position: relative;
  clear: both;
  /* height: 120px;  */
}
.Contacts { border: none; border-bottom: 1px solid black; font-size: 12px;}
.Contacts th { font-weight: normal; border: 1px solid black;}
.Contacts td { 
    border: 1px solid black; 
    word-wrap: break-word;
  }

.Contacts th:nth-of-type(1) {
  font-weight: bold;
}

.CivilEngineers { border: none; border-bottom: 1px solid black; font-size: 12px;}
.CivilEngineers th { font-weight: normal; border: 1px solid black;}
.CivilEngineers td { 
    border: 1px solid black; 
    word-wrap: break-word;
  }

.Summary { border: none; border-bottom: 1px solid black; font-size: 12px !important;}
.Summary th { font-weight: normal; border: 1px solid black;}
.Summary td { 
    border: 1px solid black; 
    word-wrap: break-word;
  }

.Contacts2 { border: none; border-bottom: 1px solid black; font-size: 12px;}
.Contacts2 th { font-weight: normal; border: 1px solid black;}
.Contacts2 td { 
    border: 1px solid black; 
    word-wrap: break-word;
  }

.ContactDetails { border: none; border-bottom: 1px solid black; font-size: 12px;}
.ContactDetails th { font-weight: normal; border: 1px solid black;}
.ContactDetails td { 
    border: 1px solid black; 
    word-wrap: break-word;
  }

.PermitDetails { border: none; border-bottom: 1px solid black; font-size: 12px;}
.PermitDetails th { font-weight: normal; border: 1px solid black;}
.PermitDetails td { 
    border: 1px solid black; 
    word-wrap: break-word;
  }

.Products { border: none; border-bottom: 1px solid black;font-size:12px;}
.Products th { font-weight: normal; border: 1px solid black;}
.Products td { 
    border: 1px solid black; 
    word-wrap: break-word;
  }
.Products tr { height: 18px;}

.Products2 { border: none; border-bottom: 1px solid black;font-size:12px;}
.Products2 th { font-weight: normal; border: 1px solid black;}
.Products2 td { 
    border: 1px solid black; 
    word-wrap: break-word;
  }
.Products2 tr { height: 18px;}

.Contacts td:nth-of-type(1) { width: 260px; max-width: 260px;}
.Contacts td:nth-of-type(2) { width: 110px; max-width: 110px;}
.Contacts td:nth-of-type(3) { width: 120px; max-width: 120px;}
.Contacts td:nth-of-type(4) { width: 200px; max-width: 200px;}
.Contacts td:nth-of-type(5) { width: 140px; max-width: 140px;}

.Contacts2 td:nth-of-type(1) { width: 330px; max-width: 330px;}
.Contacts2 td:nth-of-type(2) { width: 180px; max-width: 180px;}
.Contacts2 td:nth-of-type(3) { width: 120px; max-width: 120px;}
.Contacts2 td:nth-of-type(4) { width: 200px; max-width: 200px;}

.ContactDetails td:nth-of-type(1) { width: 230px; max-width: 230px;}
.ContactDetails td:nth-of-type(2) { width: 140px; max-width: 140px;}
.ContactDetails td:nth-of-type(3) { width: 460px; max-width: 460px;}

.PermitDetails td:nth-of-type(1) { width: 230px; max-width: 230px;}
.PermitDetails td:nth-of-type(2) { width: 140px; max-width: 140px;}
.PermitDetails td:nth-of-type(3) { width: 460px; max-width: 460px;}

.Products td:nth-of-type(1) { width: 40px; max-width: 40px;}
.Products td:nth-of-type(2) { width: 640px; max-width: 640px;}
.Products td:nth-of-type(3) { width: 100px; max-width: 100px;}
.Products td:nth-of-type(4) { width: 50px; max-width: 50px;}

.Products2 td:nth-of-type(1) { width: 40px; max-width: 40px;}
.Products2 td:nth-of-type(2) { width: 790px; max-width: 790px;}


/* .Products td:nth-of-type(5) { width: 75px; max-width: 75px;}
.Products td:nth-of-type(6) { width: 125px; max-width: 125px;} */

.CivilEngineers td:nth-of-type(1) { width: 110px; max-width: 110px;}
.CivilEngineers td:nth-of-type(2) { width: 260px; max-width: 260px;}
.CivilEngineers td:nth-of-type(3) { width: 120px; max-width: 120px;}
.CivilEngineers td:nth-of-type(4) { width: 200px; max-width: 200px;}
.CivilEngineers td:nth-of-type(5) { width: 140px; max-width: 140px;}


#pcontainer {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 10px;
  width: 100%;
  border: 1px solid black;
  /* height: 550px; */
}
#pcontainer > div:nth-of-type(1) {
  /* width: 75%; */
  grid-column: 1/2;
  background-color: gray;
}
#pcontainer > div:nth-of-type(1) {
  /* width: 75%; */
  grid-column: 2 / 2;
  background-color: red;
}
#summary-container img:nth-of-type(1) ~ img {
  float: right;
  width: auto;
  height: 200px;
}
.company-container {
  margin: 10px;
}
.Scope { max-width: 50%; display:inline-block; }

.indent-1 {float: left; overflow:hidden;}
.indent-1 section:nth-of-type(1) {width: 80%; float: left;}
.indent-1 section:nth-of-type(2) {width: 20%; float: right;}
.indent-2 {margin-right: 100px; text-align: center;}
.indent-2 section:nth-of-type(1) {width: 20%; float: left;}
.indent-2 section:nth-of-type(2) {width: 80%; float: left;margin:0px;}
.Logo-sm {object-fit:none;}
.inline-img {display:inline; margin-right:50px;}
.logo-div {width:80px; height:100px; text-align: center;}
/* .logo-div img {margin-top:5px;} */
.cinfo {line-height: 1.1;width:100%;}
.project-container > div {border: 1px solid black; padding: 5px; margin-bottom: 5px;}