/* ==========================================================================
   Global Styles
   ========================================================================== */

    :root {
        /* Layout */
        --layout__max-width: 1680px;

        /* Colors */
        --primary__color: #094965;
        --primary__color__light: #3a6d84;
        --primary__color__secondary: #ff7f00;
        --primary__color__tertiary: #ff7f00;

        --neutral__color__darkest: #000000;
        --neutral__color__darker: #272727;
        --neutral__color__dark: #787878;
        --neutral__color: #D1D1D1;
        --neutral__color__light: #E4E4E4;
        --neutral__color__lighter: #F2F2F2;
        --neutral__color__lightest: #f8f8f8;

        --active__color: var(--primary__color);
        --error__color: #b30000;

        /* Typography */
        --text__color: var(--primary__color);

        /* Links */
        --link__color: var(--primary__color__light);
        --link__hover__color: var(--primary__color);

        /* Headings */
        --heading__font-weight__base: var(--font-weight__bold);
        --heading__text-transform__base: normal;

        /* Page Titles */
        --page-title__font-size: 24px;
        --page-title__font-weight: var(--font-weight__bold);
        --page-title__text-transform: uppercase;
        --page-title__border-width: 0 0 1px;
        --page-title__border-color: var(--primary__color__light);
        --page-title__padding: 0 0 var(--indent__base);

        /*  Borders & Shadows */
        --border-color__base: #D1D1D1;
        --border-radius__base: 0;
        --box-shadow__base: none;

        /* Icons */
        --icon-font__color: var(--primary__color);
        --icon-font__hover__color: var(--primary__color__light);
        --icon-font__active__color: var(--primary__color__light);

        /* Button - Default */
        --button__background: var(--neutral__color__light);
        --button__border: 0;
        --button__padding: 8px var(--indent__base);
        --button__padding__l: 8px var(--indent__base);

        --button__hover__color: var(--color-white);
        --button__hover__background: var(--primary__color__secondary);

        /* Button - Primary */
        --button-primary__background: var(--primary__color);
        --button-primary__border: 0;
        --button-primary__color: var(--color-white);

        --button-primary__hover__background: var(--primary__color__secondary);
        --button-primary__hover__border: 0;
        --button-primary__hover__color: var(--color-white);

        /* Forms */
        --form-element-input__height: 34px;
    }

    body.checkout-index-index header {
        --header__padding: var(--indent__base);
        --header-desktop__padding: var(--indent__l) var(--indent__base);
    }

/* ==========================================================================
   Header
   ========================================================================== */

    .announcement.wrapper {
        --announcement__color: var(--color-white);
        --announcement__font-weight: var(--font-weight__semibold);
        --announcement__text-transform: uppercase;
        --announcement__background: var(--primary__color__light);
        --announcement__padding: 10px 10px 5px;

        --icon-font__color: var(--color-white);
        --icon-font__hover__color: var(--primary__color__secondary);
        --icon-font__active__color: var(--primary__color__secondary);
    }

    header {
        /* Annoucement Bar */
        --announcement__background: var(--primary__color__light);
        --announcement__color: var(--color-white);

        /* Header - Globals */
        --header__background-color: var(--primary__color);
        --header__border-color: var(--primary__color__light);
        --header__border-width: 5px 0 0 0;
        --header__line-height: 46px;
        --header__padding: var(--indent__s) var(--indent__s) 0;
        --header-desktop__padding: var(--indent__s) var(--indent__base);
        --header-desktop__align-items: center;

        --header-icon-font__size: 35px;
        --header-desktop-icon-font__size: 40px;

        /* Header - Ordering */
        --header-logo__order: 2;
        --header-search__order: 4;
        --header-left__order: 1;
        --header-right__order: 3;

        --header-logo-desktop__order: 3;
        --header-search-desktop__order: 2;
        --header-left-desktop__order: 1;
        --header-right-desktop__order: 4;

        /* Header - Logo */
        --header-logo__flex: unset;
        --header-logo__justify-content: flex-start;
        --header-logo__max-width: 200px;
        --header-logo__padding: 0;

        --header-logo-desktop__flex: unset;
        --header-logo-desktop__justify-content: center;
        --header-logo-desktop__max-width: 250px;
        --header-logo-desktop__padding: 0;

        /* Header - Search */
        --header-search__flex: 1;
        --header-search__justify-content: center;
        --header-search__margin: var(--indent__s) -10px 0;

        --header-search-desktop__flex: unset;
        --header-search-desktop__justify-content: flex-start;
        --header-search-desktop__margin: 0 35px 0 0;

        /* Header - Left Container */
        --header-left__flex: unset;
        --header-left__justify-content: flex-start;

        --header-left-desktop__flex: unset;
        --header-left-desktop__justify-content: flex-end;

        /* Header - Right Container */
        --header-right__flex: 1;
        --header-right__justify-content: flex-end;

        --header-right-desktop__flex: unset;
        --header-right-desktop__justify-content: center;

        /* Header - Fixed */
        --header-fixed__padding: var(--indent__s) var(--indent__base);
        --header-fixed-desktop__padding: var(--indent__s) var(--indent__base);
    }

    @media only screen and (max-width: 480px) {
        header {
            --header-logo__max-width: 120px;
        }
    }

    @media only screen and (min-width: 1024px) {
        .page-header .header.content {
            justify-content: space-between;
        }

        .page-header .header-left,
        .page-header .header.content:before,
        .page-header .header.content:after {
            display: none;
        }
    }

    @media only screen and (max-width: 1100px) {
        .contact-link .action.callphone .text {
            font-size: 0 !important;
        }
    }

/* ==========================================================================
   Search
   ========================================================================== */

    .block-search {
        --search-global__color: var(--primary__color);
        --search-global__max-width: unset;

        --search-global-button__color: var(--primary__color);
        --search-global-button__padding: 0 var(--indent__s) 0 0;

        --search-global-input__background: var(--color-white);
        --search-global-input__border: 1px solid var(--primary__color);
        --search-global-input-desktop__border: 1px solid vvar(--primary__color);
        --search-global-input__height: 44px;
        --search-global-input__min-width: 350px;

        --search-global-processing__border-color: var(--primary__color);
        --search-global-processing__border-width: 2px;
        --search-global-processing__right: 18px;
        --search-global-processing__top: 10px;
        --search-global-processing__size: 23px;

        --search-global-content__background: var(--primary__color);
        --search-global-content__padding: var(--indent__s) var(--indent__s);
    }

    @media only screen and (max-width: 767px) {
        .block-search {
            --search-global-input__min-width: 240px;
        }
    }

/* ==========================================================================
   Account Links
   ========================================================================== */

    .account-menu-wrapper {
        --account-links-desktop__font-size: inherit;
        --account-links__color: var(--color-white);
        --account-links-desktop__font-size: 16px;
        --account-links__font-weight: var(--font-weight__semibold);

        --icon-font__color: var(--color-white);
        --icon-font__hover__color: var(--primary__color__secondary);
        --icon-font__active__color: var(--primary__color__secondary);
    }

/* ==========================================================================
   Minicart
   ========================================================================== */

    .minicart-wrapper {
        --minicart-qty__background: var(--primary__color__tertiary);
        --minicart-qty__border-radius: 100%;
        --minicart-qty__position: absolute;
        --minicart-qty__height: 20px;
        --minicart-qty__margin: -20px -5px 0 0;

        --icon-font__color: var(--color-white);
        --icon-font__hover__color: var(--primary__color__secondary);
        --icon-font__active__color: var(--primary__color__secondary);
    }

/* ==========================================================================
    Contact
    ========================================================================== */

    .contact-link {
        --contact-phone__display: flex;
        --contact-phone__display-desktop: flex;
        --contact-phone__color: var(--color-white);
        --contact-phone-text-desktop__font-size: 16px;
        --contact-phone__font-weight: var(--font-weight__semibold);

        --icon-font__color: var(--primary__color__secondary);
        --icon-font__hover__color: var(--primary__color__secondary);
        --icon-font__active__color: var(--primary__color__secondary);
    }

/* ==========================================================================
    Main Navigiation
    ========================================================================== */

    .nav-toggle {
        --navigation-toggle-icon__margin: 0 var(--indent__base) 0 0;

        --icon-font__color: var(--color-white);
        --icon-font__hover__color: var(--primary__color__secondary);
        --icon-font__active__color: var(--primary__color__secondary);
    }

    .nav-sections {
        --navigation-logo__max-width: 240px;
        --navigation-logo__margin: -50px 0 0;

        --navigation-container__background: var(--primary__color);
        --navigation-close-icon__color: var(--color-white);

        --navigation-container-desktop__background: var(--color-white);
        --navigation-container-desktop__border: 1px solid var(--primary__color);
        --navigation-container-desktop__border-width: 1px 0 6px;
    }

    .navigation {
        --navigation-level0-item__border: 1px solid var(--border-color__base);
        --navigation-level0-item__text-transform: uppercase;

        --navigation-desktop__font-size: var(--font-size__l);
        --navigation-desktop__text-align: center;

        --navigation-desktop-level0-item__color: var(--primary__color);
        --navigation-desktop-level0-item__line-height: 44px;
        --navigation-desktop-level0-item__padding: 0 24px;
        --navigation-desktop-level0-item__text-transform: uppercase;
        --navigation-desktop-level0-item__separator: 1px solid var(--neutral__color__light);

        --navigation-desktop-level0-item__hover__background: var(--primary__color);
        --navigation-desktop-level0-item__hover__color: var(--color-white);

        --navigation-desktop-level0-item__active__background: var(--primary__color);
        --navigation-desktop-level0-item__active__color: var(--color-white);

        --navigation-desktop-level0-item-arrow__color: var(--primary__color);
        --navigation-desktop-level0-item-arrow__right: 2px;
    }

    .submenu {
        --submenu__background: var(--primary__color);

        --submenu-item__color: var(--color-white);
        --submenu-item__border: 1px solid var(--primary__color__light);
        --navigation-level0-item__hover__color: var(--color-white);

        --submenu-item__active__color: var(--color-white);

        --submenu-desktop-megamenu__column-rule: 1px solid var(--primary__color__light);
        --submenu-desktop-megamenu__columns: 4;

        --submenu-desktop__padding: var(--indent__base);
        --submenu-desktop__background: var(--primary__color);
        --submenu-desktop__border-color: var(--primary__color);

        --submenu-desktop-item__color: var(--color-white);
        --submenu-desktop-item__hover__color: var(--color-white);
        --submenu-desktop-item__hover__background: var(--neutral__color__lightest);
        --submenu-desktop-item__active__background: var(--neutral__color__lightest);

        --submenu-desktop-item-parent__margin: 0;
        --submenu-desktop-item-parent__border: 1px solid var(--primary__color__light);
        --submenu-desktop-item-parent__border-width: 0 0 1px;
        --submenu-desktop-item-parent__font-weight: var(--font-weight__bold);
    }

    .submenu .level1.parent,
    .submenu .level2.parent {
        --submenu-desktop-item__hover__color: var(--primary__color__secondary);
        --submenu-desktop-item__text-transform: uppercase;
    }

    .submenu .level1 {
        --submenu-desktop-item__hover__color: var(--primary__color__secondary);
        --submenu-desktop-item__text-transform: uppercase;
    }

    .submenu .level2 {
        --submenu-desktop-item__hover__color: var(--primary__color);
        --submenu-desktop-item__text-transform: none;
    }


/* ==========================================================================
   Footer
   ========================================================================== */

    footer {
        --footer__background-color: var(--primary__color);
        --footer__color: var(--color-white);
        --footer__text-transform: uppercase;

        --link__color: var(--color-white);
        --link__visited__color: var(--color-white);
        --link__hover__color: var(--primary__color__secondary);
        --link__active__color: var(--primary__color__secondary);

        --icon-font__color: var(--color-white);
        --icon-font__hover__color: var(--primary__color__secondary);
        --icon-font__active__color: var(--primary__color__secondary);
        --icon-font__size: 38px;

        --list__margin: 0;
    }

    footer .list ul  {
        padding-left: 0;
        list-style: none none;
        margin: 0;
    }

    .widget.block.social-links,
    .widget.block.payment-logos {
        --icon-font__color: var(--color-white);
        --icon-font__hover__color: var(--primary__color__secondary);
        --icon-font__active__color: var(--primary__color__secondary);
    }

    .widget.block.payment-logos {
        --payment-logos-desktop__justify-content: flex-end;
    }


/* ==========================================================================
   Catalogue
   ========================================================================== */

    /* Products Item(s)
    ========================================================================== */

    .products-grid {
        --product-grid__grid-gap: 20px;
        --product-grid__text-align: center;
        --product-item-details__justify-items: center;
    }

    .product-item {
        --product-item__background: var(--color-white);
        --product-item__margin: 0 0 var(--indent__s);
        --product-item__padding: var(--indent__s) 0;
        --product-image__border: 1px solid var(--primary__color__light);
    }

    .product-item-name {
        --product-name__font-size: 15px;
        --product-name__font-weight: var(--font-weight__semibold);
        --product-name__margin: 0 0 var(--indent__s);
        --product-name__text-transform: capitalize;
    }

    .price-box .price {
        font-family: var(--heading__font-family__base);
    }

    .stock:before {
        border-radius: 0 !important;
        margin-left: 0 !important;
    }

    .product-item-actions {
        --button-primary-desktop__width: 70%;
        --button-primary-desktop__margin: 15%;
        justify-content: center;
    }

    .product-item-actions .actions-primary {
        justify-content: center;
        margin: 0 15%;
    }


    /* Category View
    ========================================================================== */

    /*  Filter / Layered Navigation  */
    .block.filter {
        --filter-block__border-width: 0 0 1px;
        --filter-subtitle__padding: var(--indent__s) 0;
        border-color: var(--primary__color);

        --filter-options-title__text-transform: uppercase;
        --filter-subtitle__text-transform: uppercase;
    }

    /*  Toolbar  */
    .toolbar {
        --toolbar__border-width: 0;
        --toolbar-bottom__border-width: 0;
        --toolbar__padding: 0;
    }

    /*  Pager  */
    .pages {
        --pager__border: 0;
        --pager__font-size: 16px;
        --pager__hover__border: var(--pager__border);

        --pager-current__background: var(--primary__color);
        --pager-current__border: 0;
        --pager-current__color: var(--color-white);
    }

    /* Product View
    ========================================================================== */

    /*  Image Gallery  */
    .product.media {
        --gallery-arrow__background-color: transparent;
        --gallery-arrow__color: var(--primary__color);
    }

    .fotorama__stage {
        --gallery__border: 1px solid var(--primary__color);
        border-width: 1px;
    }

    .fotorama__nav-wrap--horizontal.fotorama__nav-wrap {
        margin-top: var(--indent__s);
    }

    .product-info-main {
        margin-bottom: var(--indent__base);
    }

    @media (min-width: 768px), print {
        .page-layout-1column .product.media {
            width: 48%;
        }

        .page-layout-1column .product-info-main .product-add-form {
            width: 70%;
        }

        .page-layout-1column .product-info-main {
            width: 48%;
            margin-bottom: 0;
        }

        .page-layout-1column .product.info.detailed {
            clear: inline-end;
            float: right;
            width: 48%;
            margin-top: var(--indent__base);
        }
    }

    /*  Sections (Tabs / Accordion)  */
    .data.items {
        --accordion__border: 0;
        --accordion-control__font-size: var(--font-size__base);
        --accordion-control__padding-top: var(--indent__base);
        --accordion-control__padding-right: 0px;
        --accordion-control__padding-bottom: var(--indent__base);
        --accordion-control__padding-left: 0px;
        --accordion-control-icon__font-size: 30px;
        --accordion-content__padding: var(--indent__base) 0;
    }

    body.catalog-product-view .page-bottom,
    body.checkout-cart-index .page-bottom {
        border-top: 1px solid var(--primary__color);
    }

    body.catalog-product-view .block.related,
    body.catalog-product-view .block.upsell {
        max-width: var( --layout__max-width);
        padding-top: 40px;
    }

    .catalog-product-view .page-content > .page-title-wrapper .page-title {
        border-bottom: 1px solid var(--primary__color) !important;
    }

    .swatch-option {
        padding: 0 var(--indent__s);
    }

    .swatch-option.text.selected,
    .swatch-option.selected {
        background: var(--button__hover__background) !important;
        border: var(--button__hover__border);
        color: var(--button__hover__color);
    }

/* ==========================================================================
   Content (CMS)
   ========================================================================== */

    .breadcrumbs {
        --breadcrumbs__text-transform: uppercase;
        text-align: center;
    }

/* ==========================================================================
   Widgets (Blocks)
   ========================================================================== */

    .block.widget,
    .block-products-list,
    .block.related,
    .block.crosssell,
    .block.upsell {
        --widget-block-title__border: 0;
        --widget-block-title__font-size: var(--font-size__xl);
        --widget-block-title__font-weight: var(--font-weight__bold);
        --widget-block-title__padding: var(--indent__s);
        --widget-block-title__justify-content: center;
        --widget-block-title__text-align: center;
        --widget-block-title__text-transform: uppercase;
    }

    .block.widget .products-grid {
        --product-grid-desktop-large__columns: 3;
    }

    .widget-product-carousel {
        --product-item__padding: var(--indent__s);
    }

/* ==========================================================================
    Sidebar (Blocks)
    ========================================================================== */

    .sidebar {
        --sidebar-block__border-width: 0 0 1px;
        --sidebar-block__padding: var(--indent__s) 0;
    }


/* ==========================================================================
    Featured Categories (Module)
    ========================================================================== */

    .featured-categories-list {
        --featured-categories-list-item__background-color: var(--color-white);
        --featured-categories-list-item__border: 1px solid var(--border-color__base);
        --featured-categories-list-item__align-items: flex-start;
        --featured-categories-list-item__padding: var(--indent__l);

        --featured-categories-list-item-name__font-weight: var(--font-weight__bold);
        --featured-categories-list-item-name__text-transform: uppercase;
    }


    .featured-categories-grid {
        --featured-categories-grid-desktop__columns: 4;
        --featured-categories-grid-desktop-large__columns: 4;

        --featured-categories-grid-item__border: 1px solid var(--primary__color__light);
        --featured-categories-grid-item__background-color: transparent;
        --featured-categories-grid-item-image__border: 1px solid var(--border-color__base);
        --featured-categories-grid-item-image-desktop__width: 100%;
        --featured-categories-grid-item__padding: var(--indent__base) 0;

        --featured-categories-grid-item-name__font-size: var(--font-size__l);
        --featured-categories-grid-item-name__font-weight: var(--font-weight__bold);
        --featured-categories-grid-item-name__text-transform: uppercase;
        --featured-categories-grid-item-name__color: var(--color-white);
        --featured-categories-grid-item-name__background-color: transparent;
        --featured-categories-grid-item-name__padding: var(--indent__base) 0;
    }

    .cms-index-index .featured-categories-grid {
        --featured-categories-grid-desktop-large__columns: 4;
        --featured-categories-grid-item-image__border: 0;
        --featured-categories-grid-item-image-desktop__width: 75%;
    }

    .cms-index-index .block-featured-categories .block-title > strong {
        color: white;
    }

    .cms-index-index .featured-categories-grid .category-item:hover {
        background-color: var(--primary__color__light);
    }

    .cms-index-index .top-brands .featured-categories-grid .category-item:hover {
        border-color: var(--primary__color__secondary);
        background-color: var(--color-white);
    }

    .cms-index-index .top-brands .category-item-name {
        display: none;
    }

/* ==========================================================================
    Advanced Newsletter (Module)
    ========================================================================== */

    .block.newsletter {
        --newsletter__padding: 0;

        --newsletter-block-title__font-size:  var(--font-size__xl);
        --newsletter-block-title__font-weight: var(--font-weight__semibold);
        --newsletter-block-title__margin: 0;
        --newsletter-block-title__padding: 0;

        --newsletter-block-title__color: var(--color-white);
        --newsletter-caption__color: var(--color-white);
        --newsletter-block-title__text-transform: uppercase;

        --newsletter-button__background: var(--primary__color__tertiary);

        --newsletter-input__border: 0;
        --newsletter-input__height: 40px;
        --newsletter-desktop__max-width: 80%;
    }

/* ==========================================================================
    Page Builder Specific Styles
    ========================================================================== */

    .product-options-wrapper .configurable select option:disabled {
        color: var(--neutral__color) !important;
    }

    @media only screen and (max-width: 1200px) {
        .pagebuilder-column-line {
            flex-wrap: wrap !important;
        }

        .pagebuilder-column.col-lg-1,
        .pagebuilder-column.column-lg-1 {
            width: calc(100% - 30px) !important;
        }

        .pagebuilder-column.col-lg-2,
        .pagebuilder-column.column-lg-2 {
            width: calc(50% - 30px) !important;
        }
    }

    @media only screen and (max-width: 767px) {
        .py-md-0,
        .py-md-none {
           padding-top: 0 !important;
           padding-bottom: 0 !important;
        }

        .pt-md-0 {
          padding-top: 0 !important;
        }

        .pb-md-0 {
          padding-bottom: 0 !important;
        }

        .mb-md-20 {
            margin-bottom: 20px;
        }

        .text-md-center {
          text-align: center !important;
        }

       .hidden-md {
           display: none !important;
       }
    }

    /* General Elements */
    .color-white { color: white }
    .color-primary { color: var(--primary__color); }
    .color-secondary { color: var(--primary__color__secondary); }
    .text-large { font-size: 40px; }

    .btn-primary-orange {
        /* Button - Primary */
        --button-primary__background: var(--primary__color__secondary);
        --button-primary__border: 0;
        --button-primary__color: var(--color-white);

        --button-primary__hover__background: var(--primary__color);
        --button-primary__hover__border: 0;
        --button-primary__hover__color: var(--color-white);
    }

    /* Banner Elements */
    .pagebuilder-poster-content h1 {
        text-transform: uppercase;
    }

    [data-appearance=collage-right] .pagebuilder-slide-wrapper .pagebuilder-overlay {
        right: 110px;
        max-width: 630px;
        align-items: flex-end;
        height: auto;
        bottom: 0;
        top: unset;
    }

    [data-appearance=collage-right] .pagebuilder-slide-wrapper .pagebuilder-overlay h1 {
        color: white;
        font-size: 36px;
        line-height: normal;
    }

    [data-appearance=collage-right] .pagebuilder-slide-wrapper .pagebuilder-overlay h3 {
        color: white;
        font-size: 24px;
        font-family: var(--font-family__base);
        font-weight: var(--font-weight__semibold);
        line-height: normal;
    }


/* ==========================================================================
    Calibre Country - Custom Styling
    ========================================================================== */

    .page-title-wrapper {
        text-align: center;
    }

    /* Checkout - Windcave Payments */
    .header-checkout .header-right .page-title-wrapper .page-title {
        --icon-font__color: var(--color-white);
       color: var(--color-white);
        border-bottom: 0;
    }

    .table-checkout-shipping-method tbody td.col-method {
        flex: 1.5;
    }

    .checkout-payment-method .payment-method._active .payment-method-content .form-alt {
        padding-top: 0 !important;
        padding-bottom: 2em;
    }
