/* ==========================================================================
   Desktop
   ========================================================================== */
@media (min-width: 1020px) {
	#churchBrand{
		display:flex;
		flex-basis:auto;
		flex-direction:column;
		height:80px;
		justify-content:center;
	}
}




/* ==========================================================================
   Mobile & Tablet
   ========================================================================== */
@media (max-width: 1019.9px){

/* ===================
   Navigation
   =================== */
	html,
	body{
		overflow-x:hidden;
	}
	#featured_events .container-fluid,
	#content > .container-fluid,
	#footer_base > .container-fluid {
		padding:0 15px;
	}
	#footer_base #authorLink > span{
		float:none;
	}
	#mainNav{
		padding:0;
		position:relative;
	}
	.church_slogan,
	#main_nav_collapse{
		display:none;
	}
	#navIcons{
		margin-top:0;
	}
	#navIcons div.icons{
		margin-top:125px;
	}
	#mobileMenu{
		background:#fff;
		height:100%;
		overflow-y:auto;
		position:fixed;
		width:280px;
		z-index:0;
	}
	#mobileMenu input{
		border:none;
		-moz-border-radius:15px;
		-webkit-border-radius:15px;
		border-radius:15px;
		font-size:16px;
		line-height:22px;
		margin:10px 0;
		padding:3px 12px;
		width:100%;
	}
	#mobileMenu input:focus{
		background:#f8f8f8;
	}
	#mobileMenuNav,
	#mobileMenuNav ul{
		list-style:none;
		padding:0;
	}
	#mobileMenuNav{
		border-top:1px solid #d0d0d0;
		margin:0 -15px;
		padding:0;
	}
	#mobileMenuNav ul{
		margin:0;
	}
	#mobileMenuNav a{
		border-bottom:1px solid #e9e9e9;
		color:#7c7c7c;
		display:block;
		font-size:16px;
    overflow:hidden;
		padding:14px 15px;
    position:relative;
    text-overflow:ellipsis;
		text-transform:uppercase;
    white-space:nowrap;
	}
  #mobileMenuNav a.isCategory{
    padding-right: 30px;
  }
	#mobileMenuNav ul a{
		background:rgba(255,255,255,0.05);
		padding-left:25px;
	}
	#mobileMenuNav ul ul a{
		background:rgba(255,255,255,0.1);
		padding-left:35px;
	}
	#mobileMenuNav i{
      position:absolute;
      right:15px;
	}
	#mobileMenuNav .active > a > i{
		filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
		-webkit-transform:rotate(90deg);
		-moz-transform:rotate(90deg);
		-ms-transform:rotate(90deg);
		-o-transform:rotate(90deg);
		transform:rotate(90deg);
	}
	#bodyWrapper{
		overflow:hidden;
		position:relative;
		-webkit-transition:-webkit-transform .2s ease-in-out;
		-moz-transition:-moz-transform .2s ease-in-out;
		-ms-transition:-ms-transform .2s ease-in-out;
		-o-transition:-o-transform .2s ease-in-out;
		transition:transform .2s ease-in-out;
		z-index:1;
	}
	#bodyWrapper[data-state="neutral"]{
		-webkit-transform:translateX(0);
		-moz-transform:translateX(0);
		-o-transform:translateX(0);
		transform:translateX(0);
	}
	#bodyWrapper[data-state="slide-right"]{
		-webkit-transform:translateX(280px);
		-moz-transform:translateX(280px);
		-o-transform:translateX(280px);
		transform:translateX(280px);
	}
	#mobileMenu.open{
		-webkit-transition:slideLeft 1s forwards;
		-moz-transition:slideLeft 1s forwards;
		-ms-transition:slideLeft 1s forwards;
		-o-transition:slideLeft 1s forwards;
		transition:slideLeft 1s forwards;
	}
	#mobileMenu.closed{
		-webkit-transition:slideLeft 1s backwards;
		-moz-transition:slideLeft 1s backwards;
		-ms-transition:slideLeft 1s backwards;
		-o-transition:slideLeft 1s backwards;
		transition:slideLeft 1s backwards;
	}
	@-webkit-keyframes slideLeft{100%{left:0;}}
	@keyframes slideLeft{100%{left:0;}}
	#bodyWrapper[data-state="neutral"] div#bodyWrapperOverlay{
		display:none;
		opacity:0;
		transition:opacity 1s ease-in-out;
		-moz-transition:opacity 1s ease-in-out;
		-webkit-transition:opacity 1s ease-in-out;
	}
	#bodyWrapper[data-state="slide-right"] div#bodyWrapperOverlay{
		display:block;
		opacity:0.7;
		transition:opacity 1s ease-in-out;
		-moz-transition:opacity 1s ease-in-out;
		-webkit-transition:opacity 1s ease-in-out;
	}


/* ===================
   Banner
   =================== */
	#featured_events .container-fluid{
		padding:0;
	}
	#featured_events .tab-content .container-fluid{
		padding:0 15px;
	}
	.event_details {
		display:-webkit-box;
		display:-moz-box;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:flex;
		-webkit-box-orient:vertical;
		-moz-box-orient:vertical;
		-webkit-flex-direction:column;
		-ms-flex-direction:column;
		flex-direction:column;
		-webkit-box-align:start;
		-moz-box-align:start;
		-ms-flex-align:start;
		-webkit-align-items:flex-start;
		align-items:flex-start;
		border-right:none;
	}
	.event_details .event_datetime {
		-webkit-box-ordinal-group:2;
		-moz-box-ordinal-group:2;
		-ms-flex-order:2;
		-webkit-order:2;
		order:2;
		padding-top:10px;
	}
	.event_details .event_title {
		-webkit-box-ordinal-group:1;
		-moz-box-ordinal-group:1;
		-ms-flex-order:1;
		-webkit-order:1;
		order:1;
	}
	.event_next_prev a{
		display:inline-block;
		width:50%;
	}
	.event_next_prev a.left{
		text-align:left;
	}
	.event_next_prev a.right{
		text-align:right;
	}
	.event_next_prev i.fa{
		font-size:60px;
		margin:10px 0 12px !important;
	}
	.calendar_button {
		width:100%;
	}


/* ===================
   Featured Events
   =================== */

	#featured_events{
		position:relative;
		top:0;
	}


/* ===================
   Content
   =================== */

   /* Main Content */
	#mainWrapper,
	#bulletinWrapper,
	#servicesWrapper,
	#calendarWrapper{
		padding:0;
	}

	/* Main Content: Photo Galleries */
	div.gallery div.imageContainer img{
		width:100%;
	}


/* ===================
   Footer
   =================== */

	/* Sponsors */
	#spnsrInfo div.item img{
		width:100%;
	}
	#footer_base a.ppal_logo{
		margin-left:0;
	}
	#footer_base a.ppal_link{
		margin-left:2px;
	}
	#footer_base{
		padding-bottom:30px;
	}
	#authorLink{
		margin-top:30px !important;
	}
}





/* ==========================================================================
   Tablet, or Bigger
   ========================================================================== */
@media (min-width: 768px){
  #featured_events .nav-tabs > li.donations_button > a {
    border-radius: 5px;
    left: 4px;
    padding: 8px 0;
    position: relative;
    top: 0px;
  }
}





/* ==========================================================================
   Tablet Only
   ========================================================================== */
@media (max-width: 1019.9px) and (min-width: 768px){
}





/* ==========================================================================
   Phone (Landscape & Profile)
   ========================================================================== */
@media (max-width: 767px){
	#logo{
		padding:16px;
	}
	#logo > img{
		max-height:52px;
	}
	#banner div.carousel-inner div.item{
		height:340px;
	}
	#featured_events{
		margin-top:0;
	}
	#homepage #banner div.carousel-inner div.item{
		height:480px;
	}
	#upcomingEventsWidget ol.events,
	#diocesanEventsWidget ol.events{
		max-height:none;
		overflow-y:hidden;
	}
}

/* ===================
   Sidebar Styles
   =================== */


/* Sidebar Nav */