
body{
	font-size: 16px;
	font-family: "Open Sans";
	background-color: #FFF;
	}
ul li {margin: 10px 0;}
a, a:hover, a:visited, 
.media-heading a,
a.list-group-item, 
button.list-group-item {
	color: #004f7b;
	}
.btn-primary {
	color:#fff;
	background-color: #004f7b;
	border-color: #004f7b;
}
.btn-primary a, a.btn-primary {
	color:#fff;
}
.btn-primary:hover, 
.btn-primary:active,  
.btn-primary:focus {
	color:#fff;
	background-color: #004f7b;
	border-color: #004f7b;
}

.btn-primary a:hover {
	color:#fff;
} 
.btn-white {
	color:#004f7b; 
	background-color: #fff; 
	border-color: #fff; 
}
.btn-white:hover {
	color:#004f7b; 
	background-color: #ccc; 
	border-color: #ccc; 
}
.primary {color: #004f7b;}
.secondary {color: #b63325}
hr {
	border-top: 3px solid rgba(0,0,0,.1);
}

.modal-content {
	border-radius: unset;
}
.modal-header {
	background-color: #004f7b;
	color: #FFF;
	border-radius: unset;
}
.modal-header .close {
	text-shadow: none;
	opacity: 1;
	color: #FFF;
}

/*******************************************
Header and Footer Section
*******************************************/

#header {
	/*max-width: 1170px; */
	margin: 0 auto;
}

#header .breadcrumb {
    border-radius: 0;
	margin-top: 10px;
	font-size: 14px;
    padding: 10px 15px;
}

#header .breadcrumb a {
	color:#333333; 
}

#header .breadcrumb .current {
	font-weight: bold;
	color:#004f7b; 
}

.section-banner {
	margin: 15px 0;
}

.town-banner {
	padding: 0 10px;
    align-items: center;
}
.town-name {
	font-weight: bold;
	font-size: 52px;
	color: #004f7b;
    display: inline;
	margin-right: 15px;
}
.town-name a {
	color: #004f7b;
}
.change-town {
	margin-left: 5px;
    margin-bottom: -16px;
	font-size: 14px;
}
.list-state { 
	padding-left: 0; 
	list-style: none; 
	margin: 0 10px;
}
.list-state li {
    margin: 5px 0;
}

.top-menu {
	padding: 3px 20px 7px;
	text-align: right;
	background-color: #004f7b; 
	text-align: right;
}

.top-menu .change-state-link {
	color: #FFF;
	font-size: 14px;
}

.site-banner {
	background: url(https://p300-americantownscom.netdna-ssl.com/img/bts/header-flag-bg.jpg);
	background-position: center;
	background-size: cover;
	text-align: center; 
	padding: 10px;
	margin-bottom: 10px;
}
.site-banner img.state-banner {
	max-width: 728px; 
	width: 100%;
	padding: 20px 10px;
}

footer {
	margin-top: 30px;
	background-color: #CCC; 
	padding: 30px 0;
	color: #FFF;
}
footer .container a {
	color: #004f7b;
}
footer .copyright strong {
	color: #004f7b;
	margin-left: 15px;
}
footer .container p {
    margin: 10px 0;
}

.select-a-town {
	background-color: #004f7b; 
	padding: 15px 0;
	margin: 15px 0;
	color: #FFF;
	text-align: center;
	font-weight: bold;
	font-size: 22px;
}

.select-a-town a {
	color: #FFF;
	text-decoration: underline;
}

.state-towns {
	padding: 15px;
}
.state-towns .county {
	font-weight: bold;
	color: #b63325;
	cursor: pointer;
}

.county-wrapper .towns {
	display:none;
}
.county-wrapper.show .towns {
	display:unset;
}
.county-wrapper .arrow {
	float: right;
}
.county-wrapper.show .arrow:before {
    content: "\f077";
}


/*******************************************
General
*******************************************/

.modulemodule {
	margin-top: 15px;
	margin-bottom: 15px;
}

.row.narrow, .row.twoColumn {
    margin-right: -8px;
    margin-left: -8px;
}

.row.narrow > div {
	padding: 0 8px;
}
.row.twoColumn > div {
	padding: 0 8px;
}

.box {
	margin-bottom: 20px;
}

.box .header {
	color: #FFF;
	background-color: #b63325;
	padding: 10px 20px;
	font-size: 22px;
	border-bottom: 5px solid #004f7b;
	margin-bottom: 15px;
}

.module {margin-bottom: 15px;}

.link-more, .link-more:visited {
	color: #b63325;
}
.see-all {
	font-weight: bold;
	font-size: 22px;
	display: block;
	color: #004f7b !important;
	text-decoration: underline !important;
	text-transform: capitalize;
}
.emphasis {
	font-weight: bold;
	color: #004f7b;
	font-size: 20px;
}

.social-share {
	display: flex;
    align-items: flex-end;
    column-gap: 5px;
	margin-top: 15px;
}
.social-like-share {
	margin-top: 15px;
	margin-left: -8px;
}

.ad-space {
	font-size: 10px;
    background-color: #EEE;
    display: inline;
    padding: 2px 10px;
    border: 1px solid #ddd;
    color: #666;
}

/*******************************************
Featured Section
*******************************************/

.featured {
	background-color: #004f7b;
	color: #FFF;
}
.featured .row {
	height: 100%;
}
.featured .row .image-col {
	height: 100%;
}
.featured a {
	color: #FFF;
}
.featured .body {
	padding: 20px;
}
.featured .body .summary {
	margin: 12px 0;
}
.featured .body h2 {
	font-weight: bold;
	font-size: 26px;
}
.featured .body .article-title {
	margin: 0;
	color: #97b7ca;
	font-weight: normal;
	font-size: 22px;
}
.featured .body .article-title a {
	color: #97b7ca;
}
.featured .separator {
	border-bottom: 2px solid #FFF;
    max-width: 50%;
    margin: 10px 0;
}
.featured .body .featuring {
	color: #97b7ca;
	font-style: italic;
	font-size: 22px;
}
.featured .body .location-name {
	font-weight: bold;
	margin: 5px 0;
}

.featured-list .item {
	border-bottom: 2px solid #e9ecef;
}
.media-listing .media {
	border-bottom: 2px solid #e9ecef;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.media-listing .image {
	margin-bottom: 15px;
}

.featured-list .title {
	font-weight: bold;
	margin: 0;
}
.featured-list .featured-on {
	color: #004f7b;
}
.featured-list .featured-on a {
	font-style: italic;
}

.featured-list .summary {
	margin: 8px 0;
}

.featured-list .location-name {
	font-weight: bold;
	margin: 0;
	font-size: 30px;
}

.featured-list .image {
	margin-top: 8px;
}

.featured .image {
	background-color: #CCC;
	height: 100%;
	background-size: cover;
	background-position: center;
	min-height: 300px;
}

.featured .link-more {
	font-weight: bold;
	color: #FFF;
}

.owl-theme .owl-nav.disabled + .owl-dots {
	position: absolute;
    bottom: 0;
    width: 100%;
    margin-bottom: 5px;
}

.places .title {
	font-weight: bold;
}
.places .location {
	font-size: 14px;
	margin-bottom: 5px;
}

#changeTown .modal-footer form {
	column-gap: 10px;
}

.ui-widget.ui-widget-content {
	z-index: 1100;
}


/*******************************************
Event Guest Module
*******************************************/
.event-guest .media-listing .media {
	border-bottom: 2px solid #e9ecef;
	padding: 0 0 10px;
}

.event-guest .date {
	color: #004f7b;
	text-align: center;
    font-weight: bold;
	padding: 2px 20px;
}

.event-guest .media {
	margin: 10px 0;
}

.event-guest .media-heading {
	font-weight: bold;
	margin-bottom: 5px;
}

.event-guest .date .month {
	font-size: 20px;
    line-height: 1;
	text-transform: uppercase;
}

.event-guest .date .day {
	font-size: 38px;
    line-height: .8;
}

.event-guest .time {
	line-height: 1;
}


/*******************************************
Detail Pages
*******************************************/

.detail {
	margin-bottom: 20px;
}

.detail .title {
	font-size: 48px;
	font-weight: bold;
}

.detail .author-name {
	color: #b63325;
	font-weight: bold;
}

.detail .image {
	margin-top: 15px;
}

.section-title {
	font-weight: bold;
	margin: 30px 0 15px;
}
.section-title a {
	color: #004f7b;
}

.place-view .image {
	max-width: 300px;
    padding-right: 20px;
    margin: 0;
}
.place-view .media {
	margin-top: 15px;
}

.page-place-detail .detail-map {
	margin-top: 32px;
}

.page-event-detail .detail-map {
	margin-top: 10px;
}

/*******************************************
Geo Search
*******************************************/

.search-by-geo-container .box > .header {
	display: none;
}


/*******************************************
Responsive Adjustments
*******************************************/


/* xs */
@media screen and (max-width:575.98px) {

	.content.container {
		padding-left: 25px;
		padding-right: 25px;
	}

	.box, .section-banner {
		margin-bottom: 25px;
	}

	.media.responsive {
		display: block;
	}
	.media.responsive .image {
		max-width: 100%;
		padding: 0;
	}

	.detail .title {
		font-size: 32px;
	}

}

/* sm */
@media screen and (max-width:767.98px) {

}

/* md */
@media screen and (max-width:991.98px) {

}

/* lg */
@media screen and (max-width:1199.98px) {

}

/* sm + */
@media (min-width: 576px) {

	.card-columns {
		column-count: 2;
	}


}

/* md + */
@media (min-width: 768px) {

	ul.grid-3 { display: grid; grid-column-gap:1em; grid-auto-flow: row; grid-template-columns: repeat(2, 1fr);}

	.featured .image {
		min-height: 350px;
	}

}

/* lg + */
@media (min-width: 992px) {

	.card-columns {
		column-count: 3;
	}

	.featured {
		height: 350px;
	}
	.featured .row .image-col {
		padding-left: 0;
	}
}


/* xl + */
@media (min-width: 1200px) {

	ul.grid-2 { display: grid; grid-column-gap:1em; grid-auto-flow: row; grid-template-columns: repeat(2, 1fr);}
	ul.grid-2-3 { display: grid; grid-column-gap:1em; grid-auto-flow: column; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(3, 1fr);}
	ul.grid-2-4 { display: grid; grid-column-gap:1em; grid-auto-flow: column; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(4, 1fr);}
	ul.grid-2-5 { display: grid; grid-column-gap:1em; grid-auto-flow: column; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(5, 1fr); }
	ul.grid-3 { display: grid; grid-column-gap:1em; grid-auto-flow: row; grid-template-columns: repeat(3, 1fr);}

	.featured .body h2 {
		font-size: 32px;
	}

	.card-columns {
		column-count: 4;
	}

   
}
