/**
Theme Name: BPFI Layers Child
Author: Create
Author URI: http://create.ie
Description: BPFI Child theme for the Layers Theme
Version: 1.0.0
Text Domain: bpfi
Template: layers-elementor

**Color reference, for consistency**
   navy: #
  link color: #
  yellow: #
  light blue: #

**Table of contents**
*/
body {
    color: #54595F;
}
h1, h2, h3, h4, h5, h6 {
    color: #54595F;
}
p {
    margin-bottom: 15px;
}
.section-title .heading {
    color:#002957;
}
.section-title.large .heading {
    font-weight: 700;
}
.container {
   max-width: 1200px;
   margin: 0 auto;
}
a {
    color: #007ac1;
}
textarea, input, select, button {
    color:#54595F;
    border-radius: 0;
}
input[type=button],
input[type=submit],
button,
.button {
    background-color: #002e4e;
    color: #7FBA00;
    padding: 10px 15px;
    line-height: 1.5rem;
}
.button.print {
    background: #e3e3e3;
    color:#54595F;
}
input[type=button]:hover,
input[type=submit]:hover,
button:hover,
.button:hover,
.simplefavorite-button.active,
.button.print:hover {
    background-color: #002957;
    color: #EFCD29; 
    opacity: 1;
}
body .elementor-element.elementor-widget-theme-post-content h1,
body .elementor-element.elementor-widget-theme-post-content h2,
body .elementor-element.elementor-widget-theme-post-content h3,
body .elementor-element.elementor-widget-theme-post-content h4,
body .elementor-element.elementor-widget-theme-post-content h5 {
    font-family: Montserrat;
    font-weight: 600;
    margin-bottom: 15px;
}
/*------------------------- HEADER --*/
/* No margin as hidden */
.site-logo-link + .site-description.sr-only,
.custom-logo-link + .site-description.sr-only {
    margin-left: 0;
}
.header-site {
    box-shadow: rgba(0, 0, 0, .2) 0 2px 5px 0px;
}

/* NAV MENU */
.header-site .nav-horizontal > ul > li > a {
    padding: 0 15px;
}
.header-site .sub-menu,
.header-site .nav .children {
    background-color: #041932;
    visibility: hidden;
    opacity: 0;
    position: absolute;
    top: 60px;
    left: 0;
    border-width: 5px 0 0 0;
    border-top: 5px solid #7fb700; 
    z-index: 5;
    transition: all 0.4s ease-in-out;
    line-height: normal;
}
.header-site .sub-menu li a,
.nav .children li a {
    display: block;
    padding: 20px 13px 20px 20px;
    background: none;
    color: #fff;
    text-transform: none;
    text-align: left;
}
/* inverted colours */
.header-site.invert .sub-menu li {
    border-bottom: 1px solid #002e4e;
}
.header-site.invert .sub-menu, .header-site.invert .sub-menu li a {
    background: #5d839d;
    color: #fff;
}
.header-site.invert .sub-menu li a:hover {
    background-color: #002e4e;
}
.header-site.invert .sub-menu li.current_page_item a {
    background-color: #0a2e4e;
}

/* MOBILE MENU */
div[class*=' off-canvas-'] {
    background: #051A31;
}
div[class*=' off-canvas-'] li a {
    color: #ffffff;
    font-weight: 500;
}
div[class*=' off-canvas-'] .nav-vertical .sub-menu {
    margin-left: 20px;
}
/* END FIX MOBILE SUB MENU FROM FRAMEWORK CSS. */

/* ---------------  Responsive Nav Menu Plugin ----*/
button#responsive-menu-button.is-active {
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
}
/* allow see menu better when admin bar active */
.admin-bar button#responsive-menu-button {
    top: 50px;
}
.admin-bar ul#responsive-menu {
    padding-top: 60px;
}

/* screen reader only */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
/* ------------------------- RESOURCES POSTS ----*/
.elementor-posts .elementor-post .elementor-post__badge {
    position: relative;
    background-color: transparent;
    color: #969696;
    font-weight: 600;
}

.elementor-posts-container.elementor-posts .elementor-grid-item {
    position: relative;
    background-color: transparent;
    color: #969696;
    font-weight: bold;
}
.elementor-posts .elementor-post .elementor-post__title a {
    color: #002E4E;
}
.elementor-posts .elementor-post a.elementor-post__read-more {
    color: #7fba00;
    text-transform: capitalize!important;
}
nav.elementor-pagination {
    margin: 50px 0;
}
article.post::before,
article.publications::before,
article.opinions::before,
article.insights::before,
#pinned-news article.elementor-post .elementor-post__text::before{
    background: #002e4e;
    color: white;
    font-size: 0.8em;
    display: block;
    z-index: 1;
    position: absolute;
    left: 0;
    top: -29px;
    padding: 6px 25px;
    text-transform: uppercase;
    width: 100%;
    text-align: left;
}
article.post::before {
    content: "News";
    background-color: #7fb800;
}
article.publications::before {
    content: "publication";
    background-color: #002e4e;
}
article.opinions::before {
    content: "opinion";
    background-color: #6aa4c3;
}
article.insights::before {
    content: "Insights";
    background-color: #6aa4c3;
}
#pinned-news article.elementor-post .elementor-post__text::before {
    content: "Latest News";
    color: #002e4e;
    background-color: transparent;
    position: relative;
    padding-left: 0;
    padding-bottom: 10px;
    font-size: 1em;
    letter-spacing: 1px;
}
#pinned-news article.post.elementor-post::before {
    display: none;
}
/* Search page adjust label */
body.search-results article.post::before,
body.search-results article.publications::before,
body.search-results article.opinions::before,
body.search-results article.insights::before {
    position: relative;
    box-sizing: border-box;
    margin-bottom: 10px;
}
/* remove from event brite listings */
.wfea article.post::before {
    display: none;
    position: relative;
}

/*--------------- Elementor default adjustments */
/* Bullets */
.elementor-text-editor ul,
.elementor-text-editor ol,
.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol,
.elementor-widget-theme-post-content ul,
.elementor-widget-theme-post-content ol,
.elementor-widget-accordion .elementor-accordion .elementor-tab-content ul,
.elementor-widget-accordion .elementor-accordion .elementor-tab-content ol,
.elementor-widget-toggle .elementor-toggle .elementor-tab-content ul,
.elementor-widget-toggle .elementor-toggle .elementor-tab-content ol {
    margin: 15px;
}
.elementor-text-editor ul li,
.elementor-widget-text-editor ul li,
.elementor-widget-theme-post-content ul li,
.elementor-widget-accordion .elementor-accordion .elementor-tab-content ul li,
.elementor-widget-toggle .elementor-toggle .elementor-tab-content ul li {
    list-style: disc;
    margin-left: 15px;
    margin-bottom: 5px;
}
.elementor-text-editor ol li,
.elementor-widget-text-editor ol li,
.elementor-widget-theme-post-content ol li,
.elementor-widget-accordion .elementor-accordion .elementor-tab-content ol li,
.elementor-widget-toggle .elementor-toggle .elementor-tab-content ol li {
    list-style: decimal;
    margin-left: 15px;
    margin-bottom: 5px;
}
/* Bullet markers */
.elementor-text-editor ul li::marker,
.elementor-widget-text-editor ul li::marker,
.elementor-widget-theme-post-content ul li::marker,
.elementor-widget-accordion .elementor-accordion .elementor-tab-content ul li::marker,
.elementor-text-editor ol li::marker,
.elementor-widget-theme-post-content ol li::marker,
.elementor-widget-accordion .elementor-accordion .elementor-tab-content ol li::marker,
.elementor-widget-toggle .elementor-toggle .elementor-tab-content ol li::marker,
.elementor-widget-toggle .elementor-toggle .elementor-tab-content ul li::marker {
    color: var(--colour-2-darker);
    font-weight: 900;
}

/* Event Brite listings */
/* home page listings */
.wfea.eb-home-grid.grid .entry-header {
    background-color: #7eb700;
    background-image: url(images/bpfi-guilloche-360-75percent.png);
    background-repeat: no-repeat;
}
.wfea.eb-home-grid.grid .entry-header h4 {
    font-size: 2.8rem;
    font-family: montserrat;
    line-height: 1.2;
    margin-bottom: 1.6rem;
}
.wfea .entry-title a {
    color: #043051;
    font-weight: bold;
}
.wfea.eb-home-grid.grid .entry-header time.eaw-time {
    color: white;
    display: block;
    text-transform: uppercase;
    font-weight: bold;
}
section.wfea.grid .entry-meta {
    padding: 10px 0;
    font-size: 90%;
    font-style: normal;
    font-weight: bold;
}
/* Grid layout */
section.wfea.eb-home-grid.grid {
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 25px;
}
.wfea.eb-home-grid .excerpt {
    font-size: 90%;
    margin-top: 15px;
    font-weight: 400;
}
.wfea.eb-home-grid a.more-link {
    background: #002d4e;
    color: white;
    display: block;
    width: 100%;
    margin: 10px 0 0;
    padding: 7px;
    text-align: center;
}
/* Event Brite Calendar */
.eb-cal .fc-button-group {
    display: flex;
}
.eb-cal .fc-toolbar.fc-header-toolbar {
    background: #112c4d;
    margin-bottom: 0;
    padding: 10px;
}


/*-------------------- PINNED NEWS ON HOMEPAGE  ---*/
#pinned-news.elementor-posts--thumbnail-top .elementor-post__text {
    padding: 30px;
}
#pinned-news .elementor-posts .elementor-post a.elementor-post__read-more {
    background: #7fba00;
    color: #fff;
    padding: 10px 15px;
    font-size: .9em;
}

/*-------------------- RESOURCES SEARCH ---------------*/
/* Only the Combo box version */
#search-filter-form-248 .chosen-container.chosen-container-single {
    width: 100%!important;
}
#search-filter-form-248 .chosen-container.chosen-container-single .chosen-single {
    background-color: #fff;
    border: 2px solid #eee;
    border-radius: 0;
    color: #8f8f8f;
    font-size: 1.5rem;
    height: 36px;
    line-height: 34px;
}
.chosen-container-single .chosen-single div {
    top: 5px;
}
/* END Only the Combo box version */

#search-filter-form-248 .sf-field-submit input,
#search-filter-form-248 .sf-field-post_type label,
#search-filter-form-248 .sf-input-select,
#search-filter-form-248 ul.sf_date_field label,
#search-filter-form-248 .sf-field-post_date .sf-input-date {
    border-radius: 4px;
    width: 100%;
}
#search-filter-form-248 li.sf-field-submit {
    margin-top: 30px;
}
form.searchandfilter h4 {
    color: #fff;
}
li.sf-field-reset {
    text-align: center;
}
/* Date skin picker colour */
body .ll-skin-melon .ui-widget {
    background: #002e4e;
}
/* Combobox field */
.searchandfilter .select2-container--default .select2-selection--single {
    height: 36px;
}
.searchandfilter .select2-container .select2-selection--single .select2-selection__rendered {
    padding-top: 3px;
}
.searchandfilter .select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 4px;
}

/* Guids and Forms */
body .forms-guides a {
    color:#fff;
}
body .forms-guides a:hover {
    color:#002E4E;
}
/* Icon depending on file extension */
.forms-guides a[href$=".doc"]:before,
.forms-guides a[href$=".docx"]:before {
    content: "\f1c2";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    margin-right: 10px;
}

.forms-guides a[href$=".pdf"]:before {
    content: "\f1c1";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    margin-right: 10px;
}
.forms-guides a[href$=".xls"]:before,
.forms-guides a[href$=".xlsx"]:before {
    content: "\f1c3";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    margin-right: 10px;
}

/* Blockquote style 1 in text and in accordion */
.blockq-style-1 blockquote,
.blockq-style-1 .elementor-accordion-item .elementor-tab-content blockquote {
    background-color: #ebebeb;
    border-style: solid;
    border-width: 0px 0px 0px 5px;
    border-color: #7FBA00;
    box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 25%);
    margin: 20px;
    padding: 20px 20px 5px 20px;
}

/*----------- MEDIA QUERIES ----------*/
/*--------------------------------------------------------------*/
/*- EVERYTHING BIGGER THAN PHONES -----------------------------*/
/*--------------------------------------------------------------*/
@media only screen and (min-width: 576px) {
    #search-filter-form-248 li.sf-field-category,
    #search-filter-form-248 .sf-field-post_type {
        width: 49%;
        display: inline-block;
    }
    #search-filter-form-248 li.sf-field-category,
    #search-filter-form-248 .sf_date_field li {
        margin-right: 1%;
    }
    #search-filter-form-248 .sf-field-post_type,
    #search-filter-form-248 .sf_date_field li:last-child {
        margin-left: 1%;
    }
    #search-filter-form-248 .sf_date_field li:last-child {
        margin-right: 0;
    }
    /* date range */
    #search-filter-form-248 .sf_date_field li {
        display: inline-block;
        width: 49%;
    }
    /* Event Brite listings */
    /* home page listings */
    .wfea.eb-home-grid.grid .entry-header {
        min-height: 210px;
    }
    /* Grid layout */
    section.wfea.eb-home-grid.grid {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 25px;
    }
}
/*--------------------------------------------------------------*/
/*- EVERYTHING BIGGER THAN TABLETS -----------------------------*/
/*--------------------------------------------------------------*/
@media only screen and (min-width: 959px) {
    #search-filter-form-248 li.sf-field-category,
    #search-filter-form-248 .sf-field-post_type,
    #search-filter-form-248 li.sf-field-post_date,
    #search-filter-form-248 li.sf-field-submit {
        width: 32%;
        display: inline-block;
    }
    #search-filter-form-248 li.sf-field-category {
        margin-right: 2%;
    }
    #search-filter-form-248 .sf-field-post_type {
        margin-right: 2%;
        margin-left: 0;
    }
    #search-filter-form-248 li.sf-field-submit {
        margin-top: 0;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }
    /* Grid layout */
    section.wfea.eb-home-grid.grid {
        grid-template-columns: repeat(4, 1fr);
        grid-gap: 25px;
    }
    /* Event Brite listings */
    /* home page listings */
    .wfea.eb-home-grid.grid .entry-header {
        min-height: 242px;
    }
}
/*--------------------------------------------------------------*/
/*-  BIGGER THAN TABLETS  -----------------------------*/
/*--------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
    /*-------------------- PINNED NEWS ON HOMEPAGE  ---*/
    #pinned-news.elementor-posts--thumbnail-top .elementor-post {
        position: relative;
    }
    #pinned-news.elementor-posts--thumbnail-top .elementor-post__text {
        position: absolute;
        bottom: 0;
        background: rgb(0,46,78);
        background: -webkit-linear-gradient(rgba(0,46,78,0) 0%, rgba(0,46,78,1) 50%, rgba(0,46,78,1) 100%);
        background: -o-linear-gradient(rgba(0,46,78,0) 0%, rgba(0,46,78,1) 50%, rgba(0,46,78,1) 100%);
        background: linear-gradient(rgba(0,46,78,0) 0%, rgba(0,46,78,1) 50%, rgba(0,46,78,1) 100%);
    }
    #pinned-news.elementor-posts--thumbnail-top .elementor-post__title a,
    #pinned-news.elementor-posts--thumbnail-top .elementor-post__excerpt p,
    #pinned-news article.elementor-post .elementor-post__text::before{
        color: #fff;
    }
   
    
}

/*--------------------------------------------------------------*/
/*- NAVIGATION BIGGER THAN TABLETS SMALLER THAN DESKTOP -----------------------------*/
/*--------------------------------------------------------------*/
@media only screen and (min-width: 769px) and (max-width: 959px) {
    /* navigation */
    .header-site .nav-horizontal > ul > li > a {
        font-size: 14px;
        padding: 0 5px;
    }
    .nav-horizontal .sub-menu li a {
        font-size: 13px;
        padding: 20px 15px;
    }
    .nav > ul > li .sub-menu .sub-menu,
    .nav li:hover > .sub-menu .sub-menu,
    .nav > ul > li .children .children,
    .nav li:hover > .children .children {
        left:137px;
    }
    
}
/*--------------------------------------------------------------*/
/*- EVERYTHING BIGGER THAN 1024 -----------------------------*/
/*--------------------------------------------------------------*/
@media only screen and (min-width: 1024px) {
    /* Event Brite listings */
    /* home page listings */
    section.wfea.eb-home article .wfea-group .wfea-row,
    section.wfea.eb-home .wfea-group .wfea-row.wfea-banner .wfea-left,
    section.wfea.eb-home article .wfea-group .wfea-row.wfea-banner .wfea-cell {
        width:100%;
        display: block;
    }
    section.wfea.eb-home .entry-header > time,
    section.wfea.eb-home .entry-header > h2.entry-title {
        display: inline-block;
    }
    
}
/*--------------------------------------------------------------*/
/*- EVERYTHING BIGGER THAN 1200 -----------------------------*/
/*--------------------------------------------------------------*/
@media only screen and (min-width: 1200px) {
    .wfea.eb-home-grid.grid .entry-header h4 {
        font-size: 3.4rem;
    }
}

/*--------------------------------------------------------------*/
/*- EVERYTHING BIGGER THAN 1400 -----------------------------*/
/*--------------------------------------------------------------*/
@media only screen and (min-width: 1400px) {
    
    .header-site .sub-menu li,
    .nav .children li {
	    width: 218px;
    }
    .header-site .nav > ul > li .sub-menu .sub-menu,
    .header-site .nav li:hover > .sub-menu .sub-menu,
    .header-site .nav > ul > li .children .children,
    .header-site .nav li:hover > .children .children {
        left:218px;
    }
}

/*--------------------------------------------------------------*/
/*- RESPONSIVE TABLE GENERATED FROM https://ianrmedia.unl.edu/responsive-table-generator-tool -----------------------------*/
/*--------------------------------------------------------------*/

:root {
    --bg-table-stripe: #f6f6f5;
    --b-table: #e3e3e2;
    --caption: #242423;
}

table {
    background-color: transparent;
    border-collapse: collapse;
    font-family: Arial, Helvetica, sans-serif
}

th {
    text-align: left
}

.dcf-txt-center {
    text-align: center !important
}

.dcf-txt-left {
    text-align: left !important
}

.dcf-txt-right {
    text-align: right !important
}

.dcf-table caption {
    color: var(--caption);
    font-size: 1.13em;
    font-weight: 700;
    padding-bottom: .56rem
}

.dcf-table thead {
    font-size: .84em;
    background-color: #8bcc00;
}

.dcf-table tbody {
    border-bottom: 1px solid var(--b-table);
    border-top: 1px solid var(--b-table);
    font-size: .84em
}

.dcf-table tfoot {
    font-size: .84em
}

.dcf-table td,
.dcf-table th {
    padding-right: 1.78em
}

.dcf-table-bordered,
.dcf-table-bordered td,
.dcf-table-bordered th {
    border: 1px solid var(--b-table)
}

.dcf-table-bordered td,
.dcf-table-bordered th,
.dcf-table-striped td,
.dcf-table-striped th {
    padding-left: 1em;
    padding-right: 1em
}

.dcf-table-bordered tr:not(:last-child),
.dcf-table-striped tr:not(:last-child) {
    border-bottom: 1px solid var(--b-table)
}

.dcf-table-striped tbody tr:nth-of-type(2n) {
    background-color: var(--bg-table-stripe)
}

.dcf-table thead td,
.dcf-table thead th {
    padding-bottom: .75em;
    vertical-align: bottom
}

.dcf-table tbody td,
.dcf-table tbody th,
.dcf-table tfoot td,
.dcf-table tfoot th {
    padding-top: .75em;
    vertical-align: top
}

.dcf-table tbody td,
.dcf-table tbody th {
    padding-bottom: .75em
}

.dcf-table-bordered thead th {
    padding-top: 1.33em
}

.dcf-wrapper-table-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    left: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    padding-bottom: 1em;
    position: relative;
    right: 50%;
    width: 100vw
}

@media only screen and (max-width:42.09em) {
    .dcf-table-responsive thead {
        clip: rect(0 0 0 0);
        -webkit-clip-path: inset(50%);
        clip-path: inset(50%);
        height: 1px;
        overflow: hidden;
        position: absolute;
        width: 1px;
        white-space: nowrap
    }

    .dcf-table-responsive tr {
        display: block
    }

    .dcf-table-responsive td {
        -webkit-column-gap: 3.16vw;
        -moz-column-gap: 3.16vw;
        column-gap: 3.16vw;
        display: grid;
        grid-template-columns: 1fr 2fr;
        text-align: left !important
    }
    /* if not using resposive header cells with data-label */
    .dcf-table-responsive.no-data-label td {
        grid-template-columns: 1fr;
    }
    .dcf-table-responsive th {
        display: block;
        background: #7FBA00;
    }
    .dcf-table-responsive.dcf-table-bordered,
    .dcf-table-responsive.dcf-table-bordered thead th {
        border-width: 0
    }

    .dcf-table-responsive.dcf-table-bordered tbody td {
        border-top-width: 0
    }

    .dcf-table-responsive:not(.dcf-table-bordered) tbody tr {
        padding-bottom: .75em
    }

    .dcf-table-responsive:not(.dcf-table-bordered) tbody td {
        padding-bottom: 0
    }

    .dcf-table-responsive:not(.dcf-table-bordered):not(.dcf-table-striped) tbody td {
        padding-right: 0
    }

    .dcf-table-responsive.dcf-table-bordered tbody tr:last-child td:last-child {
        border-bottom-width: 0
    }

    .dcf-table-responsive tbody td:before {
        content: attr(data-label);
        float: left;
        font-weight: 700;
        padding-right: 1.78em
    }
}

.dcf-overflow-x-auto {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch
}

.dcf-w-100\% {
    width: 100% !important;
}
/* END RESPONSIVE TABLE */