/*
 Theme Name:   Beecos 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: "etna-x-condensed",serif;
    --main-family: "adelle-sans",sans-serif;
    --menu-family: "adelle-sans",sans-serif;
    --buttons-family: "adelle-sans",sans-serif;
    
    --navy-color: rgb(52,55,138);
    --cyan-color: rgb(0,192,237);
    --orange-color: rgb(239,79,35);
    --purple-color: rgb(93,56,149);
    --pink-color: rgb(232,77,155);
    --yellow-color: rgb(248,220,3);
    --green-color: rgb(6,161,121);
    --black-color: rgb(0,0,0);
    --pale-pink-color: rgb(197,81,142);
    --pale-orange-color: rgb(203,84,45);
    --pastel-pink-color: rgb(253,245,245);
    --pastel-yellow-color: rgb(252,235,184);
    --breadcrumb-pink-color: rgb(248,202,222);
    
    --menu-yellow-color: rgb(250,207,0);
    
    --button-hover-background-color: rgb(32,21,92);

    --white-color: #fff;
    --op-navy: rgba(53,64,154,.9);
    --op-white: rgba(255,255,255,.8);
    --op-black: rgba(0,0,0,.8);
    
    --body-bg: var(--white-color);
    
    --text-color: var(--black-color);
    
    --h1-large-font-size: 9.375rem;/* 150px */
    --h2-large-font-size: 5.938rem;/* 95px */
    --h3-large-font-size: 4.688rem;/* 75px */
    --h4-large-font-size: 3.125rem;/* 50px */
    --large-xxl-font-size: var(--h1-large-font-size);
    --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);
    --large-font-size: 1.375rem;/* 22px */
    --large-blockquote-font-size: var(--large-font-size);
    
    --h1-medium-font-size: 7.813rem;/* 125px */
    --h2-medium-font-size: 4.688rem;/* 75px */
    --h3-medium-font-size: 3.125rem;/* 50px */
    --h4-medium-font-size: 2.5rem;/* 40px */
    --medium-xxl-font-size: var(--h1-medium-font-size);
    --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);
    --medium-font-size: 1.125rem;/* 18px */
    --medium-blockquote-font-size: var(--medium-font-size);
    
    --h1-small-font-size: 4.688rem;/* 75px */
    --h2-small-font-size: 3.125rem;/* 50px */
    --h3-small-font-size: 2.5rem;/* 40px */
    --h4-small-font-size: 1.875rem;/* 30px */
    --small-xxl-font-size: var(--h1-small-font-size);
    --small-xl-font-size: var(--h1-small-font-size);
    --small-lg-font-size: var(--h1-small-font-size);
    --small-med-font-size: var(--h1-small-font-size);
    
    --small-font-size: 1rem;/* same as small font on all sizes*/
    --footer-font-size: 1.1rem;
    --small-blockquote-font-size: 1.1rem;
        
    --headings-line-height: 1.1;
    --text-line-height: 1.5;
    --tight-text-line-height: 1.2;
    --footer-line-height: 1.4;
    
    --text-margin-top: 1rem;
    --text-margin-bottom: 1rem;
    --blockquote-text-color: var(--text-color);
    --blockquote-font-weight: 400;
    --blockquote-font-style: normal;
    --blockquote-line-height: 1.5;
    
    --hr-color: var(--pink-color);
    --hr-height: 7px;
    --border-color: var(--pink-color);
    
    --list-margin-top: 1.2rem;
    --list-margin-bottom: 1.2rem;
    --list-margin-left: 1.5rem;
    --sub-list-margin-top: 0;
    --sub-list-margin-bottom: ,5rem;
    --list-item-padding-bottom: .8rem;
    
    --h1-heading-text-color: var(--purple-color);
    --h2-heading-text-color: var(--text-color);
    --h3-heading-text-color: var(--text-color);
    --h4-heading-text-color: var(--text-color);
    --h1-font-weight: 400;
    --h2-font-weight: 400;
    --h3-font-weight: 400;
    --h4-font-weight: 400;
    --xxl-font-weight: 400;
    --xl-font-weight: 400;
    
    --link-color: var(--orange-color);
    --link-hover-color: var(--green-color);
    --link-hover-background-color: transparent;
    --link-border-color: var(--orange-color);
    --link-border-width: 2px;
    --link-hover-border-width: 2px;
    --link-hover-border-color: var(--green-color);
    
    --footer-link-color: var(--text-color);
    --footer-link-hover-color: var(--orange-color);
    --footer-link-hover-background-color: var(--link-hover-background-color);
    --footer-link-border-color: var(--navy-color);
    --footer-link-border-width: 1px;
    --footer-link-hover-border-width: 1px;
    --footer-link-hover-border-color: var(--orange-color);
    
    --button-text-size: 1rem;
    --button-large-text-size: 1.2rem;
    --button-font-weight: 700;
    --button-text-transform: uppercase;
    --button-text-color: var(--white-color);
    --button-background-color: var(--pale-pink-color);
    --button-border-color: transparent;
    --button-border-width: 0px;
    
    --button-hover-text-color: var(--white-color);
    --button-hover-border-color: transparent;
    --button-padding: 1.1rem 1.9rem 1rem 1.9rem;
    --button-narrow-padding: .65rem 1.5rem;
    --button-large-padding: 1.3rem 2.7rem;
    
    --form-button-text-color: var(--white-color);
    --form-button-font-size: var(--button-text-size);
    --form-button-font-weight: 700;
    --form-button-text-transform: uppercase;
    --form-button-background-color: var(--pink-color);
    --form-button-hover-text-color: var(--white-color);
    --form-button-hover-background-color: var(--purple-color);
    --form-button-padding: .775rem .9rem;
    --form-button-border-color: transparent;
    --form-button-hover-border-color: transparent;
    --form-button-border-radius: 30px;
    
    --form-field-text-color: var(--text-color);
    --form-field-background-color: #fff;
    --form-field-font-size: 1.125rem;
    --form-label-font-size: 1.125rem;
    --form-field-border-width: 4px;
    --form-field-border-color: var(--pink-color);
    --form-field-focus-border-color: var(--purple-color);
    --form-field-padding: .575rem .8rem;

    --header-background-color: var(--white-color);
    --header-padding: .5rem 0;
    --header-border: none;
    --header-solid-background-color: var(--white-color);
    --header-solid-border: none;
    --mobile-submenu-color: var(--text-color);
    --mobile-submenu-background-color: var(--pastel-yellow-color);
    --header-mobile-background-color: var(--white-color);
    --mobile-close-bg: var(--yellow-color);
    
    --header-desktop-logo-width: 139px;
    --header-mobile-logo-width: 90px;
    
    --footer-background-color: var(--white-color);
    
    --top-buttons-icon-size: 36px;
    --social-icons-size: 97px;
        
    --border-radius: 18px;
    --button-border-radius: 20px;
    --round-border-radius: 50%;
    
    --border-color: var(--navy-color);
    
}

body, html {
    overflow-x: hidden;
}

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

body {
    background-color: var(--body-bg);
    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;
}

.abslocked {
    position: absolute;
}

.abslocked.high {
    height: 100%;
}

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

.row {
    margin: 0 auto !important;
    width: 100%;
}

wide, .collapse {
    padding: 0 !important;
}

.row.collapse > .column, .row.collapse > .columns {
    padding-right: .9375rem;
    padding-left: .9375rem;
}

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

@media screen and (min-width: 640px) {
    
    .row {
    width: 100%;
}
    .row {
        max-width: 90%;
    }
    
    .row.narrow {
        max-width: 70% !important;
    }
    
}

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

.wide.expanded img, .widepic.expanded img {
    border-radius: 0;
}

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

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

.op-pic img {
    opacity: .4;
}

.hide {
    display: none !important;
}

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

.butterfly-cyan, .butterfly-black, .butterfly-green, .butterfly-navy, .butterfly-orange, .butterfly-pink, .butterfly-purple, .butterfly-yellow {
    background-position: center left 5%;
    background-repeat: no-repeat;
    background-size: 50%;
}

.butterfly-cyan {
    background-image: url(images/butterfly-cyan.svg);
}

.butterfly-black {
    background-image: url(images/butterfly-black.svg);
}

.butterfly-green {
    background-image: url(images/butterfly-green.svg);
}

.butterfly-navy {
    background-image: url(images/butterfly-navy.svg);
}

.butterfly-orange {
    background-image: url(images/butterfly-orange.svg);
}

.butterfly-pink {
    background-image: url(images/butterfly-pink.svg);
}

.butterfly-purple {
    background-image: url(images/butterfly-purple.svg);
}

.butterfly-yellow {
    background-image: url(images/butterfly-yellow.svg);
}

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

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

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

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

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

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

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

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

.pale-pink {
    background-color: var(--pale-pink-color);
}

.pale-orange {
    background-color: var(--pale-orange-color);
}

.pastel-pink {
    background-color: var(--pastel-pink-color);
}

.pastel-yellow {
    background-color: var(--pastel-yellow-color);
}

.breadcrumb-pink {
    background-color: var(--breadcrumb-pink-color);
}

.menu-yellow {
    background-color: var(--menu-yellow-color);
    max-height: 40px !important;
}

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

.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-blue {
        background-color: var(--navy-color);
    }
    
    .mobile-bg-cyan {
        background-color: var(--cyan-color);
    }
    
    .mobile-bg-orange {
        background-color: var(--orange-color);
    }
    
    .mobile-bg-pale-orange {
        background-color: var(--pale-orange-color);
    }
    
    .mobile-bg-purple {
        background-color: var(--purple-color);
    }
    
    .mobile-bg-green {
        background-color: var(--green-color);
    }

}

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

    .desktop-op-black {
        background-color: var(--op-black);
    }
    
    .desktop-purple-box {
        background-image: url(images/purple-box.png);
        background-size: 100%;
        background-repeat: repeat-y;
    }
    
    .desktop-pale-orange-box {
        background-image: url(images/pale-orange-box.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center right;
    }
    
    .desktop-abs {
        position: absolute;
    }
}

/* Medium Only */

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

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


@media screen and (max-width: 1177px) {
    .small-medium-text-center {
        text-align: center;
    }
}

/* FLIPS */

/* 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);
}

/*  STICK BACKGROUND TO TOP  */

.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 -------- */

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

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

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

.icon-round {
    border-radius: var(--round-border-radius);
    width: 100px;
    height: 100px;
    padding-top: 25px;
    display: block;
    border: none !important;
}

.icon-round:hover, .icon-round:focus {
    background-color: var(--button-blue-hover-background-color);
}

.icon-round img {
    margin: 0 auto;
}

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

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

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

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

.border-top-black {
    border-top: 3px solid var(--black-color);
    height: 100%; /* for boxes */
}

.border {
    border: 7px 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;
}

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

h1 .medium {
    font-weight: 400;
    display: block;
    margin-bottom: 1rem;
}

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

.heavy {
    font-weight: 900;
}

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

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

.white-text a:hover, .white-text a:focus, .orange a:hover, .orange a:focus, .yellow a:hover, .yellow a:focus {
    color: var(--pink-color) !important;
    background-color: var(--white-color);
    border-bottom-color: var(--white-color);
}

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

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

.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 {
    color: var(--navy-color) !important;
}

@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, blockquote, blockquote p, 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 {
    font-family: var(--main-family);
    line-height: var(--text-line-height);
}

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

.woocommerce h1 {
    font-family: var(--main-family);
}

.headingfont {
    font-family: var(--headings-family) !important;
}

.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;
}

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

.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;
}

h1 {
    margin: var(--text-margin-top) 0 15px 0;
}

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

h2, h3, h4, h5 {
    width: 100%;
}

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

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);
}

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

.xl {
    font-weight: var(--xl-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;
}

article h1 {
    margin: 0;
    text-transform: uppercase;
}

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

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

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

main ul li {
    list-style-type: disc;
    padding-inline-start: 0px;
}

main ol li {
    list-style: decimal;
    padding-inline-start: 8px;
}

ul li::marker {
  color: var(--pink-color);
    font-size: 50px;
    line-height: 20px;
}

ol li::marker {
  color: var(--pink-color);
    font-size: inherit;
    line-height: inherit;
}

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

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;
}

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

a {
    color: inherit;
}

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

main a:hover, main a:focus, h2 a:hover, h3 a:hover, h4 a: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);
}

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

.breadcrumb a:link, .breadcrumb a:visited, .breadcrumb a:active {
    color: var(--black-color);
}

.pink.breadcrumb a:hover {
    color: var(--white-color);
}

.breadcrumb-pink.breadcrumb a:hover {
    color: var(--purple-color) !important;
}

.pastel-yellow.breadcrumb a:hover {
    color: var(--purple-color);
}

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

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

.excerpt h2 a {
    color: var(--text-color);
    font-weight: 400;
    border: none;
    display: inline-block;
}

.excerpt h2 a:hover {
    color: var(--pink-color) !important;
}

.excerpt h2 a:after, .excerpt h2 a:after {
    /*content: " \00BB";
    color: transparent;*/
    content: url(images/butterfly-pink.svg);
    width: 20px;
    height: 20px;
    display: inline-block !important;
    opacity: 0;
    margin-left: -15px;
    transition: .3s all ease-in-out;
}


.excerpt h2 a:hover:after, .excerpt h2 a:focus:after {
    /*content: " \00BB";
    color: var(--navy-color);*/
    content: url(images/butterfly-pink.svg);
    opacity: 1;
    margin-left: 15px;
    rotate: 25deg;
}

/* Also applies same to woo products */
.image-box {
    background-color: var(--pastel-pink-color);
    width: 100% !important;
    display: block;
    border-radius: var(--border-radius);
    padding: 2rem;
    transition: .3s all ease-in-out;
}

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

.blog-excerpts a:hover .image-box {
    background-color: var(--pastel-yellow-color);
}

.blog-excerpts .image-box img {
    border-radius: var(--border-radius);
}

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

blockquote {
    page-break-inside: avoid;
    border-left: 10px solid var(--orange-color);
    padding: .5rem .5rem .5rem 20px !important;
}

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);
}

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;
        padding: 0 0 0 20px;
    }
}

hr {
    background: var(--hr-color);
    border-radius: 0;
    border: none;
    clear: both;
    margin: 1.5rem auto;
    padding: 0;
    width: 100%;
    height: var(--hr-height);
}

hr.brand {
    background: url(images/hr-brand.png) no-repeat center center;
    background-size: contain;
    border: none;
    clear: both;
    margin: 1rem auto;
    padding: 0;
    width: 100%;
    height: 36px;
}

.row.collapse hr {
    margin: 0 auto;
}

.clearfloat {
	height: 0;
	line-height: 0;
	font-size: 1px;
	clear: both;
}

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

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


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

.topbar {
    padding: .5rem;
}

.topbar a:link, .topbar a:visited, .topbar a:active {
    color: var(--white-color);
    border-bottom: var(--link-border-width) solid var(--white-color);
    transition: all 300ms ease-in-out;
}

.topbar a:hover, .topbar a:focus {
    color: var(--black-color);
    border-bottom: var(--link-border-width) solid var(--black-color);
}

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

.logo img {
    margin: 0;
}

header {
    display: block;
    width: 100% !important;
    z-index: 99999 !important;
    padding: 0;
    background-color: var(--header-background);
}

.headermain {
    padding: var(--header-padding);
}

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 ----------- */

.button, .button:link, .button:visited, .button:active, .button:link, .button:visited, .button:active, form.search-form button {
    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;
    display: inline-flex;
    justify-content: space-around;
    align-content: center;
    flex-wrap: wrap;
    cursor: pointer;
    color: var(--button-text-color);
    border-width: var(--button-border-width);
    border-style: solid;
    border-color: 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:focus, form.search-form button:hover, form.search-form button:focus, input[type="submit"]:hover, input[type="submit"]:focus, .white-text .button:hover, .white-text .button:focus, .white-text form.search-form button:hover, .white-text form.search-form button:focus, .white-text input[type="submit"]:hover, .white-text input[type="submit"]:focus {
    text-decoration: none;
    color: var(--button-hover-text-color) !important;
    border-color: var(--button-hover-border-color);
    background-color: var(--button-hover-background-color);
}

.button.narrow {
    padding: var(--button-narrow-padding);
}

.button.large {
    font-size: var(--button-large-text-size);
    padding: var(--button-large-padding);
}

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

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

.button.blue:link, .button.blue:visited, .button.blue:active {
    color: var(--white-color);
    background-color: var(--navy-color) !important;
}

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

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

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

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

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

.black .button:hover, .black .button:focus {
    color: var(--white-color) !important;
}

.blue .button:link, .blue .button:visited, .blue .button:active, .cyan .button:link, .cyan .button:visited, .cyan .button:active {
    color: var(--white-color) !important;
}

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

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

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

ul.footer-menu {
    padding: 0;
}

ul.footer-menu li {
    list-style: none;
}

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

footer a:hover, footer a:focus {
    color: var(--footer-link-hover-color) !important;
    border-bottom: var(--footer-link-hover-border-width) solid var(--footer-link-hover-border-color) !important;
}


footer .no-left-padding p {
    margin: 0 !important;
}


#mega-menu-social_icons a {
    text-decoration: none;
    border: none !important;
}

#mega-menu-social_icons a:link, #mega-menu-social_icons a:visited, #mega-menu-social_icons a:active {
    color: var(--black-color);
}

#mega-menu-social_icons a:hover, #mega-menu-social_icons a:focus {
    color: var(--purple-color) !important;
}

#mega-menu-social_icons li {
    margin: .5rem 1rem;
}

#mega-menu-social_icons li, #mega-menu-social_icons li i {
    width: var(--social-icons-size) !important;
    height: var(--social-icons-size) !important;
    font-size: var(--social-icons-size) !important;
    display: inline-block;
}

.bi::before, [class*=" bi-"]::before, [class^="bi-"]::before {
    vertical-align: unset !important;
}

footer {
    clear: both;
    background-color: var(--footer-background-color);
    padding: 0;
}

footer p {
    color: var(--text-color);
    font-size: var(--footer-font-size);
    line-height: var(--footer-line-height);
    margin: .2rem;
}

footer .row {
    padding-top: 2rem;
    padding-bottom: 2rem;
}


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

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

.sep li {
    font-size: 1rem;
}

.copyr li {
    font-size: .875rem;
    font-style: normal;
}

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

.copyr li:first-child:before {
    content: "";
    padding: 0;
}



@media screen and (max-width: 639px) {
    footer ul, footer li {
        text-align: center;
    }
    .footer-content, .copyr {
        padding: 0 !important;
    }
}



/* ------------------------------------->>>> 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 .herocontent.collapse {
    padding: 0 !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;
    min-width: 100vw;
    height: auto;
    max-width: none !important;
    align-self: flex-start !important;
    margin: 0;
    border-radius: 0 !important;
}

.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-img img {
    max-height: 267px;
    border-radius: var(--border-radius);
    opacity: 1;
    margin: 0 auto;
    padding: 1rem;
    transition: .5s all ease-in-out;
}

a.featured-img {
    background: var(--pastel-pink-color);
    border-radius: var(--border-radius);
    border-bottom: none !important;
    display: block;
    padding: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    text-align: center;
    transition: .5s all ease-in-out;
}

a.featured-img:hover {
    background-color: var(--pink-color);
}

.excerpt {
    margin-bottom: 3.5rem !important;
}

.excerpt-content {/* around excerpt to line up text with image */
    padding: 5px 15px;
}

.article-featured img {
    margin: 0 auto;
}

.nextpost p {
    margin: 0;
}

.nextpost i {
    font-size: 24px;
    color: var(--navy-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(--navy-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(--white-color) !important;
    text-transform: uppercase;
    text-decoration: none !important;
    text-align: center;
    padding: .5rem !important;
    background-color: var(--navy-color) !important;
    box-shadow: none !important;
    text-decoration: none !important;
    border: none !important;
    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(--text-color) !important;
    background-color: var(--navy-color) !important;
    border: none !important;
    cursor: crosshair;
}

.wp-paginate a:hover {
	color: var(--text-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(--text-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;
}

@media screen and (max-width: 724px) {
    .breadcrumb {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 91.66667%;
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%;
        margin-bottom: 1rem;
    }
}


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


@media only screen and (min-width: 1024px) {
        
    h1 {
        font-size: var(--h1-large-font-size);
    }
    
    h2, article h1 {
        font-size: var(--h2-large-font-size);
    }
    
    h3, .related h2 {
        font-size: var(--h3-large-font-size);
    }
    
    h4 {
        font-size: var(--h4-large-font-size);
    }
    
    p.medium, span.medium {
        font-size: var(--large-med-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, .blog-excerpts h2 {
        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) {
    
    article, .blog-excerpts {
    margin-bottom: 6rem;
}
    
    .med-lg-fit {
        max-width: fit-content !important;
    }
    .sep li, .copyr li {
        display: inline-block;
    }

    .sep li:before, .copyr li:before {
        content: "\2044";
        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;
    }
    
    .small-only, .mobile-only {
        display: none;
    }
    
    .postimg.row {
        margin-bottom: 1rem !important;
    }

}


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


@media only screen and (min-width: 640px) and (max-width: 1023px) {
    
    .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;
    }
    
    .title h1 {
        padding: 1rem 4rem .5rem 1rem;
    }
    
    h1 {
        font-size: var(--h1-medium-font-size);
    }
    
    h2, article h1 {
        font-size: var(--h2-medium-font-size);
    }
    
    h3, .related h2 {
        font-size: var(--h3-medium-font-size);
    }
    
    h4 {
        font-size: var(--h4-medium-font-size);
    }
    
    p.medium, span.medium {
        font-size: var(--medium-med-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, .blog-excerpts h2 {
        font-size: var(--medium-font-size);
    }

}


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


@media only screen and (max-width: 1023px) {
    
    .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) {
    
    h1 {
        font-size: var(--h1-small-font-size);
    }
    
    h2, article h1 {
        font-size: var(--h2-small-font-size);
    }
    
    h3, .related h2 {
        font-size: var(--h3-small-font-size);
    }
    
    h4 {
        font-size: var(--h4-small-font-size);
    }
    
    p.medium, span.medium {
        font-size: var(--small-med-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, .blog-excerpts h2 {
        font-size: var(--small-font-size);
    }
    
    .small-text-center {
        text-align: center;
    }
    
    .button.narrow {
        padding: var(--button-padding);
    }
    
    article, .blog-excerpts {
    margin-bottom: 1rem;
}
    
    .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-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;
    }
    
    ul.inline li .button {
        margin-bottom: 1rem;
    }
    
    main ul, main ol, main dl {
        margin-left: 1em;
        padding-left: .9em;
    }
    
    .row.expanded .row {
        width: 100%;
    }
    
    main .column {
        margin-bottom: .5rem;
    }
    
    img, img.alignright, img.alignleft {
    	display: block;
    	float: none;
    	margin: 1rem auto;
        text-align: center;
    }
    
    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;
    }
    
    .blog-nav li {
        font-size: 1.2rem !important;
    }
    
    .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;
    }
    

    
}