/*
Theme Name: OTF (Beaver Builder Child Theme)
Theme URI: http://www.wpbeaverbuilder.com
Version: 1.0
Description: OTF theme, built for Beaver Builder
Author: Sterner Stuff / The Beaver Builder Team
Author URI: https://sternerstuff.dev / http://www.fastlinemedia.com
template: bb-theme
*/

/* Add your custom styles here... */ 

a {
    font-weight:600;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    font-weight:400;
}

.fl-page-header-logo .fl-logo-img {
	max-width:min(100%, 400px);
}

.fl-full-width .fl-page-header-container.container {
	width:100%;
}

.fl-widget-title {
    text-transform:uppercase;
    border-bottom:1px solid #555;
    font-size:12px;
    font-weight:700;
    padding-bottom:12px;
    letter-spacing:2px;
}

.fl-post-feed-image {
    text-align:center;
}

.fl-post-feed-image img {
    width:auto !important;
}

.fl-col-d-flex .fl-col-content {
    display:flex;
}

.fl-col-align-items-end .fl-col-content {
    align-items:flex-end;
}

.fl-col-justify-content-stretch .fl-col-content {
    justify-content:stretch;
}

.fl-col-justify-content-end .fl-col-content {
    justify-content:flex-end;
}

.fl-col-flex-wrap .fl-col-content {
    flex-wrap:wrap;
}

.fl-col-flex-column .fl-col-content {
    flex-direction:column;
}

.portal__header img {
    width:100%;
    height:auto;
}

.portal__nav ul {
    list-style-type:none;
}

.portal__nav > ul, .portal__nav > ul > li > ul {
    padding-left:0;
}

.portal__nav > ul > li > a {
    text-transform:uppercase;
}

.portal__nav > ul > li > ul {
    margin-top:.9em;
}

.portal__nav ul ul ul {
    padding-left:20px;
}

.fl-post-feed .fl-post-feed-post {
    padding-bottom:40px;
}

.fl-page-footer .fl-social-icons i.fab,
.fl-page-footer .fl-social-icons i.fas {
    font-size: 14px;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    line-height: 24px;
}

@media screen and (max-width:991px) {
    .fl-page-footer {
        padding-bottom:20px;
    }
}

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

    .fl-page-nav-right .fl-page-header-container {
        padding-top:43px;
        padding-bottom:22px;
    }

    .fl-page-bar, .fl-page-footer {
        position: absolute;
        right: 5%;
        padding: 5px;
        z-index:5;
    }

    .fl-page-bar {
        border-bottom:0;
        border-radius: 0 0 8px 8px;
    }

    .fl-page-footer {
        bottom:0;
        border-top:0;
        border-radius:8px 8px 0 0;
    }

    .fl-page-bar .fl-page-bar-container.container,
    .fl-page-footer .fl-page-footer-container.container {
        width:auto;
        max-width:none;
        padding-top:0;
        padding-bottom:0;
    }

    .fl-page-bar .fl-social-icons, .fl-page-footer .fl-social-icons {
        white-space:nowrap;
        padding:0 2px;
    }

    .fl-page-bar .fl-social-icons i.fas, 
    .fl-page-bar .fl-social-icons i.fab,
    .fl-page-footer .fl-social-icons i.fas, 
    .fl-page-footer .fl-social-icons i.fab {
        font-size:18px;
        width:28px;
        height:28px;
        line-height:28px;
    }
}

/** The Events Calendar **/
.tribe-common p {
    margin-bottom:1.75rem;
}

.tribe-common .container,
.tribe-common .container-fluid {
    padding-inline:15px;
    margin-inline:auto;
}

.tribe-common .row {
    margin-inline:-15px;
}

.tribe-common [class*="col-"] {
    padding-inline:15px;
}

.tribe-common .tribe-events-header__events-bar {
    margin-bottom:0;
    padding-right:var(--tec-spacer-2);
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-header__events-bar {
    margin-bottom:0;
}

.tribe_events-template-default.has-blocks #tribe-events-pg-template {
    max-width:none;
    padding-inline:0;
    padding-top:0;
}

#tribe-events-content.tribe-blocks-editor {
    padding-top:0;
}

.tribe-blocks-editor .tribe_events.hentry > * {
    max-width: 960px;
    margin-left: auto !important;
    margin-right: auto !important;
}

.tribe-blocks-editor .tribe_events.hentry > .alignwide {
    max-width:1100px;
}

.tribe-blocks-editor .tribe_events.hentry > .alignfull {
    max-width:none;
}

.event-tickets .tribe-tickets__tickets-form, 
.entry .entry-content .event-tickets .tribe-tickets__tickets-form {
    max-width:none;
    margin-top:0;
}

.tribe-events-schedule__date,
.tribe-events-schedule__all-day, 
.tribe-events-schedule__separator, 
.tribe-events-schedule__timezone,
.tribe-events-schedule__time {
    font-size:inherit;
    font-weight:inherit;
}

.tribe-block__venue,
.tribe-block__organizer,
.tribe-block__organizer__details {
    padding-block:0;
}

.tribe-block__venue__meta h3 {
    font-size:var(--tec-font-size-3);
}

.tribe-block__organizer__details {
    border-top:none;
}

.tribe-block__venue {
    border:none;
    padding-inline:0;
}

.otf-event-title .wp-block-cover__image-background {
    width:33%;
}