/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/


/*--------------------*/


/* Font Ramp - 8/30/2022 */


/*-------------------*/

@font-face {
    font-family: 'VSCOMIcons';
    src: url('/wp-content/themes/Avada-Child-Theme/fonts/icons/vscom.eot');
    src: url('/wp-content/themes/Avada-Child-Theme/fonts/icons/vscom.eot') format('embedded-opentype'), url('/wp-content/themes/Avada-Child-Theme/fonts/icons/vscom.ttf') format('truetype'), url('/wp-content/themes/Avada-Child-Theme/fonts/icons/vscom.woff') format('woff'), url('/wp-content/themes/Avada-Child-Theme/fonts/icons/vscom.svg') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

.vscom-icon:before {
    font-family: "VSCOMIcons";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    text-decoration: none !important;
    text-transform: none;
}


/* icons */

.vscom-icon--arrow-right:before {
    content: "\e900";
}

.vscom-icon--chevron-down:before {
    content: "\e901";
}

.vscom-icon--slider-next:before {
    content: "\e902";
}

.vscom-icon--slider-previous:before {
    content: "\e903";
}


/* 300 weight light */

@font-face {
    font-family: 'Segoe UI';
    font-style: normal;
    font-weight: 300;
    src: local('Segoe UI Light'), url('/wp-content/themes/Avada-Child-Theme/fonts/segoeui-semilight.woff2') format('woff2'), url('/wp-content/themes/Avada-Child-Theme/fonts/SegoeUI-Light.woff') format('woff'), url('/wp-content/themes/Avada-Child-Theme/fonts/segoeuil.ttf') format('truetype');
}


/* 400 weight normal */

@font-face {
    font-family: 'Segoe UI';
    font-style: normal;
    font-weight: normal;
    src: local('Segoe UI'), url('/wp-content/themes/Avada-Child-Theme/fonts/segoeui-regular.woff2') format('woff2'), url('/wp-content/themes/Avada-Child-Theme/fonts/SegoeUI.woff') format('woff'), url('/wp-content/themes/Avada-Child-Theme/fonts/segoeui.ttf') format('truetype');
}


/* 600 weight semibold */

@font-face {
    font-family: 'Segoe UI';
    font-style: normal;
    font-weight: 600;
    src: local('Segoe UI Semibold'), url('/wp-content/themes/Avada-Child-Theme/fonts/segoeui-semibold.woff2') format('woff2'), url('/wp-content/themes/Avada-Child-Theme/fonts/SegoeUI-Semibold.woff') format('woff'), url('/wp-content/themes/Avada-Child-Theme/fonts/seguisb.ttf') format('truetype');
}


/* 700 weight bold */

@font-face {
    font-family: 'Segoe UI';
    font-style: normal;
    font-weight: 700;
    src: local('Segoe UI Bold'), url('/wp-content/themes/Avada-Child-Theme/fonts/SegoeUI-Bold.woff2') format('woff2'), url('/wp-content/themes/Avada-Child-Theme/fonts/SegoeUI-Bold.woff') format('woff'), url('/wp-content/themes/Avada-Child-Theme/fonts/segoeuib.ttf') format('truetype'), url('/wp-content/themes/Avada-Child-Theme/fonts/segoeuib.eot') format('embedded-opentype');
}

:root {
    --font-body: "Segoe UI", SegoeUI, Helvetica, Arial, sans-serif;
    --fw-light: 300;
    --fw-semibold: 600;
    --fw-bold: 700;
    --fs-body: 16px;
    --fs-body-sm: 14px;
    --fs-body-12: 12px;
    --fs-body-8: 8px;
    --fs-body-btn: 15px;
    --lh-body: 24px;
    --lh-body-btn: 22px;
    --lh-body-sm: 20px;
    --clr-black: hsl(0deg 0% 10%);
    --clr-dark-theme: hsl(0deg 0% 13%);
    --clr-white: hsl(0deg 0% 100%);
    --clr-off-white: hsl(0deg 0% 87%);
    --clr-violet-light: hsl(262deg 46% 58%);
    --clr-violet: hsl(262deg 35% 49%);
    --clr-violet-med: hsl(261deg 36% 41%);
    --clr-violet-dark: hsl(259deg 31% 26%);
    --clr-purple-light: hsl(262deg 47% 87%);
    --clr-purple: #8661C5;
    --clr-purple-med: hsl(262deg 35% 49%);
    --clr-purple-dark: hsl(261deg 36% 41%);
    --clr-blue-light: hsl(204deg 100% 40%);
    --clr-blue: hsl(207deg 94% 38%);
    --clr-blue-dark: hsl(210deg 86% 35%);
    --clr-purple-text: hsl(273deg 91% 79%);
    --clr-darkbg-purple: hsl(274deg 100% 81%);
    --clr-darkbg-purple-med: hsl(268deg 63% 69%);
    --clr-darkbg-purple-dark: hsl(271deg 78% 75%);
    --clr-darkbg-auxtext: #9A70D4;
    --ls-body: -0.03rem;
}

@media (min-width:1400px) {
     :root {
        --fs-h1: 71px;
        --fs-h2: 50px;
        --fs-h3: 37px;
        --fs-h4: 29px;
        --fs-h5: 24px;
        --fs-h6: 21px;
        --lh-h1: 84px;
        --lh-h2: 64px;
        --lh-h3: 44px;
        --lh-h4: 34px;
        --lh-h5: 30px;
        --lh-h6: 26px;
        --fs-disp-1: 249px;
        --fs-disp-2: 160px;
        --fs-disp-3: 105px;
        --fs-disp-4: 71px;
        --lh-disp-1: 300px;
        --lh-disp-2: 192px;
        --lh-disp-3: 124px;
        --lh-disp-4: 84px;
        --fs-body-lg: 18px;
        --lh-body-lg: 26px;
    }
}

@media only screen and (min-width:1084px) and (max-width:1400px) {
     :root {
        --fs-h1: 37px;
        --fs-h2: 29px;
        --fs-h3: 24px;
        --fs-h4: 21px;
        --fs-h5: 19px;
        --fs-h6: 18px;
        --lh-h1: 44px;
        --lh-h2: 38px;
        --lh-h3: 30px;
        --lh-h4: 30px;
        --lh-h5: 26px;
        --lh-h6: 24px;
        --fs-disp-1: 160px;
        --fs-disp-2: 105px;
        --fs-disp-3: 71px;
        --fs-disp-4: 50px;
        --lh-disp-1: 192px;
        --lh-disp-2: 124px;
        --lh-disp-3: 84px;
        --lh-disp-4: 60px;
        --fs-body-lg: 18px;
        --lh-body-lg: 26px;
    }
}

@media (max-width:1083px) {
     :root {
        --fs-h1: 29px;
        --fs-h2: 24px;
        --fs-h3: 21px;
        --fs-h4: 19px;
        --fs-h5: 18px;
        --fs-h6: 17px;
        --lh-h1: 34px;
        --lh-h2: 34px;
        --lh-h3: 26px;
        --lh-h4: 24px;
        --lh-h5: 22px;
        --lh-h6: 20px;
        --fs-disp-1: 105px;
        --fs-disp-2: 71px;
        --fs-disp-3: 50px;
        --fs-disp-4: 37px;
        --lh-disp-1: 124px;
        --lh-disp-2: 84px;
        --lh-disp-3: 60px;
        --lh-disp-4: 44px;
        --fs-body-lg: 16px;
        --lh-body-lg: 24px;
    }
}


/*--------------------*/


/* RESETS             */


/*--------------------*/

/* basic link styles, will be overridden by button and component read mores */

.fusion-content-boxes .heading a {
    display: inline-block;
}

.fabric-icon.circle-yes {
    text-align: center;
}

.post-content a {
    display: inline-flex;
}

/*--------------------*/


/* CORE LAYOUT        */


/*--------------------*/

/* lowest breakpoint fix, keeps content on screen */
@media (max-width: 320px) {
    body {
        min-width: unset;
    }
}

/* UHF style fixes */

/* fix uhf gap */

#footerArea .c-uhff {
    margin-top: 0;
}


/* fixes carat position in chrome */

.c-uhf-menu button::after {
    line-height: normal;
}


/* fixes underline color on hover in UHF */

.c-uhfh .c-uhf-nav-link::before {
    color: inherit;
}


/* fixes text in free visual studio button */

a.c-call-to-action span,
button.c-call-to-action span {
    font-weight: normal;
}


/* fixes divider line in firefox */

.c-show-pipe {
    position: relative;
}

.c-uhfh .c-show-pipe::before {
    left: 0px;
}

.fusion-page-title-bar,
.fusion-button-wrapper .mac {
    display: none;
}


/*live person chat */

.lpChatButton {
    border: none;
    font-size: 18px;
    background: url('/wp-content/themes/Avada-Child-Theme/assets/img/live-person/chat-now-image.png');
    width: 40px;
    height: 120px;
    position: fixed;
    bottom: 55px;
    cursor: pointer;
    background-position: -5px 0;
}
.lpChatButton:focus {
    outline-offset: -4px;
    outline: 2px dotted var(--clr-white);
}
#lpChatButton {
    height: 0;
}

.lpChatFrameContainer {
    background: #fff;
    border: none;
    display: flex;
    flex-direction: column-reverse;
    z-index: 999;
    position: fixed !important;
    overflow: auto;
    top: 2em;
    right: 10px;
    z-index: 99999;
}

.lpChatFrameContainer iframe {
    width: 100%;
}

.lpChatInviteContainer {
    width: 80%;
    max-width: 375px;
    z-index: 99999;
    position: fixed;
    bottom: 50px;
    right: 100px;
    padding: 1.5em;
    background: #fff;
    box-shadow: 0px 0px 10px rgb(0 0 0 / 25%);
    display: none;
}

.lpChatInviteContainer p {
    font-size: 1rem;
    line-height: 1.3;
    margin: 0.5em 0;
    color: #000;
}

.lpChatInviteContainer h2 {
    font-size: 1.375rem !important;
    line-height: 1.5 !important;
    margin-bottom: 0.5em;
    border-bottom: 1px solid #c0c0c0;
    padding-bottom: 0.5em;
}

.lpChatInviteContainer .accept-btn,
.lpChatInviteContainer .reject-btn {
    padding: .75em 1.5em;
    border-radius: 2px;
    font-weight: 600;
    cursor: pointer;
    margin: 1.15em auto;
    display: block;
    width: 100%;
}

.lpChatInviteContainer .accept-btn {
    background-color: #0078d4;
    color: #fff;
}

.lpChatInviteContainer .accept-btn:hover {
    background-color: #005da6;
}

.lpChatInviteContainer .reject-btn {
    background-color: #f7f7f7;
    border: 2px solid #bab9b8;
    color: #000;
}

.lpChatInviteContainer .reject-btn:hover {
    background-color: rgb(223, 223, 223);
}

div[id^="messaging_agent_availability"] {
    bottom: 100px !important;
    left: auto !important;
    right: 60px !important;
    top: auto !important;
}
@media screen and (max-width: 859px) {
    .lpChatButton {
        scale:0.85;
        left: -10px;
        background-position: 0 0;
    }
}
@media screen and (max-width: 640px) {
    .lpChatInviteContainer {
        right: 25px;
        bottom: 25px;
    }
}


/* end live person chat */


#toTop {
    bottom: 0 !important;
}

#toTop:focus {
    outline: 2px dotted #000;
}

/***************************************/

/* modal window code is used to handle the mobile download dialog */

/***************************************/

/*--------------------*/


/* vscom-modal-window        */


/*--------------------*/


/*--------------------*/


/* LAYOUT        */


/*--------------------*/

.vscom-modal-window-wrapper {
    position: fixed;
    z-index: 800;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
}

.vscom-modal-window {
    position: relative;
    top: 2.5rem;
    text-align: left;
    display: inline-block;
    padding: 1rem;
    min-width: 40vw;
}

.vscom-modal-close {
    float: right;
}

.vscom-modal-content:after {
    display: table;
    clear: both;
    content: '';
}


/* --mdd */

#vscom-mobile-download-dialog {
    display: flex;
    flex-direction: column;
}

.vscom-modal-window.vscom-modal-window--mdd {
    max-width: 23rem;
    min-width: 0;
    padding: 0;
    margin-left: auto;
    margin-right: auto;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-close {
    padding: 0.5rem;
    margin-left: auto;
    margin-right: 0;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-modal-window-content,
.vscom-modal-window.vscom-modal-window--mdd .vscom-modal-window-footer {
    text-align: center;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-modal-window-content-inner,
.vscom-modal-window.vscom-modal-window--mdd .vscom-modal-window-footer {
    padding: 1rem;
}

.vscom-modal-window.vscom-modal-window--mdd .onboardingform_contentblock {
    text-align: center;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-products {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-products a {
    text-align: center;
    padding: 0.5rem;
    flex: 1 0 33%;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-products img {
    max-width: 2rem;
    margin: auto auto 0.5rem auto;
    display: block;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-header {
    margin-bottom: 1.25rem;
}


/*--------------------*/


/* THEME        */


/*--------------------*/

.vscom-modal-window-wrapper {
    background-color: rgba(0, 0, 0, 0.5);
}

.vscom-modal-window {
    background-color: #FFF;
}


/* --mdd */

.vscom-modal-window.vscom-modal-window--mdd {
    background: none;
    display: flex;
    flex-direction: column;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-close {
    background-color: transparent;
    border: none;
    font-size: 1.5rem;
    color: #FFF;
}

#vscom-mobile-download-dialog .vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-header {
    font-weight: 400;
    font-size: 1rem;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-modal-window-content {
    background-color: #FFF;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-modal-window-content,
.vscom-modal-window.vscom-modal-window--mdd .vscom-modal-window-footer {
    font-weight: 1rem;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-products a {
    font-size: 0.875rem;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-modal-window-footer {
    background-color: #FAF9F8;
}


/*--------------------*/


/* STATE        */


/*--------------------*/

.vscom-modal-window-wrapper.vscom-modal-window-wrapper--hidden {
    display: none;
}

#vscom-mobile-download-dialog.vscom-modal-window-wrapper--hidden {
    display: none;
}

.vscom-modal-window.vscom-modal-window--mdd a:hover {
    text-decoration: underline;
    cursor: pointer;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-close:hover {
    cursor: pointer;
}

.vscom-modal-window.vscom-modal-window--mdd .vscom-mobile-dialog-products a:hover {
    background-color: #ECECEC;
    text-decoration: none;
}

/* end vscom modal download */

/***************************************/

/* VSCOM SOCIAL MEDIA - social media content area in the footer

/***************************************/
/* layout */

.vscom-social-media {
    width: 100%;
    padding: 0 5%;
}

.vscom-social-media-inner {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    max-width: 1600px;
    width: 100%;
    margin: 0 auto;
}

.vscom-social-media-column {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 1.5rem 0;
}

.vscom-social-media-column.flex-start {
    margin-right: auto;
}

.vscom-social-media-column.flex-end {
    margin: 0;
}

.vscom-media-link-divider {
    display: block;
    height: 100%;
}

.vscom-social-media-column a,
.vscom-social-media-column span {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin: 0 0.75rem;
    text-align: center;
}

.vscom-social-media-column:last-of-type a {
    margin: 0 0.75rem;
}

.vscom-social-media-column:last-of-type a img {
    margin-right: 0.5rem;
}

.vscom-social-media-column .vscom-dropdown-menu-container {
    margin-left: 0.75rem;
}

.vscom-social-media-text {
    margin-right: 0.75rem;
}

.vscom-social-media-column .toplink {
    padding: 0.5rem 3.25rem;
    justify-content:space-evenly;
    align-items: center;
}

.vscom-social-media-column .subwrap a.sublink {
    margin: 0;
    padding: 0.5rem;
}

.vscom-social-media-column .sublink .vscom-option-text {
    margin: 0;
    display: block;
    white-space: nowrap;
    text-align: center;
}

.vscom-social-media-column .toplink .vscom-dropdown-text,
.vscom-social-media-text {
    text-align: left;
}

/* theme */

.vscom-social-media {
    background-color: #F0F0F0;
}

.vscom-social-media-inner {
    border-bottom: 1px solid #C3C3C3;
}

.vscom-social-media--dividers .vscom-media-link-divider {
    border: 1px solid #D2D2D2;
}

.vscom-social-media-column .sublink .vscom-option-text,
.vscom-social-media-column .toplink .vscom-dropdown-text,
.vscom-social-media-text {
    font-family: Segoe UI;
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: #191919;
}

.vscom-social-media-column .toplink .vscom-dropdown-text,
.vscom-social-media a {
    font-weight: 600;
}

.vscom-social-media a,
.vscom-social-media a:hover,
.vscom-social-media a:visited,
.vscom-social-media a:focus {
    color: var(--clr-violet-med);
}

.vscom-social-media-column .toplink {
    background: #FFF;
    border-radius: 0.25rem;
}

.vscom-social-media-column .toplink:hover {
    border-radius: 0.25rem 0 0 0.25rem;
}

/* responsive */
@media screen and (max-width: 1084px) {
    .vscom-social-media {
        padding: 0 12px;
    }
}

@media screen and (max-width: 860px) {
    .vscom-social-media-inner {
        flex-direction: column;
        justify-content: unset;
    }

    .vscom-social-media-column {
        padding: 1rem 0;
    }

    .vscom-social-media-column.vscom-social-media-column--col-sm {
        flex-direction: column;
        align-items: flex-start;
        padding: 0;
    }

    .vscom-social-media-column.vscom-social-media-column--col-sm a {
        margin-bottom: 1rem;
        margin-left: 0;
    }

    .vscom-social-media-column.vscom-social-media-column--col-sm a:last-of-type {
        margin-bottom: 0;
    }

    .vscom-media-link-divider {
        display: none;
    }

    .vscom-social-media-column span { text-align: left; margin-left: 0; }

    .vscom-social-media-column:last-of-type a,
    .vscom-social-media-column:last-of-type a:first-of-type,
    .vscom-social-media-column:last-of-type a:last-of-type {
        margin-left: 0;
    }
}

/* states */

.vscom-social-media-column a:hover {
    text-decoration: underline;
}

/***************************************/

/* REIMAGINE  vscom-link-text        */
/* creates a nice small-animation button option when added into an anchor tag */

/***************************************/

span.vscom-link-text:after {
    display: block;
    content: '';
    border-bottom: solid 2px;
    transform: scaleX(0);
    transition: transform 160ms ease-in-out;
}

.post-content a {
    position: relative;
}

.post-content a:hover span.vscom-link-text:after {
    transform: scaleX(1);
}

.post-content a:hover i.vscom-icon--arrow-right {
    animation: bounceAlpha .4s;
}

.post-content a:focus {
    outline: unset;
}

.post-content a:focus::before {
    content: ' ';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: transparent;
    outline: 2px dotted;
    outline-offset: 1px;
    color: inherit;
}

@keyframes bounceAlpha {
    0% {
        opacity: 1;
        transform: translateX(0px);
    }
    20% {
        opacity: 0;
        transform: translateX(10px);
    }
    30% {
        opacity: 0;
        transform: translateX(-10px);
    }
    60% {
        opacity: 1;
        transform: translateX(0px);
    }
}

/* awb-menu */
/* reimagine focus appearance */

.awb-menu .awb-menu__main-a,
.awb-menu .awb-menu__open-nav-submenu_main {
    position: relative;
}

.awb-menu .awb-menu__main-a:focus,
.awb-menu .awb-menu__open-nav-submenu_main:focus {
    outline: unset; /* moving the focus appearance to ::before for more control */
}

.awb-menu .awb-menu__main-a:focus::before,
.awb-menu .awb-menu__open-nav-submenu_main:focus::before {
    content: ' ';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: transparent;
    outline: 2px dotted #000;
    border-radius: 0.5rem;
}

/* focus appearance is hidden on mobile menus by default */
.awb-menu.collapse-enabled.mobile-mode-collapse-to-button .awb-menu__m-toggle:focus::before {
    outline: 2px dotted #000 !important;
    outline-offset: -2px;
}

/***************************************/

/* REIMAGINE CSS UTILITY CLASSES       */

/* these classes are used to apply styles to elements in order to conform
    to the reimagine style in scenarios where the avada theme does not
    provide a way to do so via the avada theme options or fusion builder */

/***************************************/

/**
* fusion column utility
*/
@media screen and (max-width:1440px){
    .fusion-layout-column.br-8-md .fusion-column-wrapper {
        border-radius: 0.5rem;
    }
    .fusion-layout-column.br-16-md .fusion-column-wrapper {
        border-radius: 1rem;
    }
}

/*==============================================================
 *  FUSION TITLE UTILITIES
 *==============================================================*/

/* ----- 
    vsre-left-accent for fusion titles
    creates a pill shaped accent on the left side of the title
   ----- */
.fusion-title.left-pill { 
    position: relative; 
}

.fusion-title.left-pill::before { 
    display: block; 
    content: ' '; 
    position: absolute; 
    left: -1.5rem; 
    bottom: 0.35rem;
    width: 0.25rem; 
    height: 1.65rem; 
    background-color: var(--awb-custom_color_1); 
    border-radius: 0.125rem; 
}

/*
 tablet responsive font sizes
 - !important is needed as configured fonts show up on the element itself
 */
@media screen and (max-width: 1440px) {
    /* font size overrides */
    .fusion-title.fs-30-md .fusion-title-heading { font-size: 1.875rem !important; }
    .fusion-title.fs-24-md .fusion-title-heading  { font-size: 1.5rem !important; }
    .fusion-title.fs-18-md .fusion-title-heading  { font-size: 1.125rem !important; }
}

@media screen and (max-width: 680px) {
    /* font size overrides */
    .fusion-title.fs-28-sm .fusion-title-heading { font-size: 1.75rem !important; }
    /* line height overrides */
    .fusion-title.lh-36-sm .fusion-title-heading { line-height: 2.25rem !important; }
}

/*==============================================================
 *  FUSION TEXT UTILITIES (.fusion-text)
 *==============================================================*/

/* tablet responsive font sizes */
@media screen and (max-width: 1440px) {
    .fusion-text.fs-28-md {
        font-size: 1.75rem !important;
    }

    .fusion-text.fs-22-md {
        font-size: 1.375rem !important;
    }

    .fusion-text.fs-18-md {
        font-size: 1.125rem !important;
    }
}

/* mobile responsive font sizes */
@media screen and (max-width: 860px) {
    .fusion-text.fs-20-sm {
        font-size: 1.25rem !important;
    }
}

/*==============================================================
 * FUSION MENU UTILITIES (.awb-menu)
 *==============================================================*/

/* top level container has width: 100% and sometimes this is not desirable */
.awb-menu.w-auto {
    width: auto;
}

/* left and right margin are not provided for the top level menu container */
.awb-menu.ml-auto {
    margin-left: auto;
}
.awb-menu.mr-auto {
    margin-right: auto;
}

/* top level container has width: 100% and sometimes this is not desirable */
.awb-menu.icon-pr-0 .awb-menu__main-a .awb-menu__i_main {
    padding-right: 0;
}

/* right align mobile icon */
.awb-menu.mobile-carat-right .awb-menu__m-toggle-inner .awb-menu__m-collapse-icon {
    margin-left: auto;
    margin-right: 0;
}

/* color mobile icon */
.awb-menu.mobile-carat-purple .awb-menu__m-toggle-inner .awb-menu__m-collapse-icon {
    color: #8661C5;
}

/* full-width submenu */
.awb-menu.submenu-w-100 .awb-menu__sub-ul,
.awb-menu.submenu-w-100 .awb-menu__sub-ul li {
    width: 100%;
}

/* hover color top element */
.awb-menu.primary-top-hover:hover .awb-menu__main-background-default {
    background-color: var(--awb-custom_color_1);
}

/* hover color top element */
.awb-menu.purple-top-active:active .awb-menu__main-background-default {
    background-color: #5c2d91;
}


/* inset-focus-outline */
.awb-menu.inset-focus-outline .awb-menu__main-a:focus::before,
.awb-menu.inset-focus-outline .awb-menu__open-nav-submenu_main:focus::before {
    outline-offset: -4px;
}

/* white focus outline */
.awb-menu.white-focus-outline .awb-menu__main-a:focus::before,
.awb-menu.white-focus-outline .awb-menu__open-nav-submenu_main:focus::before {
    outline: 2px dotted #FFF;
}

/* primary color border bottom active nav state indicator */
.awb-menu.border-bottom-active .awb-menu__main-li_regular.current-menu-item .awb-menu__main-a_regular,
.awb-menu.border-bottom-active .awb-menu__main-li_regular:active .awb-menu__main-a_regular,
.awb-menu.border-bottom-active .awb-menu__main-li_regular:hover .awb-menu__main-a_regular,
.awb-menu.border-bottom-active .awb-menu__main-li_regular:focus-within .awb-menu__main-a_regular {
    padding-bottom: calc(var(--awb-items-padding-bottom) - 0.25rem);
    border-bottom: 0.25rem solid var(--awb-custom_color_1);
}

/* reimagine submenu states */
.awb-menu.reimagine-submenu .awb-menu__main-a .menu-text {
    text-align: left;
}

.awb-menu.reimagine-submenu .awb-menu__sub-ul {
    padding: 0.5rem;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--awb-submenu-border-radius-bottom-left);
    border-bottom-right-radius: var(--awb-submenu-border-radius-bottom-right);
    background-color: var(--awb-submenu-bg);
}

.awb-menu.reimagine-submenu .expanded .awb-menu__main-background-default,
.awb-menu.reimagine-submenu .expanded .awb-menu__main-background-active {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.awb-menu.reimagine-submenu .awb-menu__sub-li {
    position: relative;
}

.awb-menu.reimagine-submenu .awb-menu__sub-li:focus-within,
.awb-menu.reimagine-submenu .awb-menu__sub-li:hover {
    background-color: var(--awb-custom_color_5);
    border-top-left-radius: var(--awb-submenu-border-radius-top-left);
    border-top-right-radius: var(--awb-submenu-border-radius-top-right);
    border-bottom-left-radius: var(--awb-submenu-border-radius-bottom-left);
    border-bottom-right-radius: var(--awb-submenu-border-radius-bottom-right);
}

.awb-menu.reimagine-submenu .awb-menu__sub-li:focus-within::before,
.awb-menu.reimagine-submenu .awb-menu__sub-li:hover::before {
    display: block; 
    content: ' '; 
    position: absolute; 
    left: 0.5rem; 
    top: 25%;
    bottom: 25%;
    width: 0.25rem;
    height: auto;
    background-color: var(--awb-custom_color_3); 
    border-radius: 0.125rem; 
}

.awb-menu.reimagine-submenu .awb-menu__sub-li .awb-menu__sub-a:focus::before {
    border-radius: 0.5rem;
    outline-offset: -1px;
}



@media screen and (max-width: 860px) {
    .awb-menu.reimagine-submenu-mobile .awb-menu__m-toggle {
        /* avada sets border with !important */
        border-bottom: 0.25rem solid var(--awb-custom_color_3) !important;
        padding-bottom: calc(var(--awb-trigger-padding-bottom) - 0.25rem);
    }

    .awb-menu.reimagine-submenu-mobile.collapse-enabled.mobile-mode-collapse-to-button .awb-menu__m-toggle:focus {
        outline: 2px dotted;
        color: inherit;
    }

    /* main UL becomes a sub-menu during mobile */
    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul {
        padding: 0.5rem;
        /* avada sets border radius to 0 with !important */
        border-top-left-radius: 0 !important;
        border-top-right-radius: 0 !important;
        border-bottom-left-radius: var(--awb-submenu-border-radius-bottom-left) !important;
        border-bottom-right-radius: var(--awb-submenu-border-radius-bottom-right) !important;
        box-shadow: var(--awb-box-shadow);
    }

    .awb-menu.reimagine-submenu-mobile .awb-menu__main-li {
        position: relative;
        padding: 0.5rem 1.25rem;
    }

    .awb-menu.reimagine-submenu-mobile .awb-menu__main-li a {
        /* avada sets padding and background with !important */
        padding-left: 0 !important;
        background: transparent !important;
        position: unset; /* fixes focus appearance that is using an absolute positioned ::before */
    }

    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul li.awb-menu__main-li:focus-within,
    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul li.awb-menu__main-li:hover,
    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul li.awb-menu__main-li:focus-within a,
    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul li.awb-menu__main-li:hover a,
    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul li.awb-menu__main-li.current-menu-item,
    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul li.awb-menu__main-li.current-menu-item a {
        /* avada sets background to and border radius both with !important */
        background: var(--awb-custom_color_5) !important;
        border-top-left-radius: var(--awb-submenu-border-radius-top-left) !important;
        border-top-right-radius: var(--awb-submenu-border-radius-top-right) !important;
        border-bottom-left-radius: var(--awb-submenu-border-radius-bottom-left) !important;
        border-bottom-right-radius: var(--awb-submenu-border-radius-bottom-right) !important;
    }

    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul .awb-menu__main-li:focus-within::before,
    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul .awb-menu__main-li:hover::before,
    .awb-menu.reimagine-submenu-mobile ul.awb-menu__main-ul li.awb-menu__main-li.current-menu-item::before {
        display: block; 
        content: ' '; 
        position: absolute; 
        left: 0.5rem; 
        top: 25%;
        bottom: 25%;
        width: 0.25rem;
        height: auto;
        background-color: var(--awb-custom_color_3); 
        border-radius: 0.125rem; 
    }

    .awb-menu.reimagine-submenu-mobile .awb-menu__main-a .menu-text {
        text-align: left;
    }
}

/*==============================================================
 * FUSION VIDEO UTILITIES (.awb-menu)
 *==============================================================*/

.fusion-video.fusion-selfhosted-video.controls-on-hover video::-webkit-media-controls-panel {
  opacity: 0;
  transition: opacity 0.3s ease-in-out; /* Smooth transition for appearance */
}

.fusion-video.fusion-selfhosted-video.controls-on-hover:focus-within video::-webkit-media-controls-panel,
.fusion-video.fusion-selfhosted-video.controls-on-hover:hover video::-webkit-media-controls-panel {
  opacity: 1;
}
