/* 5 - home page */
body.home .breadcrumbs {
    display: none;
}

body.home .post-content {
    --color-text: var(--color-bravo);
    background: url('../img/wood.webp') center center / 2600px 3900px repeat;
}

body.home .wp-block-media-text {
    --color-text: var(--white);
    background-color: var(--color-charlie);
    background-image: url('../img/bg-texture.png');
    background-size: 1200px 896px;
    padding: calc(var(--padding) * 2) calc((100vw + (var(--padding) * 2) - var(--page-max-width)) / 2);
}
body.home .wp-block-media-text .wp-block-media-text__content {
    align-self: start;
    padding: var(--padding) 0;
}
body.home .wp-block-media-text h1 {
    font-size: 80px;
}

.section-feed-need img {
    height: 125px;
    transform: rotate(-5deg);
    max-width: none;
    width: auto;
}
.section-feed-need img:hover {
    transform: rotate(5deg);
}
.section-feed-need h3 a {
    color: var(--color-bravo);
    font-family: var(--font-family-h);
    text-transform: uppercase;
}
.section-feed-need a.wp-block-button__link {
    border: none;
    background: none !important;
}
.section-feed-need a.wp-block-button__link svg .border,
.section-feed-need a.wp-block-button__link svg .angle-right line {
    stroke: var(--color-alpha);
}
.section-feed-need a.wp-block-button__link:hover svg .border {
    fill: var(--color-alpha);
    fill-opacity: 1;
}
.section-feed-need a.wp-block-button__link:hover svg .angle-right line {
    stroke: var(--white);
}

@media all and (max-width: 599px) {
    .section-feed-need .wp-block-columns {
        flex-wrap: wrap;
    }
    .section-feed-need .wp-block-column {
        display: grid;
        flex-basis: 100vw;
        grid-template-columns: 175px 1fr 55px;
        margin: 10px 0 !important;
    }
    .section-feed-need .wp-block-image {
        margin: 0;
        justify-self: end;
    }
    .section-feed-need h3 {
        align-self: center;
        text-align: left;
    }
}
@media all and (min-width: 992px) {
    body.home .feed-need .wp-block-group__inner-container .scallop-top {
        margin-left: calc((100vw - var(--page-max-width)) / -2);
    }
}
@media all and (min-width: 1200px) {
    .section-feed-need img {
        height: 200px;
    }
}

body.home .grab-gear .wc-block-grid__products .wc-block-grid__product-title {
    font-family: var(--font-family-h);
    font-size: 34px;
    font-weight: normal;
    text-transform: uppercase;
}
body.home .grab-gear .wc-block-grid__products .add_to_cart_button {
    font-size: 0;
}
body.home .grab-gear .wc-block-grid__products .add_to_cart_button:before {
    content: '>';
    font-size: 20px;
    padding: 0 15px;
}

body.home .clean-label {
    --font-size: 20px;
}
body.home .clean-label p {
    font-family: var(--font-family);
    margin: 0 auto var(--spacing-text) auto;
    max-width: var(--medium-width);
}
body.home .clean-label .wp-block-button a {
    --color-bg: var(--color-alpha);
    --color-text: var(--white);
}
body.home .clean-label .footnote {
    --color-text: var(--black);
    margin: var(--padding) auto;
}

body.home .life-adventures {
    --color-text: var(--white);
    position: relative;
}
body.home .life-adventures, 
body.home .life-adventures .scallop-top {
    background-color: #205C40;
    background-image: url('../img/wood-green.webp');
}
body.home .life-adventures .wp-block-group__inner-container {
    max-width: var(--page-extra-width);
}
body.home .life-adventures .wp-block-social-links a {
    --color-bg: var(--color-charlie);
}

#sb_instagram {
    padding: 20px 0 0 !important;
}
#sb_instagram svg {
    width: auto;
}


/* 5 - single product page */
article.type-product .breadcrumbs {
    display: none;
}
.single-product {
    --color-text: var(--color-secondary);
    grid-gap: 0;
}
.single-product .main-content {
    background-color: #f7f2dd;
    background-image: url('../img/bg-texture.png');
}
.single-product .near-you p {
    color: var(--color-alpha);
    font-family: var(--font-family-nav);
    text-transform: uppercase;
}
.single-product .product_cat-merchandise .featured-image div {
    transform: rotate(-2deg);
}
.single-product .product_cat-merchandise #wc-stripe-payment-request-wrapper,
.single-product .product_cat-merchandise #wc-stripe-payment-request-button-separator {
    display: none !important;
}
.single-product .product_cat-merchandise .price-points {
    max-width: var(--max-width-tiny);
    width: 100%;
}
.single-product .product_cat-merchandise .price-points .quantity {
    display: none !important;
}
.single-product .product_cat-merchandise .price-points span.on-sale {
    text-decoration: line-through;
    padding-right: 0.5rem;
} 
.single-product .product_cat-merchandise .price-points p,
.single-product .product_cat-merchandise .price-points p span,
.single-product .product_cat-merchandise .price-points .points,
.single-product .product_cat-merchandise .price-points .points span {
    font-family: var(--font-family-alt);
    font-size: 40px;
    margin-bottom: 0;
}
.single-product .product_cat-merchandise .price-points .points span.sale-points,
.single-product .product_cat-merchandise .price-points .points span.sale-points + span
 {
    color: var(--color-alpha);
}


.single-product .product-card .merch-body {
    padding-bottom: var(--padding);
}
.product_cat-merchandise .price-points .or-box {
    display: block;
    height: 24px;
    position: relative;
    margin-bottom: 1em;
    width: calc(150px + 120px);
    z-index: 20;
}
.product_cat-merchandise .price-points .or-box div {
    background: var(--black);
    height: 3px;
    position: absolute;
    top: 9px;
    width: 100%;
}
.product_cat-merchandise .price-points .or-box svg {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
}
.single-product.woocommerce .product_cat-merchandise div.product form.cart .button {
    float: none;   
}
.woocommerce.single-product .product_cat-merchandise div.product form.cart {
    margin-bottom: 1em;
} 
.product_cat-merchandise table.variations select {
    /* attempt to fix iOS styling    
    background-color: var(--white);
    border: 2px solid var(--gray-light);
    color: var(--black);
    -webkit-appearance: none;
    */
    border-radius: var(--border-radius);
    margin-left: 10px;
    min-width: 50%;
    padding: 10px;

}

.product_cat-merchandise .woocommerce-message {
    margin: 0;
    padding: 60px 20px 20px;
}
.product_cat-merchandise .woocommerce-message a.button {
    margin: -6px 0 0;
}
@media all and (min-width: 992px) {
    .product_cat-merchandise .woocommerce-message {
        padding: 80px 80px 20px;
    }    
}


/* 5 - product hero */
.product-hero.grid {
    grid-gap: 0;
}
.product-hero .featured-image-wrap {
    background-color: var(--color-secondary);
    background-image: url('../img/bg-texture.png');
    margin: -20px 0;
    padding-top: 20px;
}
.product-hero .featured-image {
    margin: auto;
    max-width: 80vw;
    padding: 60px 0 0 0;
}
.product-hero .gallery {
    margin: auto auto -130px;
    max-width: 80vw;
}
.product-hero .featured-image.rotate img {
    transform: rotate(-5deg);
}

.product-hero .hero-content {
    margin-top: 130px;
    padding: var(--padding);
    padding-bottom: 40px;
    align-self: start;
}
.product-hero .hero-content .description {
    --color-text: var(--black);
}
.product-hero .flair-image {
    display: none;
    position: absolute;
    right: -80px;
    top: -10px;
    width: 250px;
}
@media all and (min-width: 1200px) {
    .product-hero .flair-image {
        display: block;
    }
}

.other-sizes a {
    display: inline-block;
    width: 40px;
}
.other-sizes span {
    margin-top: 1rem;
}
.other-sizes .pack-circle {
    fill: var(--color-secondary);
}


/* 5 - gallery updates */
.product-hero .gallery .close-overlay {
    display: none;
}
.product-hero .woocommerce-product-gallery {
    background: transparent;
    float: none !important;
    margin: 0 auto !important;
    max-width: 360px;
    padding: 40px 20px 20px;
    width: 100vw !important;
}
.product-hero .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
    display: none;
}
.product-hero .woocommerce-product-gallery .flex-viewport {
    max-width: 550px;
    padding: var(--padding) 0;
    position: fixed !important;
    top: -100vw;
    width: 100vw;
}
.pswp,
.product-hero .woocommerce-product-gallery img[role='presentation'] {
    display: none !important;
}
.product-hero .woocommerce-product-gallery .flex-control-thumbs {
    display: flex;
    margin: 0 -5px !important;
    justify-content: center;
}
.product-hero .woocommerce-product-gallery .flex-control-thumbs li {
    padding: 0 5px;
    width: 96px !important;
}
.product-hero .woocommerce-product-gallery .flex-control-thumbs img {
    border: 1px solid var(--white);
    opacity: 1 !important;
}
/* Remove this mostly fixed the sliver on the gallery but not sure of its origial intention or consequences
.product-hero .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
    margin: 0 -5px !important;
}
*/
.product-hero .woocommerce-product-gallery .woocommerce-product-gallery__image {
    float: left;
    width: 25%;
}
.product-hero .gallery.overlay .woocommerce-product-gallery .woocommerce-product-gallery__image {
    width: 100%;
}

.product-hero .gallery.overlay {
    align-items: center;
    background-color: #000000cc;
    background-image: none;
    display: grid;
    height: 100vh;
    left: 0;
    margin: 0;
    max-width: none;
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: 100000;
}
.product-hero .gallery.overlay .close-overlay {
    background: transparent;
    color: var(--white);
    cursor: pointer;
    display: block;
    font-size: 40px;
    line-height: 1;
    height: 1em;
    position: fixed;
    right: 20px;
    top: 20px;
    width: 1em;
    z-index: 100001;
}
.product-hero .gallery.overlay .woocommerce-product-gallery {
    float: none !important;
    max-width: 550px;
    padding: 0;
    width: 100vw;
}
.product-hero .gallery.overlay .flex-viewport {
    background: transparent;
    display: block !important;
    margin: var(--padding) 0;
    position: relative !important;
    top: auto;
}
.product-hero .gallery.overlay .flex-control-thumbs img.flex-active {
    border-color: var(--color-alpha);
}
@media all and (max-width: 500px) {
    .product-hero .featured-image {
        max-width: 100vw;
    }
    .product-hero .gallery {
        max-width: 100vw;
    }
}

@media all and (min-width: 768px) {
    .product-hero .featured-image {
        max-width: 70vw;
    }
    .product-hero .gallery {
        max-width: 70vw;
    }
}

@media all and (min-width: 992px) {
    .product-hero .featured-image-wrap {
        margin-top: 0;
    }
    .product-hero .featured-image {
        margin-right: -60px;
        max-width: 700px;
        padding: 120px 0 160px 0;
        width: 50vw;
    }
    .product-hero .gallery {
        margin-right: -60px;
        max-width: 700px;
        width: 50vw;
    }
    .product-hero .featured-image-wrap .scallop-bottom {
        display: none;
    }

    .product-hero .gallery {
        --color-bg: transparent;
        background-image: url('../img/bg-texture.png');
        grid-row: 2;
        margin-top: -160px;
    }
    .product-hero .woocommerce-product-gallery {
        float: right !important;
        margin-right: -60px;
        max-width: 700px;
        padding: 50px 0 50px;
        width: 50vw !important;
    }
    .product-hero .hero-content {
        margin-left: 40px;
        margin-top: 60px;
        /* max-height: 400px; Not sure why this is given a max height */
        max-width: 450px;
    }
}


/* 5 - product-info */
.product-info {
    --color-bg: var(--color-primary);
    padding: var(--section-padding) 0;
    position: relative;
    width: 100vw;
}
.product-info .stats .stat {
    width: 100px;
    height: 100px;
    border: 2px solid;
    border-radius: 50%;
}

.product-info .stats .stat span {
    background: transparent;
    font-family: var(--font-family-h);
    font-size: 60px;
    line-height: 1.5;
}
.product-info .stats .stat div {
    font-family: var(--font-family-alt);
    font-size: 25px;
    margin-top: -15px;
    position: relative;
}

.claims {
    margin-bottom: -30px;
}
.claims .icons > div {
    width: 90px;
}
.claims .icons circle {
    fill: var(--color-text);
}
.claims .notices {
    font-size: 12px;
}

@media all and (min-width: 992px) {
    .claims .icons > div {
        width: 120px;
    }
}


/* 5 - ingredient */
.ingredient {
    padding: var(--section-padding) 0 0;
}
.ingredient h2 {
    color: var(--white);
    margin-bottom: 0;
    text-align: center;
}
.ingredient img {
    width: 100%;
    background: transparent;
}
.ingredient a.btn {
    color: var(--white);
    border-color: var(--white);
}
.ingredient-left {
    align-self: center;
    padding: 0 20px;
}
.ingredient.reds-burrito .ingredient-right {
    justify-items: center;
}
.ingredient.reds-sandwich .ingredient-right {
    justify-items: right;
}
@media all and (min-width: 1200px) {
    .ingredient.reds-sandwich {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
}

.ingredient-overlay:not(.hidden) {
    align-items: center;
    background-color: #000000cc;
    background-image: none;
    display: grid;
    height: 100vh;
    left: 0;
    margin: 0;
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: 100000;
}
.ingredient-overlay .close-overlay {
    background: transparent;
    color: var(--white);
    cursor: pointer;
    display: block;
    font-size: 40px;
    line-height: 1;
    height: 1em;
    position: fixed;
    right: 20px;
    top: 20px;
    width: 1em;
    z-index: 100001;
}
.ingredient-overlay .overlay-content {
    --color-text: var(--black);
    background: var(--white);
    border: 4px solid var(--color-primary);
    max-height: 80vh;
    margin: auto;
    max-width: 600px;
    overflow: auto;
    padding: 40px;
    width: 90vw;
}
.ingredient-overlay .overlay-content h1 {
    font-size: var(--font-size-h3);
    color: var(--color-secondary);
}
/*
@media all and (max-width: 450px) {
    .ingredient img {
        max-width: none;
        width: 120%;
        margin-left: -10%;
    }
}*/

/* 5 - instructions */
.instructions {
    --color-bg: var(--color-secondary);
    --color-text: var(--white);
    padding: var(--section-padding) 0;
    position: relative;
    width: 100vw;
}

.instructions li {
    list-style-type: none;
}
.instructions > .grid {
    padding: var(--padding);
    width: 100vw;
}
.instructions-wrap .splide__arrows {
    display: none;
}
.instructions-wrap .splide__pagination__page {
    --color-text: var(--color-primary);
    height: 15px;
    margin: 15px 5px;
    padding: 0;
    width: 15px;
}
.instructions-wrap .splide__pagination__page:hover {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}
.instructions-wrap .splide__pagination__page.is-active {
    --color-bg: var(--color-primary);
}
.instructions-wrap .instruction {
    line-height: 1.1;
    max-width: 300px;
    position: relative;
    width: 100vw;
}
.instructions-wrap .instruction em,
.instructions-wrap .instruction strong {
    display: block;
    font-family: var(--font-family-alt);
    font-style: normal;
    font-weight: normal;
}
.instructions-wrap .instruction em {
    margin-top: 1rem ;
}
.instructions-wrap .instruction strong {
    margin: -1rem 0 0.5rem 0;
}
.instructions-wrap .instruction .icon {
    height: 120px;
}
.instructions-wrap .instruction .icon svg {
    height: 100%;
    width: auto;
}
.instructions-wrap .instruction .icon svg .color {
    fill: var(--color-primary);
}
.instructions-wrap .instruction .or-box {
    display: none;
}

@media all and (min-width: 1280px) {
    .instructions-wrap .splide__list {
        align-items: start;
        display: flex !important;
        grid-gap: 150px;
    }
    .instructions-wrap .instruction .or-box {
        display: block;
        height: 24px;
        left: calc(100% - 60px);
        position: absolute;
        top: 55px;
        width: calc(150px + 120px);
        z-index: 20;
    }
    .instructions-wrap .instruction .or-box div {
        background: var(--color-primary);
        height: 3px;
        position: absolute;
        top: 9px;
        width: 100%;
    }
    .instructions-wrap .instruction .or-box svg {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
    }
    .instructions-wrap .instruction:last-child .or-box {
        display: none;
    }
    .instructions-wrap .instruction .or-box svg circle {
        fill: var(--color-primary);
    }
    .instructions-wrap .instruction .or-box svg path {
        fill: var(--color-secondary);
    }
}


/* 5 - related-products */
.related-products {
    padding: var(--section-padding) var(--padding);
    width: 100%;
    position: relative;
}
.related-products .splide__arrows {
    display: none;
}
.related-products .splide__pagination__page {
    --color-text: var(--color-primary);
    height: 15px;
    margin: 15px 5px;
    padding: 0;
    width: 15px;
}
.related-products .splide__pagination__page.is-active {
    --color-bg: var(--color-primary);
}

@media all and (min-width: 1280px) {
    .related-products .splide__list {
        display: flex !important;
        grid-gap: 40px;
    }
}

/* 5 - how points work */
.section.points-faq {
    padding: var(--section-padding) var(--padding);
}
.section.points-faq .grid {
    margin: 0 auto;
}
.section.points-faq .grid ol {
    text-align: left;
}
.section.points-faq .grid ol li {
    font-family: var(--font-family-alt);
    font-size: 22px;
    padding: 10px 0 10px 35px;
    position: relative;
    text-transform: uppercase;
}
.section.points-faq .grid ol li a {
    font-family: var(--font-family-alt);
    font-size: 22px;
}
.section.points-faq .grid ol li a:hover {
    color: var(--color-alpha);
}

/* 5 - product reviews */
.product-reviews {
    background: var(--color-primary);
    padding: var(--section-padding) 0 0;
    position: relative;
}
.product-reviews .scallop-top {
    background: var(--color-primary);
}
.product-reviews .splide {
    gap: 0;
}
.product-reviews .splide__slide {
    max-width: 400px;
}
.product-reviews .splide__arrows {
    display: none;
}

.product-reviews .splide__pagination__page {
    --color-text: var(--color-secondary, var(--black, black));
    height: 15px;
    margin: 15px 5px;
    padding: 0;
    width: 15px;
}
.product-reviews .splide__pagination__page:hover {
    background-color: var(--color-secondary, var(--color-text, black));
    border-color: var(--color-secondary, var(--color-text, black));
}
.product-reviews .splide__pagination__page.is-active {
    --color-bg: var(--color-secondary, var(--color-text, black));
}

.product-reviews .grid,
.product-reviews .wp-block-group__inner-container {
    margin: 0 auto;
    max-width: var(--page-extra-width);
    padding: var(--padding);
}
.product-reviews .wp-block-group__inner-container {
    align-items: stretch;
    display: grid;
    gap: var(--padding) var(--padding);
    grid-template-columns: repeat(var(--grid-columns), 1fr);
    justify-items: center;
    padding: 0 var(--padding);
}
.product-reviews h3 {
    padding-top: 10px;
}
.product-reviews span {
    font-family: var(--font-family-alt);
    font-size: 22px;
}

.rating {
    position: relative;
}
.rating:before {
    bottom: 0;
    content: '';
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.rating .yotpo a {
    color: var(--black) !important;
    font-family: var(--font-family);
    font-size: var(--font-size);
}
.rating .write-review-btn-hidden {
    display: none;
}

.product-reviews .btn {
    --color-text: inherit;
}
.product-reviews .btn:hover {
    --color-bg: initial;
    background: transparent;
}
.product-reviews .yotpo-review-section {
    --max-height: 0;
    display: inline-block !important;
    margin: 0 auto;
    max-height: 0;
    max-width: var(--page-extra-width);
    overflow: hidden;
    transition: max-height 0.7s ease-out;
    width: 100%;
}
.product-reviews .yotpo-review-section.show {
    max-height: var(--max-height);
}
.product-reviews .yotpo-review-section .yotpo-main-widget {
    padding: var(--padding);
}
.product-reviews .yotpo-review-section .yotpo-main-widget .yotpo-display-wrapper {
    background-color: var(--white);
    padding: var(--padding);
}
.yotpo .yotpo-label-container {
    border: none !important;
}
.product-reviews .yotpo-review-section .yotpo div:not(.yotpo-icon),
.product-reviews .yotpo-review-section .yotpo span:not(.yotpo-icon),
.product-reviews .yotpo-review-section .yotpo p,
.product-reviews .yotpo-review-section .yotpo a,
.product-reviews .yotpo-review-section .yotpo img,
.product-reviews .yotpo-review-section .yotpo i,
.product-reviews .yotpo-review-section .yotpo strong,
.product-reviews .yotpo-review-section .yotpo sup,
.product-reviews .yotpo-review-section .yotpo ul,
.product-reviews .yotpo-review-section .yotpo li,
.product-reviews .yotpo-review-section .yotpo form,
.product-reviews .yotpo-review-section .yotpo label {
    font-size: 16px !important;
    line-height: 19px !important;
}
.yotpo-bottomline {
    align-items: center;
}
.yotpo-bottomline .yotpo-icon.rating-star {
    font-size: 40px !important;
}
.product-reviews .yotpo-review-section .yotpo-bottomline span.reviews-qa-label {
    display: inline-block;
    font-size: 30px !important;
    line-height: 1 !important;
}
.product-reviews .yotpo-review-section .write-question-review-buttons-container button,
.product-reviews .yotpo-review-section .write-question-review-buttons-container button:hover {
    display: grid;
    grid-template-columns: min-content min-content;
}
.product-reviews .yotpo-review-section .write-question-review-buttons-container button span {
    height: auto;
    width: auto;
}
.product-reviews .yotpo-review-section h2.yotpo-header-title {
    font-size: var(--font-size-h3) !important;
}

.coupon-offer {
    overflow: hidden;
}
.coupon-offer > div {
    background: var(--color-bravo);
    border-radius: 50%;
    color: var(--white);
    height: 240%;
    margin: 0 calc((100vw - 700px) / 2);
    padding: 60px 40px 20px;
    width: 700px;
}
.coupon-offer .btn {
    --color-bg: var(--white);
    --color-text: var(--color-alpha);
}
.product-reviews .coupon-offer .btn span {
    font-family: var(--font-family-nav);
    font-size: var(--font-size);
}
.coupon-offer h2 {
    color: var(--white);
    margin-bottom: var(--spacing-text);
}
.coupon-offer p {
    color: var(--white);
    max-width: 90vw;
    margin: 0 auto var(--spacing-text) auto;
}
@media all and (min-width: 1280px) {
    .product-reviews .splide__list {
        display: flex !important;
        grid-gap: 40px;
    }
}

/* 5 - merchandise products */
.product_cat-merchandise .featured-image {
    max-width: 600px;
    padding-top: 60px;
    width: 90%;
}
.product_cat-merchandise.sale .featured-image div {
    border: none;
    position: relative;
}
.product_cat-merchandise.sale .featured-image div:after {
    background: transparent url('../img/sale-flag.webp') right bottom no-repeat;
    background-size: contain;
    bottom: 20px;
    color: red;
    content: '';
    height: 60px;
    position: absolute;
    right: 10px;
    width: 100%;
}
.product_cat-merchandise .gallery {
    max-width: 600px;
    width: 90%;
}
@media all and (min-width: 992px) {
    .product_cat-merchandise .featured-image {
        margin-right: 0;
    }
    .product_cat-merchandise .gallery {
        margin-right: 0;
    }
}

/*
.product_cat-merchandise .price-points {
    text-align: center;
}
.product_cat-merchandise .woocommerce-Price-amount {
    display: block;
    font-family: var(--font-family-alt);
    font-size: var(--font-size-h3);
    margin: 0;
} /*

/* 5 - woocommerce */
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled] {
    padding: 0 15px;
}
.woocommerce-message,
.woocommerce-info {
    background-color: var(--color-delta);
    border-top-color: transparent;
    color: var(--black);
}
.woocommerce a.remove {
    color: var(--color-alpha) !important;
}
.woocommerce a.remove:hover {
    background-color: var(--color-alpha);
}
.woocommerce-message::before,
.woocommerce-info::before {
    color: var(--color-charlie);
}
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
    background-color: var(--white);
    margin: 2em auto;
}
.woocommerce form.checkout_coupon button.button {
    margin-top: 0;
}

.woocommerce #respond input#submit.alt.disabled,
.woocommerce #respond input#submit.alt.disabled:hover,
.woocommerce #respond input#submit.alt:disabled,
.woocommerce #respond input#submit.alt:disabled:hover,
.woocommerce #respond input#submit.alt:disabled[disabled],
.woocommerce #respond input#submit.alt:disabled[disabled]:hover,
.woocommerce a.button.alt.disabled, .woocommerce a.button.alt.disabled:hover,
.woocommerce a.button.alt:disabled, .woocommerce a.button.alt:disabled:hover,
.woocommerce a.button.alt:disabled[disabled],
.woocommerce a.button.alt:disabled[disabled]:hover,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt.disabled:hover,
.woocommerce button.button.alt:disabled, 
.woocommerce button.button.alt:disabled:hover,
.woocommerce button.button.alt:disabled[disabled],
.woocommerce button.button.alt:disabled[disabled]:hover,
.woocommerce input.button.alt.disabled,
.woocommerce input.button.alt.disabled:hover,
.woocommerce input.button.alt:disabled,
.woocommerce input.button.alt:disabled:hover,
.woocommerce input.button.alt:disabled[disabled],
.woocommerce input.button.alt:disabled[disabled]:hover {
    background-color: var(--gray-medium);
}

/* 5 - woocommerce cart */
.woocommerce-cart .main-content {
    --color-text: var(--black);
    background-color: #f7f2dd;
    background-image: url('../img/bg-texture-light.png');
    background-size: 1200px 896px;
    position: relative;
    padding: var(--section-padding) var(--padding);
}
.woocommerce-cart .cart-collaterals {
    max-width: var(--max-width-medium);
    margin: 0 auto;
}

.woocommerce-cart .cart-collaterals .cart_totals {
    float: none;
    width: 100%;
}
.woocommerce-cart table {
    background: var(--white);
}
.woocommerce-cart table.cart img {
    width: 100px;
}
.woocommerce-cart input#coupon_code {
    margin-top: 6px;
}
@media screen and (min-width: 768px) {
    .woocommerce-cart input#coupon_code {
        margin-top: 8px;
    }
}
.woocommerce-cart table.cart .coupon .input-text {
    min-width: 200px !important;
    text-indent: 10px;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    padding: 0 15px;
    background-color: var(--white);
    color: var(--color-alpha);
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background-color: var(--color-alpha);
    color: var(--white);
}

/* 5 - woocommerce checkout */
.woocommerce .woocommerce-checkout .col2-set .col-1,
.woocommerce .woocommerce-checkout .col2-set .col-2 {
    width: 100% !important;
}

.woocommerce .woocommerce-checkout .col2-set .col-2 {
    margin-bottom: 30px;
}

.woocommerce .woocommerce-checkout #ship-to-different-address span {
    font-family: var(--font-family-h);
}

.woocommerce-checkout .main-content {
    --color-text: var(--black);
    background-color: #f7f2dd;
    background-image: url('../img/bg-texture-light.png');
    background-size: 1200px 896px;
    position: relative;
    padding: var(--section-padding) var(--padding);
}
.woocommerce-checkout table {
    background: var(--white);
}
.woocommerce-checkout #payment {
    background-color: var(--white);
}
.select2-container .select2-selection--single {
    height: auto;
    border-radius: 30px;
}
span#select2-billing_country-container,
span#select2-billing_state-container {
    padding: 10px;
    margin: 0;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 14px;
    right: 12px;
}
.woocommerce-checkout .recaptcha_wrap {
    margin: 20px 0 40px 0;
}


/* 5 - our foods */
div.our-foods-hero h2 em {
    color: var(--color-delta);
}

/* 5 - club rojo */
.rojo-join-club {}
.rojo-earn-rewards {}
.rojo-rewards-faq {}

/* 5 - gear */

/* 5 - our story */
div.story-hero h2 em {
    color: var(--color-delta);
}
.timeline {
    position: relative;
    color: var(--white);
}
.timeline h2 {
    color: var(--white);
}
.timeline .scallop-top {
    background-color: var(--color-charlie);
}
.timeline .timeline-content .story-time p,
.timeline .timeline-content .story-details h3 {
    font-family: var(--font-family-alt);
    font-size: 30px;
}
.timeline .timeline-content .story-details p {
    color: var(--white);
    font-size: var(--font-size);
}
.timeline .timeline-content .timeline-block-detail {
    background-color: var(--color-bg);
    border-top: none !important;
    box-shadow: none;
}
.timeline .cool-horizontal-timeline-body .story-image img {
    box-shadow: -5px 5px 10px #000;
    margin-bottom: 40px;
    max-height: 300px;
    max-width: 80%;
    outline: 10px solid var(--color-delta);
    outline-offset: -5px;
}
.timeline .wp-block-cp-timeline-content-timeline-child:nth-child(odd) .story-image img {
    transform: rotate(-3deg);
}
.timeline .wp-block-cp-timeline-content-timeline-child:nth-child(even) .story-image img {
    transform: rotate(3deg);
}
.timeline .cool-horizontal-timeline-body .timeline-block-detail:before {
    display: none;
}

/* 5 - legal pages / interior pages */
.page-template-default .wp-container-1.section.reds-dark h1 {
    color: var(--white);
    padding-top: 60px;
} 
.legal-page h2 {
    font-size: var(--font-size-h3);
}
.legal-page ul {
    list-style: disc;
    margin: 1rem 0 1rem 8rem !important;
}

/* 5 - 404 */
body.error404 .main-content {
    padding: 120px var(--padding);
}