/**
 * Color classes and default styling are in /assets/main.css, focus your efforts there
 * @import external fonts at top of this page before default.css
 * remove comment for dark-mode.css if you want to enable that -- will not be 100%, you will need to fix minor things
 */
@import url("./assets/default-settings.css");
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
/** @import url("assets/dark-mode.css"); */

/* global */
body { overflow-x: hidden; }
body, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, a { font-family: "Montserrat", sans-serif !important; }
body:not(.home) header.not-sticky { border-bottom: 3px solid #b4b4b4; }
body.home nav.navbar-expand-lg { padding: 20px; }
a, a, a:hover, .red { color: #bf2014; text-decoration: none; }
body > .container { font-size: 1.25rem; }
p { color:#000; }
h1, h2, .h1, .h2, h3, h4, h5, h6, .h3, .h4, .h5, .h6 { color: #424242; }
.post-content .page-title { text-align: center; }
.post-content .post-header { margin-bottom: 30px; }

/* buttons */
.btn-base, .btn-base a { width: 300px; font-size: 20px; padding:10px; border-radius: 0; }
.btn-red, .btn-red a, .btn-red:hover   { background-color: #bf2014; color: #fff; text-decoration: none; }
.btn-gray, .btn-gray a, .btn-gray:hover { background-color: #868686; color: #fff; text-decoration: none; }
.btn-white, .btn-white a, .btn-white:hover, .btn-white a:hover { background-color: #fff; color: #bf2014; text-decoration: none; }
.btn.btn-primary, .btn-base.btn-primary a { background-color: #bf2014; color: #fff; border: 1px solid #bf2014; }
.btn.btn-primary:hover, .btn-base.btn-primary a:hover, .btn.btn-primary:active, .btn-base.btn-primary a:active, .btn.btn-primary:focus, 
.btn-base.btn-primary a:focus, .btn.btn-primary.active { background-color: #bf2014 !important; color: #fff !important; border: 1px solid #bf2014; }

/* full-width bg colors */
.bg-lt-gray.full-width::before      { border-left: 99rem solid #ececec; box-shadow: 99rem 0 0 #ececec; }
.bg-dk-gray.full-width::before      { border-left: 99rem solid #6b6b6b; box-shadow: 99rem 0 0 #6b6b6b; }
.bg-red.full-width::before          { border-left: 99rem solid #bf2014; box-shadow: 99rem 0 0 #bf2014; }
.bg-lft-red.full-width::before      { border-left: 99rem solid #bf2014; box-shadow: 99rem 0 0 #ececec; }
.bg-black.full-width::before        { border-left: 99rem solid #000000; box-shadow: 99rem 0 0 #cfcfcf; }
.bg-lft-edk-gray.full-width::before { border-left: 99rem solid #4c4c4c; box-shadow: 99rem 0 0 #ececec; }

/* colors */
.bg-md-gray   { background: #cfcfcf !important; } .bg-edk-gray { background: #4c4c4c; }
.text-red     { color: #bf2014 !important; } .bg-red     { background: #bf2014 !important; } .border-red     { border-color: #bf2014 !important; }
.text-lt-gray { color: #ececec !important; } .bg-lt-gray { background: #ececec !important; } .border-lt-gray { border-color: #ececec !important; }
.text-dk-gray { color: #6b6b6b !important; } .bg-dk-gray { background: #6b6b6b !important; } .border-dk-gray { border-color: #6b6b6b !important; }
.text-gray    { color: #d2d2d2 !important; } .bg-gray    { background: #d2d2d2 !important; } .border-gray    { border-color: #d2d2d2 !important; }
.text-sblue   { color: #203A7C !important; } .bg-sblue   { background: #203A7C !important; } .border-sblue   { border-color: #203A7C !important; }

/* layout */
.mw-200 { max-width: 200px !important; } .mw-250 { max-width: 250px; } .mw-260 { max-width: 260px; }
.mw-350 { max-width: 350px; }
.mw-430 { max-width: 430px; } .mw-450 { max-width: 450px; } .mw-465  { max-width: 465px; } .mw-475 { max-width: 475px; }
.mw-500 { max-width: 500px; } .mw-650 { max-width: 650px; } .mw-1100 { max-width: 1100px; }
.mt-150 { margin-top: 150px; }

/* header and nav */
.navbar { --bs-navbar-nav-link-padding-x: 0.75rem; }
.rok { width: clamp(300px, 30%, 400px); }
header .navbar-brand { padding: 15px 15px 15px 0; }
header .navbar-brand img { height: auto; }
#mainMenuNav .nav-link { color: #424242; font-size: 1.25rem; }
#mainMenuNav .nav-link.active { color: #000; font-weight: 700; }
#mainMenuNav .cart-nav-item { display: none; }
.dropdown-item.active, .dropdown-item:active { background-color: #000; color: #fff; }

.wpcf7-form-control-wrap { display: inline-block; }
.wpcf7-form-control-wrap, .wpcf7-form-control-wrap label { width: 100%; }

/* secondary nav */
.social-nav .search-form { display: none; }

/* search results */
#jwbs-newsfeed-archive .card-title .text-primary { color: #bf2014 !important; }
#jwbs-newsfeed-archive .border-primary-subtle { border-color: #b4b4b4 !important; }

/* calendar */
.tribe-events .tribe-events-c-search__button, .tribe-events button.tribe-events-c-search__button { background-color: #bf2014; color: #fff; }
.tribe-common .tribe-common-c-btn:focus, .tribe-common .tribe-common-c-btn:hover, .tribe-common a.tribe-common-c-btn:focus, .tribe-common a.tribe-common-c-btn:hover, .tribe-common button.tribe-common-c-btn:focus, .tribe-common button.tribe-common-c-btn:hover { background-color: #bf2014; color: #fff; }
.event-content { border: 1px solid rgba(191, 32, 20, .55) !important; padding: 1rem !important; margin-bottom: 2rem !important; }
.event-content p:not(:last-of-type) { margin-bottom: 1rem; }
.event-content .event-link { color: #bf2014 !important; }

/* footer */
footer { padding: 60px 0 45px; background-color: #000; position: relative; }
footer p { font-size: 17px; }
footer:before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: -75rem; z-index: -1; border-left: 99rem solid #000; box-shadow: 99rem 0 0 #000; }
footer #menu-footer-menu-left { list-style-type: none; padding-left: 0; font-size: 17px; }
footer #menu-footer-menu-right { list-style-type: none; padding-left: 20px; }
footer #menu-footer-menu-left li, footer #menu-footer-menu-right li { margin: 5px 0; }
footer #menu-footer-menu-left a, footer #menu-footer-menu-right a { color: #fff; text-decoration: none; }
/** 4 menu above can probably get deleted, keeping for reference */
footer .menu { list-style: none; padding-inline-start: 0; }
footer .menu a { color: #ffffff; }

/* accordions */
.accordion-header.expanded::before { content: "\f460"; transform: rotate(180deg); }
.accordion-item p, .accordion-item .card-body h5, .accordion-item .card-body small { font-size: 1rem; }
.accordion-item .accordion-button { padding-left: 40px; font-weight: bold; }
.accordion-item .accordion-button::after { content: none; }
.accordion-item .accordion-header:before { background-color: #bf2014; top:26px; left: 20px; line-height: 22px; height:20px; width:20px; font-size: 14px; transition: transform 0.5s ease; }
.accordion-item .accordion-header:after { border-bottom: none; }
.accordion-body { padding-left: 3.5rem; font-size: 1rem; }
.accordion-body p:empty { display: none; }

/* events, cart, and checkout */
.event-tickets .tribe-tickets__tickets-item-extra-available { display: none; }
.woocommerce-cart .ppc-button-wrapper { display: none !important; }
.woocommerce-message, .woocommerce-info { border-top-color: #bf2014; }
.woocommerce-message::before, .woocommerce-info::before { color: #bf2014; }
.woocommerce #place_order { background-color: #bf2014; }
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment { background: #ececec !important; }
#add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box { background: #d2d2d2 !important; }
#add_payment_method #payment div.payment_box::before, .woocommerce-cart #payment div.payment_box::before, .woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #d2d2d2 !important; }
.woocommerce .payment_box.payment_method_ppcp-gateway { display: none; }
.tribe-common .tribe-common-cta--thin-alt { border-bottom-color: #bf2014; }
.tribe-common .tribe-common-c-btn-border, .tribe-common a.tribe-common-c-btn-border { border-color: #bf2014; color: #bf2014; }
.tribe-common .tribe-tickets__attendee-tickets-footer button.tribe-common-c-btn-link { background-color: transparent !important; color: #bf2014 !important; text-decoration: none; }
.tribe-common a.tribe-common-c-btn--small, .tribe-common button.tribe-common-c-btn--small, .tribe-common input[type=button].tribe-common-c-btn--small, .tribe-common input[type=submit].tribe-common-c-btn--small { background-color: #bf2014 !important; }
.single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover { background-color: #bf2014; }
.wc-block-components-order-summary-item__image img, .woocommerce-cart-form__cart-item.cart_item .product-thumbnail img { visibility: hidden; }
.return-to-shop, .post-header .meta { display: none; }
.tribe-events-event-cost-label, .tribe-events-event-cost, .tribe-events-cost, .tribe-events-c-small-cta__price { display: none !important; }
.tribe_event_series-template-default .tribe-events-header, .tribe_event_series-template-default .tribe-events-pro-summary, .tribe_event_series-template-default .tribe-events-pro-summary-nav, .tribe_event_series-template-default .tribe-events-c-subscribe-dropdown__container { display: none; }
.tribe_event_series-template-default #sidebar-default { display: none; }
.tribe_event_series-template-default .col-sm-9 { width: 100%; }

/* home */
.home .carousel-caption { bottom: inherit; top: 2rem; }
.home .carousel-caption h1 { max-width: 500px; font-weight: 500; }
.home .carousel-caption h2 { font-style: italic; font-weight: 500; }
.home .carousel-caption a { font-size: 20px; padding:10px; border-radius: 0; }
.extended-img { margin-top: 90px; }
.extended-img img { margin-top: -90px; }
.curved-banner { padding-top: 0; position: relative; text-align: center; background-color: #ececec; }
.curved-banner::before { content: ''; position: absolute; margin-top: -150px; top: 0; left: 50%; right: 50%; width: 100vw; height: 300px; background-color: #ececec; border-bottom-left-radius: 50% 150px; border-bottom-right-radius: 50% 150px; transform: translateX(-50%); z-index: -1; }
.curved-banner::after { content: ''; position: absolute; top: 0; left: 50%; right: 50%; width: 100vw; height: 200px; background-color: #bf2014; transform: translateX(-50%); z-index: -2; }

/* 404 page */
.error404 #content { padding-bottom: 30px; }

/* Orchestra */
#orchestra strong { text-transform: uppercase; }
#orchestra sup { font-weight: 700; }
#orchestra > li:not(:first-of-type) { margin-top: 1rem; break-inside: avoid-column; }
#contacts {  max-width: fit-content; }
#directors .card img { max-width: 300px; margin: auto; }
#board { column-count: 2; }

/* donate buttons */
.donate-btn a { font-size: 1rem; line-height: 1.5; padding: 10px; width: 100%; }
.donate-info-btn a { font-size: 1rem; line-height: 1.5; padding: 10px; width: 100%; }

/** donate form */
.givewp-layouts button { display: block !important; }
::selection { background-color: #3367d1; color: #ffffff; }
::-moz-selection { background-color: #3367d1; color: #ffffff; }
.receipt-header-top-wrap *:not(aside *, aside) { color: #ffffff; }
.separator-with-text, body:not(.woocommerce-checkout) .paypal-buttons-context-iframe, .dashboard-link-container { display: none !important; }
.givewp-fields-gateways__gateway--manual { display: none; }

/** media queries */
@media only screen and (max-width: 374px) {
  .btn-base, .btn-base a { width: 250px; justify-content: center; }
  .full-width { position: relative; }
  .full-width:before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: -75rem; z-index: -1; }
}

@media only screen and (max-width : 575px) {
    header .navbar-brand { margin-right:0; }
    main { overflow-x: hidden; }
    .home .carousel-caption { background: rgba(0, 0, 0, 0.5); left:0; right:0; }
}

/** Small devices (landscape phones, 576px and up) [-sm] */
@media only screen and (min-width : 576px) {
    header .navbar-brand img { max-width: 18.75rem; }
    .home .carousel-caption a { width: 350px; }
    .w-300 { width: 300px; } .w-350 { width: 350px; }
    .home .metaslider .flex-direction-nav .flex-prev, .home #metaslider_5091:hover .flex-direction-nav .flex-prev { left: -50px; }
    .home .metaslider .flex-direction-nav .flex-next, .home #metaslider_5091:hover .flex-direction-nav .flex-next { right: -50px; }
    #orchestra { column-count: 2; }
    #customer_details > div { padding: 0 2rem; }
    #order_review { max-width: 50%; padding: 2rem 2rem 0 1rem; }
    #order_review #payment { display: none; }
}

/** Medium devices (tablets, 768px and up) [-md] */
@media only screen and (min-width : 768px) {
    .home .carousel-caption h2 { margin: 30px 0; }
    .breakout-lft-img { position: relative; left: -15.5vw; width: calc(100% + 15.5vw); }
    #orchestra { column-count: 3; }
}

/** Large devices (desktops, 992px and up) [-lg] */
@media only screen and (min-width : 992px) {
    #mainMenuNav { margin-top: 70px; }
    #orchestra { column-count: 4; }
    .rok { position: absolute; z-index: 10; top: 8px; left: 400px; }
    body.logged-in .rok { top: 40px; }
}

/** X-Large devices (large desktops, 1200px and up) [-xl] */
@media only screen and (min-width : 1200px) {
    .rok { left: calc(((100% - 1120px) / 2) + 400px); }
    .home .carousel-item { height: 950px; }
}

/** larger desktops, 1400px and up [-xxl] */
@media only screen and (min-width : 1400px) {
    .rok { left: calc(((100% - 1320px) / 2) + 400px); }
}