/*
Theme Name:   	Wizard Academy Storefront Child Theme by Copper Leaf Creative
Theme URI:    	https://www.copperleafcreative.com
Author:       	Copper Leaf Creative, Gordon Seirup
Author URI:     https://www.copperleafcreative.com
Template:     	storefront
Description:  	Bringing the whimsy of Wizard Academy to the web.
Version:      	1.12.0
License:      	GNU General Public License v2 or later
License URI:  	http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  	storefront
Tags:         	black, white, light, two-columns, left-sidebar, right-sidebar, responsive-layout, custom-background, custom-colors, custom-header, custom-menu, featured-images, full-width-template, threaded-comments, accessibility-ready
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
Storefront is based on Underscores http://underscores.me/, (C) 2012-2014 Automattic, Inc.
Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer http://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
FontAwesome License: SIL Open Font License - http://scripts.sil.org/OFL
Images License: GNU General Public License v2 or later
*/



html {
    background-color: #e3d0ba;
    scroll-padding-top: 150px;
}

.page {
    background-color: transparent !important;
}

article.page {
    background-color: #f9f1e8 !important;
}

/* COPPER LEAF GENERAL UTILITY STYLES */

.clc-invisible {
    display: none !important;
}

.clc-flexwrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.clc-flexnowrap {
    display: flex;
    flex-wrap: nowrap;
}

.clc-flex-center-center {
    display: flex;
    justify-content: center;
    align-items: center;
}

.clc-absolute-cover {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.narrow-content {
    max-width: 700px;
    margin: auto;
}f

.gform_anchor::before {
    content: "";
    display: block;
    width: 0;
    height: 250px;
    margin: -250px 0 0;
}

.gform_confirmation_wrapper {
    font-size: 1.2em;
    line-height: 1.4em;
    color: #99991c;
}

.text-white {
    color: white !important;
}


/* GLOBAL STYLES */

html {
    background-color: #333333;
}

body {
    background: #222;
    font-family: 'Lato';
    line-height: 1.4em;
}

p,
h2,
h3,
h4,
.wacd-term,
.entry-content ul,
.entry-content ol {
    width: 100%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

a {
    text-decoration: underline;
}

.entry-taxonomy {
    display: none;
}

.entry-header {
    border: none !important;
}

.hentry {
    margin: 0;
}

.content-bg {
    box-shadow: 0 0 8px #00000021;
    background: white;
    padding: 30px;

}

.content-bg .clc-guten-wrapper-inner {
    justify-content: flex-start !important;
}

@media only screen and ( min-width: 768px ) {

    .content-bg {
        padding: 60px;
    }

}

.clc-split-scroll-sticky {
    max-width: 800px;
}

.clc-split-scroll-scroll {
    flex-grow: 2;
}


@media only screen and ( max-width: 768px ) {

    h1, .h1,
    h2, .h2,
    h3, .h3,
    h4, .h4,
    h5, .h5 {
        padding: 0 !important;
        font-size: 1.2em;
    }

}






/* BUTTONS */

button,
.button,
a.button,
input[type=button],
input[type=reset],
input[type=submit],
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link,
.added_to_cart {
    text-decoration: none !important;
    background-color: #bb4e0f;
    color: white;
    transition: all .1s;
    box-shadow: 0 0 8px #00000021;
}

button:hover,
.button:hover,
a.button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover,
.wc-block-grid__products .wc-block-grid__product .wp-block-button__link:hover,
.added_to_cart:hover {
    background-color: #d38f68;
    color: white;
}

button.secondary,
.button.secondary,
a.button.secondary,
input[type=button].secondary,
input[type=reset].secondary,
input[type=submit].secondary {
    text-decoration: none !important;
    background-color: #99991c;
    color: white;
    transition: all .2s;
    box-shadow: 0 0 8px #00000021;
}


button.secondary:hover,
.button.secondary:hover,
a.button.secondary:hover,
input[type=button].secondary:hover,
input[type=reset].secondary:hover,
input[type=submit].secondary:hover {
    background-color: #acc19b;
    color: white;
}

input[type=text],
input[type=number],
input[type=email],
input[type=tel],
input[type=url],
input[type=password],
input[type=search],
textarea,
.input-text {
    background-color: white;
}









/* PREHEADER */

#wasabi-preheader {
    position: fixed;
    top: 0;
    left: 0;
    background: #640b0b;
    color: #fff;
    width: 100%;
    z-index: 950;
    padding: 10px;
    height: 39px;
    text-align: right;
}

div#wasabi-ph-account {
    display: flex;
    white-space: nowrap;
}

div#wasabi-ph-cart,
div#wasabi-ph-search {
    flex-shrink: 2;
}

#wasabi-preheader .wasabi-ph-right {
    flex-wrap: nowrap;
}

#wasabi-preheader .wasabi-ph-right a {
    color: white;
    text-decoration: none;
    margin: 0 12px;
    white-space: nowrap;
}

    div#wasabi-ph-cart {
        display: flex;
    }

    ul#menu-preheader-menu-for-menu-cart {
        list-style: none;
        margin: 0;
        display: flex;
    }

    ul#menu-preheader-menu-for-menu-cart li {
        margin-bottom: 0;
    }

    .wasabi-ph-greeting {
        white-space: nowrap;
    }

.wasabi-ph-inside-wrapper.clc-flexwrap {
    justify-content: space-between;
}

#wasabi-preheader button {
    box-shadow: none;
    background: transparent;
    padding: inherit;
    margin: 0 12px;
}

@media only screen and ( min-width: 400px ) {

    #wasabi-preheader .wasabi-ph-right a,
    #wasabi-preheader button {
        margin: 0 20px;
    }

}

.admin-bar #wasabi-preheader {
    top: 46px;
}

.sp-max-width .col-full {
    max-width: 100% !important;
}

@media only screen and (min-width: 48em) {

    #wasabi-preheader {
        margin-top: 0;
        position: fixed;
        top: 0;
        left: 0;
    }

    header#masthead {

    }

    .admin-bar #wasabi-preheader {
        top: 32px;
    }

}







/* HEADER */

#masthead {
    padding: 0;
    background-color: rgba( 255,255,255 , 0.96 );
/*    background: rgba(249 , 241 , 232 , 0.96 );*/
    border-bottom: 0;
    box-shadow: 0 0 8px #00000021;
    margin: 0;
    position: fixed;
    width: 100%;
    margin-top: 39px;
}

@media only screen and ( max-width: 768px ) {

    #masthead {
        height: 90px;
        display: flex;
        align-items: center;
    }

    .site-header .site-logo-anchor img, .site-header .site-logo-link img, .site-header .custom-logo-link img {
        max-width: 170px !important;
        width: 170px;
    }

}

#masthead .sp-header-row {
    display: flex;
}

.sp-header-span-2,
.site-branding {
    flex-shrink: 0;
    width: 200px !important;
}

@media only screen and ( min-width: 960px ) {

    .sp-header-span-2,
    .site-branding {
        flex-shrink: 0;
        width: 230px !important;
    }

}


.site-branding {
    padding: 8px 0;
}

.sp-header-span-10 {
    flex-grow: 2;
}

@media only screen and ( max-width: 767px ) {

    .storefront-breadcrumb {
        display: none;
    }

}

.storefront-breadcrumb {
    margin-bottom: 0;
    padding: 0;
    color: white;
}

.storefront-breadcrumb .col-full {
    margin: 0;
}

nav.woocommerce-breadcrumb a {
    text-decoration: underline !important;
    color: white;
}

.woocommerce-breadcrumb .breadcrumb-separator::after {
    content:'';
}

.woocommerce-breadcrumb .breadcrumb-separator {
    padding: 0 0.6em 0 1em;
}



/* MENU */

button.menu-toggle {
    margin-top: 19px;
}

ul#menu-main-menu {
    display: flex;
    justify-content: flex-end;
}

.site-header ol li,
.site-header ul li {
    margin-bottom: 0;
}

.main-navigation ul.menu>li>a,
.main-navigation ul.nav-menu>li>a {
    padding: 40px 9px;
    color: #640b0b;
    font-family: 'Lato';
}

@media only screen and ( min-width: 1024px ) {
    .main-navigation ul.menu>li>a,
    .main-navigation ul.nav-menu>li>a {
        padding: 40px 20px;
    }
}

.menu-item a {
    text-decoration: none;
}

.site-header ul.menu li.current-menu-item > a {
    color: #640b0b;
}

.main-navigation ul ul li a, .secondary-navigation ul ul li a {
    width: 210px;
}



/* MENU SCROLL EFFECT */

.hero-intro .main-navigation ul.menu>li>a,
.hero-intro .main-navigation ul.nav-menu>li>a {
    color: white;
    transition: all 1s;
}

#masthead.scrolled {
    background: rgba(255,255,255,0.96) !important;
/*    background: rgba(249 , 241 , 232 , 0.96);*/
}

.hero-intro #wasabi-preheader.scrolled button,
.hero-intro #wasabi-preheader.scrolled .storefront-breadcrumb,
.hero-intro #wasabi-preheader.scrolled nav.woocommerce-breadcrumb a,
.hero-intro #wasabi-preheader.scrolled .wasabi-ph-right a
{
    color: white !important;
}

.site-header.scrolled .main-navigation ul.menu>li>a,
.site-header.scrolled .main-navigation ul.nav-menu>li>a {
    color: #640b0b !important;
}

#wasabi-preheader.scrolled {
    background: #640b0b !important;
}

.site-header.scrolled .site-branding img {
    filter: none !important;
}



/* MOBILE MENU */

.dropdown-toggle {
    box-shadow: none;
}

.main-navigation ul.sub-menu a {
    color: #640b0b !important;
}

.main-navigation ul.menu ul ul, .main-navigation ul.nav-menu ul ul {
    margin-left: 0 !important;
}

.main-navigation ul li a,
.handheld-navigation .dropdown-toggle {
    color: #640b0b;
}

button.menu-toggle:after,
button.menu-toggle:before,
button.menu-toggle span:before {
    background-color: #640b0b;
}

button.menu-toggle,
button.menu-toggle:hover {
    border-color: #640b0b;
    color: #640b0b;
}

.handheld-navigation {
    position: absolute;
    width: 100%;
    top: 93px;
    left: 0;
    background: rgba(255,255,255,0.96);
    overflow: scroll;
    height: calc( 100vh - 93px );
}

.handheld-navigation ul.menu li {
    position: relative;
    border-bottom: 1px solid #e2d0bc33;
    margin-bottom: 0;
}

.handheld-navigation ul.menu>li>a, .handheld-navigation ul.nav-menu>li>a {
    padding: 20px !important;
}

.handheld-navigation .dropdown-toggle {
    top: 10px;
}

.handheld-navigation ul.menu .sub-menu {
    padding-left: 30px;
    transition: none;
}


@media only screen and ( min-width: 768px ) {

    .main-navigation ul.menu ul ul,
    .main-navigation ul.nav-menu ul ul,
    .main-navigation ul.sub-menu {
        background: rgba( 255 , 255 , 255 , 0.96 ) !important;
        box-shadow: 0 4px 8px #00000021;
    }

    .main-navigation ul.menu > li.menu-item-has-children > a::after,
    .main-navigation ul.menu > li.page_item_has_children > a::after,
    .main-navigation ul.nav-menu > li.menu-item-has-children > a::after,
    .main-navigation ul.nav-menu > li.page_item_has_children > a::after {
        margin-left: 0.4em;
    }

}







/* STRUCTURAL CONTAINERS */

#page {
    padding-top: 0 !important;
}

.content {
    font-size: 0.8em;
}

#main {
    background: #f9f1e8;
    padding: 20px;
    font-size: 1.2em;
    line-height: 1.4em;
    font-weight: 100;
    box-shadow: 0 0 8px #00000021;
    max-width: 1200px;
    margin: 40px auto;
}

.single-wa_videos #main {
    margin-top: 0;
}

div#primary {
    margin-top: 130px;
    padding-top: 1px;
}

/* Fix for Add to Cart hiding behind header */

.single-product div {
    margin-top: 0;
}

.single-product #content {
    padding-top: 130px;
}

.single-product div#primary {
    margin-top: 0px;
}

.woocommerce-message {
    margin: 0 0 20px 0 !important;
}

@media only screen and ( min-width: 768px ) {

    .woocommerce-message {
        margin-top: 30px !important;
    }

}

div#content {
    min-height: calc( 100vh - 435px );
}

/* removed reducing extra spacing from Content Dashboard, among others 20220518 -gs
.page-template-template-fullwidth .entry-content {
    padding-top: 40px;
}
*/


@media only screen and ( MAX-width: 767px ) {

    .col-full {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #masthead .col-full {
        margin-left: 20px !important;
        margin-right: 20px !important;
    }

}


@media only screen and ( min-width: 768px ) {

    #content {
        padding-top: 140px !important;
    }

    div#primary {
        margin-top: 0px;
    }

    div#content {
        min-height: calc( 100vh - 447px );
    }

    #main {
        padding: 40px;
    }

}


@media only screen and ( min-width: 1024px ) {

    #main {
        padding: 60px;
    }

}




/* FULL WIDTH PAGE TEMPLATE */

.page-template-template-fullwidth h1.entry-title,
.archive.category h1.entry-title {
    margin-bottom: 0;
    padding-top: 20px;
    color: white;
    text-shadow: none;
}

.page-template-template-fullwidth #main,
.page-template-template-fullwidth article,
.page-template-template-fullwidth .page {
    background-color: transparent !important;
    margin-top: 0;
    box-shadow: none !important;
    padding-top: 0px;
}









h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5 {
    /*    font-family: 'Alegreya';*/
    color: #222222;
    font-weight: 600;
    line-height: 1.1em;
}

@media only screen and ( max-width: 768px ) {

    h1, .h1,
    h2, .h2,
    h3, .h3,
    h4, .h4,
    h5, .h5 {
        padding: 0 20px;
    }

}

h1,
p.h1 {
    font-size: 1.6em;
    margin-bottom: 30px;
    position: relative;
}

.product_title {
    text-align: left;
}

@media only screen and ( min-width: 768px ) {
    h1,
    p.h1 {
        font-size: 2em;
        margin-bottom: 30px;
    }
}


h1.entry-title,
p.h1.entry-title {
    text-align: center;
    font-weight: 600;
    margin-top: 60px;
    font-family: 'Lato' !important;
    text-shadow:1px 0 0 #FFFFFF,0 1px 0 #FFFFFF,-1px 0 0 #FFFFFF,0 -1px 0 #FFFFFF;
}

h1.entry-title:before,
p.h1.entry-title:before {
    content: "";
    display:inline-block;
    height:48px;
    width:55px;
    background-size: 55px 48px;
    background-image: url('images/wizards-tower.svg');
    background-repeat: no-repeat;
    position: absolute;
    top: -48px;
    left: 50%;
    margin-left: -27.5px;
}

h1.no-tower.entry-title:before,
p.h1.no-tower.entry-title:before {
    background: none;
}

h1.no-tower.entry-title,
p.h1.no-tower.entry-title {
    margin-top: 0 !important;
}

ol li,
ul li {
    margin-bottom: 12px;
}









/* HOME */

.wa-home-upcoming-classes-stripe {
    background: #640b0b;
}

.wa-home-upcoming-classes-stripe h2 {
    color: white;
}

.wa-home-upcoming-classes-stripe > .wp-block-group__inner-container {
    max-width: 1200px;
    margin: auto;
}

.wa-upcoming-classes-tiles {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
    padding: 0 20px;
    margin-bottom: 20px;
}

.wa-upcoming-classes-tiles > .wa-upcoming-class-row {
    flex-direction: column !important;
    padding: 20px;
    box-shadow: 0 4px 8px #0000001c;
    background: white;
    max-width: 320px;
    margin-bottom: 0;
}

.wa-upcoming-classes-tiles .waucr-thumb {
    padding-bottom: 0;
}

.wa-upcoming-classes-tiles .waucr-thumb img {
}

.wa-upcoming-classes-tiles .waucr-details {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.wa-upcoming-classes-tiles .waucr-details h2 {
    font-size: 1em;
    text-align: center;
    margin: 10px 0;
    flex-grow: 2;
}

.wa-upcoming-classes-tiles .waucr-info-wrap {
    align-items: center !important;
    margin-bottom: 10px;
    flex-direction: row !important;
    flex-wrap: nowrap;
    font-size: 0.8em;
    line-height: 1em;
}

.wa-upcoming-classes-tiles .waucr-info-wrap img {
    max-width: 48px;
}

.wa-upcoming-classes-tiles .waucr-cta {
    width: 100%;
}

.wa-upcoming-classes-tiles {

}

@media only screen and ( min-width: 768px ) {



}


@media only screen and ( min-width: 1024px ) {

    .wa-upcoming-classes-tiles > .wa-upcoming-class-row {
        flex-direction: column !important;
    }

    .wa-upcoming-classes-tiles .waucr-details h2 {
        font-size: 1.1em;
    }

    .wa-upcoming-classes-tiles .waucr-info-wrap {
        font-size: 1em;
    }

}






.wa-vc-home {
    color: white;
}

.wa-vc-home p {
    padding: 0 20px;
}

.wa-vc-intro {
    order: 1;
}

.wa-vc-intro p:first-of-type {
    max-width: 600px;
    margin: auto;
}

.wa-vc-home-post-column {
    order: 2;
}

#wa-vc-home-post {
    background: #f9f1e8;
    box-shadow: 0 0 8px #0000005e;
    padding: 30px 20px 30px;
    color: #444444;
    margin: 30px auto;
    max-width: 700px;
}

wa-vc-home-post p:last-of-type {
    margin-bottom: 0;
}

#wa-vc-home-post h3 {
    text-align: center;
}

.wa-vc-home .wasabi-archive-post-date {
    padding: 0;
}

.wasabi-archive-post-date span.wasabi-author {
    width: 100%;
    text-align: center;
    display: block;
    border-top: 1px solid black;
    padding-top: 5px;
    margin-top: 5px;
}

#wa-vc-home-post-content {
    max-height: 500px;
    overflow: hidden;
    position: relative;
}

.wa-fade-out {
    background-image: linear-gradient(transparent, #f9f1e8);
    height: 150px;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
}

.wa-vc-home .button {
    text-align: center;
    margin-top: 30px;
}

.wa-vc-home-subscribe {
    margin: 30px 0 !important;
    text-align: center;
    order: 3;
    padding-left: 20px;
    padding-right: 20px;
}

@media only screen and ( min-width: 1200px ) {

    .wa-vc-home {
        padding: 0 60px !important;
    }

    .wa-home-sample-videos {
        padding-bottom: 80px;
    }

    .clc-guten-wrapper-block.wa-vc-home .clc-guten-wrapper-inner {
        display: flow-root;
    }

    .wa-vc-home-post-column {
        float: left;
        width: 50%;
        clear: none !important;
        margin-top: -120px !important;
        position: relative;
        top: 50px;
    }

    #wa-vc-home-post {
        padding: 60px;
    }

    .wa-vc-intro,
    .wa-vc-home-subscribe {
        float: right;
        width: 50%;
        clear: none !important;
        padding: 30px;
    }

    .wa-vc-intro {
        margin-top: 90px !important;
    }

    .wa-vc-home-subscribe {
        margin-top: 0 !important;
    }

}









.wa-home-split-content ul {
    margin: 0;
}

.wa-home-split-content ul li {
    list-style-type: none;
    margin-bottom: 20px;
}

.wa-home-split-content ul li {
    list-style-image: url('images/wa-star-bullet.png');
    margin-left: 30px;
}

.wa-home-split-content ul li:last-of-type {
    margin-bottom: 0;
}

.wa-home-split-content {
    font-size: 1em;
    line-height: 1em;
}

.wa-home-split-content-item.on-dark h4 {
    margin: 20px 0;
}

.wa-home-split-content-item.on-dark,
.wa-home-split-content-item.on-dark h4 {
    color: white;
}

@media only screen and ( max-width: 1023px ) {

    .wa-home-split-content-item {
        width: 100% !important;
        flex-basis: 100% !important;
    }

    .wa-home-split-content-item:last-of-type {
        padding-bottom: 100px;
    }

    .wa-home-split-content {
        font-size: 1.2em;
        line-height: 1.2em;
    }

}

@media only screen and ( min-width: 1024px ) {

    .wa-home-split-content-item:last-of-type {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
        text-align: left;
    }

    .wa-home-split-content-item:last-of-type p {
        width: 100%;
    }

}






/* FEATURED IMAGE HERO */

.wasabi-feat-img-hero-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow-x: hidden;
}

.wasabi-feat-img-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: calc( 70vh - 96px );
    text-align: center;
    padding-bottom: 96px;
    padding-top: 150px;
}

/* Half-height intro space on Class-after-Class view */
.wa-class-after-class .wasabi-feat-img-intro {
    height: calc(40vh - 96px);
}

.wasabi-feat-img-intro h1,
.wasabi-feat-img-intro .h1 {
    font-size: 2em;
    font-weight: bold;
    font-family: 'Lato' !important;
    line-height: 1.2em;
    margin-bottom: 15px;
    color: #FFFFFF;
    -webkit-text-stroke: 1px black;
    text-shadow: 2px 2px 0 #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;

}

@media only screen and ( min-width: 768px ) {
    .wasabi-feat-img-intro h1,
    .wasabi-feat-img-intro .h1 {
        font-size: 3em;
    }

    .wasabi-feat-img-intro {
        height: calc( 80vh - 96px );
        padding-bottom: 96px;
        padding-top: 0px;
    }

}

.wasabi-feat-img-intro p {
    font-size: 1.2em;
    margin-bottom: 0;
}

.wasabi-intro-subtitle {
    line-height: 1.2em;
    font-weight: bold;
    color: white;
}

.wasabi-feat-img-intro .wasabi-intro-subtitle {
    text-shadow: 1px 0 0 #000000, 0 1px 0 #000000, -1px 0 0 #000000, 0 -1px 0 #000000;
}




.single-wa_videos h1.entry-title,
.single-wa_videos p.h1.entry-title {
    margin-top: 100px;
}








/* PRODUCT CATEGORY ARCHIVE */

.tax-product_cat header.woocommerce-products-header {
    padding-bottom: 60px !important;
}

.tax-product_cat .page-title {
    color: white;
}

.tax-product_cat .storefront-sorting {
    color: white;
}

.tax-product_cat .storefront-sorting a {
    color: white !important;
}

p.woocommerce-result-count {
    width: auto;
}


.tax-product_cat .product {
    background: #f9f1e8;
    padding: 20px;
    box-shadow: 0 0 8px #0000005e;
}










/* PRODUCT */

h1.product_title.entry-title::before {
    background: none;
}

h1.product_title.entry-title {
    margin: 0;
    text-align: left;
    font-size: 1.25em !important;
}

@media only screen and ( min-width: 768px ) {

    h1.product_title.entry-title {
        font-size: 1.6em !important;
    }

}

.single-product div.product p.price {
    margin: 1em 0;
    color: #99991c;
}

.single-product p.stock.in-stock {
    display: none;
}

.single-product .summary {
    margin-bottom: 0 !important;
}

.single-product .variations {
    position: relative;
    z-index: 4;
}

body.single-product.hero-intro {
    background-color: transparent !important;
}

input#coupon_code {
    margin-left: 2px;
}

/* Hide the Video Title entry field from Product Summary. It's Visible in Gravity Forms to dislay the detail through cart, checkout, and order details */
div#field_1_2,
div#field_2_2,
div#field_3_2
{
    display: none;
}

.woo-product-things-needed {
    padding: 30px;
    clear: both;
    max-width: 760px;
    margin: auto;
    background: #f9f6f2;
}

.woo-product-things-needed ul,
.woo-product-things-needed p:last-of-type {
    margin-bottom: 0;
}

.woo-product-description {
    clear: both;
    max-width: 700px;
    margin: auto;
    border-top: 1px solid #d5d5d5;
    padding-top: 30px;
}







/* GIFT CARD w/ OTHER RECIPIENT */

input#recipient_name,
input#recipient_email,
#short_message {
    width: 100%;
    max-width: 100%;
}









/* ONE PAGE CHECKOUT */

.single-product div#order_review .
quantity,
.single-product div#order_review .product-quantity {
    display: none;
}

div.AuthorizeNetSeal {
    background: transparent;
    width: 100% !important;
    display: flex;
    justify-content: center;
    padding-bottom: 80px !important;
}

@media only screen and ( min-width: 768px ) {

    div.AuthorizeNetSeal {
        justify-content: flex-end;
    }

}

.single-product div.AuthorizeNetSeal {
    background: #fafafa;
    justify-content: center;
    padding-bottom: 20px !important;
}

.woocommerce-privacy-policy-text {
    font-size: 12px;
    line-height: 17px;
}

.woocommerce-notices-wrapper,
.woocommerce-info {
    font-size: 16px;
    line-height: 20px;
}

@media only screen and ( max-width: 768px ) {

    ul.woocommerce-error li {
        display: flex;
        flex-direction: column;
    }

    ul.woocommerce-error li a {
        order: 1;
    }

    ul.woocommerce-error a.button.wc-forward.wp-element-button {
        border: 1px solid white;
        margin: 0;
        padding: 10px;
        text-align: center;
        margin-top: 10px;
    }

    ul.woocommerce-error {
        padding-inline-start: 0;
        padding: 20px;
    }

    ul.woocommerce-error:before {
        content: '';
    }

}

.woocommerce-info:before {
    content: '';
}

.woocommerce-info {
    padding-inline-start: 0;
    padding: 20px;
}

.woocommerce-info:has(.hide-this-message) {
    display: none;
}

/* ORDER RECEIVED / THANK YOU */

.woocommerce-checkout .entry-header {
    padding-bottom: 30px !important;
}




/* CART & CHECKOUT */
/* major modifications for mobile improvement in conjunction with Bona Fide 20221215 -gs */

.site-content>.col-full>.woocommerce>.woocommerce-error {
    margin-top: 130px !important;
}

.woocommerce-cart div#primary,
.woocommerce-checkout div#primary {
    margin-top: 129px;
    padding-top: 0px;
}

.woocommerce-cart h1.entry-title:before,
.woocommerce-checkout h1.entry-title:before {
    background: none;
}

.woocommerce-cart h1.entry-title,
.woocommerce-checkout h1.entry-title {
    margin: 0;
}

.woocommerce-notices-wrapper {
    margin-top: 20px;
}

.woocommerce-info {
    background-color: #99991c !important;
    max-width: 100% !important;
}

table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents,
form.checkout.woocommerce-checkout {
    font-size: .8em !important;
}

.woocommerce-cart .product-thumbnail {
    display: none;
}

td.actions {
    margin-top: 20px;
    border: none !important;
}

.coupon button {
    width: 100%;
}

.wc-proceed-to-checkout .button.checkout-button {
    font-size: 1em;
}

.woocommerce-checkout form.woocommerce-form.woocommerce-form-login.login {
    font-size: 0.8em;
    margin-bottom: 30px;
}

#order_review {
    background-color: #fbfbfb;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

table.woocommerce-checkout-review-order-table .product-name {
    width: 66%;
}

.cart-subtotal td,
.order-total td {
    background: white;
}

#agcfw-redeem-gift-card.agcfw-checkout-redeem h3 {
    background: transparent;
    padding: 2em 1em 0 1em !important;
}

input.gift_card_code,
.agcfw-redeem-gift-card-form button,
.wasabi-woo-coupon-wrapper button {
    width: 100% !important;
}

table.shop_table.woocommerce-checkout-review-order-table,
#agcfw-redeem-gift-card {
    margin-bottom: 0 !important;
}

table.shop_table_responsive thead {
    background: #f8f8f8;
}

.wasabi-woo-coupon-wrapper p:first-of-type {
    display: none;
}

.wasabi-woo-coupon-wrapper p.form-row.form-row-first {
    margin-bottom: 0;
}

.form-row.place-order {
    margin-top: 0 !important;
}

/* HIDE THE SELECTOR FOR AUTHORIZE.NET BECAUSE IT'S THE ONLY OPTION. If we ever offer other payment methods, we'll have to remove this. 20221215 -gs */

/*label[for=payment_method_authorize_net_cim_credit_card] {*/
/*    display: none !important;*/
/*}*/

span.woocommerce-mailchimp-opt-in-checkbox-text {
    font-size: .7em;
    position: relative;
    top: -3px;
}

/* HIDE NAV ELEMENTS ON CHECKOUT */

.woocommerce-checkout button#site-navigation-menu-toggle,
.woocommerce-checkout #wasabi-preheader {
    display: none;
}

.woocommerce-checkout #masthead {
    margin-top: 0;
}

.woocommerce-checkout div#primary {
    margin-top: 90px;
    padding-top: 0px;
}

.woocommerce-checkout .sp-header-span-2,
.woocommerce-checkout .site-branding {
    width: calc( 100vw - 40px) !important;
    display: flex;
    justify-content: center;
}

p.return-to-shop .button {
    width: 100%;
    text-align: center;
}

.shop_table.cart tbody tr:last-of-type td {
    background: transparent !important;
}

/* intro text "if you've shopped with us before... blah blah blah" */
/* BAD BAD BAD! Hides the "username" field at login by accident.
form.woocommerce-form.woocommerce-form-login.login p:first-of-type {
    display: none;
}
*/


a.woocommerce-LoopProduct-link.woocommerce-loop-product__link img {
    max-width: 150px;
}

.cross-sells {
    background: #99991c;
    padding: 20px;
    border-radius: 6px;
    margin-bottom: 30px;
}

.cross-sells h2 {
    font-size: 1em;
    margin-bottom: 18px;
    color: white;
}

.cross-sells .price {
    font-weight: bold !important;
    color: white !important;
}

.cross-sells li.product:last-of-type {
    margin: 0;
}

@media only screen and ( min-width: 768px ) {

    #masthead .col-full {
        margin-left: 1em;
        margin-right: 1em;
    }

    .sp-header-span-2, .site-branding {
        width: 180px !important;
    }

    .site-header .custom-logo-link img {
        max-width: 150px !important;
    }

    .storefront-full-width-content.woocommerce-cart .entry-header {
        padding-bottom: 20px !important;
    }

    .woocommerce-checkout .main-navigation {
        display: none;
    }

    .woocommerce-checkout #content {
        padding-top: 75px !important;
    }

    .woocommerce-cart div#primary,
    .woocommerce-checkout div#primary {
        margin-top: 0px;
    }

    .woocommerce-checkout #masthead {
        margin-top: 0;
    }

    .woocommerce-checkout .woocommerce-notices-wrapper {
        margin: 0;
    }

    .sp-header-active .sp-header-span-2 {
        display: flex;
        align-items: center;
        margin-right: 0 !important;
    }

    table.cart td.actions {
        padding: 20px 0 !important;
    }

    table.cart td.actions .coupon {
        display: flex;
    }

    .cart-collaterals h2 {
        font-size: 1.2em;
    }

    .checkout .col2-set {
        width: 45%;
        margin-right: 5%;
    }

    #order_review {
        width: 50%;
        margin-left: initial;
        margin-right: initial;
    }

    span.woocommerce-mailchimp-opt-in-checkbox-text {
        font-size: 0.8em;
        position: relative;
        top: -2px;
    }

    .cross-sells li.product {
        width: 100% !important;
    }

}

@media only screen and ( min-width: 960px ) {

    #masthead .col-full {
        margin-left: 2em;
        margin-right: 2em;
        padding: 0 !important;
    }

    .sp-header-span-2, .site-branding {
        width: 230px !important;
    }

    .woocommerce-checkout .sp-header-span-2,
    .woocommerce-checkout .site-branding {
        width: calc(100vw - 4em) !important;
    }

    .site-header .custom-logo-link img {
        max-width: 230px !important;
        width: 230px !important;
    }

    .woocommerce-checkout #content {
        padding-top: 105px !important;
    }

    .woocommerce-cart .product-thumbnail {
        display: table-cell;
    }

    span.woocommerce-mailchimp-opt-in-checkbox-text {
        font-size: 1em;
    }


}



/* LOG IN */

@media only screen and ( max-width: 768px ) {

    .page-id-47 div#primary {
        margin: 0;
        padding: 0;
    }

    .page-id-47 #main {
        margin-top: 0 !important;
    }

    .page-id-47 ul.woocommerce-error {
        margin-top: 130px !important;
        margin-bottom: 0 !important;
    }

    .logged-in.page-id-47 div#primary {
        margin-top: 130px;
        padding-top: 1px;
    }

    .logged-in.page-id-47 #main {
        margin-top: 40px !important;
    }

}

ul.woocommerce-error li {
    margin-bottom: 0 !important;
}

.page-id-47 ul.woocommerce-error {
    max-width: 1200px;
    margin: auto;
}

p.woocommerce-form-row.woocommerce-form-row--last.form-row.form-row-last {
    margin-right: auto !important;
    float: unset;
}



/* MY ACCOUNT */

li.woocommerce-MyAccount-navigation-link.woocommerce-MyAccount-navigation-link--dashboard {
    display: none;
}

.woocommerce-account header.entry-header {
    padding-bottom: 30px !important;
}

li.myaccount-nav-item.nav-item--dashboard {
    display: none;
}

label.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme {
    padding-bottom: 25px;
}

button.woocommerce-button.button.woocommerce-form-login__submit {
    width: 100%;
}


/* CONTENT DASHBOARD */

.wa-scd-section {
    background-color: #f9f1e8;
}

.wasabi-content-dashboard-login {
    max-width: 300px;
}

.wasabi-content-dashboard-login p.login-username,
.wasabi-content-dashboard-login p.login-password,
.login-submit {
    display: flex;
    flex-direction: column;
}



/* CLASS SINGLE */


.wa-class-single-deets-wrapper {
    display: flex;
    margin-bottom: 30px;
}

.wa-class-product-type-icon img {
    height: 80px;
    margin-right: 20px;
}

.variations select {
    padding: 10px;
}







/* CLASS AFTER CLASS */

#class-after-class-stop-wall {
    background: white;
    padding: 30px;
    max-width: 700px;
    margin: 40px auto;
}

.cac-student-photo {
    text-align: center;
    margin: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

article.page.wa-class-after-class {
    max-width: 1200px;
    margin: 0 auto 120px !important;
}

.class-materials h3 {
    text-align: center;
}

.class-materials-content {
    margin: 0 0 30px 0;
}

.class-materials-content.cmc-videos,
.class-materials-content.cmc-audios {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.class-materials-content.cmc-downloads h4 {
    text-align: left;
}

.class-materials-item {
    width: 100%;
    flex-shrink: 0;
}

.class-materials-content h4 {
    margin-top: 40px;
    text-align: center;
}

.class-materials-content h4:first-of-type {
    margin-top: 20px;
}

@media only screen and ( min-width: 768px ) {

    .class-materials-content {
        margin: 0 0 60px 60px;
    }

    .class-materials-item {
        width: 450px;
        margin-right: 40px;
    }

}









/* SEARCH OVERLAY */

#search-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba( 118 , 62 , 88 , .95 );
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 949;
}

@media only screen and ( min-width: 767px ) {
    #search-overlay input.search-field {
        width: 400px;
    }
}





/* SEARCH RESULTS */

.search-results #main {
    box-shadow: none;
    background: transparent;
    padding-top: 1px; /* "activates" the 40px top margin */
}

.search h1.page-title {
    text-align: center;
}

.wasabi-archive-article-flex-wrapper {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: auto;
    align-items: flex-start;
}

.search-results-post-type-label {
    font-weight: bold;
    text-align: center;
    color: #640b0b;
    text-transform: uppercase;
}

.search article {
    background: white;
    padding: 30px;
    box-shadow: 0 0 8px #00000021;
    width: 95%;
    margin: 15px;
}

.search article h2 {
    font-size: 1.2em !important;
}

.search .waucr-info-wrap {
    padding-bottom: 30px;
}

.search article img.attachment-medium {
    margin: auto;
    padding: 20px;
}

.search article .waucr-info {
    flex-grow: 0;

}

.search .wa-video {
    margin: 40px 20px;
}

.search .wa-academy-wisdom-item.has-quote-mark .wars-quote {
    padding-top: 55px;
    padding-left: 0;
}

@media only screen and ( min-width: 768px ) {

    .search article {
        width: 360px;
        margin: 20px;
    }

}




/* POST ARCHIVES - VICE CHANCELLOR VC CORNER */
/* SEARCH LAYOUT COMPONNENTS */

.wasabi-archive-content-limiter {
    position: relative;
    max-height: 300px;
    overflow: hidden;
}

.search #main,
.archive #main {
    box-shadow: none;
    background: transparent;
    padding-top: 1px; /* "activates" the 40px top margin */
}

.search .wa-pagination,
.archive .wa-pagination {
    width: 100%;
}

.page-template-template-fullwidth .wa-pagination {
    color: white;
}

.archive article {
    background: #f9f1e8;
    padding: 30px;
    box-shadow: 0 0 8px #00000021;
    width: 95%;
    margin: 15px;
}

.search article h2,
.archive article h2 {
    font-size: 1.6em;
    font-weight: normal !important;
    margin-top: 0px;
    text-align: center;
}

.search article h2 a,
.archive article h2 a {
    text-decoration: none !important;
}

.search article h2 a:hover,
.archive article h2 a:hover {
    text-decoration: underline !important;
}

.wasabi-archive-post-date {
    font-size: 0.8em;
    width: fit-content;
    padding-bottom: 5px;
    text-align: center;
}

.wasabi-archive-post-excerpt {
    margin-bottom: 0;
}

@media only screen and ( min-width: 960px ) {

    .archive article {
        padding: 60px;
        width: calc(50% - 40px);
        margin: 20px;
        max-width: 599px;
    }

}



/* SINGLE POST TEMPLATE */

.single-post #main {
    max-width: 700px;
    margin-bottom: 10px;
}

.single-post header.entry-header {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px !important;
}

.single-post header.entry-header h1 {
    order: 1;
    margin-bottom: 20px !important;
}

.single-post aside.entry-meta {
    order: 2;
    text-align: center;
    margin-bottom: 10px;
}

.single-post aside .entry-date {
    border-bottom: 1px solid #333;
    width: fit-content;
    padding-bottom: 5px;

}

.wasabi-single-post-thumbnail {
    text-align: center;
}

.wasabi-single-next-prev {
    width: 100%;
    max-width: 700px;
    display: flex;
    justify-content: space-between;
    margin: auto;
    margin-bottom: 60px;
    color: white;
}

.wasabi-single-prev,
.wasabi-single-next {
    padding: 0 15px;
}

.wasabi-single-next {
    text-align: right;
    flex-basis: 50%;
    margin-left: 15px;
    flex-grow: 2;
}

.wasabi-author {
    font-size: 0.8em;
}





/* JOIN THE TRIBE */

#gform_7 .gform_footer {
    justify-content: center;
}

input#input_7_7 {
    width: 100%;
}



/* ASK THE WIZARDS MONTHLY ROUNDTABLE */

.postid-2232 .video-series-prepend {
    display: none;
}



/* CLC STAFF */
.clc-staff {
    border-top: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf !important;
    padding: 30px 0 0 0 !important;
    margin: 0px 0 30px 0;
}




/* WOO LOGIN */

.woocommerce h2 {
    text-align: center;
}

form.woocommerce-form.woocommerce-form-login.login {
    margin: auto;
    max-width: 400px;
}

/* LOST PASSWORD */

form.woocommerce-ResetPassword.lost_reset_password {
    text-align: center;
}

p.woocommerce-form-row.woocommerce-form-row--first.form-row.form-row-first {
    float: unset;
    text-align: center;
    margin: 0 auto 30px;
}









/* PRICING TABLES */

.acfb_pricing_table_wrap {
    padding: 40px 35px !important;
}

.acfb_pricing_table_wrap ul {
    text-align: left;
    margin-left: 30px;
}

.acfb_pricing_table_wrap .acfb_pricing_box_price_line .acfb_pricing_box_price_suffix {
    align-self: flex-start !important;
    padding-top: 6px;
}

.wp-block-columns.alignwide.large-margin-top {
    align-items: flex-end;
}








/* 404 */
body.error404 {
    background: transparent !important;
}

.error404 .page-content {
    padding: 20px;
    background-color: #f9f1e8 !important;
}

@media only screen and ( min-width: 768px ) {
    .error404 .page-content {
        padding: 40px;
    }
}

@media only screen and ( min-width: 1024px ) {
    .error404 .page-content {
        padding: 60px;
    }
}














/* FOOTER */

/* Hide footer menu on mobile */

@media only screen and ( max-width: 767px ) {
    .footer-widget-2 {
        display: none;
    }
}


.site-footer {
    background-color: #181818;
    color: white;
    overflow: hidden;
}

#footer-chapel {
    position: relative;
    top: -39px;
    height: 0px;
    float: right;
    margin-right: 20px;
}

.footer-widgets {
    padding: 20px;
    border: none;
}

.widget {
    margin: 0px;
}

.footer-widgets .block {
    float: unset !important;
}

div#gform_wrapper_12 {
    max-width: 800px;
    margin: auto;
    border-bottom: 1px solid white;
    margin-bottom: 60px;
}

div#nav_menu-2 {
    max-width: 1200px;
    margin: auto;
}

.footer-widget-1 {
    margin-bottom: 30px;
}

.footer-widget-2 {
    flex-grow: 2;
}

.footer-widget-2 .widget-title {
    display: none;
}

ul#menu-main-menu-2 li {
    font-weight: bold;
}

.footer-widgets .widget_nav_menu ul li::before {
    content:'';
}

.footer-widgets .widget_nav_menu ul li {
    padding-left: 0;
}

.footer-widgets .widget_nav_menu ul li a:hover {
    text-decoration: underline;
}

.footer-widgets ul.sub-menu {
    margin-top: 10px;
}

.footer-widgets ul.sub-menu li {
    font-weight: normal !important;
}

.footer-widgets ul.sub-menu a {
    color: white !important;
}

.site-footer .gform_confirmation_wrapper {
    color: white !important;
}

.site-info {
    display: none;
    text-align: center;
    padding: 0;
}

.site-footer .hide-in-footer {
    display: none;
}

@media only screen and ( min-width: 768px ) {

    #footer-chapel {
        margin-right: 40px;
    }

    .footer-widgets {
        display: flex;
        flex-direction: column;
    }

    .footer-widgets .block {
        padding: 20px;
    }

    .footer-widgets ul.menu > li {
        margin-left: 30px;
        flex-shrink: 0;
        flex-grow: 2;
    }

    .footer-widgets .sub-menu {
        margin-left: 15px;
    }

}

@media only screen and ( min-width: 1024px ) {

    .footer-widgets {
        padding-top: 60px;
    }

    .footer-widgets .block {
        padding: 0px;
    }

    .site-footer ul#menu-main-menu-2 {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .footer-widgets .sub-menu {
        margin-left: 0px;
    }

}




.site-footer a:not(.button):not(.components-button) {
    color: white;
}


/* SUBFOOTER */

#wasabi-subfooter {
    width: 100%;
    padding: 10px 20px 15px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 0.8em;
    color: white;
}

#wasabi-subfooter a {
    color: white;
}

ul#wasabi-subfooter-menu {
    display: flex;
    margin: 0;
    margin-bottom: 40px;
}

ul#wasabi-subfooter-menu li {
    list-style-type: none;
    margin: 0 20px 0 20px;
}

ul#wasabi-subfooter-menu li a {
    text-decoration: underline;
}

.copperleaftiny {
    margin-right: 40px;
}

.clc-site-tags {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    padding-right: 20px;
}

@media only screen and ( min-width: 768px ) {

    .copperleaftiny {
        margin-right: 10px;
    }

    ul#wasabi-subfooter-menu {
        margin-bottom: 10px;
    }

    ul#wasabi-subfooter-menu li {
        list-style-type: none;
        margin: 0 5px 0 5px;
    }

    .clc-site-tags {
        justify-content: center;
        padding-right: 0;
    }

}



.hero-intro .entry-content {
    padding-top: 30px;
}

@media only screen and ( min-width: 768px ) {

    .hero-intro .entry-content {
        padding-top: 60px;
    }

}