/*-------------------------------------------------------------
- Global Accesibility
-------------------------------------------------------------*/
body a:focus-visible,
body button:focus-visible {
    border: 2px solid;
}
.skip-link {
    position: absolute;
    left: -9999px;
    z-index: 999;
    padding: 1em;
    background-color: #fff;
    color: #000;
    text-decoration: none;
}
.skip-link:focus {
    left: 0;
}
a.read-more,
a.read-less {
    clear: both;
    display: block;
}
.excerpt {
    display: none;
}

/*-------------------------------------------------------------
- Global Styles
-------------------------------------------------------------*/
.wrapall #mobile-header{
    z-index: 10;
}

body.home i.fa.fa-chevron-up {
    font-family: 'FontAwesome';
}

body .object-hidden{
	display: none;
}

/*-------------------------------------------------------------
- Search Filter Styles
-------------------------------------------------------------*/
body.vc_responsive .wpb_row.filter-and-results .vc_col-sm-3 {
    padding-right: 10px;
}

.grants-filter-col {
    background: #fff;
    border-radius: 22px;
}

.grants-filter-col h2 {
    font-size: 1.188rem;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: -.02em;
}
.grants-award-type,
.grants-focus-area,
.grants-status {
    margin: 20px 15px;
    border-bottom: 2px solid #B32317;
    padding-bottom: 20px;
}
.grants-filter-col .grants-search-section h2{
    color:#ffffff;
}
.grants-search-section .search-box input[type="text"] {
    flex: 1;
    border: none;
    margin-bottom: 0;
    width: 100%;
}
.grants-search-section .search-box button {
    border: none;
    background: none!important;
    cursor: pointer;
    color: #dddddd!important;
    font-family: "FontAwesome"!important;
    box-shadow: none!important;
    width: fit-content!important;
    height: fit-content!important;
    padding: 0px!important;
    font-size: 1.375rem!important;
    margin: 0!important;
}
.grants-filter-col button i.fas {
    font-style: normal;
    margin-right: 10px;
    font-family:'FontAwesome';
}
.grants-search-section.purple_bg {
    background-position-x: 40%;
    background-position-y: center;
    background-size: 180%;
    padding: 20px 15px;
    border-radius: 20px 20px 0 0;
}

.grants-search-section .search-box {
    display: flex;
    width: 100%;
    border-radius: 0px;
    background: #ffff;
    padding: 0px;
    align-items: center;
}

/*-------------------------------------------------------------
- Reset Filter Styles
-------------------------------------------------------------*/
body .reset-filter button {
    background: none!important;
    color: #1C9ECA!important;
    text-transform: none!important;
    letter-spacing: 0!important;
    font-family: 'Roboto Condensed';
    font-weight: 600!important;
    padding: 0px;
    margin: 0px;
    border: none;
    box-shadow: none!important;
    font-size: 0.875rem!important;
    transition: all .5s ease-in-out;
}

body .reset-filter button i.fas.fa-redo:before{
	display: none;
}

i.fas.fa-redo:after {
    content: "\f021";
    font-family: 'FontAwesome';
    font-style: normal;
}
.reset-filter {
    text-align: center;
    padding-bottom: 20px;
}
.reset-filter button:hover{
	color:#333333!important;
}

/*-------------------------------------------------------------
- Checkbox Filter Styles
-------------------------------------------------------------*/
table#DataTables_Table_0 {
    width: 100% !important;
}
/* Hide the browser's default checkbox */
.grants-filter-col .checkboxes-section input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
/* Customize the Label */	
.grants-filter-col .checkboxes-section label {
    margin-bottom: 10px;
    position: relative;
    display: block;
    padding-left: 27px;
    font-size: 1rem;
}
/* Create a custom checkbox */
.checkboxes-section .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 18px;
  width: 18px;
  background-color: #fff;
  border: 1px solid #333;
  transition: all .5s ease-in-out;
}
/* On mouse-over, add a grey background color */
.grants-filter-col .checkboxes-section label:hover input ~ .checkmark {
  background-color: #8a9183;
}
/* When the checkbox is checked, add a blue background */
.grants-filter-col .checkboxes-section label input:checked ~ .checkmark {
  background-color: #1C9ECA;
}
/* Create the checkmark/indicator (hidden when not checked) */
.checkboxes-section .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}
/* Show the checkmark when checked */
.grants-filter-col .checkboxes-section input:checked ~ .checkmark:after {
  display: block;
}
/* Style the checkmark/indicator */
.grants-filter-col .checkboxes-section .checkmark:after {
  left: 5px;
  top: 1px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/*-------------------------------------------------------------
- Grant Data Tables Styles
-------------------------------------------------------------*/
.grants_table thead{
    display: none;
}
.grant-result-col div.dt-container.dt-empty-footer tbody>tr:last-child>*{
    border-bottom: none;
}
.grant-result-col {
    background: #fff;
    padding: 30px;
    border-radius: 30px;
}
.grant-result-col h2 {
    font-size: 1.25rem;
    border-bottom: 4px solid #eee;
    padding-bottom: 9px;
    margin-bottom: 20px;
    text-transform: uppercase;
}
.results-article {
    display: flex;
    padding-bottom: 25px;
    border-bottom: 1px solid #ccc;
    margin-bottom: 25px;
}
.results-left-col {
    width: 30%;
    margin-right: 30px;
}
.results-left-col .results-img{
	margin-bottom: 10px
}
.results-right-col {
    width: calc(70% - 30px);
}
.results-right-col h3 {
    font-weight: 600;
    font-size: 1.625rem;
    border-bottom: 1px solid #B32317;
    display: block;
    padding-bottom: 8px;
    margin-bottom: 8px;
    line-height: 1em;
}
.results-right-col h3 a:hover {
	color: #0093BF;
}
.results-right-col h4 {
    font-weight: 400;
    color: #0093BF;
    font-size: 1.25rem;
    text-transform: uppercase;
    margin-bottom: 12px;
    padding-bottom: 0px;
    line-height: 1em;
}
.results-right-col ul.grant-description {
    margin-bottom: 12px;
}
.results-right-col ul li.description-type {
    font-weight: 600;
}
.results-right-col ul li a.read-more:after {
    content: "\f0d7";
    font-family: 'FontAwesome';
    margin-left: 5px;
}
.results-right-col ul li a.read-less:after {
    content: "\f0d8";
    font-family: 'FontAwesome';
    margin-left: 5px;
}
.results-right-col .bottom-announcements {
    border-top: 2px solid #ededed;
    padding-top: 12px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    font-size: 0.938rem;
}
.results-right-col .bottom-announcements .announcement-status,
.results-right-col .bottom-announcements .grant-deadline{
    font-weight: 600;
}
.announcement-status.open{
	color: #3C8605;
}
.announcement-status.closed{
	color: #B32317;
}
.grant-deadline{
	color: #B32317;
}


/*-------------------------------------------------------------
- Grant Data Tables No Results Styles
-------------------------------------------------------------*/
.no-results {
    width: 71%;
    border: 1px solid #004A68;
    text-align: center;
    justify-content: center;
    margin: 0 15% 20px 15%;
    padding-bottom: 20px;
}

.grant-result-col .no-results h2 {
    background-image:none;
    background-color: #162e4a;
    background-repeat: repeat-y;
    background-position-x: center;
    background-position-y: center;
    background-size: 100%;
    color: #ffffff;
    font-size: 1.625rem;
    font-weight: 600;
    padding: 20px;
    line-height: 1.2em;
    border-bottom: none;
}

.grant-result-col .no-results h3 {
    font-weight: 600;
    font-size: 1.375rem;
    margin-bottom: 10px;
}

.grant-result-col .no-results h3 a{
	color: #0093BF;
}

.grant-result-col .no-results h3 a:hover{
	color: #333333;
}

.no-results .reset-filter {
    border-top: 1px solid #d7d7d7;
    padding-top: 10px;
    margin-top: 10px;
    display: inline-block;
    padding-bottom: 0px;
}


/*-------------------------------------------------------------
- Mobile Facet
-------------------------------------------------------------*/
.custom_isotope_filter.mobile_facet_menu{
    display: block!important;
    position: fixed;
    z-index: 9999999;
    box-shadow: 0 0 4px rgba(0,0,0,.3);
    background: #fff;
    left: 110%;
    padding-top: 0px;
    top: 0px;
    width: 75%;
    height: 100% !important;
    transition: left .2s ease-out,top .2s ease-out,width .2s ease-out,height .2s ease-out;
    border-radius: 21px;
}
.custom_isotope_filter.mobile_facet_menu.open{
    left:25%;
}
.custom_isotope_filter.mobile_facet_menu.closed{
    left:110%;
    transition: left .2s ease-out,top .2s ease-out,width .2s ease-out,height .2s ease-out;
}
.custom_isotope_filter.closed a.mobile_facet_side_button,
a.mobile_facet_trigger.mobile_facet_bottom_button.closed{
    display: none;
}
a.mobile_facet_bottom_button{
    z-index: 9999999;
    background: #B32317;
    display: inline-block;
    padding: 5px 20px;
    color: #fff;
}
a.mobile_facet_side_button {
    position: absolute;
    top: 260px;
    display: inline-block;
    padding: 10px;
    left: -45px;
    background: #B32317;
    color: #fff;
    transform: rotate(270deg);
    transform-origin: left top 0;
    font-size: 1.25rem;
}
a.mobile_facet_bottom_button:hover,
a.mobile_facet_side_button:hover{
    color:#fff;
}

/*-------------------------------------------------------------
- Media Query
-------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
    a.mobile_facet_trigger.mobile_facet_bottom_button.closed{
        display: inline-block;
    }
    .filter_trigger{
        display: none;
    }
}

@media only screen and (max-width: 479px){

	body.vc_responsive .wpb_row.filter-and-results .vc_col-sm-3 {
	    padding-right: 20px;
	}
	
	.grants-filter-col .checkboxes-section label {
	    font-size: 1.125rem;
	}

	body .results-right-col .bottom-announcements {
	    display: block;
	    text-align: center;
	}
}