/*
Theme Name: Child Thrive Theme
Theme URI: http://thrivethemes.com/
Version: 1.02
Author: <a href="http://www.thrivethemes.com">Thrive Themes</a>
Description: Fully customizable, front end theme and template editing for WordPress has arrived! 
Template: thrive-theme
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, custom-everything
*/
:root {
    --orx-lt-green: #dcefe3;
    --orx-main-green: #77c392;
}

@media screen and (max-width: 1399px) {
    .thrv_widget_menu.orx_nav ul.tve_w_menu li>a:not(.tcb-logo) {
        font-size: 14px !important;
    }

    .tcb-logo.orx_logo img[src$=".svg"] {
        width: 100px !important;
        height: auto !important;
        margin: 0px auto 0px !important;
    }

    .orx_logo {
        width: 100px !important;
    }

    .thrv_wrapper.thrv-columns.orx_nav_container {
        margin: -50px 0px 0px !important;
    }

    #thrive-footer .symbol-section-in.tcb-mp {
        padding-left: 2em !important;
        padding-right: 2em !important;
    }
}

@media screen and (max-width: 768px) {
    .tcb-logo.orx_logo img[src$=".svg"] {
        width: 140px !important;
        height: auto !important;
        margin: 0px auto 0px !important;
    }
}

@media screen and (max-width: 425px) {

    /* .tcb-logo.orx_logo img[src$=".svg"] {
        width: 100px !important;
        height: auto !important;
        margin: 0px auto 0px !important;
        } */
    .thrv_wrapper.thrv-columns.orx_nav_container {
        margin: -60px 0px 0px !important;
    }

    #thrive-header {
        padding-left: 1em !important;
        padding-right: 1em !important;
    }
}

html,
body {
    font-size: 1rem;
}

body {
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    text-rendering: optimizeLegibility !important;
}

/*
NAVIGATION
*/

#thrive-header {
    padding-left: 2em;
    padding-right: 2em;
}

#thrive-header .symbol-section-in {
    min-height: 0px !important;
}

.thrv_widget_menu.orx_nav ul.tve_w_menu li>a:not(.tcb-logo) {
    font-size: 16px;
    font-weight: 400 !important;
}

.thrv_widget_menu.thrv_wrapper li.c-underline.menu-item-has-children>a::before,
.thrv_widget_menu.thrv_wrapper li.c-underline.menu-item-has-children>a::after,
.thrv_widget_menu.thrv_wrapper li.c-underline.menu-item-has-children .tve-hover-anim::before,
.thrv_widget_menu.thrv_wrapper li.c-underline.menu-item-has-children .tve-hover-anim::after,
.thrv_widget_menu.thrv_wrapper ul.sub-menu li.c-underline>a::before,
.thrv_widget_menu.thrv_wrapper ul.sub-menu li.c-underline>a::after,
.thrv_widget_menu.thrv_wrapper ul.sub-menu li.c-underline .tve-hover-anim::before,
.thrv_widget_menu.thrv_wrapper ul.sub-menu li.c-underline .tve-hover-anim::after {
    background-color: transparent !important;
}

.thrv_widget_menu.thrv_wrapper li.c-underline:not(.menu-item-has-children)>a::before,
.thrv_widget_menu.thrv_wrapper li.c-underline:not(.menu-item-has-children)>a::after,
.thrv_widget_menu.thrv_wrapper li.c-underline:not(.menu-item-has-children) .tve-hover-anim::before,
.thrv_widget_menu.thrv_wrapper li.c-underline:not(.menu-item-has-children) .tve-hover-anim::after {
    background-color: var(--tcb-skin-color-23) !important;
    height: 3px !important;
    width: 100% !important;
    transition: height 0.3s, opacity 0.3s, transform 0.3s, width 0.3s !important;
}

.tcb-logo.orx_logo img[src$=".svg"] {
    margin-top: 10px;
}

.orx_agreement_container p {
    font-size: 1.2rem !important;
}

.orx_loader {
    display: flex;
    width: 100%;
    flex-flow: row;
    align-items: center;
    justify-content: center;
    min-height: 200px;
    text-align: center;
}

.orx_loader p {
    text-align: center;
}

.orx_arrow_header {
    position: absolute !important;
    top: -1.7rem !important;
    right: -5.5rem !important;
    width: 268px;
}

.orx_registration_container {
    display: block;
    width: 80%;
    margin: 20px auto;
    text-align: center;
}

.orx_button_container {
    display: flex;
    gap: 1rem;
    justify-content: center;
    margin-top: 1.5rem;
}

.orx_button_container p {
    font-size: 1.2rem !important;
}

.orx_button {
    background-color: var(--tcb-skin-color-23);
    padding: 0.5rem 2rem;
    color: #222222;
    font-weight: 700 !important;
    border: none;
    border-radius: 100px;
    transition: background-color 0.5s ease;
}

button.orx_button:hover {
    background-color: var(--tcb-skin-color-21);
}

.orx_centre {
    display: block;
    margin: 40px auto 20px !important;
    width: clamp(150px, 25%, 250px);
}

/* ORX Product Selection Styling */

.orx_confirmation_container {
    text-align: center;
    padding: 40px;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.orx_show_confirmation {
    opacity: 1;
    transform: translateY(0px);
}

.orx_collection_container {
    margin-bottom: 1.5rem;
}

.orx_product_collections {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
    gap: 1rem;
}

.orx_product_item {
    display: flex;
    position: relative;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 10px;
    background-color: #ffffff;
    border-radius: 10px;
    padding: 0.8rem;
    cursor: pointer;
    user-select: none !important;
    transition: background-color 300ms ease-in-out, transform 300ms ease-in-out;
}

.orx_product_image-wrapper {
    flex-shrink: 0;
}

.orx_product_image-wrapper img {
    width: 100px;
    display: block;
}

.orx_product_content h3 {
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

.orx_product_content h3 {
    font-size: 16px !important;
    line-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.orx_product_item:hover {
    background-color: var(--orx-lt-green);
    transform: scale(0.97);
}

.orx_product_selector {
    opacity: 0;
    position: absolute;
    /* Ensure it's still clickable and focusable */
    width: 1em;
    height: 1em;
    cursor: pointer;
}

.orx_product_selector:checked+label.orx_product_item {
    background-color: var(--orx-main-green);
}

.orx_product_selector:checked+label.orx_product_item::after {
    position: absolute;
    content: '\2713';
    font-size: 1.2rem;
    line-height: 1rem;
    padding: 10px;
    color: #ffffff;
    bottom: 0;
    left: 0;
}