/*
 Theme Name:   Booster Income Fund Theme 2025
 Theme URI:    /
 Description:  Flex grid theme using Mega Menu
 Author:       JV MEDIA DESIGN
 Author URI:   https://jvmediadesign.com
 Version:      6.6.1
*/

:root {
    --headings-family: 'Inter', sans-serif;
    --main-family: 'Inter', sans-serif;
    --menu-family: 'Inter', sans-serif;
    --buttons-family: 'Inter', sans-serif;
    
    --navy-color: rgb(0,27,48);
    --deep-blue-color: rgb(7,22,51);
    --blue-color: rgb(0,135,238);
    --cyan-color: rgb(24,234,242);
    --black-color: rgb(62,62,62);
    --white-color: #fff;
    --op-navy: rgba(0,27,48,.7);
    --op-blue: rgba(0,135,238,.7);
    --op-white: rgba(255,255,255,.7);
    --op-black: rgba(0,0,0,.7);
        
    --text-color: var(--black-color);
    
    --h1-large-font-size: 3.125rem;/* 50px */
    --h2-large-font-size: 2.5rem;/* 40px */
    --h3-large-font-size: 1.875rem;/* 30px */
    --h4-large-font-size: 1.625rem;/* 26px */
    --h5-large-font-size: 1.5rem;/* 24px */
    --large-xxl-font-size: 6.25rem;/* 100px */
    --large-xl-font-size: var(--h2-large-font-size);
    --large-lg-font-size: var(--h3-large-font-size);
    --large-med-font-size: var(--h4-large-font-size);
    --larger-large-font-size: var(--h4-large-font-size);
    --large-font-size: 1.225rem;/* 19.6px */
    --large-blockquote-font-size: 1.813rem;/* 29px */
    
    --h1-medium-font-size: 2.5rem;/* 40px */
    --h2-medium-font-size: 1.875rem;/* 30px */
    --h3-medium-font-size: 1.625rem;/* 26px */
    --h4-medium-font-size: 1.5rem;/* 24px */
    --h5-medium-font-size: 1.125rem;/* 18px */
    --medium-xxl-font-size: 5rem;/* 80px */
    --medium-xl-font-size: var(--h2-medium-font-size);
    --medium-lg-font-size: var(--h3-medium-font-size);
    --medium-med-font-size: var(--h4-medium-font-size);
    --larger-medium-font-size: var(--h4-medium-font-size);
    --medium-font-size: 1.163rem;/* 18.6px */
    --medium-blockquote-font-size: 1.688rem;/* 27px */;
    
    --h1-small-font-size: 1.875rem;/* 30px */
    --h2-small-font-size: 1.625rem;/* 26px */
    --h3-small-font-size: 1.5rem;/* 24px */
    --h4-small-font-size: 1.125rem;/* 18px */
    --h5-small-font-size: 1rem;/* 16px */
    --small-xxl-font-size: 3.75rem;/* 60px */
    --small-xl-font-size: var(--h2-small-font-size);
    --small-lg-font-size: var(--h3-small-font-size);
    --small-med-font-size: var(--h4-small-font-size);
    --larger-small-font-size: var(--h4-small-font-size);
    --small-font-size: 1rem;/* 16px same as small font on all sizes*/
    --small-blockquote-font-size: var(--h5-small-font-size);
    
    --footer-font-size: var(--small-font-size);
    --copyright-font-size: var(--small-font-size);
        
    --h1-span-line-height: .7;
    --headings-line-height: 1.1;
    --text-line-height: 1.3;
    --tight-text-line-height: 1;
    --footer-line-height: 1.3;
    
    --text-margin-top: 1.3rem;
    --text-margin-bottom: 1.3rem;
    --list-padding-left: 2.5rem;
    --list-padding-top: 1.3rem;
    --list-padding-bottom: 1.3rem;
    --list-margin-bottom: 1.3rem;
    --list-margin-left: 2rem;
    --sub-list-margin-top: 0;
    --sub-list-padding-bottom: .5rem;
    --list-item-padding-bottom: .8rem;
    
    --blockquote-text-color: var(--text-color);
    --blockquote-background-color: transparent;
    --blockquote-width: 70%;
    --blockquote-border: 4px solid var(--blue-color);
    --blockquote-padding: 0px 0px 0px 20px;
    --blockquote-margin-top: var(--text-margin-top);
    --blockquote-margin-bottom: var(--text-margin-bottom);
    --blockquote-font-weight: 400;
    --blockquote-font-style: normal;
    --blockquote-line-height: var(--text-line-height);
    
    --h1-heading-text-color: var(--text-color);
    --h2-heading-text-color: var(--text-color);
    --h3-heading-text-color: var(--text-color);
    --h4-heading-text-color: var(--text-color);
    --h5-heading-text-color: var(--text-color);
    --h1-font-weight: 900;
    --h2-font-weight: 400;
    --h3-font-weight: 400;
    --h4-font-weight: 400;
    --h5-font-weight: 400;
    --xxl-font-weight: 400;
    --xl-font-weight: 400;
    --large-font-weight: 400;
    --medium-font-weight: 400;
    --normal-font-weight: 400;
    
    --link-color: var(--blue-color);
    --link-border-color: var(--blue-color);
    --link-hover-color: var(--white-color);
    --link-hover-border-color: var(--blue-color);
    --link-hover-background-color: var(--blue-color);
    --link-border-width: 2px;
    --link-hover-border-width: 2px;
    
    --footer-link-color: var(--white-color);
    --footer-link-border-color: var(--blue-color);
    --footer-link-hover-color: var(--white-color);
    --footer-link-hover-border-color: var(--blue-color);
    --footer-link-hover-background-color: var(--blue-color);
    
    --button-text-size: 1.125rem;/* 18px */
    --button-narrow-text-size: 1rem;/* 16px */
    --button-font-weight: 700;
    --button-text-transform: uppercase;
    --button-text-color: var(--navy-color);
    --button-padding: 1rem 2.75rem;
    --button-narrow-padding: .5rem 1.5rem;
    
    --button-background-color: transparent;
    --button-border-color: var(--blue-color);
    --button-border-width: 2px;
    
    --button-hover-text-color: var(--white-color);
    --button-hover-background-color: var(--blue-color);
    --button-hover-border-color: var(--blue-color);
    
    --blue-button-text-color: var(--white-color);
    --blue-button-border-color: transparent;
    --blue-button-background-color: var(--blue-color);
    --blue-button-hover-text-color: var(--white-color);
    --blue-button-hover-border-color: transparent;
    --blue-button-hover-background-color: var(--navy-color);
    --blue-button-padding: var(--button-padding);
    
    --white-button-text-color: var(--white-color);
    --white-button-border-color: var(--white-color);
    --white-button-background-color: transparent;
    --white-button-hover-text-color: var(--navy-color);
    --white-button-hover-border-color: var(--white-color);
    --white-button-hover-background-color: var(--white-color);
    --white-button-padding: var(--button-padding);

    --form-button-text-color: var(--button-text-color);
    --form-button-font-size: var(--button-text-size);
    --form-button-font-weight: var(--button-font-weight);
    --form-button-background-color: var(--button-background-color);
    --form-button-hover-text-color: var(--button-hover-text-color);
    --form-button-hover-background-color: var(--button-hover-background-color);
    --form-button-padding: var(--button-padding);
    --form-button-border-color: var(--button-border-color);
    --form-button-hover-border-color: var(--button-hover-border-color);
    
    --form-section-title-color: var(--text-color);
    --form-section-title-font-weight: 400;
    --form-label-color: var(--blue-color);
    --form-label-font-size: 1.125rem;
    --form-label-font-weight: 500;
    --form-field-text-color: var(--text-color);
    --form-field-font-size: var(--button-text-size);
    --form-field-border-width: 2px;
    --form-field-border-color: var(--text-color);
    --form-field-focus-border-color: var(--blue-color);
    --form-field-background-color: var(--white-color);
    --form-field-padding: .575rem .8rem;
    --form-field-border-radius: 10px;
    
    --blue-form-field-border-color: var(--white-color);
    --blue-form-field-focus-border-color: var(--cyan-color);

    --header-background-color: transparent;
    --header-padding: .5rem 0;
    --header-border: none;
    --header-solid-background-color: var(--white-color);
    --header-solid-border: 0px;
    --header-mobile-background-color: var(--white-color);
    --mobile-submenu-color: var(--white-color);
    --mobile-submenu-background-color: var(--blue-color);
    --mobile-close-bg: var(--navy-color);
    
    --header-desktop-logo-width: 316px;/* 316x105*/
    --header-mobile-logo-width: 200px;
                
    --border-radius: 18px;
    --min-border-radius: 12px;
    --max-border-radius: 4rem;
    --button-border-radius: 46px;
    --round-border-radius: 50%;
    --curve-angle: 10rem;
    --curve-less-angle: 6rem;
    
    --round-icon-size: 250px;
    
    --hr-color: var(--blue-color);
    --hr-height: 4px;
    --hr-width: 30%;
    --hr-max-width: 320px;
    --border-color: var(--blue-color);
    --border-width: 3px;
    
    --rounded-box-padding: 1rem 2rem;
    
    --row-margins: 0 auto;
    
    --body-background-color: var(--white-color);
    
}

body, html {
    overflow-x: hidden;
    max-width: 2304px !important;
    margin-left: auto;
    margin-right: auto;
}

html {
    scroll-padding-top: 150px;
}

body {
    background: var(--body-background-color);
    color: var(--text-color);
    padding: 0;
    margin: 0;
    font-family: var(--main-family);
    font-weight: 400;
    font-size: 1rem;
    font-style: normal;
    line-height: var(--text-line-height);
    cursor: default;
    position:relative;
}

.rel {
    position: relative !important;
}

.row {
    width: 100%;
    max-width: 96% !important;
}

@media screen and (min-width: 1024px) {
    .row {
        max-width: 84% !important;
    }
    .row.narrow {
        max-width: 50% !important;
    }
}

@media only screen and (min-width: 640px) and (max-width: 1023px) {
    .row.narrow {
        max-width: 50% !important;
    }
}


.expanded.row {
    width: 100%;
    max-width: 100% !important;
}

main .row {
    margin: var(--row-margins);
}

.row, .row.narrow {
    margin-left: auto !important;
    margin-right: auto !important;
}

.column {
        padding-left: 1.9375rem;
        padding-right: 1.9375rem;
    }

main .wide {
    padding: 0 !important;
}

main .wider-row {
    max-width: 96% !important;
}

img {
    border: none !important;
    outline: none !important;
}

.wide, .widepic, .widehero {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.wide img, .widepic img {
    margin: 0;
}

.fit {
        max-width: fit-content !important;
        width: fit-content !important;
        flex: none;
    }

.op-pic img {
    opacity: .38;
    /* used to show bg through, subtract specific opacity from what would normally be used as an overlay color*/
}

.hide {
    display: none !important;
}

@media screen and (max-width: 1025px) {/* HERO match menu break */
    .early-banner-break .herocontent {
        position: relative !important;
        padding-bottom: 2rem !important;
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
    }
    .early-banner-break .herobg {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }
    
    .early-banner-break .dark-text-mobile, .early-banner-break .dark-text-mobile h1, .early-banner-break .dark-text-mobile h2, .early-banner-break .dark-text-mobile h3, .early-banner-break .dark-text-mobile h4, .early-banner-break .dark-text-mobile h5, .early-banner-break .dark-text-mobile p, .early-banner-break .dark-text-mobile blockquote, .early-banner-break .dark-text-mobile li, .early-banner-break .dark-text-mobile .large, .early-banner-break .dark-text-mobile .xl, .early-banner-break .dark-text-mobile a:link, .early-banner-break .dark-text-mobile a:visited, .early-banner-break .dark-text-mobile a:active, .early-banner-break .dark-text-mobile .herocontent h1, .early-banner-break .dark-text-mobile .herocontent p, .early-banner-break .dark-text-mobile span {
        color: var(--text-color) !important;
    }
    
    .early-banner-break .desktop-op-black {
        background-color: var(--white-color);
    }
}




/* ---------------------------->>>> BACKGROUNDS ----------------- */

.gradient-down {
      background: linear-gradient(to bottom, var(--navy-color), var(--blue-color));
}

.gradient-right {
      background: linear-gradient(to right, var(--navy-color), var(--blue-color));
}

.logo-symbol-blue {
    background-image: url(images/logo-object.svg);
    background-repeat: no-repeat;
    background-position: top right;
    margin-top: -5% !important;
    min-height: 1px !important;
    -webkit-transform: translateZ(0) !important; /* Safari specific */
    transform: translateZ(0) !important;
}

@media screen and (max-width: 639px) {
    .logo-symbol-blue {
        background-size: 30%;
        padding-top: 15% !important;
    }
}

@media screen and (min-width: 640px) and (max-width: 1023px) {
    .logo-symbol-blue {
        background-size: 50%;
        padding-top: 20% !important;
    }
}

@media screen and (min-width: 1024px) {
    .logo-symbol-blue {
        background-size: 60%;
        padding-top: 30% !important;
    }
}

/* Safari only because bg image disappears -- Nothing works, need new svg?
@media screen and (min-width: 1309px) {
    _::-webkit-full-page-media, _:future, :root .logo-symbol-blue {
        
    }
}*/

.logo-symbol-white {
    background-image: url(images/logo-object-white.svg);
    background-repeat: no-repeat;
    background-position: top 30px right;
    background-size: 50%;
}

.blue-dots {
    background-image: url(images/hero-dots.svg);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    background-blend-mode: soft-light !important;
}
/*
.soft-light {
    background-blend-mode: soft-light !important;
}*/

.fade-dots-centered {
    background-image: url(images/fade-dots-centered.svg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100%;
}

.blue-hex {
    background-image: url(images/blue-hex.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.navy {
    background-color: var(--navy-color);
}

.deep-blue {
    background-color: var(--deep-blue-color);
}

.blue {
    background-color: var(--blue-color);
}

.op-navy {
    background-color: var(--op-navy);
}

.op-blue {
    background-color: var(--op-blue);
}

.op-white {
    background-color: var(--op-white);
}

.op-black {
    background-color: var(--op-black);
}

.white {
    background-color: var(--white-color);
}

@media screen and (max-width: 639px) {
    
    .mobile-bg-navy {
        background-color: var(--navy-color);
    }
    
    .mobile-bg-blue {
        background-color: var(--blue-color);
    }

}

@media screen and (min-width: 640px) {
    
    .desktop-op-white {
        background-color: var(--op-white);
    }
    
    .desktop-op-navy {
        background-color: var(--op-navy);
    }
    
    .desktop-op-blue {
        background-color: var(--op-blue);
    }

    .desktop-op-black {
        background-color: var(--op-black);
    }
}

/* Medium Only */

@media screen and (min-width: 640px) and (max-width: 1023px) {
    
    .medium-op-white {
        background-color: var(--op-white);
    }
    
    .medium-op-navy {
        background-color: var(--op-navy);
    }
    
    .medium-op-blue {
        background-color: var(--op-blue);
    }

    .medium-op-black {
        background-color: var(--op-black);
    }
}

/* Medium + Small Only : For Blue Hex */
@media screen and (max-width: 1023px) {
    
    .small-medium-op-navy {
        background-color: var(--op-navy);
    }

}

@media screen and (min-width: 1178px) {
    .shrinklg {
        -webkit-box-flex: 0 !important;
    -webkit-flex: 0 0 auto !important;
    -ms-flex: 0 0 auto !important;
    flex: 0 0 auto !important;
    }
}
@media screen and (max-width: 1177px) {
    .small-medium-text-center {
        text-align: center;
    }
}

/* IMAGE FILTERS and TRANSFORMS */

.invert img, img.invert {
    filter: invert();
}

/* FLIP HORIZONTALLY */
.flip.horiz img {
    transform: scaleX(-1);
}
/* FLIP VERTICALLY */
.flip.vert img {
    transform: scaleY(-1);
    margin-top: -1px;
}

/* FLIP HORIZONTALLY + VERTICALLY */
.flip.horiz-vert img {
    transform: scale(-1, -1);
}

.stickypic img {
    transition: all 300ms ease-in-out;
}
@media screen and (min-width: 640px) {

    .fixme {
        /*background-position: center top 0px;*/
        /*background-size: contain;*/
        background-attachment: fixed;
        transition: all 300ms ease-in-out;
    }

}

/* ----------------------------------->>>> SPECIAL STYLES -------- */

/* Base style for the selected word */
.tooltip {
  position: relative;
  cursor: help;
  color: var(--blue-color);
  font-weight: bold;
}

span.tooltip {
	border-bottom: 1px dotted var(--blue-color); /* Visual cue for the user */
}

/* Tooltip container (hidden by default) */
.tooltip::before {
  content: attr(data-tooltip); /* Grabs text from data-tooltip attribute */
  position: absolute;
  bottom: 150%; /* Positions it above the word */
  left: 50%;
  transform: translateX(-50%) scale(0.9);
  background-color: var(--deep-blue-color);
  color: var(--white-color);
  padding: var(--button-narrow-padding);
  border-radius: var(--button-border-radius);
  font-size: var(--button-narrow-text-size);
  white-space: nowrap;
  visibility: hidden;
  opacity: 0;
  transition: all 0.2s ease;
  pointer-events: none; /* Prevents tooltip from blocking the hover */
  z-index: 10;
}



/* Show the tooltip on hover */
.tooltip:hover::before,
.tooltip:hover::after {
  visibility: visible;
  opacity: 1;
  transform: translateX(-50%) scale(1);
}

ul.accordion {
    margin: 0 auto;
    padding-left: 0;
    position: relative;
}
ul.accordion li {
    list-style: none;
    margin-left: 0;
    padding-bottom: 0;
}

.accordion-title {
    padding: 1rem;
    border: 1px solid #e6e6e6 !important;
}

.accordion-title:hover, .accordion-title:focus, .is-active .accordion-title {
    background-color: var(--blue-color);
    color: #fff !important;
}

.accordion-title img {
    margin-right: 1rem;
    margin-bottom: 0;
    border-radius: var(--border-radius);
}

.accordion-title::before {
    font-size: 20pt;
    top: 40%;
}

.logo-drop {
    padding-right: 0;
}
.logo-drop img {
    margin-bottom: -190px !important;
}

/* Strong Testimonials will not allow button color changes, only able to update size */
.wpmslider-controls a:link, .wpmslider-controls a:visited, .wpmslider-controls a:active, .wpmslider-controls a:hover {
    border: none !important;
    background: none !important;
}

.strong-view.controls-style-buttons:not(.rtl) .wpmslider-prev:before, .strong-view.controls-style-buttons:not(.rtl) .wpmslider-next:before {
    width: 34px !important;
    height: 34px !important;
}

.strong-view.controls-style-buttons .wpmslider-start, .strong-view.controls-style-buttons .wpmslider-stop, .strong-view.controls-style-buttons .wpmslider-next, .strong-view.controls-style-buttons .wpmslider-prev {
    font-size: 34px !important;
    line-height: 34px !important;
    width: 34px !important;
    height: 34px !important;
}

/* TOP ALIGNED COLUMN TEXT - remove the space above 1st P */
.align-top p:first-child {
    margin-top: 0;
}

/* ROUND ICONS */
.round-icons .column {
    padding: 0;
}
.round-icons ul {
    background-image: url(images/plus-symbol.png);
    background-size: 74px;
    background-position: top 53% left 46%;
    background-repeat: no-repeat;
    padding: 0;
    margin: 0 auto;
    display: flex !important;
    flex-wrap: wrap;
    justify-content: space-between;
}

.round-icons li {
    list-style: none;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: center;
    width: var(--round-icon-size) !important;/* keep them round */
}

.round-icons .round-icon {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    width: auto;
    height: auto;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: var(--round-icon-size) !important;
    max-height: var(--round-icon-size) !important;
    border-radius: var(--round-border-radius);
    aspect-ratio: 1 / 1;
    transition: .5s all ease-in-out;
}
.round-icons .round-icon img {
    margin: 0 auto;
    height: auto;
    width: 100px;
}

.round-icons .round-icon-title {
    font-size: var(--small-font-size);
    display: block;
    padding-top: 1rem;
    margin: 0 auto;
    width: 100%;
    max-width: 200px;
    transition: .5s all ease-in-out;
}

.round-icons a {
    color: #fff !important;
    border-bottom: none !important;
}

.round-icons a:hover > .round-icon.navy {
    background-color: var(--blue-color);
}
/*
.round-icons a:hover > .round-icon-title {
    color: var(--navy-color);
}*/

@media only screen and (min-width: 1390px) {
    .round-icon-top {
        margin-top: 40px !important;
    }

    .round-icon-right {
        margin-top: 120px !important;
    }

    .round-icon-bottom {
        margin-left: 50px !important;
    }
}

@media screen and (max-width: 1389px) {
    .column-early {
        -webkit-box-flex: 0 !important;
        -webkit-flex: 0 0 100% !important;
        -ms-flex: 0 0 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

.rounded img, img.rounded, .roundy img, img.roundy, img.round, .round img {
    border-radius: var(--round-border-radius);
}

.rounded-corners {
    border-radius: var(--border-radius);
    margin: var(--row-margins);
    overflow: hidden;
}

.rounded-corners.min {
    border-radius: var(--min-border-radius) !important;
}

.rounded-bottom-corners {
    border-radius: 0 0 var(--border-radius) var(--border-radius);
}

.rounded-left, .rounded-left img {
    border-radius: var(--border-radius) 0 0 var(--border-radius);
}

.rounded-right, .rounded-right img {
    border-radius: 0 var(--border-radius) var(--border-radius) 0;
}

.white-border {
    border-color: var(--white-color) !important;
}
.border-right {
    border-right: var(--border-width) solid var(--border-color);
}

.border-bottom {
    border-bottom: var(--border-width) solid var(--border-color);
}

.border-left {
    border-left: var(--border-width) solid var(--border-color);
}

.border-top {
    border-top: var(--border-width) solid var(--border-color);
}

.border {
    border: var(--border-width) solid var(--border-color);
}

.shrink {
    -webkit-box-flex: 0 !important;
    -webkit-flex: 0 0 auto !important;
    -ms-flex: 0 0 auto !important;
    flex: 0 0 auto !important;
    max-width: 100% !important;
}

.mobileimg img, .wide img {
    width: 100%;
    height: 100%;
    margin-bottom: 0;
}

.text-right {
    text-align: right;
}

.logos img {
    max-height: 94px;
}

.inner-columns {
    padding: 0;
}

.inner-columns .column {
    padding: 1rem;
}

.inner-columns p, .inner-columns img {
    margin-top: 0;
    margin-bottom: 0;
}

/* ----------------------------------->>>> SPECIAL TEXT -------- */


/* ---- ARROWS ----- */
.blue-arrow {
    color: var(--blue-color);
    font-size: 42px;
    line-height: var(--tight-text-line-height);
    text-align: end;
    position: relative;
}
.blue-arrow a, a .blue-arrow {
    text-decoration: none !important;
    border: none !important;
}



.blue-arrow a:link, .blue-arrow a:visited, .blue-arrow a:active, a .blue-arrow {
    color: var(--blue-color);
}
.blue-arrow a:hover, a:hover .blue-arrow {
    color: var(--cyan-color);
    background-color: transparent !important;
}

.blue-arrow .bi::before {
    position: absolute;
    top: 10px;
    left: 15px;
    line-height: var(--tight-text-line-height);
    transition: .5s all ease-in-out;
}

/* Categories button */

.mega-button.mega-dropdown a .mega-indicator {
    display: none !important;
}

a:hover > .bi::before, a:hover .bi::before {
    transform: translateX(10px);
}

.blue-arrow:hover > .bi::before, .blue-arrow a:hover > .bi::before, .button:hover > .bi::before, .blog-excerpt-link:hover .bi::before {
    transform: translateX(10px);
}

.button.dropdown:hover > .bi::before, .mega-button.mega-dropdown a:hover .bi::before {
    transform: rotate(90deg) scale(1.5);
}

.button .bi, .mega-button.mega-dropdown a .bi {
    font-size: 20px;
    line-height: 0;
    margin-top: -2px;
    margin-left: 10px;
}

/* Text with fit-content HR below */
.medium-large-fit h1, .medium-large-fit h2, .medium-large-fit h3, .medium-large-fit h4, .medium-large-fit h5, .medium-large-fit .xxl, .medium-large-fit .xl, .medium-large-fit .large, .medium-large-fit .medium, .medium-large-fit hr {
    margin: 0 auto !important;
}

/*
h1.border-bottom, h2.border-bottom, h3.border-bottom, h4.border-bottom, span.border-bottom, p.border-bottom {
    width: fit-content;
    margin: 0 auto;
    padding-bottom: 2px;
}

.title-border h1, .title-border h2, .title-border h3, .title-border h4, .title-border h5 {
    width: fit-content;
    margin: 0 auto;
    padding-bottom: 2px;
    border-bottom: var(--hr-height) solid var(--border-color);
}
*/

ul.list-no-left-margin, .list-no-left-margin li {
    margin-left: 0;
}

.uppercase {
    text-transform: uppercase;
}

.semibold {
    font-weight: 500;
}

.bold, strong, bold {
    font-weight: 700 !important;
}

.heavy {
    font-weight: 900 !important;
}

.white-text blockquote, .white-text blockquote p {
    color: var(--white-color);
}

.white-text, .white-text h1, .white-text h2, .white-text h3, .white-text h4, .white-text h5, .white-text p, .white-text li, .white-text .large, .white-text .xl, .white-text span {
    color: var(--white-color);
}

.white-text li::marker, .white-text .arrow-list ul li::before {
    color: var(--white-color) !important;
}

main .white-text a:link, main .white-text a:visited, main .white-text a:active {
    color: var(--white-color);
    border-bottom-color: var(--white-color);
}

main .white-text a:hover, main .white-text a:focus {
    color: var(--cyan-color);
    border-bottom-color: var(--cyan-color);
}

.navy-text, .navy-text h1, .navy-text h2, .navy-text h3, .navy-text h4, .navy-text h5, .navy-text p, .navy-text blockquote, .navy-text blockquote p, .navy-text li, .navy-text .large, .navy-text .xl, .navy-text .medium, .navy-text span, .navy-text a:link, .navy-text a:visited, .navy-text a:active {
    color: var(--navy-color) !important;
}

.navy-text a:hover {
    color: var(--blue-color);
}

.blue-text, .blue-text h1, .blue-text h2, .blue-text h3, .blue-text h4, .blue-text h5, .blue-text p, .blue-text blockquote, .blue-text blockquote p, .blue-text li, .blue-text .large, .blue-text .xl, .blue-text .medium, .blue-text span, .blue-text a:link, .blue-text a:visited, .blue-text a:active {
    color: var(--blue-color) !important;
}

.blue-text a:hover {
    color: var(--cyan-color);
}

@media screen and (max-width: 639px) {
    
    .dark-text-mobile, .dark-text-mobile h1, .dark-text-mobile h2, .dark-text-mobile h3, .dark-text-mobile h4, .dark-text-mobile h5, .dark-text-mobile p, .dark-text-mobile blockquote, .dark-text-mobile li, .dark-text-mobile .large, .dark-text-mobile .xl, .dark-text-mobile a:link, .dark-text-mobile a:visited, .dark-text-mobile a:active, .dark-text-mobile .herocontent h1, .dark-text-mobile .herocontent p, .dark-text-mobile span {
        color: var(--text-color) !important;
    }
    
    .white-text-mobile, .white-text-mobile h1, .white-text-mobile h2, .white-text-mobile h3, .white-text-mobile h4, .white-text-mobile h5, .white-text-mobile p, .white-text-mobile blockquote, .white-text-mobile li, .white-text-mobile .large, .white-text-mobile .xl, .white-text-mobile a:link, .white-text-mobile a:visited, .white-text-mobile a:active, .white-text-mobile .herocontent h1, .white-text-mobile .herocontent p, .white-text-mobile span {
        color: var(--white-color);
    }
    
    .dark-text-mobile .button, .dark-text-mobile .button:link, .dark-text-mobile .button:visited, .dark-text-mobile .button:active {
        color: var(--button-text-color);
        background-color: var(--button-background-color);
    }
    
    .dark-text-mobile .button:hover {
        color: var(--button-hover-text-color) !important;
        background-color: var(--button-hover-background-color) !important;
    }
    
    .dark-text-mobile .button.white:link, .dark-text-mobile .button.white:visited, .dark-text-mobile .button.white:active {
        color: var(--button-text-color) !important;
        background-color: var(--button-background-color) !important;
    }
    
    .dark-text-mobile .button.white:hover {
        color: var(--button-hover-text-color) !important;
        background-color: var(--button-hover-background-color) !important;
    }
}

/* ----------------------------------->>>> FONT FAMILIES -------- */

p, .large, .xl, .xxl, main ul, main ol, main ul li, main ul, main ol, footer p, footer li, label, input, .blog-excerpts h2, p, main a, li a, footer p, footer li, blockquote .name {
    font-family: var(--main-family);
}

h1, h2, h3, h4, h5, .special-font {
    font-family: var(--headings-family);
}

blockquote, blockquote p {
    font-family: var(--headings-family);
    font-weight: var(--blockquote-font-weight);
}

.button:link, .button:visited, .button:active, .button:link, .button:visited, .button:active {
    font-family: var(--main-family);
}

h1, h2, h3, h4, h5, p, li, blockquote {
    font-optical-sizing: auto;
}

h1 span.medium {
    line-height: var(--h1-span-line-height);
}

h1, h2, h3, h4 {
    line-height: var(--headings-line-height);
}

p, li, blockquote {
    line-height: var(--text-line-height);
}

.tight-text p, .tight-text li, p.tight-text {
    line-height: var(--tight-text-line-height);
    margin-top: .5rem;
    margin-bottom: .5rem;
}

.small, small {
    font-size: var(--small-font-size);
}

.featured-articles h2 {
    font-size: var(--font-size);
    font-weight: 700;
}

.featured-articles h2 a {
    border-bottom: none !important;
}

h2, h3, h4, h5 {
    width: 100%;
    margin-bottom: .5rem;
}

h2, h3, h4, h5, p {
    margin: var(--text-margin-top) 0 var(--text-margin-bottom) 0;
}

.blog-excerpts h2 {
    margin-top: 0;
}

h1 {
    color: var(--h1-heading-text-color);
    font-weight: var(--h1-font-weight);
}

.normal {
    font-weight: var(--normal-font-weight) !important;
}

article h1 {
    text-transform: none !important;
}

h2 {
    color: var(--h2-heading-text-color);
    font-weight: var(--h2-font-weight);
}

h3 {
    color: var(--h3-heading-text-color);
    font-weight: var(--h3-font-weight);
}

h4 {
    color: var(--h4-heading-text-color);
    font-weight: var(--h4-font-weight);
}

h5 {
    color: var(--h5-heading-text-color);
    font-weight: var(--h5-font-weight);
}

.xxl {
    color: var(--text-color);
    font-weight: var(--xxl-font-weight);
}

.xl {
    color: var(--text-color);
    font-weight: var(--xl-font-weight);
}

.large {
    color: var(--text-color);
    font-weight: var(--large-font-weight);
}

.medium {
    color: var(--text-color);
    font-weight: var(--medium-font-weight);
}

h1 a:link, h1 a:active, h1 a:visited,
h2 a:link, h2 a:active, h2 a:visited,
h3 a:link, h3 a:active, h3 a:visited,
h4 a:link, h4 a:active, h4 a:visited {
	color: inherit;
    border-bottom: none !important;
}

article h1 {
    margin: 0;
}

.column.shrink p {
    margin: 0 !important;
}

p {
    color: var(--text-color);
    width: 100%;
}

main ul, main ol {
    color: var(--text-color);
    width: auto;
    list-style-position: outside;
    padding-left: var(--list-padding-left);
    padding-top: var(--list-padding-top);
    padding-bottom: var(--list-padding-bottom);
}

main ul li {
    list-style-type: circle;
}

main ol li {
    list-style: decimal;
}

main ol ol li {
    list-style: circle;
}

li::marker {
  color: var(--text-color);
    font-size: 28px;
    line-height: 32px;
}

.large-list ul li {
    list-style-type: circle;
}

.large-list li::marker {
    font-size: 40px;
}

.arrow-list ul li {
    list-style: none;
}

.arrow-list ul li::before {
    font-family: 'bootstrap-icons';
    font-size: 28px;
    content: "\F138";
    color: var(--blue-color);
    padding-right: 12px;
    margin-left: -40px !important;
    vertical-align: middle !important;
}

main ul li, main ol li {
    padding-bottom: var(--list-item-padding-bottom);
    margin-left: var(--list-margin-left);
    line-height: var(--text-line-height);
    padding-inline-start: 0;
}

main ul li:last-child, main ol li:last-child {
    padding-bottom: 0;
}

main ul ul, main ol ol {
    padding-left: 0;
    margin-left: 0;
    margin-top: var(--sub-list-margin-top);
    padding-bottom: var(--sub-list-padding-bottom);
}

main ul ul li, main ol ol li {
    padding-left: 0;
}

a {
    color: inherit;
}

main a, main a:link, main a:visited, main a:active {
    color: var(--link-color);
    transition: all .4s ease-in-out;
    position: relative;
    text-decoration: none;
    border-bottom: var(--link-border-width) solid var(--link-border-color);
}

main a:hover, main a:focus, h2 a:hover, h3 a:hover, h4 a:hover {
    color: var(--link-hover-color);
    /*padding-left: 4px;
    padding-right: 4px;*/
    background-color: var(--link-hover-background-color);
    border-bottom: var(--link-border-width) solid transparent;
}

footer a:link, footer a:visited, footer a:active {
    color: var(--footer-link-color);
    transition: all .4s ease-in-out;
    padding-bottom: 1px;
    position: relative;
    text-decoration: none;
    border-bottom: 1px solid var(--footer-link-border-color);
}
footer a:hover, footer a:focus {
    color: var(--footer-link-hover-color);
    background: var(--footer-link-hover-background-color);
    border-bottom: 1px solid var(--footer-link-hover-border-color);
}

footer .toplink a:link, footer .toplink a:visited, footer .toplink a:active {
    font-weight: bold;
    text-transform: uppercase;
    border-bottom: none;
}

footer .toplink {
    margin-bottom: 1.5rem;
}

footer .widget-title {
	 margin-top: 0;
	 margin-bottom: 1.5rem;
	font-weight: bold;
    text-transform: uppercase;
}

.button:after {
    display: none !important;
}

a:hover {
    transition: all 300ms ease-in-out;
}

a.no-effects, .no-effects a {
    color: inherit;
    border: none !important;
    background: none !important;
}

a.no-link-border:link, a.no-link-border:visited, a.no-link-border:active {
    border-bottom: none;
}

a.no-link-border:hover {
    color: var(--link-hover-color);
    background-color: var(--link-hover-background-color);
    border-bottom: var(--link-hover-border-width) solid var(--link-hover-border-color);
}


.roundy a {
    border-bottom: none !important;
}

a img {
    border: none !important;
    outline: none;
    text-decoration: none !important;
}

.centered {
    margin-left: auto !important;
    margin-right: auto !important;
}

blockquote {
    page-break-inside: avoid;
    border-left: var(--blockquote-border);
    padding: var(--blockquote-padding) !important;
    width: var(--blockquote-width);
    background-color: var(--blockquote-background-color);
    margin-left: auto;
    margin-right: auto;
}

blockquote p {
    color: var(--blockquote-text-color);
    text-align: left !important;
    font-weight: var(--blockquote-font-weight);
    font-style: var(--blockquote-font-style);
    line-height: var(--blockquote-line-height);
    margin-top: 0;
}

blockquote .small, blockquote .name {
    font-style: normal;
}

@media screen and (max-width: 639px) {
    blockquote {
        margin: 2rem auto;
        padding: 0 0 0 20px;
    }
}

@media screen and (min-width: 640px) {
    blockquote {
        margin: 4rem auto;
    }
}


hr {
    background: var(--hr-color);
    border-radius: 0;
    border: none;
    clear: both;
    margin: var(--text-margin-top) auto var(--text-margin-bottom) auto;
    padding: 0;
    width: var(--hr-width);
    max-width: var(--hr-max-width);
    height: var(--hr-height);
}

em,
i {
  font-style: oblique;
  line-height: inherit; }
 
ul.inline {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

ul.inline li {
    display: inline-block;
    width: auto;
    margin: .5rem .9rem;
    padding: 0;
    vertical-align: middle;
}

ul.inline li .button {
    margin: 0 auto !important;
}

footer .inline {
    margin: 1rem 0;
}
footer .inline .menu-button {
    margin-bottom: 10px;
}

/* --------------------------------------->>>> HEADER ----------- */

.topbar {
    padding: .5rem;
}

.nav .column {
    padding-left: 0;
    padding-right: 0;
}

header {
    display: block;
    width: 100% !important;
    z-index: 99999 !important;
}

header p {
margin: 0;
    padding: 0;
}

.hdr-right img {
    display: inline;
}
header .button {
    margin: 0 !important;
}

.logo a {
    display: block;
}

.headercontainer {
    position: relative;
    z-index: 999;
}

/* -------------------------------------->>>> BUTTONS ----------- */

.alm-load-more-btn {
    height: auto !important;
    margin: 0 auto !important;
    font-size: var(--button-text-size) !important;
    font-weight: var(--button-font-weight) !important;
    line-height: 1.260 !important;
    text-transform: var(--button-text-transform) !important;
    padding: var(--button-padding) !important;
    color: var(--button-text-color) !important;
    border: var(--button-border-width) solid var(--button-border-color) !important;
    border-radius: var(--button-border-radius) !important;
    background-color: var(--button-background-color) !important;
    transition: all .4s ease-in-out !important;
}

.alm-load-more-btn:hover {
    color: var(--button-hover-text-color) !important;
    border: var(--button-border-width) solid var(--button-hover-border-color) !important;
    padding: var(--button-padding) !important;
    background-color: var(--button-hover-background-color) !important;
}

button, .button, .button:link, .button:visited, .button:active, .button:link, .button:visited, 
.button:active, form.search-form button, .white .button:link, .white .button:visited, .white .button:active {
    font-size: var(--button-text-size);
    font-weight: var(--button-font-weight);
    line-height: 1.260;
    text-align: center;
    text-transform: var(--button-text-transform);
    text-decoration: none !important;
    padding: var(--button-padding);
    margin: 1rem auto 0 auto;
    display: inline-flex;
    justify-content: space-around;
    align-content: center;
    flex-wrap: wrap;
    cursor: pointer;
    color: var(--button-text-color);
    border: var(--button-border-width) solid var(--button-border-color);
    border-radius: var(--button-border-radius);
    background-color: var(--button-background-color);
  transition: all .4s ease-in-out;
    position: relative;
}

button:hover, .button:hover, .button:focus, main .button:hover, main .button:focus, form.search-form button:hover, form.search-form button:focus, input[type="submit"]:hover, input[type="submit"]:focus {
    text-decoration: none;
    color: var(--button-hover-text-color) !important;
    border: var(--button-border-width) solid var(--button-hover-border-color);
    padding: var(--button-padding);
    background-color: var(--button-hover-background-color);
}

.button.narrow {
    font-size: var(--button-narrow-text-size);
    padding: var(--button-narrow-padding) !important;
}

.button-group .button {
    display: flex;
}

.button.white, .button.white:link, .button.white:visited, .button.white:active {
    color: var(--white-button-text-color) !important;
    border-color: var(--white-button-border-color) !important;
    background-color: var(--white-button-background-color) !important;
    padding: var(--white-button-padding) !important;
}

.button.white:hover, .button.white:focus {
    color: var(--white-button-hover-text-color) !important;
    border-color: var(--white-button-hover-border-color) !important;
    background-color: var(--white-button-hover-background-color) !important;
    padding: var(--white-button-padding) !important;
}

.button.blue, .button.blue:link, .button.blue:visited, .button.blue:active {
    color: var(--blue-button-text-color) !important;
    border-color: var(--blue-button-border-color);
    background-color: var(--blue-button-background-color) !important;
    padding: var(--blue-button-padding) !important;
}

.button.blue:hover, .button.blue:focus {
    color: var(--blue-button-hover-text-color) !important;
    border-color: var(--blue-button-hover-border-color) !important;
    background-color: var(--blue-button-hover-background-color) !important;
    padding: var(--blue-button-padding) !important;
}

.navy .button.blue:hover, .navy .button.blue:focus, .deep-blue .button.blue:hover, .deep-blue .button.blue:focus {
    color: var(--white-color) !important;
    background-color: var(--cyan-color) !important;
}

/* --------------------------------------->>>> FOOTER ----------- */

footer ul, footer ul li {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}
/* using svg images; dashicons are phasing out */
.social a, img.social {
    background-color: var(--white-color);
    border-radius: var(--round-border-radius);
    display: inline-block;
    transition: .5s all ease-in-out;
    padding: 2px;
    margin-top: 1rem;
}

.social a:hover, img.social:hover {
    /*background-color: var(--navy-color);*/
    filter: invert();
}

.social img, img.social {
    margin-bottom: 0 !important;
}

footer {
    clear: both;
}

footer p, footer li {
    font-size: var(--footer-font-size);
    line-height: var(--footer-line-height);
    margin-bottom: .4rem;
}

form.no-labels label {
    display: none !important;
}

ul.sep, ul.copyr {
    list-style: none;
    margin: 0 auto .5rem auto;
}

.copyr p {
    font-size: var(--copyright-font-size);
    font-style: normal;
}

@media screen and (max-width: 1023px) {
    
    footer .column {
        margin-top: 10px;
        margin-bottom: 10px;
    }
}

/* ------------------------------------->>>> SECTIONS ----------- */

/* ------------------------------------->>>> GALLERIES -------- */

.mgl-masonry .mgl-item figcaption {
    padding: 10px !important;
    background-color: var(--op-black) !important;
    width: 96% !important;
    left: 2% !important;
}

.mgl-masonry .mgl-item figcaption p {
    font-size: .9rem !important;
    padding: 5px !important;
    background-color: var(--op-black) !important;
}

@media only screen and (max-width: 639px) {
    .mgl-masonry .mgl-item figcaption {
        bottom: 25px !important;
    }
}

.gallery.row {
    padding: 0;
}

.gallery-item {
    margin: .7rem 0;
}

.gallery-icon {
    margin-bottom: 0;
}

.gallery br {
    clear: none !important;
}

/* ------------------------------------->>>> HERO BANNER -------- */

.herocontent .column {
    z-index: 900 !important;
}

.banner {
    position: relative;
    padding: 0 !important;
}

main .banner, main .banner .row {
    padding: 0;
}

.herocontent .button {
    margin-top: 0;
    margin-bottom: 0;
}

.herobg {
    margin: 0 auto;
    padding: 0 !important;
    justify-content: center;
    overflow: hidden;
}

.herobg img {
    width: 100% !important;
    height: auto;
    align-self: flex-start !important;
    margin: 0;
}

.banner .herocontent {
    height: 100% !important;
    z-index: 300 !important;
    position: absolute;
}

.herocontent p:last-child {
    margin-bottom: 0 !important;
}


@media only screen and (max-width: 639px) {
    
    .banner .herocontent {
        position: relative;
        height: auto !important;
        padding: 0 .5rem !important;
    }
    
    .banner .herobg {
        height: auto !important;
        position: relative;
    }
    
    .herocontent .column {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

}


@media screen and (min-width: 640px) and (orientation: portrait) {

    .banner .herocontent {
        position: absolute;
    }
    
    .banner.offsetcontent img {
        height: 100% !important;
        max-width: none !important;
    }
    
    .banner .rel.row.align-bottom {
        padding-bottom: 3rem !important;
    }
    
}

/* ---------------------------------->>>> BLOG STYLES ----------- */

.featured-posts h2 a:link, .featured-posts h2 a:visited, .featured-posts h2 a:active, .featured-posts h3 a:link, .featured-posts h3 a:visited, .featured-posts h3 a:active, .blog-excerpts h3 a:link, .blog-excerpts h3 a:visited, .blog-excerpts h3 a:active {
    color: var(--blue-color);
    font-weight: 700;
    border: none !important;
    margin-bottom: 0;
}

.featured-posts h2 a:hover, .featured-posts h3 a:hover, .blog-excerpts h2 a:hover, .blog-excerpts h3 a:hover {
    border: none !important;
    color: var(--link-hover-color);
}

.blog-excerpt-content p.small {
    margin: 0;
}

.blog-excerpt-content h2, .blog-excerpt-content h3 {
    margin-bottom: .4rem;
}

.blog-excerpt-content p:first-child {
    margin-top: 0;
}

.blog-nav::before {
    content: "Filter by category: ";
    color: var(--text-color);
    font-size: var(--small-font-size);
    font-weight: 700;
}

.featured-img {
    padding: 0;
}

.fp-thumb a, .fp-thumb a:link, .fp-thumb a:visited, .fp-thumb a:active, .fp-thumb a:hover {
    display: block;
    border: none !important;
    border-radius: var(--border-radius);
    background-color: var(--navy-color) !important;
}
.fp-thumb img { transition: .4s all ease-in-out; }

.fp-thumb img:hover {
    opacity: .6;
    border-radius: var(--border-radius);
    background-color: transparent !important;
}

.nextpost p {
    margin: 0;
}

.nextpost i {
    font-size: 24px;
    color: var(--blue-color);
}

img.size-post-thumbnail {
    min-width: 100%;
}

.alignnone {
	display: inline;
}

.continue-link {
    text-transform: uppercase;
    font-weight: 700;
}

.continue-link a:after {
    content: "\00BB";
    padding-left: 10px;
    color: var(--link-color);
}

.continue-link a:hover:after {
    color: var(--white-color);
}

.alignright { float: right; padding: 0;
	margin: 10px 0 0 25px; }
.alignleft { float: left;
padding: 0;
	margin: 10px 25px 0 0;}
.aligncenter { display: block; padding: 0;
	margin: 10px auto; }


.wp-caption {
	background-color: var(--white-color);
    border: 1px solid var(--blue-color);
	text-align: center;
	padding: .5rem;
	color: var(--text-color);
	font-size: .875rem;
	display: block;    
    max-width: 100%;
}
	.wp-caption a {
		line-height: 0.11em;
		font-size: .875em;
	}
	.wp-caption a:hover {
		color: var(--link-hover-color);
	}
	.wp-caption img {
		margin: 0 auto;
		display: block;
		padding: 0;
        box-shadow: none;
	}
	.wp-caption-text {
		font-size: .875rem;
		color: var(--text-color);
		padding: 3px !important;
		margin: 0 !important;
	}
.wp-caption-dd {
	font-size: 1rem;
	line-height: 1.1rem;
	padding: 0 4px 5px;
	margin: 0;
}

.wp-paginate {
    text-align: center;
    margin: 0 auto !important;
}

.wp-paginate .title {
    font-family: var(--main-family) !important;
    color: var(--text-color) !important;
}

.wp-paginate li {
    display: inline-block;
    margin: .3rem;
    padding: 0;
}
.wp-paginate li, .wp-paginate li .span {
    font-size: 18px !important;
    line-height: 1 !important;
}

.wp-paginate a { display: inline-block; }

.wp-paginate .current, .wp-paginate a {
    font-size: 18px !important;
    font-weight: 700;
    line-height: 1 !important;
    color: var(--blue-color) !important;
    text-transform: uppercase;
    text-align: center;
    padding: .5rem !important;
    background-color: var(--navy-blue-color) !important;
    box-shadow: none !important;
    text-decoration: none !important;
    border: none !important;
    border-radius: 7px;
    transition: all 300ms ease-in;
    margin: .2rem !important;
    min-width: 32px;
}

.wp-paginate .current, .wp-paginate a:hover {
    line-height: 1 !important;
    padding: .5rem !important;
    display: inline-block;
}

.wp-paginate .current {
	color: var(--blue-color) !important;
    background-color: var(--cyan-color) !important;
    border: none !important;
    cursor: crosshair;
}

.wp-paginate a:hover {
	color: var(--white-color) !important;
    background-color: var(--navy-color) !important;
    border: none !important;
}

.wp-paginate .prev, .wp-paginate .next {
    font-size: 26px !important;
    background-color: transparent !important;
    color: var(--blue-color) !important;
    padding: 0 .5rem .5rem .5rem !important;
}

.wp-paginate .prev:hover, .wp-paginate .next:hover {
    background-color: transparent !important;
    color: var(--navy-color) !important;
    padding: 0 .5rem .5rem .5rem !important;
}


/* ----------------------------->>>> LARGE BREAKPOINT ----------- */


@media only screen and (min-width: 1024px) {
    
    .large-soft-light {
        background-blend-mode: soft-light !important;
    }
        
    h1 {
        font-size: var(--h1-large-font-size);
    }
    
    h1 .normal {
        font-size: var(--h1-large-normal-font-size);
    }
    
    h2, article h1 {
        font-size: var(--h2-large-font-size);
    }
    
    h3, .blog-excerpts h2, .large-list li {
        font-size: var(--h3-large-font-size);
    }
    
    h4 {
        font-size: var(--h4-large-font-size);
    }
    
    h5 {
        font-size: var(--h5-large-font-size);
    }
    
    .larger-font {
        font-size: var(--larger-large-font-size);
    }
    
    p.medium, span.medium {
        font-size: var(--large-med-font-size);
    }
    
    p.medium2, span.medium2 {
        font-size: var(--large-med2-font-size);
    }
    
    footer .medium {
        font-size: var(--h4-large-font-size);
    }
    
    p.large, span.large {
        font-size: var(--large-lg-font-size);
    }
    
    p.xl, span.xl {
        font-size: var(--large-xl-font-size);
    }
    
    p.xxl, span.xxl {
        font-size: var(--large-xxl-font-size);
    }
    
    blockquote, blockquote p {
        font-size: var(--large-blockquote-font-size);
    }
    
    p, main ul, main ol, main ul li label {
        font-size: var(--large-font-size);
    }
    
    .small-only, .medium-only, .small-medium-only {
        display: none;
    }
    
    .high-text {
        min-height: 116px;
        padding-bottom: 2rem !important;
    }
    
    .large-shrink {
        -webkit-box-flex: 0 !important;
        -webkit-flex: 0 0 auto !important;
        -ms-flex: 0 0 auto !important;
        flex: 0 0 auto !important;
        max-width: 100% !important;
    }
    
    .large-abs {
        position: absolute;
    }
    
    .large-align-top {
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    
    .large-align-middle {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
    
    .large-align-bottom {
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        -ms-flex-align: end;
        align-items: flex-end;
    }

}

/* ---------------------------->>>> MEDIUM + LARGE ----------- */


@media screen and (min-width: 640px) {
    
    .medium-large-border-right {
        border-right: var(--border-width) solid var(--border-color);
    }
    
    .medium-large-text-right {
        text-align: right;
    }
    
    .medium-large-fit {
        max-width: fit-content !important;
        width: fit-content !important;
    }
    
    .sep li, .copyr li {
        display: inline-block;
    }

    .sep li:before, .copyr li:before {
        content: "\007c";
        padding: 0 .5rem;
    }

    .sep li:first-child:before, .copyr li:first-child:before {
        content: "";
        padding: 0;
    }
    
    .large-medium-shrink {
        -webkit-box-flex: 0 !important;
        -webkit-flex: 0 0 auto !important;
        -ms-flex: 0 0 auto !important;
        flex: 0 0 auto !important;
        max-width: 100% !important;
    }
    
    .high {
        height: 100%;
    }
    
    .abs {
        position: absolute;
    }
    
    .medium-large-abs {
        position: absolute;
    }
    
    .medium-large-align-top {
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    
    .medium-large-align-middle {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
    
    .medium-large-align-bottom {
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    
    .abs-bottom {
        position: absolute !important;
        bottom: -60px;
        z-index: 99999 !important;
    }
    
    .small-only, .mobile-only {
        display: none;
    }
    
    .postimg.row {
        margin-bottom: 1rem !important;
    }
    
    .featured-img {
    padding: 0;
    margin: 0 auto;
    text-align: center !important;
}

.featured-img img {
    margin: 0;
    width: auto;
    min-width: 100%;
}

}

/* ---------------------------->>>> MEDIUM BREAKPOINT ----------- */


@media only screen and (min-width: 640px) and (max-width: 1023px) {
    
    .medium-soft-light {
        background-blend-mode: soft-light !important;
    }
    
    .medium-shrink {
        -webkit-box-flex: 0 !important;
        -webkit-flex: 0 0 auto !important;
        -ms-flex: 0 0 auto !important;
        flex: 0 0 auto !important;
        max-width: 100% !important;
    }
    
    .large-only, .small-only {
        display: none;
    }
    
    .medium-abs {
        position: absolute;
    }
    
    .medium-align-top {
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    
    .medium-align-middle {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
    
    .medium-align-bottom {
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    
    h1 {
        font-size: var(--h1-medium-font-size);
    }
    
    h1 .normal {
        font-size: var(--h1-medium-normal-font-size);
    }
    
    h2, article h1 {
        font-size: var(--h2-medium-font-size);
    }
    
    h3, .blog-excerpts h2, .large-list li {
        font-size: var(--h3-medium-font-size);
    }
    
    h4 {
        font-size: var(--h4-medium-font-size);
    }
    
    h5 {
        font-size: var(--h5-medium-font-size);
    }
    
    .larger-font {
        font-size: var(--larger-medium-font-size);
    }
    
    p.medium, span.medium {
        font-size: var(--medium-med-font-size);
    }
    
    p.medium2, span.medium2 {
        font-size: var(--medium-med2-font-size);
    }
    
    footer .medium {
        font-size: var(--h4-medium-font-size);
    }
    
    p.large, span.large {
        font-size: var(--medium-lg-font-size);
    }
    
    p.xl, span.xl {
        font-size: var(--medium-xl-font-size);
    }
    
    p.xxl, span.xxl {
        font-size: var(--medium-xxl-font-size);
    }
    
    blockquote, blockquote p {
        font-size: var(--medium-blockquote-font-size);
    }
    
    p, main ul, main ol, main ul li, label {
        font-size: var(--medium-font-size);
    }

}


/* ---------------------------->>>> MEDIUM + SMALL -------------- */


@media only screen and (max-width: 1023px) {
    
    .small-medium-soft-light {
        background-blend-mode: soft-light !important;
    }
    
    .small-medium-text-center {
        text-align: center;
    }
    /* EDGE PICS CONTENT */
    .sm-med-expand {
        width: 100%;
        max-width: 100%;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    .sm-med-expand .column {
        padding-left: 0;
        padding-right: 0;
    }
    
    .medium-small-shrink {
        -webkit-box-flex: 0 !important;
        -webkit-flex: 0 0 auto !important;
        -ms-flex: 0 0 auto !important;
        flex: 0 0 auto !important;
        max-width: 100% !important;
    }
    
    .large-only {
        display: none;
    }
    
    /* Featured Image on Single.php */
    .article-content .featured-img {
        float: none;
        width: auto;
        max-width: auto;
        margin: 0 auto 1rem auto;
    }
    
    .article-excerpt p {
        padding: 0 0 .3rem 0 !important;
    }
    
}


/* ----------------------------->>>> SMALL BREAKPOINT ----------- */


@media only screen and (max-width: 639px) {
    
    .small-border-bottom {
        border-bottom: var(--border-width) solid var(--border-color);
    }
    
    .small-soft-light {
        background-blend-mode: soft-light !important;
    }
    
    h1 {
        font-size: var(--h1-small-font-size);
    }
    
    h1 .normal {
        font-size: var(--h1-small-normal-font-size);
    }
    
    h2, article h1 {
        font-size: var(--h2-small-font-size);
    }
    
    h3, .blog-excerpts h2, .large-list li {
        font-size: var(--h3-small-font-size);
    }
    
    h4 {
        font-size: var(--h4-small-font-size);
    }
    
    h5 {
        font-size: var(--h5-small-font-size);
    }
    
    .larger-font {
        font-size: var(--larger-small-font-size);
    }
    
    p.medium, span.medium {
        font-size: var(--small-med-font-size);
    }
    
    p.medium2, span.medium2 {
        font-size: var(--small-med2-font-size);
    }
    
    footer .medium {
        font-size: var(--h4-small-font-size);
    }
    
    p.large, span.large {
        font-size: var(--small-lg-font-size);
    }
    
    p.xl, span.xl {
        font-size: var(--small-xl-font-size);
    }
    
    p.xxl, span.xxl {
        font-size: var(--small-xxl-font-size);
    }
    
    blockquote, blockquote p {
        font-size: var(--small-blockquote-font-size);
    }
    
    p, main ul, main ol, main ul li {
        font-size: var(--small-font-size);
    }
    
    footer .column {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .small-text-center {
        text-align: center;
    }
    
    .small-shrink {
        -webkit-box-flex: 0 !important;
        -webkit-flex: 0 0 auto !important;
        -ms-flex: 0 0 auto !important;
        flex: 0 0 auto !important;
        max-width: 100% !important;
    }
    
    .medium-large-only, .large-only, .desktop-only {
        display: none;
    }
    
    .small-align-center {
        -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
    }
    
    .small-align-top {
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    
    .small-align-middle {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
    
    .small-align-bottom {
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    
    main ul, main ol, main dl {
        margin-left: 1em;
        padding-left: .9em;
    }
    
    .row.expanded .row {
        width: 100%;
    }
    
    img, img.alignright, img.alignleft {
    	display: block;
    	float: none;
        text-align: center;
        margin: 20px auto;
    }
    
    footer .row {
        width: 90%;
    }
    
    footer ul {
        margin-left: auto;
        margin-right: auto;
    }
    
    .footer-content p a {
        font-size: 1.4rem;
    }
    
    .sep li, .copyr li, .copyr p {
        display: block !important;
    }
    
    main ul, main ol {
        padding-left: 1.5rem;
    }
    
    .alignnone, .alignleft, .alignright, .aligncenter {
        display: block;
    }
    
    footer .inline {
        display: block;
    }
    
    .copyr li:before {
        content: "";
        padding: 0;
    }
    
    html {
        overflow-x: hidden;
    }
    
    .article-excerpt {
        padding: 0;
    }
    
    main .align-right {
        justify-content: center;
    }
    
    .copyr {
        margin: 0;
    }
    

    
}