.buffer fieldset{
  margin:.7em 0;
  padding:12px;
  border:1px solid #777;
}
.buffer fieldset legend{
  font-weight:bold;
}

.buffer .styled-listing .service-img {
	float:left;
	max-width: 300px;
	border: 10px solid #fff;
	-webkit-box-shadow: 0px 0px 5px 3px rgba(51,51,51,0.3);
	-moz-box-shadow: 0px 0px 5px 3px rgba(51,51,51,0.3);
	box-shadow: 0px 0px 5px 3px rgba(51,51,51,0.3);
	margin: 0 20px 20px 0;
}

.buffer .styled-listing > div {
	margin: 25px 0;
	padding: 0 0 10px;
	border-bottom: 1px solid #333;
}

.buffer .styled-listing > div:after {
	content: "";
	display: block;
	clear: both;
}

.buffer .styled-listing .h4 {
	font-weight: 700;
}

.buffer .styled-listing a {
	display: block;
	margin-top: 20px;
}

.buffer .FieldContainerHori {
    max-width: 100%;
}

.buffer .FieldContainerHori label {
    padding: 1px 5px 10px 0px;
}

.buffer ul li {
	margin: 0 0 0.75rem 0;
}

.buffer .simplePagerNav > li {
	margin: 0;
}

.buffer .btn {
	text-decoration: none;
	text-transform: uppercase;
}

.buffer pre code {
  background-color: #eeeeee;
  border: 1px solid #999999;
  display: block;
  padding: 0px 20px 30px;
}

/*Internal Pages Content Style Guide CSS classes:  */
.buffer .special-title {
  color: #00599b;
  position: relative;
  padding-top:2rem;
  margin-bottom: 3rem !important;
}

.buffer .special-title:before {
  content: '';
  position: absolute;
  left: 0;
  background:#97c4e9;
  top: 0px;
  width: 7.5rem;
  height: 0.813rem;
}

/*.buffer .bolded-large {
  font-weight: 900;
  color: #00599b;
  font-family: "Roboto", "Open Sans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  font-size: 1.3rem;
  line-height: 2.375rem;
}*/

.buffer .bolded {
  font-weight: 600;
  color: #00599b;
  font-family: "Roboto", "Open Sans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  font-size: 1.125em;
  line-height: 2.375rem;
}

.buffer .blockquote {
  font-weight: 600;
  color: #00599b;
  font-size: 1.5rem;
  font-style: italic;
  padding: 2rem;
  border-width: 16px;
  border-color: rgb(190 190 190 / 20%);
  border-style: solid;
  display: block;
}

.buffer .blockquote .author {
	font-weight: 600;
	font-style: normal;
	text-transform: uppercase;
	color: #002249;
	font-size: 20px;
	margin: 0;
}

.buffer .image-blockquote {
	position: relative;
  display: flex;
  justify-content: space-between;
}

.buffer .image-blockquote figure,  
.buffer .image-blockquote p {
	display: block;
  width: 47%;
  margin: 125px 0;
}

.buffer .image-blockquote figure img {
	display: block;
	margin: 0 auto;
}

.buffer .image-blockquote p {
	font-weight: 600;
  color: #00599b;
  font-size: 1.188rem;
  font-style: italic;
  padding: 0 55px 0 0;
}

.buffer .image-blockquote:after {
	display: block;
	position: absolute;
	right: 0;
	z-index: -1;
	content: '';
	height: 100%;
	width: 75%;
  border-width: 16px;
  border-color: rgb(190 190 190 / 20%);
  border-style: solid;
}

.buffer .img-float-right {
	float: right; 
	margin: 0 0 30px 100px;
}

.buffer .img-float-left {
	float: left; 
	margin: 0 100px 30px 0;
}

body.empty{
  padding:0;
  margin:0;
}
body.empty .buffer{
  font-size:13px;
  font-family:sans-serif;
}
body.empty > h2{
  display:none;
}

@media (max-width: 767px) {
	.buffer .styled-listing .service-img {
		float:none;
	}

	.buffer .image-blockquote {
		flex-direction: column;
	}

	.buffer .image-blockquote figure, 
	.buffer .image-blockquote p {
		width: 100%;
		margin: 30px 0 0;
	}

	.buffer .image-blockquote p {
		margin: 30px 0;
	  padding: 0 35px;
	}

	.buffer .image-blockquote:after {
		width: 100%;
	}

}

@media (max-width: 576px) {
	.buffer .img-float-right,
	.buffer .img-float-left  {
		float: none; 
		display: block;
    margin: 10px auto 40px;
	}

}

