/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

a {
    background-color: transparent;
    color: #1a77bd;
    text-decoration: none;
}

a:visited {
    color: #609;
}

a:hover {
    text-decoration: underline;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}



/* ==========================================================================
   THEME STYLES
   ========================================================================== */
html, body{
    margin: 0;
    padding: 0;
}
body{
    font-size: 16px;  
    font-family: 'Roboto', sans-serif;
    color: #333333;
    font-weight: 300;
    background: #ffffff;
    overflow: auto;
    /*background-image: url("./images/backgroundimg.jpg");
    background-repeat: repeat;*/
    background-color: #e5e5e5;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='32' viewBox='0 0 16 32'%3E%3Cg fill='%23ffffff' fill-opacity='0.4'%3E%3Cpath fill-rule='evenodd' d='M0 24h4v2H0v-2zm0 4h6v2H0v-2zm0-8h2v2H0v-2zM0 0h4v2H0V0zm0 4h2v2H0V4zm16 20h-6v2h6v-2zm0 4H8v2h8v-2zm0-8h-4v2h4v-2zm0-20h-6v2h6V0zm0 4h-4v2h4V4zm-2 12h2v2h-2v-2zm0-8h2v2h-2V8zM2 8h10v2H2V8zm0 8h10v2H2v-2zm-2-4h14v2H0v-2zm4-8h6v2H4V4zm0 16h6v2H4v-2zM6 0h2v2H6V0zm0 24h2v2H6v-2z'/%3E%3C/g%3E%3C/svg%3E");
}
/***************Start Header******************/

#header h1,#header h2,#header h3,#header h4,#header h5,#header h6{
  font-family: 'Exo 2', sans-serif;
  margin: 0;
  padding: 0;
}

#header{
  background: #9a431f;
  width: 100%;
  height: 100px;
}
#header > .headcont{
  max-width: 980px;
  height: 100px;
  margin: 0 auto;
}
#header .title{
  margin-left: 30px;
  margin-top: 26px;
  position: absolute
}
#header .social{
  margin-right: 30px;
  margin-top: 34px;
  float: right;
}
@media screen and (max-width: 600px){
  #header .social{display:none;}
}
#header .social img{
  margin: 0 5px;
}
#header .title h1{
  font-weight: 700;
  font-size: 20px;
  color: #FFFFFF;
  line-height:24px;
}
#header .title h2{
  font-weight: 400;
  font-size: 20px;
  color: #FFFFFF;
  line-height:24px;
}
#headnav{
  background: #892B0D;
  width: 100%;
  height: 48px;
  font-family: 'Exo 2', sans-serif;
}
#headnav .headcont{
  width: auto;
  max-width: 980px;
  height: 48px;
  margin: 0 auto;
}
/*START*/
#menu{
  width:auto;
  min-width:300px;
  height: 48px;
  margin:0 auto;
  position:relative;
  overflow:no-display;
  /**/
  color: #FFF;
}

#menu ul,#menu li{
  margin:0 auto;
  padding:0 0;
  list-style:none;
}
#menu ul{
  height:48px;
  width:100%}
#menu li{
	float:left;
	display:inline;
	position:relative;
  font-family: 'Exo 2', sans-serif;
  font-size: 14px;
  font-weight:500;
}
#menu li:hover, .current-link{
  background: #882E16;
}
#menu a, #menu span{/*main menu*/
	display: block;
  font-size:115%;
	line-height: 48px;
	padding: 0 14px;
	text-decoration: none;
	color: #dedede;
}
#menu ul > li span:after {
    content: "▾";
    padding: 0 0 0 5px;
}
#menu li a:hover{
  color:#fff;
-webkit-transition: all .3s ease-in-out;
-moz-transition: all .3s ease-in-out;
-ms-transition: all .3s ease-in-out;
-o-transition: all .3s ease-in-out;
transition: all .3s ease-in-out;
}
#menu input{display:none;margin:0 0;padding:0 0;width:80px;height:30px;opacity:0;cursor:pointer
}
#menu label{
	font:normal 20px Arial;
  display:none;
  width:35px;
  height:36px;
  line-height:36px;
  text-align:center;
  float:right;
  
}

/*BRAND*/
#menu label span{font-size:80%;position:absolute;left:35px; top: -2px;}
#menu ul > li > ul{/*SUBMENUS*/
	height: auto;
	overflow: hidden;
	width: 260px;
	background: #892B0D;
	position: absolute;
	z-index: 99;
	display: none;
}
#menu ul > li > ul li{
display: block;
width: 100%;
text-transform: none;
text-shadow: none;
}

#menu ul > li > ul li a{
color: #FFF;
line-height: 40px;  /*REV*/
}

#menu li:hover ul{display:block;}
#menu ul > li > ul a:hover{
  
background: #882E16;
color: #fff;
-webkit-transition: all .1s ease-in-out;
-moz-transition: all .1s ease-in-out;
-ms-transition: all .1s ease-in-out;
-o-transition: all .1s ease-in-out;
transition: all .1s ease-in-out;
}
/*END*/
/*BASE CSS STYLE FOR RESPONSIVE MENU*/
/**/
/*MOBIL VERSION, 0 > 600px*/
@media screen and (max-width: 979px){
  #menu{
    position:relative;
    color:#fff;  
    background:#892B0D;  
  }
#menu ul > li span:after {
    content: "▾";
    padding: 0 0 0 5px;
}

#menu ul{
  top:100%;
  left:0;
  height:auto;
  display:none;
  position:absolute;
  z-index:3;
  background:#555;
  }
#menu ul > li > ul{
  width:100%;
  position:static;
  padding-left:0px;
}
#menu li{
  font:normal 90% Arial;
  width:auto; 
  display:block;
  float:none;
}
#menu input,#menu label{
  margin:1.2%  2%;
  float:right;  
  display:block;  
  position:absolute;
}
#menu input{z-index:4;}
#menu input:checked + label{color:#fff}
#menu input:checked ~ ul{display:block}
}
/*END*/

/****************End Header*****************/

.billboard{
    width: 100%;
    height: 400px;
    background: #ccc;
    margin-top: -10px;
}
.col-12{ width: 100%; }
.col-11{ width: 91.6666666663%; }
.col-10{ width: 83.333333%; }
.col-9{ width: 75%;  }
.col-8{ width: 66.6666666%; }
.col-7{ width: 58.333333331%; }
.col-6{ width: 50%; }
.col-5{ width: 41.6666665%; }
.col-4{ width: 33.3333333%; }
.col-3{ width: 25%; }
.col-2{ width: 16.666666%; }
.col-1{ width: 8.3333333%; }
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12{
    float: left;
    padding: 10px 10px;
    box-sizing: border-box;
}
.col-1.nopad, .col-2.nopad, .col-3.nopad, .col-4.nopad, .col-5.nopad, .col-6.nopad, .col-7.nopad, .col-8.nopad, .col-9.nopad, .col-10.nopad, .col-11.nopad, .col-12.nopad{
    padding: 0px;   
}
@media screen and (max-width: 640px){
    .col-1, .col-2, .col-3, .col-4, .col-5, .col-6{
        width: 50%;   
    }
    .col-7, .col-8, .col-9, .col-10, .col-11, .col-12{
        width: 100%;   
    }
}
@media screen and (max-width: 480px){
    .col-1, .col-2, .col-3, .col-4, .col-5, .col-6{
        width: 100%;   
    }
}
@media screen and (max-width: 979px){
    .menu.active { 
        left: 0px;
        z-index: 9999999;
    }
}
.main{
    width: 100%;
    max-width: 1000px;
    margin: 40px auto;
    box-sizing: border-box;
}
.section{
    box-sizing: border-box;
    background: #FFFFFF;
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.20);
}
.page{
    box-sizing: border-box;
    overflow: auto;
}
.page h2{
    text-align: center;
    color: #882E16;
    font-weight: 700;
    font-size: 25px;
    line-height: 24px;
    text-transform: uppercase;
    font-family: 'Rubik', sans-serif;
}

.single-page{
    /* margin-top: 100px; */
}
article h1,
article h2,
article h3,
article h4,
article h5,
article h6{
    font-weight: 700;
    font-family: 'Rubik', sans-serif;
}
article h2.page-title{
    text-align: center;
    color: #882E16;
    font-weight: 700;
    font-size: 25px;
    line-height: 24px;
    text-transform: uppercase;
}
article img{
    max-width: 100% !important;
    height: auto !important;
    padding: 0 0 20px 0;
}
article ul li{
    list-style-type: none;
    position: relative;
}
article ul li::before{
    content: '>';
    padding-right: 15px;
    margin-left: -25px;
    font-weight: 700;
    position: absolute;
}
article blockquote{
    border-left: 5px solid #333333;
    padding: 20px 20px 20px 50px;
    position: relative;
    font-style: italic;
}
article blockquote::before{
    content: '“';
    font-size: 50px;
    position: absolute;
    left: 10px;
    top: 2px;
}
/*.links-block h2{
    font-family: 'Roboto', sans-serif;
    text-align: center;
    color: #4080AE;
}*/
.links-block a.link{
    display: flex;
    align-items: center;
    border: 5px solid white;
    background-color: #F5F5F5;
    background-image: url(images/link.png);
    background-repeat: no-repeat;
    background-size: 60px;
    background-position: 10px 10px;
    color: #555555;
    padding: 9px 9px 9px 9px;
    height: 90px;
    float: left;
    font-size: 14px;
    text-decoration: none;
    width: 50%;
    box-sizing: border-box;
}
.links-block a.link span.text{
    float: left;
    padding-left: 10px;
    padding-right: 20px;
    box-sizing: border-box;
}
.links-block a.link span.image{
    background-image: url(images/link.png);
    background-repeat: no-repeat;
    background-size: 62px;
    width: 62px;
    height: 62px;
    display: table;
    float: left;
    border-radius: 100%;
}

@media screen and (max-width: 700px){
    .links-block a.link{
        width: 100%;
    }
}

.footer{
    width: 100%;
    min-height: 80px;
    padding: 20px;
    color: white;
    background: #37393B;
    clear: both;
    box-sizing: border-box;
    overflow: auto;
    margin-bottom: 40px;
}
.footer p{
    margin: 0;
    line-height: 40px;
}
.footer .footer_logo{
    height: 40px;
    width: auto;
    float: right;
    padding: 0px;
}






.block{
    background-color: #37393B;
    width: 100%;
    float: left;
    margin-bottom: 20px;
    box-sizing: border-box;
    min-height: 147px;
    position: relative;
}
.block.block_today{
    background-color: #FFFFFF !important;
}
.block.block_today p {
    padding: 0 10px;
}
.block.block_today h3 {
    background-color: #37393B;
    margin-bottom: 0px;
}
.block h3{
    font-size: 18px;
    line-height: 20px;
    margin: 0;
    padding: 10px;
    color: #ECECEC;
    text-align: center;
    font-family: 'Roboto', sans-serif;
}
.block_bishop h3{
    text-align: left !important;
}
.block_bishop a{text-decoration: none;}
.block_todays_masstimes h3,
.block_contact h3,
.block_latest h3,
.block_app h3,
.block_todays_conftimes h3{
    background-color: #37393B !important;
        margin-bottom: 8px;
}
.block_liturgical_season .season-box{
    min-height: 60px;
    height: calc(100% - 40px);
    display: block;
    width: 100%;
    position: absolute;
}
.block_liturgical_season .season-name{
    color: #FFFFFF;
    text-shadow: 2px 2px 4px #37393B;
    line-height: 24px;
    text-align: center;
    font-size: 22px;
    padding: 20px;
    display: block;
    padding: 44px 0;
}
.season-black{ background-color: #000000 }
.season-violet{ background-color: #490C51 }
.season-blue{ background-color: #3498DB }
.season-red{ background-color: #DD1616 }
.season-pink{ background-color: #E04AD7 }	
.season-gold{ background-color: #F0A300 }	
.season-green{ background-color: #2ECC71 }

.block_image img{
    width: 100%;
    margin: 0;
}
.block_image p{
    width: 100%;
    padding: 15px 10px 15px 10px;
    background: white;
    color: #545555;
    margin: 0;
    box-sizing: border-box;
}
.block_text p{
    width: 100%;
    padding: 5px 10px 5px 10px;
    background: white;
    color: #545555;
    margin: 0;
    box-sizing: border-box;
}

.donate-section label{
    width: 100%;
    display: block;
    float: left;
    margin: 0px 0px 10px 0px;
    height: 40px;
    color: white;
    background: #C8C7CC;
    line-height: 40px;
    font-size: 14px;
    text-align: center;
    transition: 0.7s;
}
.donate-section input[type="radio"]{
    display: none;   
    transition: 0.7s;
}

.donate-section input[type="radio"]:checked + label {
    background: #96D06F;
    transition: 0.7s;
}

.donate-section input[type="number"]{
    width: calc(100% - 51px);
    display: block;
    float: right;
    margin: 0px 0px 10px 0px;
    height: 38px;
    color: #545555;
    /*background: #C8C7CC;*/
    line-height: 40px;
    font-size: 14px;
    text-align: left;
    padding-left: 10px;
    transition: 0.7s;
    border: none;
}
.donate-section input[type="number"] + label {
    background: #C8C7CC;
    display: block;
    float: left;
    margin: 0px 0px 10px 0px;
    width: 40px;
    height: 40px;
}
.donate-section input[type="number"] + label.active {
    background: #96D06F;
}
.donate-section input[type="button"]{
    width: 100%;
    display: block;
    float: left;
    margin: 0px 0px 0px 0px;
    height: 40px;
    color: white;
    background: #9B59B6;
    line-height: 40px;
    font-size: 14px;
    text-align: center;
    border: none;
    border-radius: 0px;
    transition: 0.7s;
    -webkit-appearance: none;
}
.block.block_todays_masstimes,
.block.block_contact,
.block.block_app,
.block.block_latest,
.block.block_todays_conftimes{
    background-color: #FFFFFF;
    text-align: center;
}
.block_latest h5,
.block_todays_masstimes h5,
.block_todays_conftimes h5{
    padding: 5px 10px 0 10px;
    font-size: 14px;
    font-weight: 600;
    margin: 0;
}
.block_latest .mass-time,
.block_todays_masstimes .mass-time,
.block_latest .conf-time,
.block_todays_conftimes .conf-time{
    display: inline-block;
    margin-bottom: 5px;
    background: #FFFFFF;
    color: #4A4A4A;
    padding: 5px 10px;
    float: left;
    font-size: 14px;
    text-decoration: none;
    width: 100%;
    box-sizing: border-box;
}
.block_latest .masstimes-item,
.masstimes-container .masstimes-item,
.block_latest .conftimes-item,
.conftimes-container .conftimes-item{
    display: inline-block;
    margin-bottom: 5px;
    color: #4A4A4A;
    padding: 5px 10px;
    float: left;
    font-size: 14px;
    text-decoration: none;
    box-sizing: border-box;
}

.block_latest .mass-time::before,
.block_todays_masstimes .mass-time::before{
    content: '';
    background-image: url('../resources/icons/masstimes.png');
    background-repeat: no-repeat;
    background-size: 35px;
    width: 35px;
    height: 35px;
    display: block;
    margin-right: 10px;
    float: left;
}
.block_latest .conf-time::before,
.block_todays_conftimes .conf-time::before{
    content: '';
    background-image: url('../resources/icons/conftimes.png');
    background-repeat: no-repeat;
    background-size: 35px;
    width: 35px;
    height: 35px;
    display: block;
    margin-right: 10px;
    float: left;
}

.block_latest .time,
.masstimes-container .time {
    min-width: 10px;   
    height: 18px;
    padding: 3px 8px 3px 0;
}

.day-title {
    width: 100%;
    margin-top: 1em;
    font-style: italic;
    font-size: 21px;
}

.day, .location{
    float: left;
    min-width: 51%;
    display: inline-block;
    text-align: left;
    color: #4A4A4A;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
    max-width: 80%;
    padding: 3px 0;
}
.time{
    float: left;
    min-width: 51%;
    display: inline-block;
    text-align: left;
    color: #018F4C;
    font-weight: 200;
    font-size: 15px;
    line-height: 18px;
    max-width: 80%;
}
.block_latest .conf-time-more,
.block_todays_conftimes .conf-time-more,
.block_latest .mass-time-more,
.block_todays_masstimes .mass-time-more{
    background-color: #FAC332;
    width: 173px;
    height: 35px;
    display: inline-block;
    border-radius: 4px;
    text-align: center;
    line-height: 35px;
    text-decoration: none;
    color: #ffffff;
    margin: 10px auto;
    cursor: pointer;
}
.block_latest .conf-time-more,
.block_todays_conftimes .conf-time-more {
    background-color: #4b77bb;
}
.block_latest .conf-time-more:hover,
.block_todays_conftimes .conf-time-more:hover {
    background-color: #4b77bb;
}
.block_latest .mass-time-more:hover,
.block_todays_masstimes .mass-time-more:hover{
    background-color: #fbca4b;
}
.block_contact p{
    padding: 5px 10px 10px 10px;
    font-size: 14px;
    font-weight: 300;
    margin: 0;
    color: #4A4A4A;
}

.bulletins-container .bulletin-item:hover > *,
.block_latest_bulletin .bulletin-item:hover > *,
.block_latest .bulletin-item:hover > *{
    font-weight: 700;
}

.bulletins-container .bulletin-item:first-of-type{
    width: 100%;
    margin-bottom: 55px !important;
}

.events-container .event-item,
.bulletins-container .bulletin-item{
    display: inline-block;
    margin-bottom: 5px;
    color: #4A4A4A;
    padding: 5px 10px;
    float: left;
    font-size: 14px;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
}
.bulletins-container .bulletin-item:hover{
    border-left: 4px solid #018F4C;
    transition: 0.1s;
}

.block_latest .bulletin-item,
.block_latest_bulletin .bulletin-item{
    display: inline-block;
    /*margin-bottom: 5px;*/
    background: #FFFFFF;
    color: #4A4A4A;
    padding: 0px 27px;
    float: left;
    font-size: 14px;
    text-decoration: none;
    width: 100%;
    box-sizing: border-box;
}


.block_latest .bulletin-item::before,
.block_latest_bulletin .bulletin-item::before{
    content: '';
    background-image: url("../resources/icons/bulletins.png");
    background-repeat: no-repeat;
    background-size: 35px;
    width: 35px;
    height: 35px;
    display: block;
    margin-right: 10px;
    margin-top: 5px;
    float: left;
}
.block_latest .title,
.block_latest_bulletin .title,
.block_bulletins .title,
.bulletins-container .title{
    float: left;
    min-width: 51%;
    display: inline-block;
    text-align: left;
    color: #4A4A4A;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
    height: 18px;
    overflow: hidden;
    padding: 3px 0;
    max-width: calc(100% - 50px);
}
.events-container .title {
    display: inline-block;
    text-align: left;
    color: #4A4A4A;
    font-weight: 600;
    font-size: 15px;
    line-height: 18px;
    height: 18px;
    padding: 3px 4px 3px 0;
    float: left;
}
.events-container .time {
    min-width: 10px;   
    height: 18px;
    padding: 3px 8px 3px 0;
}
.block_latest .title,
.block_latest_bulletin .title,
.block_bulletins .title{
    overflow: hidden;
    max-width: 75%;
    height: 15px;
    max-width: calc(100% - 50px);
}
.block_latest .date,
.block_latest_bulletin .date,
.bulletins-container .date,
.events-container .date {
    float: left;
    min-width: 51%;
    display: inline-block;
    text-align: left;
    color: #018F4C;
    font-weight: 200;
    font-size: 15px;
    line-height: 15px;
    max-width: calc(100% - 50px);
}
.events-container h4{
    margin-top: 1em;
    font-style: italic;
    font-size: 21px;
}
.events-container h1:first-of-type{
    margin-top: 0.67em;
}

.block.block_latest ,
.block.block_bulletins ,
.block.block_latest_bulletin  {
    background-color: #FFFFFF;
    text-align: center;
}

.block_bulletins h3,
.block_latest_bulletin h3 {
    background-color: #37393B;
    margin-bottom: 8px;
}

.block_latest .bulletins_button,
.block_latest .bulletins-more,
.block_bulletins .bulletins_button,
.block_latest_bulletin .bulletins-more {
    background-color: #2ECC71;
    width: 173px;
    height: 35px;
    display: inline-block;
    border-radius: 4px;
    text-align: center;
    line-height: 35px;
    text-decoration: none;
    color: #ffffff;
    margin: 10px auto;
    cursor: pointer;
}
.block_latest .bulletins-more{
    margin: 33px 0 0 0 !important;
}
.block_latest_bulletin .bulletins-more {
    margin: 12px 0 0 0 !important;
}

/*
*   Homilies
*/

.homilies-container .homily-item:hover > *,
.block_latest_homily .homily-item:hover > *{
    font-weight: 700;
}

.homilies-container .homily-item:first-of-type {
    width: 100%;
    margin-bottom: 55px !important;
}

.homilies-container .homily-item{
    display: inline-block;
    margin-bottom: 5px;
    color: #4A4A4A;
    padding: 5px 10px;
    float: left;
    font-size: 14px;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
}

.block_latest_homily .homily-item{
    display: inline-block;
    margin-bottom: 5px;
    background: #FFFFFF;
    color: #4A4A4A;
    padding: 5px 10px;
    float: left;
    font-size: 14px;
    text-decoration: none;
    width: 100%;
    box-sizing: border-box;
}

.homilies-container .homily-item:nth-of-type(2)::after {
    content: 'Past Homilies';
    display: block;
    font-size: 1.17em;
    -webkit-margin-before: 0.83em;
    -webkit-margin-after: 0.83em;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
    font-weight: bold;
    float: left;
    clear: both;
    padding-bottom: 10px;
    position: absolute;
    top: -42px;
}

.block_latest_homily .homily-item::before{
    content: '';
    background-image: url("http://thetechbit.me/theme_01/../resources/icons/homilies.png");
    background-repeat: no-repeat;
    background-size: 35px;
    width: 35px;
    height: 35px;
    display: block;
    margin-right: 10px;
    float: left;
}
.block_latest_homily .title,
.homilies-container .title {
    float: left;
    min-width: 51%;
    display: inline-block;
    text-align: left;
    color: #4A4A4A;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
    padding: 3px 0;
    max-width: calc(100% - 50px);
}
.block_latest_homily .title{
    overflow: hidden;
    max-width: 75%;
    height: 15px;
    max-width: calc(100% - 50px);
}
.block_latest_homily .date,
.homilies-container .date {
    float: left;
    min-width: 51%;
    display: inline-block;
    text-align: left;
    color: #018F4C;
    font-weight: 200;
    font-size: 15px;
    line-height: 15px;
    max-width: calc(100% - 50px);
}

.block.block_latest_homily  {
    background-color: #FFFFFF;
    text-align: center;
}

.block_latest_homily h3 {
    background-color: #4A4A4A !important;
    margin-bottom: 8px;
}

.block_latest_homily .homilies-more {
    background-color: #2ECC71;
    width: 173px;
    height: 35px;
    display: inline-block;
    border-radius: 4px;
    text-align: center;
    line-height: 35px;
    text-decoration: none;
    color: #ffffff;
    margin: 10px auto;
    cursor: pointer;
}

.block_latest .latest_bulletin_button,
.block_latest_bulletin .latest_bulletin_button,
.block_bulletins .bulletins_button,
.block_masstimes .mass_times_button{
    width: 100%;
    display: block;
    float: left;
    margin: 0px 0px 0px 0px;
    height: 40px;
    color: white;
    background: #4A4A4A;
    line-height: 40px;
    font-size: 14px;
    text-align: center;
    border: none;
    border-radius: 0px;
    transition: 0.7s;
    -webkit-appearance: none;
    text-decoration: none; 
}
.block_feed{
    width: 100%;
    display: block;
    float: left;
    margin: 0px 0px 0px 0px;
    color: #2C3E4E;
    background: white;
    font-size: 14px;
    text-align: center;
    border: none;
    border-radius: 0px;
    transition: 0.7s;
    -webkit-appearance: none;
    text-decoration: none; 
}
.block_feed > h3{
    background-color: #4A4A4A !important;
    margin-bottom: 8px;
}
.feedEk .panelItem{
    padding-left: 60px;
    background-image: url(images/feeds.png);
    background-position: 9px 5px;
    background-repeat: no-repeat;
    background-size: 50px;
}
.feedEk .panelItem h3{
    color: #2C3E4E;
    font-size: 14px;
    line-height: 1.3em;
    height: 1.3em;
    overflow: hidden;
    padding: 0px 10px;
    text-align: left;
    margin: 0 0 3px 0;
}
.feedEk .panelItem h4{
    color: #018F4C;
    font-size: 14px;
    line-height: 1.3em;
    padding: 0px 10px;
    text-align: left;
    margin: 0 0 3px 0;
    height: 1.3em;
    overflow: hidden;
}
.feedEk .panelItem p{
    color: #2C3E4E;
    font-size: 14px;
    line-height: 1.3em;
    height: 2.6em;
    overflow: hidden;
    padding: 3px 10px;
    text-align: left;
    margin: 0 0 3px 0;
}
.block_bishop .background{
    background-size: contain;
    background-position: right 0px;
    background-repeat: no-repeat;
    min-height: 80px;
    height: 100%;
    width: 100%;
    position: absolute;
}
.block_bishop h3{
    color: #FFFFFF;
    font-size: 20px;
    line-height: 20px !important;
    padding: 39px 70px 30px 22px !important;
    max-width: 200px;
}
.block_bishop h3 span.thin{
    font-weight: 300;
    line-height: 30px;
    color: #737679;
}
.block_bishop h3 span.bishop{
    font-weight: 600;
}
.blog-post-preview{
    display: block;
    margin-bottom: 20px;
}
.blog-post-preview > a{
    color: #37393B;   
    display: block;
    text-decoration: none;
    font-size: 16px;
    transition: color 0.5s ease;
}
.blog-post-preview > a > h1{
    margin: 0;
    font-size: 16px;
}
.blog-post-preview > a:hover{
    text-decoration: none;
    color: #FF8200;
}
.blog-post-preview .date{
    color: #018F4C;
    display: block;
    font-size: 14px;
    font-weight: 400;
    margin: 0;
}
.blog-post-preview .featured-image,
.blog-post .featured-image{
    width: 100%;
    height: 300px;
    display: block;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    float: left;
    margin-bottom: 30px;   
}
.blog-post-preview > div *{
    display: none;   
}
.blog-post-preview > div > p{
    display: none;   
}
.blog-post-preview > div > p:first-of-type{
    display: block;   
}
.blog-post-preview > div p:first-of-type > *{
    display: inline-block;   
}
.blog-post-preview > div p > img{
    display: none;
}
.blog-post .title {
    color: #018F4C;
    line-height: 1.7em;
    font-size: 20px;
}
.blog-post .date{
    color: #37393B;
    margin: 0;
    font-size: 15px
}
.homepage_feed h3{
    background-color: #37393B !important;
    margin-bottom: 8px;
    font-size: 18px;
    line-height: 20px;
    margin: 0;
    padding: 10px;
    color: #ECECEC;
    text-align: center;
    font-family: 'Roboto', sans-serif;
}
.homepage_feed h4{
    color:#FF8200 !important;
}
.homepage_feed .itemTitle{
    font-weight: 500;
    font-size: 13.9px;
    color: #37393B;
    line-height: 14px;
}
.homepage_feed .panelItem {
    /*border-left: 4px solid #FF8200;*/
    transition: 0.1s;
    margin: 14px 0;
    cursor: pointer;
}
.homepage_feed .panelItem:hover {
    /*border-left: 4px solid #7A7A7A;*/
}
.homepage_feed .itemDate{display: none;}

.homepage_feed br{display: none;}

.homepage_feed{
    min-height: 250px;
    padding: 0;
}

.loader{
	width: 60px;
	height: 60px;
	border-radius: 30px;
	background: #e4e4e4;
	margin: 100px auto;
	position: relative;
	overflow: hidden;
	animation: loader infinite 0.8s linear;
}
.loader .loader-triangle{
	width: 0px;
	height: 0px;
	border-top: 30px solid transparent;
	border-right: 30px solid transparent;
	border-bottom: 60px solid #348FF6;
	border-left: 30px solid transparent;
	margin: 0 auto;
}
.loader .loader-inner{
	width: 52px;
	height: 52px;
	border-radius: 52px;
	background: #FFFFFF;
	position: absolute;
	top: 4px;
	left: 4px;
}
@keyframes loader{
	0%{
		transform: rotate(0deg);
	}
	100%{
		transform: rotate(360deg);
	}
}

.banner{
    width: 100%;
    background: red;
    color: white;
    text-decoration: none;
    display: block;
    line-height: 40px;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;   
}
.page.has-banner{
    position: relative;
    padding-top: 40px;
}

/*
*   FORMS
*/
form{
    background: white;
    border-radius: 4px;
    padding: 20px;
}
form p{
	font-size: 12px;
	font-weight: 600;
	margin-top: 20px;
}
form input[type=password],
form input[type=text],
form input[type=date],
form input[type=time],
form input[type=number],
form input[type=email],
form input[type=tel]{
	border: 0;
	padding: 0 10px;
	margin: 0;
	display: block;
	width: auto;
	min-width: 300px;
	line-height: 30px;
	border-bottom: 1px solid #95a5a6;
	font-size: 14px;
	color: black;
	box-sizing: border-box;
    background: transparent;
}
form textarea{
	border: 0;
	padding: 10px 10px;
	box-sizing: border-box;
	margin: 0;
	display: block;
	width: 100%;
	min-height: 100px;
	line-height: 30px;
	border-bottom: 1px solid #95a5a6;
	font-size: 14px;
	color: black;
    background: transparent;
}
form input[type=password]:focus,
form input[type=text]:focus,
form input[type=date]:focus,
form input[type=time]:focus,
form input[type=number]:focus,
form input[type=email]:focus,
form input[type=tel]:focus,
form textarea:focus{
	border-bottom: 2px solid #1976d2;
    outline: 0;
    outline: none;
}
input[type=submit],
input[type=button],
button,
.formlinkbutton,
.button1{
	border: 0px;
	background: #1976d2;
	line-height: 40px;
	font-size: 14px;
	color: white;
	padding: 0 20px;
	border-radius: 4px;
	margin: 10px 10px 10px 0px;
	cursor: pointer;
	display: block;
}
.button1{
    float: left;
}
.formlinkbutton{
    display: inline-block;
}
input[type=hidden]{
    visibility: hidden;
    height: 0px;
    overflow: hidden;
    padding: 0;
    margin: 0;
    border: 0;
}
.formlinkbutton:visited,
.button1:visited{
	color: white;
}
.block_app a{
    margin: 10px auto;
    width: 60%;
    display: inline-block;
    box-sizing: border-box;
}
.block_app .block_app_icon{
    height: auto;
    width: 100%;
    display: block;
    float: left;
}

.app980banner{
    background-color: #FFFFFF;
    background-color: rgba(255,255,255,0.85);
    padding: 20px 0px;
    margin-bottom: 20px;
    box-sizing: border-box;
    box-shadow: rgba(0,0,0,0.5) 1px 1px 4px;
}

@media screen and (max-width: 979px) {
    .app980banner{display: none;}
}

.email-icon,
.phone-icon,
.fax-icon{
    width: 33px;
    height: 33px;
    float: left;
    display: block;
    margin: 3.5px 0;
}
.contact-sub{
    width: calc( 100% - 33px );
    padding: 0 10px;
    box-sizing: border-box;
    display: block;
    float: left;
    height: 20px;
    line-height: 20px;
    font-size: 14px;
}
.contact-main{
    width: calc( 100% - 33px );
    box-sizing: border-box;
    padding: 0 10px;
    display: block;
    float: left;
    height: 20px;
    line-height: 20px;
    font-size: 18px;
    font-weight: 600;
    word-wrap: break-word;
}
.address{
    position: absolute;
    top: 142px;
    min-height: 250px;
    left: 50px;
    width: 100%;
    max-width: 300px;
    background: rgba(64, 128, 174, 0.9);
    color: white;
    padding: 20px;
    box-sizing: border-box;
}
.office-title{
    font-size: 20px;
    text-align: center;
    padding: 0;
    line-height: 30px;
    margin-top: 20px;
}
.address-icon{
    width: 82px;
    height: 82px;
    display: block;
    margin: 0px auto;
}
.js-address p{
    text-align: center;
    line-height: 1.2em;
    font-size: 14px;
    margin: 0;
}
#map{
     padding: 0px;  
    min-height: 400px;
}
form.contact-form input[type="text"],
form.contact-form input[type="tel"],
form.contact-form input[type="submit"],
form.contact-form input[type="email"]{
    width: 100%;
    height: 40px;
    line-height: 40px;
    margin-bottom: 20px;
    color: white;
    background: #6BB9F0;
    border: 1px solid #4080AE;
    padding: 0 10px;
    box-sizing: border-box;
    font-size: 14px;
    border-radius: 0px;
    min-width: 0px;
}
form.contact-form textarea{
    width: 100%;
    height: 160px;
    max-height: 160px;
    min-height: 160px;
    line-height: 1.3em;
    padding: 10px;
    box-sizing: border-box;
    margin-bottom: 20px;
    color: white;
    background: #6BB9F0;
    border: 1px solid #4080AE;
    font-size: 14px;
    min-width: 0px;
}
form.contact-form input[type="submit"]{
    background: #4080AE;
    font-weight: 600;
    font-size: 14px;
}

form.contact-form ::-webkit-input-placeholder { /* Safari, Chrome and Opera */
  color: white;
}

form.contact-form :-moz-placeholder { /* Firefox 18- */
  color: white;
}

form.contact-form ::-moz-placeholder { /* Firefox 19+ */
  color: white;
}

form.contact-form :-ms-input-placeholder { /* IE 10+ */
  color: white;
}

form.contact-form ::-ms-input-placeholder { /* Edge */
  color: white;
}

form.contact-form :placeholder-shown { /* Standard one last! */
  color: white;
}
.no-images img{
    display: none;
}


















/* MASSES */
.masstimes.panelItem{ background-image: url('images/icons/masstimes.png'); }

.appPanel.timelinePanel div.timelineMasses div.panelItem,
.appPanel.masstimesPanel .panelItem{ 
    background-image: url('images/masstimes-background.png'); 
    background-position: right calc(100% + 37px);
    background-size: 110px;
    background-repeat: no-repeat;
    position: relative;
    padding: 0px;
    padding-left: 100px;
    padding-top: 50px;
    padding-right: 10px;
    padding-bottom: 10px;
    box-sizing: content-box;
    min-height: 70px;
    margin-bottom: 10px;
    background-color: #FAFAFA;
}
.masstimesPanel .panelItem.subTitle{ 
    min-height: 0;
    background-image: none; 
    padding: 10px;
    text-align: center;
    text-transform: uppercase;
    color: #555555;
}
.masstimesPanel .panelItem p.mass-date,
.masstimesPanel .panelItem p.mass-date,
.masstimesPanel .panelItem p.mass-date{
    font-size: 72px;
    font-weight: 100;
    line-height: 72px;
    width: 90px;
    color: #D6D6D6;
    position: absolute;
    top: 50%;
    margin-top: -36px;
    left: 0;
    text-align: center;
    min-height: 0;
}
.masstimesPanel .panelItem p.mass-time,
.masstimesPanel .panelItem p.mass-time,
.masstimesPanel .panelItem p.mass-time{
    font-size: 16px;
    font-weight: 400;
    line-height: 16px;
    width: 90px;
    color: #D6D6D6;
    position: absolute;
    top: 50%;
    margin-top: 36px;
    left: 0;
    text-align: center;
    min-height: 0;
}

.timelineMasses .panelItem h3.mass-title,
.masstimesPanel .panelItem h3.mass-title{
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    height: 20px;
    line-height: 20px;
    font-size: 16px;
    color: #FAC332;
    font-weight: 400;
    position: absolute;
    top: 0;
    left: 0;
}
.timelineMasses .panelItem span.mass-location,
.masstimesPanel .panelItem span.mass-location{
    width: 100%;
    box-sizing: border-box;
    padding: 0 15px 10px 25px;
    text-align: left;
    line-height: 18px;
    font-size: 14px;
    color: #555555;
    font-weight: 400;
    float: left;
    width: auto;
    display: block;
    position: relative;
    width: auto;
    max-width: 100%;
}
.timelineMasses .panelItem span.mass-location::before,
.masstimesPanel .panelItem span.mass-location::before{
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background-image: url('images/location-grey.png'); 
    background-position: center right;
    background-size: 14px;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
}
.timelineMasses .panelItem span.mass-priest,
.masstimesPanel .panelItem span.mass-priest{
    width: 100%;
    box-sizing: border-box;
    padding: 0 0px 10px 25px;
    text-align: left;
    line-height: 18px;
    font-size: 14px;
    color: #555555;
    font-weight: 400;
    float: left;
    width: auto;
    display: block;
    position: relative;
    width: auto;
    max-width: 100%;
}
.timelineMasses .panelItem span.mass-priest::before,
.masstimesPanel .panelItem span.mass-priest::before{
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background-image: url('images/preist-grey.png'); 
    background-position: center right;
    background-size: 18px;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
}
.timelineMasses .panelItem span.mass-celebration,
.masstimesPanel .panelItem span.mass-celebration{
    width: 100%;
    box-sizing: border-box;
    padding: 0 0px 10px 25px;
    text-align: left;
    line-height: 18px;
    font-size: 14px;
    color: #555555;
    font-weight: 400;
    float: left;
    width: 100%;
    display: block;
    position: relative;
    width: auto;
    max-width: 100%;
}
.timelineMasses .panelItem span.mass-celebration::before,
.masstimesPanel .panelItem span.mass-celebration::before{
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background-image: url('images/celebration-grey.png'); 
    background-position: center right;
    background-size: 14px;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
}
.timelineMasses .panelItem span.mass-notes,
.masstimesPanel .panelItem span.mass-notes{
    width: 100%;
    box-sizing: border-box;
    padding: 0 0px 10px 25px;
    text-align: left;
    line-height: 18px;
    font-size: 14px;
    color: #555555;
    font-weight: 400;
    float: left;
    width: 100%;
    display: block;
    position: relative;
    width: auto;
    max-width: 100%;
}
.timelineMasses .panelItem span.mass-notes::before,
.masstimesPanel .panelItem span.mass-notes::before{
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background-image: url('images/notes-grey.png'); 
    background-position: center right;
    background-size: 14px;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
}
.masses-container h4 {
    float: left;
    width: 100%;
}
.mass-item {
    border: 1px solid #e4e4e4;
    border-radius: 4px;
    width: calc(50% - 5px);
    margin: 0 0px 10px 0;
}
.day_container .mass-item:nth-of-type(2n+1) {
    clear: left;
    margin-right: 10px;
}
.mass-item h5{
    font-size: 12px;
    font-weight: 700;
    color: #333333;
    margin: 0 0 5px 0;
    padding: 0;
}
.mass-item p{
    font-size: 12px;
    font-weight: 300;
    color: #333333;
    margin: 0 0 3px 0;
    padding: 0;
}
.mass-item span.time,
.mass-item span.location{
    font-size: 12px;
    font-weight: 300;
    color: #333333; 
    width: auto;
    min-width: 0px;
    max-width: 100%;
    float: none;
    display: inline;
    padding: 0;
    margin: 0;
    line-height: inherit;
}

/* Homepage Buttons */

.btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: .0625em solid transparent;
  border-radius: .25em;
  display: inline-block;
  font-family: inherit;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.25;
  overflow: hidden;
  padding: .7em 2em;
    margin-bottom: 10px;
    width: 100%
  position: relative;
  text-align: center;
  text-decoration: none;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-touch-callout: none;
  -webkit-transition: all .15s ease-in-out;
  transition: all .15s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
    text-decoration: none;
}
.btn--outline {
  background-color: transparent;
  border-color: #882E16;
    text-decoration: none;
}
.btn--outline-secondary {
    color: #882E16;
    text-decoration: none;
}
.btn--outline-secondary:hover, .btn--outline-secondary:focus {
  background-color: rgba(136, 46, 22, 0.1);
    text-decoration: none;
}
.btn--outline-secondary:active, .btn--outline-secondary.btn--is-active {
  background-color: rgba(136, 46, 22, 0.2);
    text-decoration: none;
}


.homebtn,
.homebtn:visited{
    display: block;
    text-align: center;
    background: #dddddd;
    color: #333333;
    padding: 15px;
    margin-bottom: 10px;
    text-decoration:none;
    border: solid white 3px;
}
.homebtn:hover{
    background: #333333;
    color: #ffffff;
    text-decoration: none;
    border: solid white 3px;
}