/*
Theme Name: Henry Wiltshire Group 
Author: Tribtec


Theme URI: https://tribtec.ie/
Author URI: https://tribtec.ie/
Text Domain: wp-trib-henrywiltshire
*/
@import url("css/base-style.css");
/*@import url("lib/hw-style.css");*/


.lead { font-size: 1.25rem; font-weight: normal;}
.lead.summary-block p + ul {margin-top: 1rem;}
@media screen and (max-width: 640px){ .lead { font-size: 1.15em; font-weight: 300;} }





.hide { display:none!important;}

.white { background-color:#fff;}
.light, .light1 { background-color:#CEDDF2; background-color:#E2ECEF;}
.verylight, .pale { background-color:#f5f9fa;}
.light2 { background-color:#B9CDE6;}
.light3 { background-color:#A8C0DD;}
.mid, .mid1 { background-color:#96AFCE;}
.mid2 { background-color:#85A3C7;}
.mid3 { background-color:#6E8EB4;}
.middark { background-color:#6682A6;}
.dark { background-color:#2D4776;}
.dark2 { background-color:#233C6B;}
.dark3 { background-color:#1E345D;}

.borderonly-light {border: 2px solid #E2ECEF;}
.borderonly-main {border: 2px solid #1E345D;}

.accent{ background-color:#e3a621;}
.mid p, .mid h1, .mid h2, .mid h3, .mid h4, .mid h5, .mid li, .mid label { color:#FFF;}
.middark p, .middark h1, .middark h2, .middark h3, .middark h4, .middark h5, .middark li, .middark label { color:#FFF;}
.dark p, .dark h1, .dark h2, .dark h3, .dark h4, .dark h5, .dark li, .dark label { color:#FFF;}
.dark2 p, .dark2 h1, .dark2 h2, .dark2 h3, .dark2 h4, .dark2 h5, .dark2 li, .dark2 label { color:#FFF;}
.dark3 p, .dark3 h1, .dark3 h2, .dark3 h3, .dark3 h4, .dark3 h5, .dark3 li, .dark3 label { color:#FFF;}
.dark.transparent { background-color:rgba(0, 30, 49, 0.3);}
.dark.transparent h1, .dark.transparent h2, .dark.transparent h3, .dark.transparent h4, .dark.transparent h5, .dark.transparent p {  text-shadow: 0px 0px 1px #000, 0px 0px 20px #000, 0px 0px 120px #000;}
.dark a, .dark2 a, .dark3 a, .middark a { color:#FBBA00;}
.dark a:hover, .dark2 a:hover, .dark2 a:hover, .middark a:hover { color:#ffd049;}
.dark a.buttonlink, .dark2 a.buttonlink, .dark3 a.buttonlink, .middark a.buttonlink { color:#FFF;}
.dark a.buttonlink:hover, .dark2 a.buttonlink:hover, .dark3 a.buttonlink:hover, .middark a.buttonlink:hover { color:#FFF; background:#6682A6}
.mid a { color:#062641;}
.mid a:hover { color:#ffd049;}
.mid a.buttonlink { color:#fff; background:#062641;}
.mid a.buttonlink:hover { color:#fff; background:#ffd049;}
.mid a h2, .mid a h3, .mid a h4, .mid h2 a, .mid h3 a, .mid h4 a { color:#FFF;}
.mid a:hover h2, .mid a:hover h3, .mid a:hover h4, .mid h2 a:hover, .mid h3 a:hover, .mid h4 a:hover { color:#f3f3f3;}
a.accent{ background-color:#e3a621;}
a.accent:hover{ background-color:#fab918;}

.hide { display:none;}

a {color: #233c97; color:#0031E7; color:#0080a6;}
a:hover {color: #666; color:#0080a6}

a.phonelink { color: #333; }


.hangingindent25 { padding-left: 25px; text-indent: -25px; }


div.multiColumn,
div.multiColumn2,
.columns2 {
	-webkit-columns: 300px 2;
	-moz-columns: 300px 2;
	columns: 300px 2;
	-moz-column-gap: 2em;
	-webkit-column-gap: 2em;
	column-gap: 2em;
	-webkit-column-break-inside: avoid;
}
.columns2.columnswide {
	-webkit-columns: 400px 2;
	-moz-columns: 400px 2;
	columns: 400px 2;
}

.island .columns2 {
	-webkit-columns: 350px 2;
	-moz-columns: 350px 2;
	columns: 350px 2;
}
.columns2.columnssmall {
	-webkit-columns: 250px 3;
	-moz-columns: 250px 3;
	columns: 250px 3;
}

.columns3 {
	-webkit-columns: 220px 3;
	-moz-columns: 220px 3;
	columns: 220px 3;
	-moz-column-gap: 2em;
	-webkit-column-gap: 2em;
	column-gap: 2em;
	-webkit-column-break-inside: avoid;
}
.columns3.columnswide {
	-webkit-columns: 300px 3;
	-moz-columns: 300px 3;
	columns: 300px 3;
}
.columns3.columnssmall {
	-webkit-columns: 200px 3;
	-moz-columns: 200px 3;
	columns: 200px 3;
}

.checklist {
	text-align: left;
	margin: 0 auto 2rem; /* -0.5em to adjust for top padding on list elements */
}
ul.checklist { list-style:none; padding-left: 20px;}

.checklist p, .checklist li {
	line-height: 1.3em;
	margin: 0;
	padding-bottom: 0.5rem;
	padding-left: 25px; /* need even padding top & bottom or column wrapping can go funny*/
	text-indent: -25px;
}

/* need even padding top & bottom or column wrapping can go funny. Adjust top of container for top padding on list elements */
.checklist.columns2, .checklist.columns3 {	margin-top: -0.5rem; padding-left:0; }
.checklist.columns2 p, .checklist.columns3 p, .checklist.columns2 li, .checklist.columns3 li{	padding-top: 0.5rem; padding-bottom: 0; }

.checklist li:before, .checklist p:before {
	width: 25px;
	font-family: 'FontAwesome';
	content: '\f00c';
/*	font-size: 0.9rem;*/
	margin: 0 10px 0 0px;
	color: #6286AC; color:#466e98;
}
.checklist p:before {
	margin: 0 10px 0 0px;
}

.descbulletcols { padding: 0 0 0 20px; margin: 0; }
.descbulletcols li { list-style: disc; padding: 0; margin: 0 0 10px 0px; color: #1e345d; color: #666; line-height: 1.2em; }



/* Bootstrap 5 has xs class @ < 576px - this is only needed for Bootstrap 4 */
@media (max-width: 576px){ 
	.col-xs-12 {
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
}
@media (max-width: 460px){ 
	.col-xxs-12 {
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
}
/*@media (max-width: 320px){ */
@media (max-width: 360px){ 
	.col-xxxs-12 {
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
}

h1, h2, h3, h4, h5, h6 { color: #1e345d; margin: 2.4rem 0 1.4rem; line-height:1.2em; padding-bottom:0; }
h5, h6 { line-height:1.4em; }
h3, h4, h5, h6 { margin: 2rem 0 1.2rem;}
h2 { margin-bottom: 2.2rem; }
h1 + h2, h1 + h3, h2 + h3, h2 + h4, h3 + h4, h3 + h5, h4 + h5, h5 + h6 { margin-top:0;}
h4 { font-size: 1.4rem; font-weight: normal;}

@media (max-width: 599px) { h2 { font-size:1.6rem;}  h3 { font-size:1.4rem;}}


.island { padding:1.6rem; margin:2rem auto; }
.islet { padding:1.6rem; }
@media (min-width: 768px) { .island { padding:2rem 3rem; margin:3rem auto;} .island.smallpaddesk { padding:1.6rem; }}
.islet > *:first-child,
.island > *:first-child { margin-top:0; padding-top:0;}
.islet > *:last-child,
.island > *:last-child { margin-bottom:0; padding-bottom:0;}

.note {  padding:2rem 3rem; margin:2rem auto; background-color: #fff299; border:1px solid red; text-align:center; }
.hide { display:none;}


div.widescreen-show, div.desktop-show, div.laptop-show, div.tablet-show, div.midscreen-show, div.smallscreen-show, div.mobile-show { display: none; }
@media only screen and (min-width: 1400px){ div.widescreen-show { display: block; } }
@media only screen and (min-width: 1200px){ div.desktop-show { display: block; } }
@media (min-width: 1024px) and (max-width: 1199px){ div.laptop-show { display: block; } }
@media (min-width: 768px) and (max-width: 1023px){ div.tablet-show { display: block; } }
@media (min-width: 640px) and (max-width: 767px){ div.midscreen-show { display: block; } }
@media (min-width: 421px) and (max-width: 639px) { div.smallscreen-show { display:block;}}
@media (max-width: 420px) {div.mobile-show { display:block} }


@media only screen and (min-width: 1400px){ .widescreen-hide { display: none; } }
@media only screen and (min-width: 1200px){ .desktop-hide { display: none; } }
@media (min-width: 1024px) and (max-width: 1199px){ .laptop-hide { display: none; } }
@media (min-width: 768px) and (max-width: 1023px){ .tablet-hide { display: none; } }
@media (min-width: 640px) and (max-width: 767px){ .midscreen-hide { display: none; } }
@media (min-width: 421px) and (max-width: 639px) { .smallscreen-hide { display:none;}}
@media (max-width: 420px) {.mobile-hide { display:none} }



.property-desc .widescreen {display:block;}
.property-desc .midscreen {display:none;}
.property-desc .desktop {display:none;}
.property-desc .tablet {display:none;}
.property-desc .smallscreen {display:none;}

@media only screen and (max-width: 1160px){
.property-desc .widescreen {display:none;}
.property-desc .midscreen {display:block;}
.property-desc .desktop {display:block;}
.property-desc .tablet {display:none;}
.property-desc .smallscreen {display:none;}
}
@media only screen and (max-width: 959px){
.property-desc .widescreen {display:none;}
.property-desc .midscreen {display:none;}
.property-desc .desktop {display:none;}
.property-desc .tablet {display:block;}
.property-desc .smallscreen {display:block;}

}
@media only screen and (max-width: 760px){
 .property-desc .midscreen, .property-desc .smallscreen, .property-desc .desktop, .property-desc .tablet, .property-desc .widescreen  { display:none; }
}
@media only screen and (max-width: 639px){
	.property-desc .widescreen {display:none;}
	.property-desc .midscreen {display:none;}
	.property-desc .desktop {display:none;}
	.property-desc .tablet {display:block;}
	.property-desc .smallscreen {display:block;}
}






.buttonpanel { text-align: center; margin: 1rem auto; }
.buttonpanel a, .button,
button:not(.navbar-toggler), .buttonlink, .blocklink, .arrowbutton, input[type="submit"], button[type="submit"], .pagination ul.page-numbers a.page-numbers:not(.next):not(.prev):not(.current) {
	color: white;
	background: #1b8bac;  background: #2090b1; background:#6286AC; background:#466e98;
	display: inline-block;
	padding: 1rem 2rem;
	padding: 12px 28px;
	font-size: 1.1rem;
	font-weight: normal;
	text-align: center;
	margin: auto;
	margin-bottom: 10px;
	border: none;
	-webkit-transition: background-color 0.14s ease-in-out;
	transition: background-color 0.14s ease-in-out;
}
.buttonpanel a { margin: 10px 15px; text-transform:uppercase; font-weight:500; }

.ZZZbuttonpanel a.outlinebtn, 
.button.outlinebtn, button.outlinebtn, .buttonlink.outlinebtn { color: #0080a6; color:#59799d; color: #1e345d; color:#00397a; font-weight: 500; background: none; border: 1px solid #aaa; }
.ZZZbuttonpanel a.outlinebtn:hover, 
.button.outlinebtn:hover,  button.outlinebtn:hover, .buttonlink.outlinebtn:hover { color: #fff; background: #1e345d; border: 1px solid #1e345d; }

/*
.backoverlay .button.outlinebtn, .backoverlay button.outlinebtn, .backoverlay .buttonlink.outlinebtn { color: #FFF; background: rgb(30 52 93 / 20%); border: 1px solid #FFF; text-shadow: 0 0 6px #1e345d, 0 0 16px #1e345d; }
*/
.backoverlay .button, .backoverlay button, .backoverlay .buttonlink { color: #FFF; background: rgb(30 52 93 / 20%); border: 1px solid #FFF; text-shadow: 0 0 6px #1e345d, 0 0 16px #1e345d; }
.backoverlay .button:hover, .backoverlay  button:hover, .backoverlay .buttonlink:hover { color: #fff; background: #1e345d; border: 1px solid #1e345d; }

.blocklink.bigblock { font-size: 1.1em; margin: 2rem auto; padding:2rem 3rem; max-width: 500px; display:block;}
.blocklink.bigblock span { display:block; text-transform:uppercase; font-size: 1.2em; font-weight: 500; padding-top: 2px; }

a.button.button-pad{ padding: 1.4em 2.4em;}
a.button.button-md{ font-size:1.2rem; padding: 1.1rem 1.8rem;}
a.button.button-lg{ font-size:1.3rem; padding: 1.2rem 2.2rem;}
a.button.button-sm:not(.navbar-toggler) { font-size:1rem; padding: 8px 15px; text-transform:none;}


.nolinebreaks br{ display:none;}



.page-content, .entry-content, .entry-summary { margin-top: 0;}


.quote-block { padding-left: 30px; margin: 1.75em 0; border-left: 2px solid #aaa;}
blockquote.withquotes,
blockquote.quotes { margin-left: 30px; margin-right: 30px; padding: 2rem 0 0; border:1px solid #ccc; border-left: none; border-right:none;position:relative;}
blockquote.withquotes, blockquote .innerquote { padding-left: 30px; padding-right: 30px;}
@media only screen and (min-width: 768px) {blockquote.quotes, blockquote.withquotes { margin-left: 5%; margin-right: 5%; font-size:1.1em;}}
blockquote .innerquote:before, blockquote .innerquote:after,
blockquote.withquotes:before, blockquote.withquotes:after {  display: block; color: #1e345d; color: #ddd; top: 5px; left:0; position: absolute;	font-family: FontAwesome; font-size: 1.25em;}
blockquote .innerquote:before, blockquote.withquotes:before { content: "\f10d"; top: 10px; right: auto; }
blockquote .innerquote:after, blockquote.withquotes:after {  content: "\f10e";  top: auto; bottom: 0; left:auto; right:0; }
blockquote.withquotes:before { top: 1rem; }
blockquote.withquotes:after { bottom: 20px; }
blockquote .innerquote { position:relative;}
@media (min-width: 1200px) { 
blockquote .innerquote:before, blockquote .innerquote:after, blockquote.withquotes:before, blockquote.withquotes:after {  font-size: 40px;}
	blockquote.withquotes, blockquote .innerquote { padding-left: 50px; padding-right: 50px;}
	blockquote .innerquote:before {top: -1rem; }
	blockquote .innerquote:after {  bottom: -1rem; }
}


.callout-block-left, .callout-block-right { font-weight:normal; font-size:1.3em; color:#1E345D; font-style:italic; margin: 1em 0; text-align: center; } 

.callout-block-full {
	font-weight: normal; font-size: 1.3em; color: #1E345D; font-style: italic; text-align: center;
	max-width: 75%; padding: 1em 0; margin: 1em auto;
	border: 2px solid #eee; border-left: none; border-right: none;
}

@media only screen and (min-width: 768px) {
	.callout-block-left,.callout-block-right { max-width:33%;font-size:1.5em; }
	.callout-block-left { float:left; margin-right: 2em;} 
	.callout-block-right { float:right; margin-left: 2em; text-align: left; }
}
@media only screen and (max-width: 767px) {
	.callout-block-left,.callout-block-right {max-width: 75%; margin: 1em auto; padding: 1em 0; float:none;
		border: 2px solid #eee; border-left: none; border-right: none;
	}
}



table {}
th, td { padding: 6px 10px;}
th:first-of-type, td:first-of-type { padding-left: 0px;}
th:last-of-type, td:last-of-type { padding-right: 0px;}
th p, td p { margin:0; padding:0;}
table th h4 {margin:0 0 10px;}

table.borderrows tr{ border-bottom: 1px solid #eee;}

table.striperows tr{ background:#f7f7f7;}
table.striperows tr:first-of-type{ background:none;}
table.striperows tr:nth-of-type(even){ background:#ededed;}
table.striperows th, table.striperows td { padding: 8px 10px;}
table.striperows th:first-of-type, table.striperows td:first-of-type { padding-left: 10px;}
table.striperows th:last-of-type, table.striperows td:last-of-type { padding-right: 10px;}

table.collast-right th:last-of-type, table.collast-right td:last-of-type { text-align:right;}




.video-container {
	position: relative;
	padding-bottom: 52.5%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin-bottom:30px;
}

.video-container iframe,  
.video-container object,  
.video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/**************************************************************************************************/

header#masthead { padding: 0; }
header#masthead .container{ padding: .74rem 1rem; }
header#masthead .container{ padding: 0.2rem 1rem 0.6rem 1rem; }
header#masthead #hw-services-navbar .container{ padding-top: 0; padding-bottom: 0; }

#masthead .navbar-nav > li > a { padding: 0.5rem 0.8rem; }

#masthead #main-nav .navbar-nav > li > a {
  color: #333;
  font-weight: 500; font-weight: 400;  font-size: 1rem;
  padding: 0.6rem 1rem; text-transform:uppercase; 
}

#masthead #main-nav.navbar-nav > li > a:hover,
#masthead #main-nav.navbar-nav > li.current_page_item > a {
  color: #666;
  font-weight: 600;
  background: #f9f9f9;
}

@media (min-width: 768px) and (max-width: 1050px){ #masthead .navbar-nav > li:last-child .dropdown-menu {left: auto; right: 0; }}
	
@media (min-width: 768px){ nav.navbar.navbar-expand-md  li.hw-collapsednav-only { display:none} }
@media (min-width: 992px){ nav.navbar.navbar-expand-lg  li.hw-collapsednav-only { display:none} }
@media (min-width: 1200px){ nav.navbar.navbar-expand-xl  li.hw-collapsednav-only { display:none} }

.dropdown-item { padding: 0.25rem 1rem; text-transform:none	; }
.dropdown-menu { margin-top:0; border-radius: 0; border: 1px solid #ccc; border-top:none; box-shadow: 2px 2px 3px rgb(125 125 125 / 20%);}


@media (min-width: 768px) {
/* Make the dropdown show on mouse over - also need js */
	#masthead .navbar-nav > li:hover > .dropdown-menu {  display: block; }
	#masthead .navbar-nav li > .dropdown-menu li:hover .dropdown-menu {
		left: 190px;
		top: 0;
		width: 200px !important;
		display: block;
	}
/* end mouseover */
}
@media (max-width: 767px) {
#masthead #secondary-main-menu.navbar-nav > li > a { text-transform: uppercase; border-top: 1px solid #888;}
#masthead #secondary-main-menu.navbar-nav li a {padding: 0.8rem 5%;font-size: 1.1rem; }
#masthead #secondary-main-menu.navbar-nav .dropdown-menu.show > li > a { padding-left: 8%; text-transform:none;}

#masthead #secondary-main-menu.navbar-nav li a.dropdown-toggle::after {font-size: 1.2rem;}
#masthead #secondary-main-menu.navbar-nav li.show a.dropdown-toggle::after {
  border-top: 0; border-right: 0.3em solid transparent; border-bottom: 0.3em solid;  border-left: 0.3em solid transparent;
 }

/* white dropdown */
header#masthead .container { padding-left:0; padding-right:0; }
header#masthead .navbar-brand { padding-left:1rem; }
header#masthead .navbar-toggler { padding-right:1rem; }
#masthead #secondary-main-menu.navbar-nav { background:#FFF;}
#masthead #secondary-main-menu.navbar-nav > li > a {  border-top: 1px solid #ccc;}
#masthead #secondary-main-menu.navbar-nav li a { color: #666;}
#masthead #secondary-main-menu.navbar-nav li a:hover { background:#1e345d; color:#FFF;}
}

@media (max-width: 1199px){ #masthead .container{ max-width:none}}

/**************************************************************************************************/

header#masthead1 { box-shadow: 0 0px 10px rgb(0 0 0 / 10%) }

/* #page-banner:not(.heroimage) {	
NOTE - doesn't work if empty class is speficied e.g. class="" */
#page-banner:not([class]){
	background: none;
	background: #FFF; border-top: 1px solid #ccc;
	position: relative;
	padding-top: 5rem; padding-bottom: 0;
	text-align: center; font-size: 1.25rem;
}
/*#page-banner:not(.heroimage) h1 { 	font-size: 2.75rem; line-height: 1.1em; padding: 0 5% 10px; text-align:center; margin: 0 0 1rem;}
@media screen and (min-width: 768px){ #page-banner:not(.heroimage) h1 { font-size: 3.750rem; } }
*/
#page-banner:not([class]) h1 { 	font-size: 2.75rem; line-height: 1.1em; padding: 0 5% 10px; text-align:center; margin: 0 0 1rem;}
@media screen and (min-width: 768px){ #page-banner:not([class]) h1 { font-size: 3.750rem; } }


.heroimage {
	margin: 0;
	width: 100%;
	max-width: 100%;
	text-align: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center bottom;
	background-position: center center;
	background-image: url();
	box-shadow: inset 0px 20px 20px -20px rgb(0 0 0 / 50%);
	padding:0;
	background-attachment: fixed;
}
.heroimage .overlaycontainer {background: rgba(0, 0, 0, 0.3); background:/*rgb(0 82 95 / 33%);*/ rgb(0 76 112 / 55%); 
background: rgb(0 23 76 / 55%);
 display: flex; justify-content: center; align-items: center;   min-height: 75vh; min-height: 70vh;}
.heroimage .container { padding-top: 4rem; }
.heroimage h1 {
	font-weight: 700;
	font-weight: 500;
	font-size: 4em;
	font-size: 3.4em;
	line-height: 1.1em;
	color: #FFF;
	text-transform: none;
	padding: 0 5% 10px;
	margin: 0;
	text-shadow: 0 0 3px #000, 0 0 30px #000;
	text-shadow: 0 0 3px rgb(0 0 0 / 75%), 0 0 10px rgb(0 0 0 / 50%), 0 0 30px #000;
}
.heroimage h2,
.heroimage h3 {
	font-size: 1.6em;
	color: #FFF;
	padding: 0 5% 10px;
	margin: 0 0 1rem;
	text-shadow: 0 0 1px #666, 0 0 20px #000;
	text-shadow: 0 0 3px rgb(0 0 0 / 75%), 0 0 10px rgb(0 0 0 / 50%), 0 0 20px #000;
}

@media screen and (max-width: 960px){ .heroimage .buttonpanel { margin-bottom: 0;} }

.heroimage a.button {
	font-size: 1.35em;
	text-transform:uppercase;
	padding: 16px 20px;
	text-align:center; min-width:180px;
	margin: 0 1rem 1rem ;
	background: white;color: #1e345d;
}
.heroimage a.button.outlinebtn {color: white;background: rgb(30 52 93 / 40%); border:1px solid #FFF;}
.heroimage a.button:hover {color: #1b8bac;background: #fff; box-shadow:3px 3px 8px rgb(0 0 0 / 50%);}

.heroimage p.scrollermsg { margin: 1rem 0 0 0; color:#FFF; font-size: 1.4em;
	text-shadow: 0 0 3px rgb(0 0 0 / 75%), 0 0 10px rgb(0 0 0 / 50%), 0 0 20px #000;
}
.heroimage a.page-scroller { color: #FFF; font-size: 1em; line-height:1em; margin:0; padding:0;display:block;  }
.heroimage a.page-scroller i { font-size: 4rem; line-height:1em; margin:0; padding:0; }

@media screen and (max-width: 960px){ body:not(.home) .heroimage h1{font-size: 3rem;}}
@media screen and (max-width: 767px){ /* body:not(.home) .heroimage h1{font-size: 10vw;}*/  .heroimage h2,.heroimage h3 {font-size:1.35rem;}}
@media screen and (max-width: 600px){  body.home .heroimage h1{font-size: 10vw;} 
.heroimage a.button {font-size: 1.15em;}
/*body:not(.home) .heroimage h1 {font-size: 12vw;} .heroimage h2{font-size: 5vw;}*/
}
@media screen and (max-width: 640px){ body:not(.home) .heroimage h1 { font-size: 2.6rem; }}


.heroimage .overlaycontainer.whiteoverlay {background: rgba(255, 255, 255, 0.35);}
.heroimage .whiteoverlay h1 {
	color: #333;
	text-shadow: 0 0 3px rgb(255 255 255 / 75%), 0 0 10px rgb(255 255 255 / 50%), 0 0 30px #fff;
}
.heroimage .whiteoverlay h2,
.heroimage .whiteoverlay h3 {
	color: #FFF;
	text-shadow: 0 0 3px rgb(255 255 255 / 75%), 0 0 10px rgb(255 255 255 / 50%), 0 0 20px #fff;
}
.heroimage .whiteoverlay a.button {
	color: #1e345d;
	background: white;
	background: #1e345d;
	color: white;

}
.heroimage .whiteoverlay a.button:hover {color: white; background: #1e345d; box-shadow:3px 3px 8px rgb(255 255 255 / 50%);}
.heroimage .whiteoverlay p.scrollermsg { color:#333; text-shadow: 0 0 3px rgb(255 255 255 / 75%), 0 0 10px rgb(255 255 255 / 50%), 0 0 20px #fff;
}

/* to fix issue with fixed background image on mobile */
@media screen and (max-device-width: 1024px){ .heroimage {background-attachment: scroll;}}

/**************************************************************************************************/


.ribbon-wrapper { background: #C32026; color: #fff; font-size: 1.2rem; padding: 10px 20px; position: absolute; top: 0; left: 30px;z-index: 12;}
@media only screen and (max-width: 500px) { .ribbon-wrapper { font-size:1rem; padding:6px 12px; } }
@media only screen and (min-width: 1200px) { .ribbon-wrapper { font-size: 1.4rem; padding: 15px 25px;} }



/**************************************************************************************************/
.gform_wrapper.gravity-theme .trib_gf_hide_sublabels .ginput_complex.ginput_container_name label { display:none} 
.gform_wrapper.gravity-theme .trib_gf_hide_labels .gfield:not(.trib_gf_dont_hide_label) legend,
.gform_wrapper.gravity-theme .trib_gf_hide_labels .gfield:not(.trib_gf_dont_hide_label) label { display:none} 

.gform_wrapper.gravity-theme:not(.trib_gf_hide_labels_wrapper) .gfield.trib_gf_labelleft { display: flex; width: 100%; flex-wrap: wrap; justify-content: flex-end; }
.gform_wrapper.gravity-theme .gfield.trib_gf_labelleft { display: flex; width: 100%; flex-wrap: wrap; justify-content: flex-start; }
.gform_wrapper.gravity-theme .gfield.trib_gf_labelleft .gfield_label { margin: 0; padding: 0 16px 0 0; }
.gform_wrapper.gravity-theme .gfield.trib_gf_labelleft .ginput_container  { flex:1;}

gform_wrapper.gravity-theme .gform_fields { grid-row-gap: 18px; }
.gform_wrapper.gravity-theme .gfield input, .gform_wrapper.gravity-theme .gfield select, .gform_wrapper.gravity-theme textarea { border:1px solid #ccc;  border-radius:2px;}

.gform_wrapper.gravity-theme input[type=color], .gform_wrapper.gravity-theme input[type=date], .gform_wrapper.gravity-theme input[type=datetime-local], .gform_wrapper.gravity-theme input[type=datetime], .gform_wrapper.gravity-theme input[type=email], .gform_wrapper.gravity-theme input[type=month], .gform_wrapper.gravity-theme input[type=number], .gform_wrapper.gravity-theme input[type=password], .gform_wrapper.gravity-theme input[type=search], .gform_wrapper.gravity-theme input[type=tel], .gform_wrapper.gravity-theme input[type=text], .gform_wrapper.gravity-theme input[type=time], .gform_wrapper.gravity-theme input[type=url], .gform_wrapper.gravity-theme input[type=week], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea { padding: 7px 8px;}
.gform_wrapper.gravity-theme .ginput_complex label, .gform_wrapper.gravity-theme .ginput_complex legend { font-size: 13px; line-height: 1.3; margin: 4px 0 0; padding: 0;}

.gform_wrapper.gravity-theme  .gfield.trib_gf_readonly input {border: none; padding: 2px 0!important;}
/* } */

.gform_wrapper.gravity-theme .gform_footer button, .gform_wrapper.gravity-theme .gform_footer input, .gform_wrapper.gravity-theme .gform_page_footer button, .gform_wrapper.gravity-theme .gform_page_footer input { font-size: 1.3rem; padding: 1rem 1.6rem; text-transform: uppercase; }

.gform_wrapper .gfield.gf_list_inline .gfield_checkbox .gchoice, .gform_wrapper .gfield.gf_list_inline .gfield_radio .gchoice { display: inline-block; padding-right: 16px; }

::-webkit-input-placeholder { color: #888; font-style: italic; } 
::-moz-placeholder { color: #888; font-style: italic; } 
:-ms-input-placeholder { color: #888; font-style: italic; } 
:-moz-placeholder {color: #888; font-style: italic; } 



/** CONTACT FORMS / GRAVITY FORMS ************************************************************************************************/


div.wpforms-container-full .wpforms-form input[type=submit]:hover, div.wpforms-container-full .wpforms-form button[type=submit]:hover, div.wpforms-container-full .wpforms-form .wpforms-page-button:hover,
.buttonpanel a:hover, .button:hover, 
button:hover, .buttonlink:hover, .blocklink:hover, .arrowbutton:hover, input[type="submit"]:hover, .pagination ul.page-numbers a.page-numbers:hover:not(.next):not(.prev):not(.current) {
	background: #1e345d;
	color: white;
	text-decoration:none;
}


div.wpforms-container-full .wpforms-form button[type=submit].wpforms-submit { font-size:1.3rem; padding: 1.1rem 1.8rem; text-transform:uppercase;}
div.wpforms-container-full .wpforms-form button[type=submit].wpforms-submit:hover { border:none;}

div.wpforms-container-full .wpforms-form input[type=submit], div.wpforms-container-full .wpforms-form button[type=submit], div.wpforms-container-full .wpforms-form .wpforms-page-button { color: white !important; background-color: /* #1b8bac #2090b1#6286ac*/#466e98!important; border: none;}
div.wpforms-container-full .wpforms-form input[type=submit]:hover, div.wpforms-container-full .wpforms-form button[type=submit]:hover, div.wpforms-container-full .wpforms-form .wpforms-page-button:hover { color: white !important; background: #1e345d !important; text-decoration:none;}
.wpforms-submit-container { text-align:center;}



.gform_wrapper.gravity-theme .gform_footer.left_label, .gform_wrapper.gravity-theme .gform_footer.right_label, .gform_wrapper.gravity-theme .gform_page_footer.left_label, .gform_wrapper.gravity-theme .gform_page_footer.right_label { padding: 16px 0; text-align:center;}





 

/* MAIN CONTACT FORM */


@media (min-width: 460px) {
	.page-contact-us .gform_wrapper.gravity-theme .left_label .gfield:not(.gsection):not(.gfield_html):not(fieldset), 
	.page-contact-us .gform_wrapper.gravity-theme .right_label .gfield:not(.gsection):not(.gfield_html):not(fieldset),
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.left_label fieldset, 
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.right_label fieldset{ display: flex;  justify-content: flex-start; flex-wrap: nowrap;}
}

@media (min-width: 641px) {
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) fieldset:not([style*="display:none"]):not(.ginput_full),
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full) {
		padding-right: 2%;
	}
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) fieldset:not([style*="display:none"]):not(.ginput_full)~span:not(.ginput_full), 
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full)~span:not(.ginput_full) {padding-left: 2%;padding-right: 0;}
	
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields { grid-column-gap: 4%; }
}	
@media (min-width: 641px) and (max-width:1199px) {
	.page-contact-us .gform_wrapper.gravity-theme .left_label .gfield:not(.gsection):not(.gfield_html):not(fieldset), 
	.page-contact-us .gform_wrapper.gravity-theme .right_label .gfield:not(.gsection):not(.gfield_html):not(fieldset),
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.left_label fieldset, 
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.right_label fieldset{  flex-wrap: wrap;}

	.page-contact-us .gform_wrapper.gravity-theme .left_label .gfield_label, 
	.page-contact-us .gform_wrapper.gravity-theme .right_label .gfield_label,
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.left_label legend.gfield_label, 
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.right_label legend.gfield_label,
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.left_label fieldset .ginput_container, 
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.right_label fieldset .ginput_container,
	.page-contact-us .gform_wrapper.gravity-theme .left_label div.gfield>div:not(.ui-resizable-handle):not(.gfield-admin-icons), 
	.page-contact-us .gform_wrapper.gravity-theme .right_label div.gfield>div:not(.ui-resizable-handle):not(.gfield-admin-icons){ width:100%; }
	
	.page-contact-us .gform_wrapper.gravity-theme .left_label .gfield_label, 
	.page-contact-us .gform_wrapper.gravity-theme .right_label .gfield_label,
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.left_label legend.gfield_label, 
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.right_label legend.gfield_label{ 	padding-bottom: 4px; }
}

@media (min-width: 461px) and  (max-width: 640px), (min-width: 1200px){
 	.page-contact-us .gform_wrapper.gravity-theme .left_label .gfield_label, 
	.page-contact-us .gform_wrapper.gravity-theme .right_label .gfield_label,
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.left_label legend.gfield_label, 
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.right_label legend.gfield_label{ flex: 0 0 140px; }
	
	.page-contact-us .gform_wrapper.gravity-theme .left_label div.gfield>div:not(.ui-resizable-handle):not(.gfield-admin-icons), 
	.page-contact-us .gform_wrapper.gravity-theme .right_label div.gfield>div:not(.ui-resizable-handle):not(.gfield-admin-icons),
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.left_label fieldset .ginput_container, 
	.page-contact-us .gform_wrapper.gravity-theme .gform_fields.right_label fieldset .ginput_container { flex: 1 1 auto; }
}



/* Hide "Name" label" and use First Name & Last Name as main labels */

.page-contact-us .gform_wrapper.gravity-theme .gform_fields.left_label fieldset.field_sublabel_above legend.gfield_label, 
.page-contact-us .gform_wrapper.gravity-theme .gform_fields.right_label fieldset.field_sublabel_above legend.gfield_label{ display:none;}
.page-contact-us .gform_wrapper.gravity-theme .ginput_complex span label {font-size: 16px; font-weight: 700; margin:0; padding:0;}
.page-contact-us .gform_wrapper.gravity-theme .ginput_complex span label:after {
    content:"*"; color: #c02b0a; display: inline-block; font-size: 13.008px; padding-left: 0.25em; }

@media (min-width: 461px) { 
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex span{ display: flex;  justify-content: flex-start; flex-wrap: nowrap;}
}
@media (max-width: 640px) { 
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex span.name_first { margin-bottom: 16px;}
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex span.name_last { margin-bottom: 0;}
}

@media (min-width: 641px) and (max-width:1199px) {
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex span {  flex-wrap: wrap;}
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex span label { width:100%; padding-bottom: 4px; }
}
@media (min-width: 461px) and  (max-width: 640px), (min-width: 1200px){
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex span {flex-wrap: nowrap;}
	.page-contact-us .gform_wrapper.gravity-theme .ginput_complex span label { flex: 0 0 140px; }
}


.gform_confirmation_message { font-weight:500;  font-size:1.1em;  text-align:center; max-width: 600px; margin: 3em auto; padding: 3rem;  background: #E2ECEF;  }
.page-contact-us .gform_confirmation_message,
.single-estate-agents .gform_confirmation_message {margin: 0 0 1em; padding:0; text-align:left; max-width:none; background:none;  }

.page-valuations .gform_confirmation_message { background: #1e345d; color: #fff; }

/**************************************************************************************************/

p .webicon{display:inline-block;padding:5px 0 5px 30px;position:relative}
a.webicon, p.webicon{padding:2px 0 2px 30px;position:relative;}


.webicon:before,
.webicon.webiconafter:after {
  position: absolute;
  font-family: FontAwesome;
  font-size: 1.25em;
  color:#1e345d;
  color: #888;
  top: 5px;
  right: 0px;
}
a .webicon:hover:before{color:#007ba0;}

span.webicon:before,
p.webicon:before{  top: 2px; left: 0; right: auto;}
p.webicon label, .contact_details p.webicon label{ display:none;}


.page-id-474 span.webicon { padding-left:0;}
.page-id-474 span.webicon:before { display:none;}


.webicon.phone:before,
.webicon.phonenum:before{content:"\f095";left:2px}
.webicon.mobile:before,
.webicon.mobilenum:before{content:"\f10b";left:2px;top:2px}
.webicon.email:before,
.webicon.emailaddr:before{content:"\f0e0"}
.webicon.gotomap:before{content:"\f041";left:3px}
.webicon.branch:before{content:"\f041";left:3px}
.webicon.opentimes:before{content:"\f017";font-size:1.3em}
.webicon.globe:before{content:"\f0ac"}
.webicon.team:before{content:"\f007"}
.webicon.office:before{content:"\f1ad"}
.webicon.properties:before{content:"\f015"}
.webicon.comments:before{content:"\f086"}
.webicon.star:before{content:"\f005"}
.webicon.starempty:before{content:"\f006"}
.webicon.starhalf:before{content:"\ f123"}
.webicon.filepdf:before{content:"\f1c1"}
.webicon.home:before{content:"\f015"}
.webicon.reply:before{content:"\f112"}
.webicon.sitemap:before{content:"\f0e8"}
.webicon.close:before{content:"\f00d"}
.webicon.sitemap:before{content:"\f0e8"}
.webicon.language:before{content:"\f1ab"}
.webicon.subway:before{content:"\f239"}
.webicon.train:before{content:"\f238"}
.webicon.bus:before{content:"\f207"}
.webicon.plane:before{content:"\f072"}
.webicon.car:before{content:"\f1b9"}
.webicon.write:before{content:"\f040"}


.webicon.facebook:before{content:"\f09a"}
.webicon.twitter:before{content:"\f099"}
.webicon.linkedin:before{content:"\f0e1"}
.webicon.googleplus:before{content:"\f0d5"}
.webicon.youtube:before{content:"\f167"}

.socialmediaicons{list-style:none;margin:0px;padding:0px;
	display: flex; flex-wrap: wrap; justify-content: space-evenly; align-items: flex-start;}
.socialmediaicons li{list-style-image:none;list-style-type:none;padding:0px;margin:0 10px 14px 0;display:inline-block;vertical-align:top; text-align:center;}
/*.socialmediaicons li:last-child{margin-right:0}*/
.socialmediaicons a{display:block;height:40px;width:40px;background:#ADADAD}
.socialmediaicons a{position:relative;display:block;padding-left:0; margin:auto}
.socialmediaicons a:after{position:absolute;font-family:FontAwesome;font-size:2em;color:#fff;top:0;right:0;bottom:0;left:0}
.socialmediaicons a:after{height:40px;width:40px;text-align:center;vertical-align:middle;display:inline-block;box-sizing:border-box;padding-top:8px}
.socialmediaicons a:hover{background-color:#CCC}

.socialmediaicons a { border-radius: 50%; background: #6286AC; background:#466e98; } 
.socialmediaicons a, .socialmediaicons a:after { height: 50px; width: 50px; height: 58px; width: 58px; }
@media (min-width: 768px){ .socialmediaicons { justify-content: flex-start; } }

@media (min-width:411px) and (max-width: 460px){ .socialmediaicons a, .socialmediaicons a:after { height: 50px; width: 50px; }}
@media (max-width: 410px){ .socialmediaicons { max-width:320px; justify-content: center;} .socialmediaicons li{ margin: 0 5px 20px;}}


.socialmediaicons a.facebook:after{content:"\f09a"}
.socialmediaicons a.twitter:after{content:"\f099"}
.socialmediaicons a.linkedin:after{content:"\f0e1";padding-top:7px}
.socialmediaicons a.googleplus:after{content:"\f0d5"}
.socialmediaicons a.youtube:after{content:"\f167";padding-top:6px}
.socialmediaicons a.instagram:after { content: "\f16d"; }
.socialmediaicons a.instagram:after {
	content: "";
	background-repeat: no-repeat;
	background-position: 45% 45%;
	background-size: 80%;
	background-position: 50% 50%;	
	background-size: 60%;
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAADHElEQVRYheWXTahVVRTHf+v1KkxfYRiVmSFJopUZRYEIilA5iQqEJoU1EXVQk0CoWTqooIEljRrUICLBgQV+RF9Cw6Cc1LNemIkfvDR9apLd996vwdlHN8dz7ju3d2vSmpy91/6v/3/dzV5r7wv/d4tui2oAdwJzgaGp8HkocBo4HBFHe85KnatuU487fftR3axe11b8SfVsH4SrNqIuqepFRfwxYDcwkFw/AXuAYeB4jxt5O7AEeBy4LflOAg9GxOG6Xz5LHU3ZTqivqNf0KFrHO6S+ne3E/ibgSxloWx+E56lr1dlpvjPjX1kX8HVaPKUOTVP8BvW3xPetGhYH+2LyvVViB7O4B9L3u4g4N4XAAuBRYAEwDhwE9kTEyQS5FZiTxncDgxFxTD0I3As8XCWcmW3P9i7C8ypbmdtFi9KdmX7x6+oP6oYs/oOEPVQlnpMRbW0Qv0890SCe2wH1pgaO7QlzovQN1AFrAmcDnwA3J9c3wFMU5bUQWAf8ktaWAjvVVtylQNcdUN/M1t9Vr6rBzFI/z3DP1mB63wF1EHguTX8GXoiIiSouIs4DzwPnk2v9VNytEgDuAW5M448i4kITMCJ+Bb5M0+Xq1f1I4JZsfKAFvsQMcPnMTCuBsWx8Rwt8jjnbjwS+BzppvKYbUL0WWJWmhyJi+glExBjwaZquVtd1gb9KcQsCfDgV9yVrUYb3q5203lG3qDMq8e9lHKOpd1R5rijDVgkkzKZKx+tYXDTD6mTm/1Nd1cDR2Afyuq4tnYh4B3gaOJVcg8AyYBGXHzYjwMqI+KqOo06vvA3HgMkEWNgQTETsUPdRNKY1wHzgL4qX08cUfaLTFA+Ud8TvV6xYPB5Vh7sQ/GOzuCGPJY1dpT+vgr3pu0h94l/I4UWKdwLAZ3UZ3qWOpwyPqPP7paw+pF5I3GfqKqQEvpad5j/Ul9XF6ULqVXSGuiyd/ImMd2OOqz7LB4D3gWcqfB1gtAf98h6oNro3ImJzm+w32u7109ZG1LV1Wo3/9Sw63SPACoqXz/Xd8BWbBM4AR4AvgP0RMd4y9r+1vwEkJsplRmYy4gAAAABJRU5ErkJggg==);
}

.socialmediaicons a:after, .socialmediaicons a.linkedin:after { padding-top:4px; }
.socialmediaicons li span{ font-size:11px; color:#e5e5e5;
	margin-top: -20px;	display: block;	z-index: 2;	position: relative;}
.socialmediaicons a.instagram:after {background-size: 55%;	background-position: 50% 30%; } /* to add space for location label */
.socialmediaicons a.linkedin:after { padding-top: 7px;}
.socialmediaicons a.youtube:after { padding-top: 8px;}

/*
@media only screen and (min-width: 1024px) and (max-width: 1199px){.socialmediaicons li{margin-right:5px}
	.socialmediaicons li:last-child{margin-right:0}
	.socialmediaicons a{height:35px;width:35px}
	.socialmediaicons a:after{height:35px;width:35px;padding-top:6px}
	.socialmediaicons a.linkedin:after{padding-top:5px}
	.socialmediaicons a.youtube:after{padding-top:5px}
}
*/

.webicon.quote-left:before {  content: "\f10d"; color: #ccc;left:0; right: auto;}
.webicon.quote-right:before {  content: "\f10e"; color: #ccc; }
.webicon.webiconafter.quote-right-after:after { content: "\f10e";  top: auto; bottom: 1.5em;  color: #ccc;}
.testimonialtext.webicon { display: block; position:relative; }
.testimonialtext.webicon:before {  display: block;}

/**************************************************************************************************/

.acf-map {
	padding-bottom: 45%;
}

.acf-map {
	width: 100%;
	height: 400px;
	border: #ccc solid 1px;
}



/**************************************************************************************************/

.trib-fixed-width  {flex-grow: 0; flex-shrink: 0; flex-basis: 100px;} /* override flex-basis to change size */
.trib-fixed-width-100 {flex: 0 0 100px;} 
.trib-fixed-width-150 {flex: 0 0 150px;} 
.trib-fixed-width-200 {flex: 0 0 200px;} 
.trib-fixed-width-300 {flex: 0 0 300px;} 



.h-100.d-flex.justify-content-center.flex-column > *:first-child { margin-top:0; padding-top:0;}
/* removes padding from*/
.h-100.d-flex.justify-content-center.flex-column > *:last-child  { margin-bottom:0; padding-bottom:0;}


.trib-image-background { background-repeat: no-repeat; background-size: cover; background-position: center center; transition: 0.3s all ease; }
.trib_media-text-blocks {}
.trib_media-text-blocks .trib-img-block { min-height:400px; background-repeat: no-repeat; background-size: cover; background-position: center; transition: 0.3s all ease; 
}
@media screen and (max-width: 576px){  
	.trib_media-text-blocks .trib-img-block { min-height:200px; height:200px!important; margin-bottom:2rem; } 
	.container .trib_fullwidthimg-sm.trib_media-text-blocks .trib-img-block { margin-left: -15px; margin-right: -15px;} 
}


.trib_media-text-blocks .row{ margin-bottom:4rem; margin-top:2rem; }
.trib_media-text-blocks .row:first-of-type{ margin-top:2rem; }
.trib_media-text-blocks .row > div h2:first-child{ margin-top:2rem; text-align:center; } 
@media screen and (min-width: 576px){ .trib_media-text-blocks .row > div h2:first-child{ margin-top:0;  text-align:left; } }
.trib_media-text-blocks .row:nth-of-type(odd){ flex-direction: row-reverse; }


.eqheightcols .col-md-4 { margin-bottom: 2rem;}

@media (min-width: 768px){
.eqheightcols .col-md-4 {
	-ms-flex: 0 0 32%;
	flex: 0 0 32%;
	max-width: 32%;
	margin: 0 0.666% 2rem;
}
}
.eqheightcols { margin-top: 3rem;}
.eqheightcols .row > div *:first-child { margin-top:0; padding-top:0;}
.eqheightcols .row > div *:last-child { margin-bottom:0; padding-bottom:0;}
.eqheightcols .row > div { background:#CEDDF2; background:#E2ECEF;}

.eqheightcols.gradientcols .row > div:nth-of-type(1n) { background:#e8f2f9; background:#CEDDF2;}
.eqheightcols.gradientcols .row > div:nth-of-type(2n) { background:#cfe5f5; background:#d3e4f1; background:#B9CDE6}
.eqheightcols.gradientcols .row > div:nth-of-type(3n) { background:#c5dced; background:#A8BFDC}

.eqheightcols h3 { font-size:1.5rem;}

@media (min-width: 768px) and (max-width: 1200px){
.eqheightcols h3 { font-size:1.4rem;}
.eqheightcols ul {padding-left: 20px;}
}

ul.headingoutdentlist { list-style:none;  margin-left:0;}
ul.headingoutdentlist > li  { margin-bottom:1em; }
ul.headingoutdentlist > li > strong {padding-right:10px; min-width:120px; }
ul.headingoutdentlist.centerheadings > li > strong { text-align:center;}

ul.headingoutdentlist.imageoutdent > li > strong {min-width:70px; width:70px; }
.headingoutdentlist > li > strong img { width:50px; height:50px;}
ul.headingoutdentlist.centerheadings > li > strong img{  width:70px; height:70px; margin:auto; display:block;}

@media screen and (max-width: 599px) {
	ul.headingoutdentlist > li > strong { display:block; }
	.headingoutdentlist.innerborders > li { padding-top:1.5em; padding-bottom:1.5em; border-bottom: 1px solid #999; }
	#content .headingoutdentlist.innerborders > li { padding-bottom:1.5em; }
	.headingoutdentlist.innerborders > li:first-child  { border-top: 1px solid #999; }

	.headingoutdentlist.imageoutdent > li > strong img { width:40px; height:40px;}
	.headingoutdentlist.imageoutdent {display: table; }
	.headingoutdentlist.imageoutdent > li {  display: table-row; }
	.headingoutdentlist.imageoutdent > li > strong,
	.headingoutdentlist.imageoutdent > li > .list-cell {  display: table-cell; padding: 0 0 1em 0; vertical-align:top; }
	ul.headingoutdentlist.imageoutdent > li > strong {min-width:50px; width:50px;  }

}

@media screen and (min-width: 600px) {
	.headingoutdentlist {display: table; }
	.headingoutdentlist > li {  display: table-row; }
	.headingoutdentlist > li > strong,
	.headingoutdentlist > li > .list-cell {  display: table-cell; padding: 0 0 1em 0; vertical-align:top; }
	
	.headingoutdentlist > li > strong {width: 25%; min-width: 200px; padding-right:20px; }
	
	.headingoutdentlist.innerborders > li > strong,  
	.headingoutdentlist.innerborders > li > .list-cell { padding-top:1.5em; padding-bottom:1.5em; border-bottom: 1px solid #999; }
	.headingoutdentlist.innerborders > li:first-child > strong,  
	.headingoutdentlist.innerborders > li:first-child > .list-cell { border-top: 1px solid #999; }

	.headingoutdentlist.imageoutdent > li > strong,
	.headingoutdentlist.imageoutdent > li > .list-cell { padding: 0 0 0.75em 0; vertical-align:middle; line-height:1.4em; }
}

@media screen and (min-width: 600px) and (max-width: 959px){
	.headingoutdentlist > li > strong img { display: block}
}



.trib-icon_rows { }
.trib-icon_rows h2, .trib-icon_rows h3, .trib-icon_rows h4 { margin-top:0;}

.row.trib-txtimg-row { justify-content: center; margin-bottom:1rem;}
.col.trib-txtimg-icon {}
.col.trib-txtimg-content {}

.col.trib-fixed-width img.trib-txtimg-icon { margin-top:8px;}

@media screen and (max-width: 420px){  
	.col.trib-txtimg-content h3 { text-align:center;}  
	.col.trib-txtimg-content{ flex: 0 0 100%;}	
	.trib-icon_rows .islet.light.alignright.trib-extruderight.trib-ml-120px { margin-left:0;}
} 
@media screen and (min-width: 1000px){ .trib-extrudingcontent .trib-icon_rows .row { margin-left:0; margin-right:0;} /* otherwise floating div affects alignment*/ }


.trib-extrudingcontent img.alignleft,
.trib-extrudingcontent h3 img{ width:100px; height:auto;}

@media screen and (max-width: 1000px){ 
.alignright.trib-extruderight { margin-left:0; margin-bottom:1rem; display:block; float:none; }
.trib-icon_rows .alignright.trib-extruderight.trib-ml-120px { margin-left:120px;}
.alignleft.trib-extrudeleft { margin-right:0; margin-bottom:1rem;  display:block; float:none; }
}

@media screen and (min-width: 1000px){ 
.alignright.trib-extruderight { margin-right: -200px; max-width: 500px; margin-bottom:1rem; width:50%; }
.alignleft.trib-extrudeleft { margin-left: -200px; max-width: 500px; margin-bottom:1rem; width:50%; }

h3 + .alignright.extruderight, h3 + .alignleft.extrudeleft { margin-top: -3rem; }

.trib-extrudingcontent h3 { clear:left;}
.trib-extrudingcontent.trib-extrudingright h3,
.trib-extrudingcontent.trib-extrudingright p { margin-right: 10%;}
.trib-extrudingcontent.trib-extrudingright .alignright.trib-extruderight { max-width: 500px; margin-bottom:1rem; width:50%; margin-right:-80px;}

}



.sectionextrude .featured-image-banner img { max-width:300px; margin:auto; background: #fff9; padding: 10px;}

@media screen and (max-width: 639px){ 
.sectionextrude .headingquote { font-weight:bold; font-weight:600; color:#5c75b0; color:#466bc5; font-size:1.1rem;}
.sectionextrude .calloutblock-right, .sectionextrude .calloutblock-left { background:#f3f3f3; margin: 0 0 1em 0;}
.sectionextrude ul.checklist {margin-left: 25px;}
.sectionextrude ul.checklist li:before { margin: 0 5px 0 -25px; color:#339933; width: 20px; font-size:1rem; }
.sectionextrude .island { padding: 20px;}

.sectionextrude .main-content h2 { margin: 2em 0 0.5em; }
.sectionextrude .headingquote { margin-bottom:1em;}
}

@media screen and (min-width: 640px){
	.sectionextrude img.alignright { margin-left: 1.5rem;}
	.sectionextrude img.alignleft { margin-right: 1.5rem;}
	.sectionextrude img.clientlogo { max-width:180px; float:left; margin: 0 1.5em 2em 0;  }
}
@media screen and (min-width: 768px){
	.sectionextrude img.clientlogo { max-width:250px;}
	.sectionextrude img.alignright { margin-left: 2rem;}
	.sectionextrude img.alignleft { margin-right: 2rem;}
	.sectionextrude .headingquote { font-size:1.15rem; }

	.sectionextrude .main-content { margin: 0 150px 0 30px; padding: 0 0 0 30px; border-left: 0px solid #ccc;}
	.sectionextrude .main-content h2, .sectionextrude .main-content .headingquote { margin-left: -60px; }

	.sectionextrude .calloutblock-right, .sectionextrude .calloutblock-left { width:40%; max-width: 400px; font-size:1rem; margin: 0 0 1.5em 0; }
	.sectionextrude .calloutblock-right { float: right; margin-left: 2.5em; }
	.sectionextrude .calloutblock-left { float: left; margin-right: 2.5em; }
	.sectionextrude .calloutblock-right, .sectionextrude .calloutblock-left, .sectionextrude img.alignright, .sectionextrude img.alignleft { width:65%; max-width: 500px;}

	.sectionextrude .main-content .calloutblock-right, .sectionextrude .main-content .img-right{ margin-right: -150px;}
	.sectionextrude .main-content -left, .sectionextrude .main-content .img-left{ margin-left: 0;}

/* adjusts above to add border */
	.sectionextrude.pborder .main-content { padding-left:0; }
	.sectionextrude.pborder .main-content > p{ border-left: 1px solid #ccc; margin-bottom:0; padding-top:1.75rem; padding-left:30px; text-align:justify;}
	.sectionextrude.pborder .main-content > ul{ border-left: 1px solid #ccc; margin-bottom:0; padding-top:1rem; padding-left:60px; margin-left:0; text-align:left;}
	.sectionextrude.pborder .main-content h2, .sectionextrude.pborder .main-content .headingquote { margin-left: -30px; }
	.sectionextrude.pborder .main-content > p.headingquote { border:none; padding:0; margin-bottom:1.5em; text-align:left;}
	.sectionextrude.pborder .main-content p.headingquote + p, 
	.sectionextrude.pborder .main-content h2 + p, 
	.sectionextrude.pborder .main-content p.headingquote + p { padding-top:0;}
	.sectionextrude.pborder .main-content .calloutblock-right, .sectionextrude.pborder .main-content .calloutblock-left { margin-top: 1.75rem;}
}

@media screen and (min-width: 1024px){
	.sectionextrude .page-intro { font-size: 1.2rem; }
	.sectionextrude .island { padding: 30px;}
	.sectionextrude img.alignright { margin-left: 2.5rem;}
	.sectionextrude img.alignleft { margin-right: 2.5rem;}

	.sectionextrude .calloutblock-right, .sectionextrude .calloutblock-left { width:40%; max-width: 400px;font-size:1.1rem;  }
	.sectionextrude .calloutblock-right { float: right; margin-left: 2.5em; }
	.sectionextrude .calloutblock-left { float: left; margin-right: 2.5em; }
	.sectionextrude .calloutblock-right, .sectionextrude .calloutblock-left, .sectionextrude img.alignright, .sectionextrude img.alignleft { width:70%; max-width: 500px;}
	.sectionextrude .main-content { margin: 0 180px 0 80px; padding: 0 0 0 40px; border-left: 0px solid #ccc;}
	.sectionextrude .main-content h2, .sectionextrude .main-content .headingquote { margin-left: -120px; }
	.sectionextrude .main-content .calloutblock-right, .sectionextrude .main-content .img-right{ margin-right: -180px;}
	.sectionextrude .main-content -left, .sectionextrude .main-content .img-left{ margin-left: 0;}

/* adjusts above to add border */
	.sectionextrude.pborder .main-content { padding-left:0; }
	.sectionextrude.pborder .main-content > p{ padding-left:40px;}
	.sectionextrude.pborder .main-content h2, .sectionextrude .main-content .headingquote { margin-left: -40px; }
}
@media screen and (min-width: 1200px){

	.sectionextrude .main-content { margin: 0 220px 0 80px; padding: 0 0 0 40px; border-left: 0px solid #ccc;}
	.sectionextrude .main-content h2, .sectionextrude .main-content .headingquote { margin-left: -120px; }
	.sectionextrude .main-content .calloutblock-right, .sectionextrude .main-content .img-right{ margin-right: -220px;}

/* adjusts above to add border */
	.sectionextrude.pborder .main-content { padding-left:0; }
}
.sectionextrude blockquote { padding:0 10%; text-align:center; font-size:1.2em; font-weight:600; color:#2f4781; font-style:italic; }


/* to fix strange indent when extruding row*/
/*
.container-fluid.trib-icon_rows { padding-left:0;}
.container-fluid.trib-icon_rows .row.trib-txtimg-row{ margin-left:0;}
*/





.cta_blocks { margin: 3rem 0 ; }
.home .cta_blocks { margin: 0 0 4rem;}

a.gridblock {
	color: #FFF;
	display: block;
	padding: 0;
	margin: 0 0 1em 0;
	width: 100%;
	max-width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	transition: 0.3s all ease;
}

.gridblock .gridblock-content {
	text-align: center;
	margin: 0; 	padding: 10px 5%;
	width: 100%;
	max-width: 100%;
	background: rgba(0, 0, 0, 0.25);
	display: flex; align-content: center; align-items: center; justify-content: center; flex-direction: column;
	transition: 0.3s all ease;
	height: 300px;
}
@media (max-width: 575.999px) { .gridblock .gridblock-content {height: auto; min-height: 200px; }}

.gridblock p, 
.gridblock h2,
.gridblock h3 { color: #FFF; font-weight:600; text-shadow: 0 0 1px #666, 0 0 10px #000, 0 0 50px #000; }
/*.gridblock p { margin-bottom: 0; }*/
.gridblock-content :last-child { margin-bottom: 0; }

.gridblock h2 { font-size: 2.5rem; }
.gridblock h3 { font-size: 1.8rem; }
.gridblock h2, .gridblock h3 { text-transform: uppercase; margin-top: 0; }
.gridblock p { font-size: 1.4rem; }

.gridblock-content .homeblockdesc p { font-size:1em; line-height:1.3em; display:none;}

.gridblock p i.fa {
	background: #FFF;
	color: #333;
	text-align: center; /*vertical-align:middle;*/
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
	display: inline-block;
	margin: 0 0 0 3px;
	padding: 1px 0 0 1px;
	font-size: 24px;
	line-height: 24px;
	font-weight:normal;
	height: 26px;
	width: 26px;
}

.gridblock:hover  { text-decoration:none;}
.gridblock:hover .gridblock-content { color: #EEE; background: rgba(0, 0, 0, 0.1); text-decoration:none;}


.gridblock.overlay-light .gridblock-content { background: rgba(0, 0, 0, 0.15); }
.gridblock.overlay-light:hover .gridblock-content { background: rgba(0, 0, 0, 0.25); background: rgba(0, 0, 0, 0); }


.cta_blocks .gridblock .gridblock-content {	background: rgba(0, 0, 0, 0.35); }
.cta_blocks .gridblock:hover .gridblock-content { background: rgba(0, 0, 0, 0.25);}





/**************************************************************************************************/
a.gridblock.trib-imgbackcoverzoom,
.trib-imgbackcoverzoom {overflow:hidden;  transition: all 0.5s ease-in-out; position:relative;}
a.gridblock.trib-imgbackcoverzoom > div,
.trib-imgbackcoverzoom > div { position:relative;}
a.gridblock.trib-imgbackcoverzoom::before,
.trib-imgbackcoverzoom::before {   content:"";  position:absolute; top:0;right:0;bottom:0;left:0;  background:inherit;  transition:inherit;}
a.gridblock.trib-imgbackcoverzoom:hover::before,
.trib-imgbackcoverzoom:hover::before {   transform: scale(1.05);}

.gridblock.trib-imgbackcoverzoom.trib-square .gridblock-content,
.gridblock.trib-imgbackcoverzoom.trib-34block .gridblock-content { height:100%; }

p.before-heading-cattype { display: block; color: #FFF; margin: 0.25rem 0px; font-size:1.4em; border-bottom: 1px solid #fff; text-transform:none; }
p.before-heading-summary { display: block; color: #FFF; margin:10px 0 0; font-size:1.1em; line-height:1.1em;}

.before-heading-cattype + h2, .before-heading-cattype + h3, .before-heading-cattype + h4, .before-heading-cattype + h5,
.before-heading-summary + h2, .before-heading-summary + h3, .before-heading-summary + h4, .before-heading-summary + h5 {
	font-weight: 600; margin: 0.25rem 0px; text-transform:uppercase;
}
@media screen and (min-width: 1200px){ 
.gridblock p.before-heading-cattype { font-size:1.6em;}
.gridblock .before-heading-cattype + h2 { font-size:2.8em;}
}




.trib-fullheight { display: flex; align-items: stretch; width: auto; }
/*
.trib-grid {
  display: grid;
  grid-template-columns: repeat( auto-fit, minmax(300px, 1fr) );
   grid-template-columns: repeat( 3, 1fr); 
  grid-gap: 2rem;
}

.trib-gridsize-4 {grid-template-columns: repeat( auto-fit, minmax(200px, 1fr) ); }
.trib-gridsize-3 { }
.trib-gridsize-2 {grid-template-columns: repeat( auto-fit, minmax(700px, 1fr) ); }


.trib-gridsize-4 {grid-template-columns: repeat( 4, 1fr); }
.trib-gridsize-3 { grid-template-columns: repeat( 3, 1fr); }
.trib-gridsize-2 {grid-template-columns: repeat( 2, 1fr); }

@media screen and (max-width: 1000px){  
.trib-gridsize-4 {grid-template-columns: repeat( 3, 1fr); }
}

@media screen and (max-width: 850px){  
.trib-gridsize-3 {grid-template-columns: repeat( 2, 1fr); }
}

@media screen and (max-width: 767px){  
.trib-grid {grid-template-columns: repeat( 2, 1fr); }
.trib-gridsize-4 {grid-template-columns: repeat( 3, 1fr); }
.trib-gridsize-3 { grid-template-columns: repeat( 2, 1fr); }
.trib-gridsize-2 {grid-template-columns: repeat( 2, 1fr); }
}
@media screen and (max-width: 700px){  
.trib-gridsize-2 {grid-template-columns: repeat( 1, 1fr); }
.trib-gridsize-4 {grid-template-columns: repeat( 2, 1fr); }
}
@media screen and (max-width: 500px){  
.trib-grid {grid-template-columns: 1fr; }
.trib-gridsize-3 { grid-template-columns: 1fr; }
}
@media screen and (max-width: 320px){  
.trib-gridsize-4 {grid-template-columns: repeat( 1, 1fr); }
}
/* container for cell content * /
.trib-grid > div,
.trib-grid > .trib-grid-cell { 
	display: flex; align-items: stretch; justify-content: center; text-align: center;
	width:100%;
	background-repeat: no-repeat; background-size: cover; background-position: center center; transition: 0.3s all ease; 
}

/* cell content * /
.trib-grid > div > div,
.trib-grid > .trib-grid-cell > div,
.trib-cell-content { display: flex; width:100%; padding: 5%; }
.tr-flexcols { display: flex; flex-direction: column;}

.trib-cell-content.tr-flexcenter,
.trib-center-content {display: flex; align-items: center; justify-content: center; text-align: center;}

.trib-content-overlay > div,
.trib-overlay {	background: rgba(0, 0, 0, 0.4); width:100%; }
.trib-content-overlay:hover > div,
.trib-overlay:hover { background: rgba(0, 0, 0, 0.55);}

.trib-content-overlay, .trib-content-overlay p, .trib-content-overlay h1, .trib-content-overlay h2, .trib-content-overlay h3, .trib-content-overlay h5, .trib-content-overlay h5,
.trib-overlay, .trib-overlay p, .trib-overlay h1, .trib-overlay h2, .trib-overlay h3, .trib-overlay h5, .trib-overlay h5 {	color:#FFF; text-shadow:0px 0px 20px #000, 0px 0px 10px #000; font-weight: 500; margin: 0.25rem 0px; }

.trib-content-overlay.overlay-light > div,
.trib-overlay.overlay-light { background: rgba(0, 0, 0, 0.25); width:100%; color:#000; }
.trib-content-overlay.overlay-light:hover > div,
.trib-overlay.overlay-light:hover { background: rgba(0, 0, 0, 0.4); }

.trib-content-overlay.overlay-dark > div,
.trib-overlay.overlay-dark {	background: rgba(0, 0, 0, 0.5); width:100%; }
.trib-content-overlay.overlay-dark:hover > div,
.trib-overlay.overlay-dark:hover { background: rgba(0, 0, 0, 0.4);}

*/
.trib-square { 	display: flex; aspect-ratio: 1 / 1; /* a square ratio */ }
.trib-34block { 	display: flex; aspect-ratio: 1 / 0.75; /* height is 3/4 of the width */ }

.trib-fixed-width  {flex-grow: 0; flex-shrink: 0; flex-basis: 100px;} /* override flex-basis to change size */
.trib-fixed-width-100 {flex: 0 0 100px;} 
.trib-fixed-width-150 {flex: 0 0 150px;} 
.trib-fixed-width-200 {flex: 0 0 200px;} 
.trib-fixed-width-300 {flex: 0 0 300px;} 



.h-100.d-flex.justify-content-center.flex-column > *:first-child { margin-top:0; padding-top:0;}
.h-100.d-flex.justify-content-center.flex-column > *:last-child  { margin-bottom:0; padding-bottom:0;}



.trib-squareblocks a.gridblock { position:relative; height:0; padding-bottom: 100%; }
.trib-squareblocks .gridblock .gridblock-content { position: absolute; height:auto; top: 0; left: 0; right: 0; bottom: 0;}
@media screen and (min-width: 768px){ 
.trib-squareblocks-tabdesk a.gridblock { position:relative; height:0; padding-bottom: 100%; }
.trib-squareblocks-tabdesk .gridblock .gridblock-content { position: absolute; height:auto; top: 0; left: 0; right: 0; bottom: 0;}
}













/*

table {}
th, td { padding: 6px 10px;}
th:first-of-type, td:first-of-type { padding-left: 0px;}
th:last-of-type, td:last-of-type { padding-right: 0px;}
th p, td p { margin:0; padding:0;}
table th h4 {margin:0 0 10px;}

table.borderrows tr{ border-bottom: 1px solid #eee;}

table.striperows tr{ background:#f7f7f7;}
table.striperows tr:first-of-type{ background:none;}
table.striperows tr:nth-of-type(even){ background:#ededed;}
table.striperows th, table.striperows td { padding: 8px 10px;}
table.striperows th:first-of-type, table.striperows td:first-of-type { padding-left: 10px;}
table.striperows th:last-of-type, table.striperows td:last-of-type { padding-right: 10px;}

table.collast-right th:last-of-type, table.collast-right td:last-of-type { text-align:right;}




.video-container {
	position: relative;
	padding-bottom: 52.5%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin-bottom:30px;
}

.video-container iframe,  
.video-container object,  
.video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


*/