/**
 * Place your custom styles here.
 */
.crm-container label {
  color:#333;
}

@import 'https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800';

body {
    font-family: 'Open Sans', sans-serif;
}

h1 {
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 22px;
}

.main-container {
	padding: 6px 30px !important;
}

.logo {
    display:block;
    background: url("images/logo.png") no-repeat;
    width: 202px;
    height: 100px;
    text-indent:-1000px;
    margin: 22px 16px;
}

.secondary-menu {
    float:right;
    padding: 8px 15px 0;
}

.secondary-menu a {
    font-weight:700;
    color:black;
    padding:0 9px;
    text-transform: uppercase;
}

.secondary-menu a:active, .secondary-menu a:hover, .secondary-menu a:focus {
    text-decoration: underline;
}

.top-banner-fullwidth {
    float: right;
    width: 800px;
    margin-top: 10px;
    margin-right: 13px;
    clear: right;
}

.top-banner-fullwidth img {
    width:100%;
    height:auto;
}

.top-banner {
    display:none;
    margin-top: 7px;
    margin-bottom: 22px;
}

.top-banner img {
    width: 100%;
    height: auto;
}

/* Hide navbar header on larger (width >= 768px) devices */
.navbar-header {
    display:none;
}


nav.navbar {
    border-radius:0;
}

.navbar-inverse {
    background-color: #000;
    color: #fff;
}

.navbar-inverse .navbar-nav > li > a { color:white; }

.navbar-inverse .navbar-nav>.active>a, .navbar-inverse .navbar-nav>.active>a:focus, .navbar-inverse .navbar-nav>li>a:hover, .navbar-inverse .navbar-nav>.active>a:focus {
    background-color: #404040;
}

.navbar-brand {
    position:relative;
}

.social-media a {
    font-size: 2.5em;
    padding:5px;
    color:#ccc;
    line-height:1.6;
}

.social-media-mobile a {
    font-size: 2.5em;
    padding: 0 5px !important;
    color: #ccc;
    line-height: 1.35 !important;
}

.social-media-mobile .navbar-toggle {
    margin-left:8px;
}

.social-media a:hover, .social-media a:focus {
    color:white;
}

a {
    color: #337ab7;
    transition: all 0.4s cubic-bezier(.25,.1,.25,1) 0s;
}

a:hover, a:focus {
    color: #23527c;
    text-decoration: underline;
}

.navbar-brand i {
    position:absolute;
    background:url("images/logo-small.png") top left no-repeat;
    width: 61px;
    height: 30px;
    top: 8px;
    left: 15px;
}

.content {
    padding:0 15px 36px;
}

ul.eventText {
    padding-left:27px;
    padding-top:5px;
}

.eventText a {
    font-size: 1.2em;
    line-height: 1.7;
    padding-left:5px;
}

footer {
    background:black;
    padding:15px;
    text-align: center;
    color: white;
}

/* Homepage styles */

.content.homepage {
    padding:0;
}

.slideshow-panel {
    margin-left:1.25%;
    float:left;
    background:darkslateblue;
    width:64.1%;
    overflow:hidden;
}

.slideshow-panel img {
    width:100%;
    height:auto;
}

.header-wrapper {
    height:400px;
    overflow:hidden;

}

.bx-wrapper {
    float:left;
    margin-left:1.25%;
}

.bx-window {
    height:350px;
}

.featured-panel {
    float:right;
    background:black;
    width:30.95%;
    margin-right:1.25%;
    overflow-y:hidden;
    position:relative;
}

.featured-panel img {
    width:100%;
    height:auto;
}

.featured-overlay {

    position:absolute;
    width:100%;
    height:100%;

    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0) 44%, rgba(0,0,0,0.05) 48%, rgba(0,0,0,0.7) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0) 44%,rgba(0,0,0,0.05) 48%,rgba(0,0,0,0.7) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0) 44%,rgba(0,0,0,0.05) 48%,rgba(0,0,0,0.7) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#b3000000',GradientType=0 ); /* IE6-9 */

}

.featured-info {
    position:absolute;
    bottom:0;
    padding:4px 17px 17px;
    width:100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.featured-date {
    font-weight:700;
    font-size:40px;
    color:white;
    text-transform: uppercase;
}

.featured-content h2 {
    font-weight:700;
    font-size:28px;
    text-transform: uppercase;
    color: #68b7e0;
    margin:0;
}

.featured-description {
    font-weight:700;
    font-size: 18px;
    color:white;
    padding-top:8px;
}

.slideshow-panel, .featured-panel {
    margin-top:6px;
    margin-bottom:13px;
    height: 400px;
}

.event-panels {
    padding-bottom:16px;
}

.event-panel {
    /* Cancel transitions inherited from link styling, as it causes some weirdness when resizing the viewport */
    transition:none;
    width:14.15%;
    height:350px;
    background:black;
    color:white;
    margin:1.25%;
    float:left;
}

.event-panel .image-container {
    position:relative;
}

.event-panel .image-container .date {
    position: absolute;
    left: 0;
    bottom: -1px;
    font-size: 17px;
    font-weight: bold;
    padding: 5px 11px;
    width: 100%;
    z-index: 2;
    background-color: rgba(0, 0, 0, 0.3);
}

.event-panel .overlay {

    position:absolute;
    z-index:1;
    width:100%;
    height:100%;
    bottom:-1px;

    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0) 44%, rgba(0,0,0,0.05) 48%, rgba(0,0,0,0.7) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0) 44%,rgba(0,0,0,0.05) 48%,rgba(0,0,0,0.7) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0) 44%,rgba(0,0,0,0.05) 48%,rgba(0,0,0,0.7) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#b3000000',GradientType=0 ); /* IE6-9 */

}

.event-panel .content-container {
    padding:0 12px;
}

.event-panel h2 {
    font-size: 15px;
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: 700;
    color:#68b7e0;
}

.event-panel:hover, .event-panel:focus {
    text-decoration: none;
}

.event-panel .image-container {
    margin:2px;
}

.event-panel img {
    width: 100%;
    height: auto;
}

.event-panel .description {
    font-size: 12px;
    line-height:1.4;
}

.event-panel:hover .description, .event-panel:focus .description,
.event-panel:hover .date, .event-panel:focus .date {
    color:white;
}

.membership-panels, .donation-panels {
    margin-bottom:-22px;
}

/* Membership / donations page */
.membership-panel, .donation-panel {
    transition:none;
    width:14.15%;
    height:275px;
    background:black;
    color:white;
    margin:1.25%;
    float:left;
}

.membership-panel img, .donation-panel img {
    width: 100%;
    height: 98px;
    object-fit:cover;
    object-position:center;
    border:2px solid black;
}

.membership-panel h2, .donation-panel h2 {
    font-size: 15px;
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: 700;
    color:#68b7e0;
    margin:0;
    padding:12px;
}

.membership-panel:hover, .membership-panel:focus,
.donation-panel:hover, .donation-panel:focus {
    text-decoration: none;
}

/* Bottom banner */
.bottom-banner {
    text-align: center;
    margin-bottom:28px;
}

.bottom-banner img {
    width: 100%;
    height: auto;
    max-width:1170px;
}

.community-events {
    padding-left:1.25%;
    padding-right:1.25%;
    padding-bottom:16px;
}

.community-event {
    float:left;
    width:48.75%;
    transition: background 0.4s cubic-bezier(.25,.1,.25,1) 0s;
    margin-bottom:10px;
}

.community-event h3 {
    font-size: 1.2em;
    background: #469ac5;
    font-weight: 700;
    color: white;
    margin-top:0;
    padding: 8px 11px;
    transition: all 0.4s cubic-bezier(.25,.1,.25,1) 0s;
}

.community-event:hover {
    text-decoration: none;
    cursor:pointer;
}

.community-event:hover h3 {
    background:#444;
    /*color: #469ac5;*/
}

.community-event p {
    color:#444;
    padding-left:11px;
    padding-right:11px;
}

.community-event:hover {
    background:#e9e9e9;
}

.col-left {
    margin-right:1.25%;
}

.col-right {
    margin-left:1.25%;
}

.community-events h2 {
    font-size: 3.1em;
    text-transform: uppercase;
    margin:15px 0 30px;
}

@media (min-width: 992px) and (max-width: 1199px) {

    .top-banner-fullwidth {
        width: 670px;
        margin-top: 16px;
    }

    .social-media a {
        font-size: 2em;
        line-height:1.95;
    }

    .slideshow-panel {
        width:57.1%;
        margin-left:1.5%;
    }

    .featured-panel {
        width:37%;
        margin-right:1.5%;
    }

    .slideshow-panel, .featured-panel {
        height:350px;
    }

    .event-panel, .membership-panel, .donation-panel {
        width:17%;
        margin:1.5%;
    }

    .bottom-banner, .community-events {
        padding-left:1.5%;
        padding-right:1.5%;
    }

    .col-left {
        margin-right:1.5%;
    }

    .col-right {
        margin-left:1.5%;
    }

    .community-event {
        width:48.5%;
    }


}

@media (max-width:991px) {

    .featured-panel {
        display:none;
    }

    #navbar .social-media {
        display:none;
    }

}

@media (min-width: 640px) and (max-width: 991px) {

    .top-banner-fullwidth {
        display:none;
    }

    .top-banner {
        display:block;
    }

    .slideshow-panel {
        width:96.15%;
        margin-left:2%;
    }

    .event-panel, .membership-panel, .donation-panel {
        width:21%;
        margin:2%;
    }

    .top-banner, .bottom-banner, .community-events {
        padding-left:2%;
        padding-right:2%;
    }

    .col-left {
        margin-right:2%;
    }

    .col-right {
        margin-left:2%;
    }

    .community-event {
        width:48%;
    }
}

@media (min-width: 550px) and (max-width: 639px) {

    .slideshow-panel {
        height:325px;
        width:95.07%;
        margin-left:2.5%;
    }

    .event-panel, .membership-panel, .donation-panel {
        width:28.3%;
        margin:2.5%;
    }

    .top-banner, .bottom-banner, .community-events {
        padding-left:2.5%;
        padding-right:2.5%;
        display:block;
    }

    .col-left, .col-right {
        margin-left:0;
        margin-right:0;
    }

    .community-event {
        width:100%;
    }

}

@media (max-width: 549px) {

    .slideshow-panel {
        height: 55vw;
        width:93.27%;
        margin-left:3.3%;
    }

    .event-panel, .membership-panel, .donation-panel {
        width:43.2%;
        margin:3.3%;
    }

    .top-banner, .bottom-banner, .community-events {
        padding-left:3.3%;
        padding-right:3.3%;
        display:block;
    }

    .community-events h2 {
        font-size: 2.4em;
        text-align: center;
    }

    .col-left, .col-right {
        margin-left:0;
        margin-right:0;
    }

    .community-event {
        width:100%;
    }
}

/* Full-width devices */
@media (min-width: 768px) {

    .navbar-nav > li {
        border-left:1px solid #666;
    }

    .navbar-nav > li > a {

        padding: 19px 20px;
        font-weight:bold;
        font-size:1.8em;
        text-transform: uppercase;
        transition: background-color 0.4s cubic-bezier(.25,.1,.25,1) 0s;

    }

    #navbar .about, #navbar .contact { display:none; }

}

@media (max-width: 999px) {
    .navbar-nav > li > a {
        font-size: 1.6em;
    }
}

/* Mobile devices */
@media screen and (max-width: 767px) {

    .header {
        display:none;
    }

    .navbar-header {
        display:inherit;
    }

}







.toolbar-oriented .toolbar-tray-vertical {
    width:18em;
}

body.toolbar-tray-open.toolbar-vertical.toolbar-fixed {
    margin-left:18em;
}

body label {
    font-weight:600 !important;
    color:black;
    white-space: normal;
    line-height: 1.5;
    font-size: 1.1em;
}
/*
div#crm-container label {
    font-weight:600 !important;
}
*/

.toolbar {
    font-family: "Open Sans","Lucida Grande",Verdana,sans-serif !important;
    font-weight:300 !important;
}

.toolbar .toolbar-bar .toolbar-tab > .toolbar-icon {
    font-weight:600 !important;
}

.toolbar-bar .toolbar-civicrm:before {
    background-image: url("./images/civicrm.png");
}

/* forms */
#crm-container .crm-form-block {
    
    background:#f2f2f6;
    border:1px solid #ddd;
    border-radius:5px;

}

#crm-container .crm-accordion-body {
    background:#f2f2f6;
}

#crm-container .crm-submit-buttons {
    margin: 8px 0 8px 2px;
}

#crm-container .crm-submit-buttons:first-child {
    margin: 8px 0 16px 2px;
}

#crm-container table.form-layout td {
    border:none !important;
}

#crm-container hr {
    margin:0;
}

.crm-container input.crm-form-text, .crm-container input.dateplugin {
    background:white;
    border: 1px solid #b0b0b0;
    height: 1.8em;
    padding: 0 2px;
    vertical-align: middle;

}

.crm-container input[type=text], .crm-container textarea {
    border:1px solid #b5b5b5;
    border-radius:4px;
    color:#555;

    box-shadow: 0px 0px 2px 0px rgba(200,200,200,1) inset, 0px 1px 0 0 white;

    -moz-transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;

}

.crm-container input[type=text]:focus, .crm-container textarea:focus {
    -webkit-box-shadow: 0px 0px 3px #2786C2;
    -moz-box-shadow:    0px 0px 3px #2786C2;
    box-shadow:         0px 0px 3px #2786C2;
    border:1px solid #999;
}

#crm-container .select2-container .select2-choice .select2-arrow, #crm-container .select2-container .select2-choice  {
    background:white;
}

#crm-container .help, #crm-container #help {
    background-color: #f1f8eb;
    border: none;
    border-left: 3px solid #00aa00;
    color: #3e3e3e;
    font-size: 13px;
    margin: 0 0 12px 5px;
    padding: 14px;
    border-radius:0 !important;
}

#crm-container .status {
    padding: 0.75em;
}

/* Checkbox / radio button styles */

.styled-checkbox, .styled-radio {
    width:15px;
    height:15px;
    margin:0 6px;
    position:relative;
    display:inline-block;
}

.styled-checkbox input, .styled-radio input {
    /*visibility: hidden;*/
    /* set opacity:0 instead of visibility:hidden to retain ability to focus */
    filter: alpha(opacity=0);
    opacity:0;
    position:absolute;
    z-index:-2;
}

.styled-radio label {
    
    cursor: pointer;
    position: absolute;
    width: 15px;
    height: 15px;
    top: 3px;
    border-radius: 8px;
    border:1px solid #999;

    -webkit-box-shadow: 0px 1px 0 white, inset 0px 1px 3px rgba(0,0,0,0.5);
    -moz-box-shadow: 0px 1px 0 white, inset 0px 1px 3px rgba(0,0,0,0.5);
    box-shadow: 0px 1px 0 white, 0 0 2px rgba(0,0,0,0.5) inset;
    background: #fff;

    -moz-transition: border 0.25s, -moz-box-shadow 0.25s;
    -webkit-transition: border 0.25s, -webkit-box-shadow 0.25s;
    -o-transition: border 0.25s, box-shadow 0.25s;
    transition: border 0.25s, box-shadow 0.25s;
}

.styled-checkbox label {
    
    cursor: pointer;
    position: absolute;
    width: 15px;
    height: 15px;
    top: 3px;
    border-radius: 2px;
    border:1px solid #999;

    -webkit-box-shadow: 0px 1px 0 white, inset 0px 1px 3px rgba(0,0,0,0.5);
    -moz-box-shadow: 0px 1px 0 white, inset 0px 1px 3px rgba(0,0,0,0.5);
    box-shadow: 0px 1px 0 white, 0 0 2px rgba(0,0,0,0.5) inset;
    background: #fff;

    -moz-transition: border 0.25s, -moz-box-shadow 0.25s;
    -webkit-transition: border 0.25s, -webkit-box-shadow 0.25s;
    -o-transition: border 0.25s, box-shadow 0.25s;
    transition: border 0.25s, box-shadow 0.25s;

}

.styled-checkbox label:after {
    
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    opacity: 0;
    content: '';
    position: absolute;
    width: 8px;
    height: 5px;
    background: transparent;
    top: 3px;
    left: 3px;
    border: 2px solid #333;
    border-top: none;
    border-right: none;

    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);

}

.styled-radio label:after {

    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    opacity: 0;
    content: '';
    position: absolute;
    width: 7px;
    height: 7px;
    background: transparent;
    top: 3px;
    left: 3px;
    border-radius:4px;
    background:#484848;

}

.styled-checkbox label:hover::after, .styled-radio label:hover::after {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
    filter: alpha(opacity=30);
    opacity: 0.5;
}

.styled-checkbox input:checked + label:after, .styled-radio input:checked + label:after {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
    opacity: 1;
}

.styled-checkbox input:focus + label, .styled-radio input:focus + label {
    -webkit-box-shadow: 0px 0px 3px #2786C2;
    -moz-box-shadow:    0px 0px 3px #2786C2;
    box-shadow:         0px 0px 3px #2786C2;
    border:1px solid #666;
}

/* alter civicrm button styles */
#crm-container .crm-button, #crm-container a.button {
    border:none;
    background:#707070;
    background-image: radial-gradient(circle, rgba(0, 0, 0, 0.15) 10%, transparent 10%);
    background-size:0 auto;
    background-position: 50% center;
    background-repeat: no-repeat;
    border-radius:3px;
    text-shadow:none;
    transition: all 0.5s cubic-bezier(0.1, 0.75, 0.1, 0.75) 0s;
    font-family:"Open Sans", sans-serif;
}

#crm-container .crm-button input[type="button"], #crm-container .crm-button input.crm-form-submit {
    text-shadow:none;
    padding:4px 8px 4px 1.8em;
    font-family:"Open Sans", sans-serif;
}

#crm-container a.button {
    font-size:0.9em;
    padding:4px 8px;
}

#crm-container .crm-button:hover, #crm-container .crm-button:active, #crm-container .crm-button:focus,
#crm-container a.button:hover, #crm-container a.button:active, #crm-container a.button:focus
{
    background-color: #707070;
    background-size: 1000% auto;
}

#crm-container .crm-i-button > .crm-i {
    left:0.5em;
    top:0.5em;
    line-height:1.2;
}

#crm-container .crm-button input.crm-form-submit {
    text-shadow: none;
    padding: 8px 8px 8px 1.8em;
    font-family: "Open Sans", sans-serif;
    text-transform: uppercase;
}

.crm-container fieldset legend {
	font-family:"Open Sans";
	font-weight:600;
	text-transform: uppercase;
}

#crm-container .select2-container .select2-choice {
    background: white;
    height: 35px;
}

#crm-container .select2-container .select2-choice .select2-arrow, #crm-container .select2-container .select2-choice {
    background: white;
    height: 35px;
}

#crm-container .crm-submit-buttons {
    margin: 8px 0 22px 2px;
}

#crm-container .crm-button input[type=button], #crm-container .crm-button input.form-submit, #crm-container .crm-button input.form-submit-inline {
    padding: 6px 8px;
    text-transform: uppercase;
    text-shadow: none;
    font-weight: 600;
    margin: 0px;
    background: none;
    _background: #6C6C6C;
    border: none;
}

