body {
font-family:Roboto;
margin:0px;
background-color:#f2f2f2;
}
.content-center {
	margin:0px auto;
	width:100%;
	max-width:1000px;
	min-width:500px;
}
.clear {
	clear:both;
	display:block;
}
#topbar .error {
	text-align:center;
	font-weight:bold;
	background-color:#d2adad;
	color:#4a0000;
}
#topbar .error p {
	padding:10px;
	margin:0px;
}
table {
width:100%;
}
table tr:nth-child(even) {
  background-color: #f2f2f2;
}
table tr {
padding:10px 0px 10px 0px;

}
table td {
padding:10px 15px 10px 15px;
}
#topbar {
	background-color:#313a56;
	color:#FFF;
}
#topbar .logo {
	display:inline-block;
	float:left;
	font-size:30px;
	padding:0px 0px 0px 0px;
	color:#c9c9c9;
	margin-top:-10px;
	margin-bottom:0px;
}
#topbar .logo b {
	color:#FFF;
}
#topbar .logo span {
	font-size:15px;
	display:inline-block;
	color:#FFF;
}
#topbar ul#navigation {
	display:inline-block;
	width:100%;
	list-style:none;
	margin:0px;
	float:right;
	padding:20px 0px 12px 0px;
}
#topbar ul#navigation li {
	display:inline-block;
	font-weight:bold;
}
#topbar ul#navigation li.ulogo {
	
	padding:0px 0px 0px 0px;
}
#topbar ul#navigation li.ulogo a {
	padding:10px 0px 0px 10px;
}
#topbar ul#navigation li.ulogo a:hover {
	background:transparent;
}
#topbar ul#navigation li a {
	text-decoration:none;
	color:#FFF;
	padding:20px 10px 20px 10px;
}
#topbar ul#navigation li a:hover {
	background-color:#000;
}
#topbar ul#navigation li.right {
	float:right;
}
#topbar ul#navigation li a.addlisting {
	background-color:#dc8c35;
}
#topbar ul#navigation li a.addListing:hover {
	background-color:#000;
}
iframe.mapframe {
	width:100%;
	height:83%;
}
#bannersearch {
	width:100%;
	height:70%;
	max-height:670px;
	background: url(banner.jpg) no-repeat center center fixed; 
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	text-align:center;
	color:#FFF;
	text-shadow: 0px 0px 15px #000;
	padding:130px 0px 0px 0px;
	border-bottom:5px solid #000;
}
#bannersearch a {
	color:#FFF;
	
}
#bannersearch a:hover {
	color:#000;
}
#bannersearch .content-center {
	background: rgba(52,52,52, 0.5);
	padding:35px 35px 35px 35px;
}
#bannersearch h1 {
	margin:0px;
	font-size:70px;
	padding:0px 0px 10px 0px;
	border-bottom:5px solid #FFF;
}
#bannersearch h1 span {
	font-weight:normal;
	color:#c9c9c9;
}
#bannersearch form {
	margin:auto;
	background: rgba(49, 58, 86, 1.0);
	padding:30px 30px 30px 30px;
}

#bannersearch form input[type=text], #bannersearch form select, #bannersearch form input[type=submit] {
	padding:10px 10px 10px 10px;
	font-family:Roboto;
	margin:auto;
}
#bannersearch form input[type=text] {
	width:300px;
}
#bannersearch form select {
	width:150px;
}
#bannersearch form input[type=submit] {
	
}
#featuredlistings, #recentlistings {
	
}
#featuredlistings .listings, #recentlistings .listings, #featuredcatagories .listings {
	width:210px;
	border:1px solid #e1e1e1;
	display:inline-block;
	padding:15px 15px 15px 15px;
	float:left;
	margin:8px 8px 8px 8px;
}
#listingbanner {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
	display:block;
	margin:-20px -20px 20px -20px;
	padding-top:20px;
}
#listingbanner p.breadcrumbs {
	opacity:0.6;
	margin:20px 20px;
	text-align:center;
	
}
#listingbanner p.breadcrumbs:hover {
	opacity:1.0;
}
#listingbanner .shadowbox {
	min-height:350px;
	color:#FFF;
}
#listingbanner h1 {
	color:#FFF;
	padding:10px 10px 10px 0px;
	font-size:35px;
	margin:0px;
}
#listingbanner .tags {
	display:block;
	border-top:4px solid #FFF;
	margin:10px;
	padding:20px 0px;
}
.listing_info {
	display:block;
	text-align:center;
}
.listinglogo {
	background:url(noimage.png);
	width:220px;
	height:220px;
	display:block;
  background-repeat: no-repeat;  
  background-position: 0% 0%;
  background-size: 100% 100%;
  border:1px solid #e1e1e1;
  justify-content: center;
  display: flex;
	
}
.listings .listinglogo img {
	height:100%;
	margin:auto;
}
#listingbanner .listinglogo {
	margin:auto;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
	border-radius:50%;
}
.shadowbox {
	
	background-image: linear-gradient(to bottom, rgba(255,0,0,0), rgba(50,50,50,1));
    text-shadow: 0px 0px 8px #000000;
}
.listings {
	text-align:center;
	background-color:#FFF;
}

.listings p.title {
	font-weight:bold;
	border-bottom:1px solid #e1e1e1;
	padding:0px 0px 15px 0px;
}
.listings p.title a {
	color:#313a56;
	text-decoration:none;
}
.listings p.title a:hover {
	color:#66708e;
	text-decoration:underline;
}
.listings p.linktags {
	font-weight:bold;
}
.listings p.linktags a {
	display:block;
	color:#FFF;
	background-color:#313a56;
	padding:10px 10px 10px 10px;
	text-decoration:none;
}
.listings p.linktags a:hover {
	background-color:#66708e;
}
.content-center h3 {
	padding:10px 10px 10px 10px;
	color:#313a56;
	border-bottom:2px solid #313a56;
}
.content-center h3 span {

}
.content-center h3 span a {
	background-color:#313a56;
	display:inline-block;
	float:right;
	color:#FFF;
	text-decoration:none;
	padding:14px 12px 14px 12px;
	font-size:14px;
	margin:-10px 0px 0px 5px;
}


.browse-grid {
  list-style: none;
  margin: 0;
  padding: 0;

  display: grid;
  grid-template-columns: repeat(3, 1fr); /* desktop: 3 columns */
  gap: 14px 28px; /* row-gap, col-gap */
}

/* Responsive columns that adapt automatically (alternative) */
/* Replace the fixed 3-col line above with this if you prefer: */
/*
.browse-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px 28px;
}
*/

@media (max-width: 900px) {
  .browse-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .browse-grid {
    grid-template-columns: 1fr;
  }
}

.browse-grid li {
  margin: 0;                /* grid handles spacing */
  padding: 0;
  break-inside: avoid;      /* keeps each item intact if it wraps */
}

.browse-grid a {
  display: block;           /* bigger click target */
  text-decoration: none;
  color: #313a56;
  line-height: 1.25;
}

.browse-grid a:hover,
.browse-grid a:focus {
  text-decoration: underline;
}

.browse-grid i {
  display: block;
  font-size: 13px;
  color: #7b7b7b;
  margin-top: 6px;
}

/* Optional: visually balance multi-line names */
.browse-grid .name {
  display: -webkit-box;
  -webkit-line-clamp: 2;   /* clamp to two lines if long */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.browse-cols li {
  break-inside: avoid;  /* prevent items from splitting awkwardly */
  margin: 8px 0;
}
.content-center h3.browse-head {
  padding:10px;
  color:#313a56;
  border-bottom:2px solid #313a56;
  position:relative;
}
.content-center h3 .tabs { float:right; }
.content-center h3 .tabs .tab-link {
  background-color:#313a56;
  color:#FFF;
  text-decoration:none;
  display:inline-block;
  padding:14px 12px;
  font-size:14px;
  margin:-10px 0 0 5px;
  opacity:.7;
}
.content-center h3 .tabs .tab-link.is-active { opacity:1; }

.browse-wrap { padding-top:14px; }
.tab-panel { display:none; }
.tab-panel.is-active { display:block; }

.cols { display:grid; grid-template-columns: repeat(3, 1fr); gap:24px; }
.browse-list { list-style:none; margin:0; padding:0; }
.browse-list li { margin:10px 0; }
.browse-list a { color:#313a56; text-decoration:none; }
.browse-list i { display:block; font-size:13px; color:#7b7b7b; margin-top:6px; }
@media (max-width: 800px) {
  .cols { grid-template-columns: 1fr; }
}

.content-center h3 span a:hover {
	background-color:#66708e;
}
#foot {
	border-top:5px solid #f7a042;
	background-color:#313a56;
	width:100%;
	color:#FFF;
	text-align:center;
	padding:20px 0px 20px 0px;
}
#foot p {
margin:0px;	
}
#foot p a {
	color:#FFF;
	font-weight:bold;
	text-decoration:none;
}
#foot p a:hover {
	
	text-decoration:underline;
}
#foot p.copyright {
	float:left;
	font-size:15px;
	text-transform:uppercase;
}
#foot ul {
	float:right;
	list-style:none;
	margin:0px;
	padding:0px;
}
#foot ul li {
	display:INLINE-BLOCK;
	padding:0px 0px;
}
#foot ul li a {
	padding:20px 8px;
	color:#FFF;
	font-size:15px;
	text-decoration:none;
}
#foot ul li a:hover {
	background-color:#000;
}
#backToTop{
  position: fixed; right:16px; bottom:16px;
  width:80px; height:80px; border-radius:50%;
  border:0; text-transform:uppercase;
  background:#111; color:#fff; font-size:14px; cursor:pointer;
  opacity:0; pointer-events:none; transition:opacity .2s ease;
  z-index:9999; display:none; /* start fully hidden */
}
#backToTop.show{ opacity:.9; pointer-events:auto; display:block; }
#backToTop:hover, #backToTop:focus{ opacity:1; outline:none; }


.box {
	background-color:#FFF;
	padding:20px 20px 20px 20px;
}
.box h2 {
	margin:0px;
	padding:0px 0px 10px 0px;
}
a.button, .button {
	font-size:1.25em;
	font-family:Roboto;
    padding:9px 12px;
    color:#fff;
    text-decoration:none;
    background-color:#313a56;
    border:none;
	margin:3px 5px;
	display:inline-block;
	font-size:16px;
	font-weight:bold;
	border-radius:3.5px;
}
form.results select {
	width:180px;
}
a.button:hover, .button:hover {
	background-color:#000;
}
a.button.active, .button.active {
	background-color:#FFF;
	border:1px solid #313a56;
	color:#000;
}
.content-right {
}
.content-left {
}
.content-left, .content-right {
	display:inline-block;
	width:48%;
	min-width:330px;
	float:right;
	padding-right:10px;
}
.genform input[type=text],.genform input[type=password],.genform select,.genform textarea{
    width:100%;
    padding:12px;
    border:1px solid #ccc;
    box-sizing:border-box;
    margin-top:2px;
    margin-bottom:16px;
    resize:vertical;
	font-family:Roboto;
}
.genform input[type=submit],.genform input[type=reset]{
    font-size:1.25em;
	font-family:Roboto;
    padding:.5em;
    color:#fff;
    text-decoration:none;
    background-color:#313a56;
    border:none
}
.genform{
    background-color:#f0f0f0;
    padding:1em;
    max-width:1000px
}
.genform span {
	color:#5b5b5b;
	font-size:13px;
	padding-bottom:20px;
	margin-top:-15px;
	display:block;
}
.genform label {
	display:block;
	font-size:15px;
	text-transform:uppercase;
}
.genform p {
	padding:10px 10px 10px 10px;
}
.webworkimage {
	background-color:#FFF;
	border-radius:3px;
	display:block;
	height:50px;
	margin:0px 20px 0px 0px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 50% 50%;	
}
.services-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 15px;
	max-width: 1150px;
	margin: 0 auto;
	padding-bottom:20px;
}
.service-box {
	background: white;
	border-radius: 5px;
	box-shadow: 0 2px 6px rgba(0,0,0,0.1);
	text-align:center;
	display:inline-block;
	position:relative;
	padding-bottom:50px;
    transition: background-color 0.5s ease, color 0.5s ease;
}
.service-box:hover {
	background-color:#d0d0cf;
    transition: background-color 0.5s ease, color 0.5s ease;
}
.service-box h2 {
	margin:0px;
	padding:0px 0px 5px 0px;
}
.service-box h2 a {
	color:#313a56;
	text-decoration:none;
}
.service-box h2 a:hover {
	color:#66708e;
	text-decoration:underline;
}
.service-box p.location {
	font-size:15px;
	font-style:italic;
}
.services-grid .service-box h2 {
	margin:15px 10px 0px 10px;
	font-size:20px;
	display:block;
}
.services-grid .service-box ul {
	float:left;
	text-align:left;
	display:block;
}
.services-grid .service-box ul li {
	
}
.services-grid .service-box h2 span {
	display:block;
	font-size:60px;
	margin:0px 0px 40px 0px;
}
.service-box a.button.block {
	position: absolute;
    bottom: 0;
	left:0;
	right:0;
	text-align:center;
	margin-top:50px;
}
.service-box .webworkimage {
	background-color:#FFF;
	border-radius:3px;
	display:block;
	height:200px;
	margin:5px 5px 0px 5px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 50% 50%;
}
.service-box p.title {
	font-weight:bold;
}
.service-box p {
	margin:4px 10px;
}
.service-box p.location {

	
}
.social-row {
  gap:.5rem;
  display:block;
  margin:5px 0px 10px 0px;
}
.social-row .sm {
  display:inline-flex; align-items:center; gap:.35rem;
  padding:.4rem .6rem; border-radius:999px; text-decoration:none;
  background:#111; color:#fff; font-size:.9rem; line-height:1; margin:auto; font-weight:bold;
  
  text-shadow: 0px 0px 8px transparent;
}
.sm-ico { display:inline-block; width:16px; height:16px; }
.sm svg { display:block; }
.social-row .sm.sm-facebook  { background:#1877F2; }
.social-row .sm.sm-instagram { background:#E4405F; }
.social-row .sm.sm-twitter   { background:#000; }
.social-row .sm.sm-youtube   { background:#FF0000; }
.social-row .sm.sm-tiktok    { background:#111; }
.social-row .sm.sm-linkedin  { background:#0A66C2; }
.social-row .sm.sm-yelp      { background:#AF0606; }
.social-row .sm.sm-website     { background:#555; }   /* neutral gray */
.social-row .sm.sm-menu        { background:#795548; }/* brownish */
.social-row .sm.sm-order       { background:#28a745; }/* green for action */
.social-row .sm.sm-bbb      { background:#0066CC; } /* BBB blue */
.social-row .sm.sm-google { background:#fff; color:#000; border:1px solid #ddd; }
.social-row .sm.sm-pinterest { background:#E60023; }
.social-row .sm.sm-nextdoor { background:#00B246; }




.breadcrumbs {
  border: 1px solid #cbd2d9;
  border-radius: 0.3rem;
  display: inline-flex;
  overflow: hidden;
  margin:0px;
}
.breadcrumbs__item {
  background: #fff;
  color: #333;
  outline: none;
  padding: 0.75em 0.75em 0.75em 1.25em;
  position: relative;
  text-decoration: none;
  transition: background 0.2s linear;
}

.breadcrumbs__item:hover:after,
.breadcrumbs__item:hover {
  background: #edf1f5;
}

.breadcrumbs__item:focus:after,
.breadcrumbs__item:focus,
.breadcrumbs__item.is-active:focus {
  background: #323f4a;
  color: #fff;
}

.breadcrumbs__item:after,
.breadcrumbs__item:before {
  background: white;
  bottom: 0;
  clip-path: polygon(50% 50%, -50% -50%, 0 100%);
  content: "";
  left: 100%;
  position: absolute;
  top: 0;
  transition: background 0.2s linear;
  width: 1em;
  z-index: 1;
}

.breadcrumbs__item:before {
  background: #cbd2d9;
  margin-left: 1px;
}

.breadcrumbs__item:last-child {
  border-right: none;
}

.breadcrumbs__item.is-active {
  background: #edf1f5;
}
.breadcrumbs__item.is-active:hover {
  text-decoration:none;
}