/** Shopify CDN: Minification failed

Line 739:0 Expected identifier but found "/"
Line 1029:1 Unexpected "{"
Line 1584:37 Expected "{" but found "and("
Line 1591:37 Expected "{" but found "and("
Line 2977:37 Expected "{" but found "and("
Line 2984:37 Expected "{" but found "and("

**/
/* #Custom fonts
   Primary (default everywhere): Bricolage Grotesque (https://github.com/ateliertriay/bricolage)
   Accent (price + sub title only): Red Hat Display Bold (https://fonts.google.com/specimen/Red+Hat+Display)
================================================== */
@font-face {
    font-family: 'Bricolage Grotesque';
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url("//succulentsbox.com/cdn/shop/t/106/assets/bricolage-grotesque-variable.woff2?v=152286752623724716081789721065") format("woff2");
}

@font-face {
    font-family: 'Red Hat Display';
    font-style: normal;
    font-weight: 300 900;
    font-display: swap;
    src: url("//succulentsbox.com/cdn/shop/t/106/assets/red-hat-display-variable.woff2?v=90349552203768520081789721067") format("woff2");
}

body {
    font-family: 'Bricolage Grotesque', sans-serif;
}

h1, h2, h3, h4, h5, h6,
.h2, .h3, .h4, .h5, .h6,
.collection_title,
.headline,
.empty_cart,
.promo-banner,
.title {
    font-family: 'Bricolage Grotesque', sans-serif;
}

a.button,
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"],
.action_button,
a.action_button,
input.action_button[type="submit"],
input.action_button[type="button"],
button.shopify-payment-button__button.shopify-payment-button__button--unbranded,
a[class*="global-button"],
button[class*="global-button"],
input[class*="global-button"] {
    font-family: 'Bricolage Grotesque', sans-serif;
}

.money,
.price,
.price .money,
.price small,
.current_price,
.current_price small,
.current_price .money,
span.price,
.sub_title,
.subtitle,
.collection-info__subtitle,
.text-columns-with-images__subheading,
.subscription-promo__subheading {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 700;
}

.no-touchevents a.cart_content__continue-shopping.secondary_button,
.touchevents a.cart_content__continue-shopping.secondary_button {
    text-align: left;
    background: #ADC1A3;
    color: #fff !important;
    margin-top: 0;
    padding: 10px 25px;
    font-size: 1.2rem;
    display: block;
}

.bg-sub-section {
    background: #e4f6f2 !important;
}

.hidden {
    display: none !important;
}

.unstyled {
    list-style: none;
}

.text-bold {
    font-weight: bold;
}

.flex {
    display: flex;
}

.uppercase {
    text-transform: uppercase;
}

.justify-center {
    justify-content: center;
}

.original-header {
    padding: 5px 0;
}

.original-header .original-menu {
    display: flex;
    justify-content: center;
    font-family: Cabin, sans-serif;
}

.original-header .top-bar {
    height: auto;
    display: flex;
    align-items: center;
    background: var(--brand-olive)
}

.original-header .top-bar .search-container {
    padding-left: 0;
}

.original-header form.search_form,
.original-header .search_form input {
    background: transparent;
}

.original-header .top-bar .search-container .search_form {
    display: flex;
    justify-content: start;
    align-items: center;
}

.search__results-wrapper {
    position: absolute;
    top: 100%;
    right: 0;
}

.search__results {
    z-index: 99999;
}

.original-header .top-bar .search-container .search_form input,
.original-header .top-bar .search-container .search_form input:active,
.original-header .top-bar .search-container .search_form input:focus {
    background: transparent;
    border: 1px solid #fff;
    border-radius: 15px;
    color: #fff;
    padding: 20px;
    width: 280px;
    height: 44px;
    min-height: 26px;
}

div.cart_content form {
    margin: 0 !important;
}

.main-menu-right .menu {
    display: flex;
    justify-content: left;
}



.main-menu-right .menu li a.mini_cart {
    background: transparent;
    width: auto;
    height: auto;
    align-items: end;
}

.main-menu-right .menu a span {
    font-size: 0.55rem;
    display: inline-block;
    width: 100%;
    padding: 0;
    text-align: center;
    line-height: 1.25;
    word-wrap: break-word;
}

.main-menu-right .menu a span.sb-icon {
    font-size: 24px;
}

.main-nav {
    padding: 0;
}

.main-nav .nav {
    position: unset;
}

.main-nav .menu-img {
    padding: 5px;
    margin-bottom: 10px;
}

.main-nav .menu-img.menu-rounded img {
    border-radius: 50%;
    width: 100%;
    max-width: 196px;
}

.menu .vertical-menu_submenu li a {
    display: inline-block;
    text-align: center;
    width: 100%;
    font-size: 14px;
}

.menu .vertical-menu_submenu li a icon-right-arrow {
    font-size: 0.65rem;
}

.cart_items > li.mini-cart-recommend-products {
    border-bottom: 1px solid #ccc;
}

.cart_items > li,
.cart_items > li .line {
    width: 100%;
}

.cart_items > li .cart-shipping__numOuter {
    text-align: center;
}

.cart_items > li .slick-list {
    width: 100%;
}

.cart_items li .slick-dots {
    margin-bottom: 0;
}

.cart_items li .slick-dots li {
    float: none;
}

.cart_items li .slick-track {
    width: 10000px !important;
}

li.mini-cart-recommend-products .product-quantity-box.purchase-details__quantity input.quantity {
    width: 25px;
    min-height: 22px;
}

.cart_items > li .cart__item {
    border-bottom: 0;
}

.cart_content .cart_subtotal {
    width: 100%;
}

.cart_content .cart_subtotal p {
    margin-bottom: 0;
}

.cart_content .cart_subtotal p.meta {
    font-size: 0.75rem;
    font-weight: normal;
    color: #6b6b6b;
}

.width-100 {
    width: 100%;
}

.cart_content > ul > li {
    width: 100%;
}

.cart_content .sticky-checkout-button .action_button {
    border-radius: 0;
    margin-bottom: 10px;
    font-size: 1.5rem;
    font-weight: bold;
}

.cart_content .slick-dots li a.dot {
    font-size: 0;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    border: 1px solid #ddd;
}


.sticky-checkout-button {
    border-bottom: 0 !important;
    background: #fff;
    z-index: 999;
    bottom: 0 !important;
}

.sticky-checkout-button .cart_content__continue-shopping,
.sticky-checkout-button .cart_content__continue-shopping:active,
.sticky-checkout-button .cart_content__continue-shopping:focus {
    display: block;
    text-transform: uppercase;
    font-size: 1.1rem;
    text-align: center;
    color: #414C25 !important;
}

.product__details .description,
.product__details .tabs {
    position: relative;
}

.product__details .tabs-content {
    display: none;
}



.main-color {
    color: #414C25;
}

.main-color-i {
    color: #414C25 !important;
}

.product_gallery_nav .flickity-button,
.product_gallery_nav {
    max-height: 140px;
}

.list-collection-wrapper .thumbnail .price,
.list-collection-wrapper .thumbnail .title {
    display: inline-block;
    height: 62px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.mobile-search {
    max-width: 100vw;
}

.mobile-search .search__results {
    top: 0
}

.mobile-search .search__results-wrapper {
    height: 540px;
}

.search__results .all-results a {
    display: inline-flex;
}

.search__results .all-results span {
    color: #ffffff !important;
}

.product_section .description ul.tabs {
    display: flex;
    padding-right: 34px;
}

.product_section .description .tabs li {
    flex: 1;
    text-align: center;
    border-top: thin solid #cccccc;
    border-right: thin solid #cccccc;
    border-left: thin solid #cccccc;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    height: auto;
    margin-bottom: -1px;
}



.product_section .description .tabs li:not(:first-child) {
    margin-left: -1px;
}

.product_section .description ul.tabs li a {
    color: #333333;
    padding: 5px 5px;
    height: auto;
    font-size: 9px;
    display: inline-block;
    line-height: 1.25;
    min-height: 33px;
    background: transparent;
}

.product_section .description ul.tabs li a.active {
    border-bottom: none;
    color: #ADC1A3;
}

.product_section .description .tabs li a {
    margin: auto;
}

.shopify-section.shopify-section--newsletter > section {
    clear: both;
}

#contact_form .newsletter-form__sign-up {
    line-height: 1;
    height: 30px;
    padding: 0;
    min-height: 0;
    color: #DB4547;
    border: 1px solid #ffffff;
    background: #ffffff;
}

.block__claypots-step-3-2.has-4-column .step-3-2 .item, .block__subsgift-step-3-2.has-4-column .step-3-2 .item {
    width: calc(100% / 3);
}

.block__claypots-step-3-2.has-4-column .step-3-2 .item button, .block__subsgift-step-3-2.has-4-column .step-3-2 .item button {
    font-size: 10px;
}

.menu .vertical-menu > li.sublink {
    position: unset;
}

.menu .has-child .vertical-menu_sub-submenu {
    left: 0;
    width: 100%;
    transition: opacity 0.3s ease-in;
    display: flex;
    flex-wrap: wrap;
    background: #e4f6f2;
    padding-bottom: 60px;
    z-index: 3000;
    min-height: 100%;
}

.menu .has-child .vertical-menu_sub-submenu > li {
    width: 33%;
    pointer-events: all;
}

.menu .has-child .vertical-menu_sub-submenu.sub-gift-boxes,
.menu .has-child .vertical-menu_sub-submenu.sub-by-price,
.menu .has-child .vertical-menu_sub-submenu.sub-pots,
.menu .has-child .vertical-menu_sub-submenu.sub-gardening-prints,
.menu .has-child .vertical-menu_sub-submenu.sub-by-event-type-bulk-gifts {
    justify-content: center;
}

.menu .has-child .vertical-menu_sub-submenu.sub-gift-boxes > li,
.menu .has-child .vertical-menu_sub-submenu.sub-by-price > li,
.menu .has-child .vertical-menu_sub-submenu.sub-pots > li,
.menu .has-child .vertical-menu_sub-submenu.sub-gardening-prints > li,
.menu .has-child .vertical-menu_sub-submenu.sub-by-event-type-bulk-gifts > li {
    width: 25%;
    text-align: center;
}

.menu .has-child .vertical-menu_sub-submenu.sub-gift-boxes > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-by-occasions > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-by-price > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-pots > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-gardening-prints > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-by-event-type-bulk-gifts > li:not(.title-sub-submenu) a {
    text-align: center;
}

.menu .has-child .vertical-menu_sub-submenu > li.title-sub-submenu {
    width: 100% !important;
}

.menu .has-child .vertical-menu_sub-submenu > li.title-sub-submenu a {
    height: 60px;
    display: inline-block;
    line-height: 60px;
}


.menu .has-child .vertical-menu_sub-submenu > li > a {
    text-align: left;
}

.menu .has-child .vertical-menu_sub-submenu li:not(.title-sub-submenu) {
    padding-right: 5px;
}



.menu .has-child .vertical-menu_sub-submenu.sub-by-occasions > li:not(.title-sub-submenu) {
    padding: 2px 15px;
}

.menu .has-child .vertical-menu_sub-submenu.sub-by-occasions > li:not(.title-sub-submenu) a {
    border: 1px solid #e1e1e1;
    padding: 10px 0;
}

.menu .has-child .vertical-menu_sub-submenu.sub-shop-by-genus li:not(.title-sub-submenu) a span,
.menu .has-child .vertical-menu_sub-submenu.sub-shop-by-characteristics li:not(.title-sub-submenu) a span,
.menu .has-child .vertical-menu_sub-submenu.sub-by-genus li:not(.title-sub-submenu) a span,
.menu .has-child .vertical-menu_sub-submenu.sub-by-characteristics li:not(.title-sub-submenu) a span {
    
    top: 50%;
    transform: translateY(-50%);
    
}


.menu .has-child .vertical-menu_sub-submenu.sub-shop-by-genus .sub-menu-img img,
.menu .has-child .vertical-menu_sub-submenu.sub-shop-by-characteristics .sub-menu-img img,
.menu .has-child .vertical-menu_sub-submenu.sub-by-genus .sub-menu-img img,
.menu .has-child .vertical-menu_sub-submenu.sub-by-characteristics .sub-menu-img img {
    width: 100%;
}

.vertical-menu_submenu li.has-child.active-menu {

}


.menu a span.icon-right-arrow {
    padding-right: 0;
    padding-left: 0;
}

#mobile_menu > li {
    padding: 0 0 0 20px;
}

#mobile_menu > li > a.parent-link--false.active {
    visibility: hidden;
}

#mobile_menu li.sublink {
    position: unset;
}

#mobile_menu .mobile-menu-title {
    display: flex;
}

#mobile_menu a span {
    padding: 0 5px;
}

#mobile_menu .sublink > ul {
    position: absolute;
    z-index: 1000;
    top: 0;
    left: -100%;
    background: #e4f6f2;
    width: 100%;
    transition: 0.5s;
}


#mobile_menu .sublink ul.active {
    display: block !important;
}

#mobile_menu .sublink > ul.active {
    left: 0;
}

#mobile_menu {
    margin: 0;
}


.vertical-menu_submenu li.has-child.active-menu .vertical-menu_sub-submenu {
    opacity: 1;
    visibility: visible;
}

.blog__outline {
    position: relative;
    padding: 15px;
    margin-top: 15px;
    margin-bottom: 30px;
    background-image: repeating-linear-gradient(to bottom, #ADC1A3 0, #ADC1A3 50%, transparent 50%, transparent 100%), repeating-linear-gradient(to left, #ADC1A3 0, #ADC1A3 50%, transparent 50%, transparent 100%), repeating-linear-gradient(to top, #ADC1A3 0, #ADC1A3 50%, transparent 50%, transparent 100%);
    background-position: right top, right bottom, left bottom;
    background-repeat: repeat-y, repeat-x, repeat-y;
    background-size: 0.125rem 0.5rem, 0.5rem 0.125rem, 0.125rem 0.5rem;
    border-top: 0.3125rem solid #ADC1A3
}

.blog__outline--header {
    padding: 0 1rem;
    margin-bottom: 1.25rem
}

.blog__outline--header span {
    font-size: 1.125rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #ADC1A3
}

.blog__outline--content {
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.blog__outline--content div {
    padding: 0 1rem
}

.blog__outline--content div a {
    text-decoration: none;
    background-image: -webkit-gradient(linear, left top, right top, from(#6cbfaf), to(#6cbfaf));
    background-image: -webkit-linear-gradient(left, #6cbfaf 0, #6cbfaf 100%);
    background-image: linear-gradient(to right, #6cbfaf 0, #6cbfaf 100%);
    background-position: 0 97%;
    background-repeat: repeat-x;
    background-size: 100% 0.125rem;
    -webkit-transition: background-image 0.25s ease;
    transition: background-image 0.25s ease;
    padding-bottom: 0.15625rem;
    font-size: 1.0625rem;
    line-height: 1.65;
    color: #222
}

.blog__outline--content div a:hover {
    background-image: -webkit-gradient(linear, left top, right top, from(#E4965F), to(#E4965F));
    background-image: -webkit-linear-gradient(left, #E4965F 0, #E4965F 100%);
    background-image: linear-gradient(to right, #E4965F 0, #E4965F 100%)
}

.blog__outline--anchor-point {
    -webkit-transform: translateY(-5rem);
    transform: translateY(-5rem);
    display: block
}

.text-red,
.text-red a {
    color: red !important;
}




.section-wrapper--index .shopify-section.shopify-section--rich-text-and-image {
    background: url(/cdn/shop/files/satisfaction-mobile.png?v=1675235112) no-repeat;
    background-size: cover;
}


.section-wrapper--index .shopify-section.shopify-section--rich-text-and-image h2.title, .section-wrapper--index .shopify-section.shopify-section--rich-text-and-image p {
    color: #fff;
}

.section-wrapper--index .shopify-section.shopify-section--rich-text-and-image .feature_divider {
    visibility: hidden;
}


div.feature_divider {
    border-color: #ADC1A3;
    position: relative;
}

div.feature_divider {
    margin-bottom: 40px;
    margin-top: 10px;
} 



.original-header, .original-header .top-bar {
    
}

header {
    
}

.header {
    
}


.caption-content .action_button {
    
}


.original-header, .original-header .top-bar {
    
}

.caption-content .action_button:hover, caption-content .action_button:focus {
    color: #ffffff !important;
}




.shopify-section .footer .footer-menu-wrap h6 {
/ / color: #696969;
    color: #fff;
    border-top: none;
}

.shopify-section .footer a, .shopify-section .footer a:visited, .shopify-section .footer p {
    color: #ffffff;
}

footer .social_icons a svg {
    fill: #ffffff;
}

.shopify-section .footer_credits {
    border-top: none;
    margin-top: 100px;
}

.shopify-section .footer_credits .credits {
    width: 100%;
    text-align: center;
    margin-bottom: 0;
}

.mt-2 {
    margin-top: 16px;
}

.mb-2 {
    margin-bottom: 16px;
}

/*
#shopify-section-template--15543057318062__1489283660008 .featured-promotions-slide {
background: none!important;
}
*/

.shopify-section .footer_credits .credits, .shopify-section .footer_credits a, .shopify-section .footer_credits a:visited {
    
    font-weight: bold;
    font-size: 1rem;
}


h3 .saving-percent {
    color: #d54d4d;
    font-size: 14px;
}

.subtotal .cart-shipping__img {
    height: 40px;
    width: auto;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.success-added-product-modal {
    z-index: 99999;
}

.success-added-product-modal p {
    margin-bottom: 5px;
}

.success-added-product-modal .product-price-modal {
    font-weight: bold;
}

.success-added-product-modal .checkout_button a {
    padding-bottom: 13px;
}

.jquery-modal.blocker.current {
    z-index: 99999999999999;
}

.modal a.close-modal {
    top: -12px;
    right: -12px;
    width: 40px;
    height: 40px;
}

.blog-post-section .content .section .one-third.article:hover .sub_title a {
    text-decoration: underline;
}


#remove_modal.fade, #remove_all_modal.fade, #message_modal.fade {
    opacity: 1;
}

.cmobile {
    display: block;
}

.cdesktop {
    display: none;
}

.quiz-suggestion .flex {
    display: flex;
}

.quiz-suggestion .w-100 {
    width: 100%;
}

.quiz-suggestion .w-m-full {
    width: 100%;
}

.quiz-suggestion .flex.flex-half > * {
    width: 50%;
}

.quiz-suggestion .quiz-suggestion-item {
    padding: 5px;
}

.quiz-suggestion-item img {
    max-width: 100%;
}

.quiz-suggestion .w-50, .quiz-suggestion .w-m-50 {
    width: 50%;
}

.index .flickity-viewport, .index .flickity-enabled {
    overflow: visible;
    z-index: 10;
    overflow-x: hidden;
}

.product .product_gallery.flickity-enabled {
    padding-bottom: 60px;
}

.product .flickity-enabled .flickity-page-dots {
    display: block;
    bottom: 0;
    z-index: 100;
    padding: 10px 0;
}

.add_to_cart_holder {
    bottom: 10px;
    top: auto;
}

.cart-shipping__progress {
    position: relative;
}

.cart-shipping__progress .cart-shipping_bar_text {
    display: inline-block;
    position: absolute;
    width: 100%;
    color: #fff;
    text-align: center;
    top: 0
}

.cart__item-wrapper {
    border: none;
    padding: 0;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
}

.cart__item-price-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}

.cart__item {
    padding-left: 40px;
    padding-top: 0;
}

.cart__item .cart__remove-btn {
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    width: 30px;
    height: 30px;
}

.cart__item .cart__remove-btn .remove-icon:before {
    display: inline-block;
    line-height: 1;
}

.shopify-section--cart-template .upsell {
    width: 100%;
}

.cart__item {
    align-items: flex-start;
}

.upsell .add_to_cart_holder .dropdown .btn {
    min-height: auto;
    height: 35px;
}

.cart__wrapper .cart-shipping__numOuter {
    color: #000;
    font-weight: bold;
}

.upsell .cart_text {
    color: #ADC1A3;
}

.shopify-section--cart-template .upsell .line .cart__item {
    flex-wrap: nowrap;
}

.shopify-section--cart-template .upsell .line .cart__item .image-element__wrap {
    max-width: 150px;
}

.shopify-section--cart-template .upsell .line .cart__item .cart__item--content {
    text-align: center;
}

.shopify-section--cart-template .upsell .line .cart__item .purchase-details {
    flex-wrap: nowrap;
}

.shopify-section--cart-template .upsell .line .product-quantity-box {
    margin: 15px 0 0 !important;
    width: 130px;
}

.upsell .product-quantity-box.purchase-details__quantity input.quantity {
    width: calc(100% - 76px)
}

.upsell a.title {
    color: #000;
    font-weight: normal;
}

.upsell .add_to_cart.action_button {
    white-space: nowrap;
}

.shopify-section--cart-template .upsell .line .purchase-details__buttons {
    flex: auto;
}

.upsell p.cart_text {
    margin-bottom: 15px;
}

.cart__wrapper .cart__item .cart__item--title {
    padding-top: 25px;
}

.page-wholesale .image-with-text-container.featured_collections .global-button {
    background: #ADC1A3;
    color: #ffffff;
    border: 1px solid #ADC1A3;
}

.product-succulent .fancybox-close:before, .product-succulent .fancybox-close-small:before {
    display: none;
}

.promo-text-base {
    color: #d54d4d;
    font-size: 85%;
    background: #FEEBE3;
    padding: 8px 12px;
    border: 1px solid #d54d4d;
    border-top: 4px solid #d54d4d;
}

.swatch .swatch-element.soldout {
    pointer-events: none;
}

 {

}

.swatch[data-option-index="0"] .swatch-element.soldout, .swatch.swatch-group-style .swatch-element.soldout {
    display: none;
}

form[action^="/cart/add"].shopify-product-form [type=submit] {
    visibility: visible;
}

.collabs-page__intro .collabs-page__cta a:visited {
    color: #fff;
}

.search__results li.item-result {
    background: #ffffff;
}

.original-header .top-bar li.item-result a span {
    color: #ADC1A3;
}

.search-result-title {
    display: flex;
    background: #e4f6f2;
    padding: 0 15px 0;
    align-items: center;
}

.search-result-title-wrapper {
    background: #fff;
    padding: 5px 0;
    float: right;
}

.search-result-title .search-title-txt {
    display: inline-block;
    width: 100%;
    font-size: 12px;
    margin: 0;
}

.search-result-title .view-search, .search-result-title .view-search:visited, .search-result-title .view-search:focus {
    color: #ADC1A3;
    text-wrap: nowrap;
}

.search-result-title .view-search span {
    color: #ADC1A3;
}

.search-title-wrapper {
    display: flex;
    width: 100%;
}

.mobile-search .search__results-wrapper {
    width: 100%;
    top: 60px
}

.mobile-search .search-form .search__fields {
    position: relative;
    padding: 0 30px;
}

.mobile-search .search-form .search__fields .input {
    border-radius: 25px;
    border: none !important;
    background: #ADC1A3;
    padding: 20px 40px;
    color: #fff !important;
}

.mobile-search .search-form .search__fields .input::placeholder {
    color: #fff !important;
}

.mobile-search .search-form .search__fields .icon-search {
    color: #fff;
    left: 35px;
    top: 10px;
}

.mobile-search .search-form .search__fields .icon-cross {
    top: -10px;
    right: -10px;
    color: #000000;
}

.mobile-search input#q {
    text-transform: none;
}

.search-title-wrapper h1 {
    width: 100%;
    margin-bottom: 0;
}

.search-title-wrapper .search-type-filter {
    display: flex;
}

.search-title-wrapper .search-type-filter .search-type-item, .search-title-wrapper .search-type-filter .search-type-item:visited {
    color: #000000;
    text-wrap: nowrap;
    padding: 5px 10px
}

.search-title-wrapper .search-type-filter .search-type-item.active {
    background: #e4f6f2;
}

.filters .filter-group {
    position: relative;
    border-bottom: 1px solid #ADC1A3;
}

.filters .filter-group:last-child {
    border-bottom: none;
}

.filters .filter-group .filter-group-title {
    padding-right: 30px;
    cursor: pointer;
    font-size: 15px;
}

.filters .filter-group .toggle-icon {
    position: absolute;
    right: 5px;
    top: 5px;
}

.filters .filter-group input[type="checkbox"] {
    position: relative;
    visibility: hidden;
    margin-right: 10px;

}

.filters .filter-group label:has(input[type="checkbox"]:checked) {
    color: #ADC1A3;
}

.filters .filter-group input[type="checkbox"]:before {
    content: " ";
    background: #ffffff;
    border: 1px solid #000000;
    position: absolute;
    border-radius: 50%;
    width: 14px;
    height: 14px;
    top: 0;
    left: 0;
    visibility: visible;
}

.filters .filter-group input[type="checkbox"]:checked:before {
    background: #ADC1A3;
    border: 1px solid #ADC1A3;
}

.filters .btn.btn-close {
    display: inline-block;
    padding: 10px;
    margin: 0 0 10px 0;
    width: 100%;
    background: #ADC1A3;
    color: #ffffff;
    text-align: center;
    font-size: 16px;
}

.default-filter-wrapper .filter-button-wrapper {
    display: none;
}

/* Horizontal faceted-filters bar (replaces the vertical filter-sidebar column on desktop) */
.filter-sidebar.filter-sidebar--horizontal {
    float: none;
    margin-bottom: 20px;
}

@media screen and (min-width: 769px) {
    .filter-sidebar--horizontal #faceted-filters .filters {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 10px;
        border: none;
        border-radius: 8px;
        background: var(--brand-cream-strip, #F7EEE4);
        padding: 14px 20px;
    }

    .filter-sidebar--horizontal .filter-group {
        position: relative;
        border-bottom: none;
        flex: 0 0 auto;
    }

    .filter-sidebar--horizontal .filter-group-title {
        display: flex;
        align-items: center;
        padding: 6px 24px 6px 14px;
        border: 1px solid #e2ded4;
        border-radius: 999px;
        background: #ffffff;
        white-space: nowrap;
    }

    .filter-sidebar--horizontal .filter-group-title h4 {
        margin: 0;
        font-size: 12px;
    }

    .filter-sidebar--horizontal .filter-group .toggle-icon {
        top: 50%;
        right: 6px;
        transform: translateY(-50%) scale(0.8);
    }

    .filter-sidebar--horizontal .filter-group .list-filter-value {
        position: absolute;
        top: calc(100% + 6px);
        left: 0;
        z-index: 50;
        width: max-content;
        min-width: 220px;
        max-height: 320px;
        overflow-y: auto;
        background: #ffffff;
        border: 1px solid #e5e5e5;
        border-radius: 8px;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
        padding: 10px 15px;
        margin: 0;
    }

    .filter-sidebar--horizontal .filter-group .list-filter-value li {
        white-space: nowrap;
    }

    /* "Clear all" in .filter-selected-tags replaces this on desktop */
    .filter-sidebar--horizontal .btn.btn-close {
        display: none;
    }

    /* Highlight a pill once it has an active selection, so users can tell without opening it */
    .filter-sidebar--horizontal .filter-group--active .filter-group-title {
        border-color: var(--brand-sage, #ADC1A3);
        background: var(--brand-sage, #ADC1A3);
        color: var(--brand-olive, #414C25);
    }
}

/* Selected filters shown as a removable tag row (replaces the auto-open dropdown for active filters) */
.filter-selected-tags {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.filter-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--brand-cream-strip, #F7EEE4);
    color: var(--brand-olive, #414C25);
    border: 1px solid var(--brand-sage, #ADC1A3);
    border-radius: 20px;
    padding: 5px 8px 5px 12px;
    font-size: 13px;
    line-height: 1.4;
    white-space: nowrap;
}

.filter-tag__remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--brand-sage, #ADC1A3);
    color: #ffffff;
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
    flex-shrink: 0;
}

.filter-tag__remove:hover,
.filter-tag__remove:focus {
    background: var(--brand-olive, #414C25);
    color: #ffffff;
}

.filter-tag.filter-tag--clear-all {
    background: transparent;
    border-color: transparent;
    color: #767676;
    text-decoration: underline;
    padding: 5px 0;
}

.promo-banner {
    background: url("//succulentsbox.com/cdn/shop/t/106/assets/header-snow-m.png?v=16538143121340475451789316660");
    background: #DB4547;
}

.homepage-slideshow .caption .caption-content {
    display: flex;
    flex-wrap: nowrap;
    padding: 0;
    justify-content: center;
}

.homepage-slideshow .caption {
    top: 40%;
}

.homepage-slideshow .caption-content .action_button {
    font-size: 1rem;
    padding: 16px 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 48% !important;
    letter-spacing: 0.02em;
    text-transform: uppercase !important;
    border-radius: 999px;
    line-height: 1.3 !important;
}

.homepage-slideshow .caption-content .action_button.second_button, .homepage-slideshow .caption-content .action_button.second_button:hover, .homepage-slideshow .caption-content .action_button.second_button:focus {
    background: var(--brand-terracotta) !important;
    border: 1px solid var(--brand-terracotta) !important;
    color: #ffffff !important;
}


.homepage-slideshow.flickity-enabled {
    background: #fff;
}

.shopify-section.shopify-section--slideshow.under-menu, .homepage-slideshow .gallery-cell img {
    background: var(--brand-cream-strip);
}

.homepage-slideshow .flickity-page-dots, .testimonial-section .flickity-page-dots {
    bottom: 0;
    z-index: 10000;
}

.menu .has-child .vertical-menu_sub-submenu > li > a img {
    max-width: 100%;
}

@media screen and (max-width: 798px) {
    .table-mobile-card,
    .table-mobile-card tr,
    .table-mobile-card tr td {
        display: block;
        max-width: 100%;
    }

    .table-mobile-card tr td iframe {
        max-width: 100%;
    }

    #header .top-bar .icon-search.dropdown_link {
        display: block;
    }

    #search-mobile {
        display: none;
    }

    .shopify-section--cart-template .upsell .line .cart__item {
        padding-left: 0;
        align-items: center;
    }

    .shopify-section--cart-template .upsell .line .cart__item .cart__item--content {
        text-align: left;
    }

    .page-wholesale .image-with-text-container.featured_collections .featured-link--half {
        width: 100%;
    }

    .block__subsgift-step-3-2, .block__claypots-step-3-2 {
        margin-top: -30px
    }

    .homepage-slideshow .caption {
        bottom: 20px;
        text-align: center;
        left: 0;
        right: 0;
    }

    /* Base theme fades this in via a JS-added animation class (window.slideshow.init());
       if that JS never runs/finishes it's left at opacity:0 — force it visible and
       centered on mobile regardless, per design. */
    .homepage-slideshow .caption .caption-content,
    .homepage-slideshow .caption-content {
        opacity: 1 !important;
        visibility: visible !important;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        justify-content: center !important;
    }

    .homepage-slideshow .caption-content .headline,
    .homepage-slideshow .caption-content .subtitle {
        text-align: center !important;
    }

    .homepage-slideshow .caption-content .action_button {
        max-width: 50%;
        min-width: 0;
        border-radius: 5px;
        height: 60px;
        margin-left: auto;
        margin-right: auto;
    }

    .mobile-search .search__results {
        padding-bottom: 40px;
    }

    .search__results li.all-results {
        position: absolute;
        bottom: 0;
        width: 100%;
        background: #fff;

    }

    .shopify-section.search-template-section .feature_divider {
        margin-top: 30px
    }

    .search__results li.all-results a {
        padding: 0 5px 0 15px;
        flex-wrap: nowrap;
        text-wrap: nowrap;
        background: #ADC1A3;
        display: inline-flex;
        width: auto;
        margin: auto;
    }

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

    .cmobile .search-type-filter-wrapper .search-type-filter {
        display: flex;
        justify-items: center;
        border-radius: 25px;
        background: #e4f6f2;
        justify-content: center;
    }

    .cmobile .search-type-filter-wrapper .search-type-filter a, .cmobile .search-type-filter-wrapper .search-type-filter :hover, .cmobile .search-type-filter-wrapper .search-type-filter a:focus, .cmobile .search-type-filter-wrapper .search-type-filter a:visited {
        color: #ADC1A3;
        padding: 5px 20px;
    }

    .cmobile .search-type-filter-wrapper .search-type-filter a.active, .cmobile .search-type-filter-wrapper .search-type-filter a.active:hover, .cmobile .search-type-filter-wrapper .search-type-filter a.active:focus {
        color: #000;
    }

    .search-type-filter-wrapper {
        padding: 0 40px;
    }

    .section.has-filter {
        width: 100%;
    }

    .section.has-filter .default-filter-wrapper {
        display: flex;
    }

    .section.has-filter .default-filter-wrapper > div {
        width: 50%;
    }

    .section.has-filter .section_select .sort_by {
        width: auto;
        padding-right: 0;
    }

    #faceted-filters {
        position: relative;
    }

    #faceted-filters .filters {
        position: absolute;
        z-index: 10;
        top: -10px;
        background: #ffffff;
        width: 100%;
        display: none;
    }

    .default-filter-wrapper .filter-button-wrapper {
        display: flex;
        padding-top: 4px;
    }

    .default-filter-wrapper .filter-button-wrapper label {
        font-size: 16px;
        font-weight: normal;
    }

    .default-filter-wrapper .filter-button-wrapper .toggle-icon {
        margin-right: 10px;
    }

    .filter-sidebar {
        width: 100%;
    }

    .satisfaction-annoucement {
        margin-top: -20px;
    }

    .satisfaction-annoucement .container {
        padding: 0;
    }
    img.footer-logo {
        max-width: 50% !important;
        margin: 0 0 25px;
    }
}

@media screen and (max-width: 320px) {
    .list-collection-wrapper .image__container img {
        height: 100px;
        width: auto;
    }
}

@media screen and (min-width: 321px) and(max-width: 480px) {
    .list-collection-wrapper .image__container img {
        height: 150px;
        width: auto;
    }
}

@media screen and (min-width: 481px) and(max-width: 798px) {
    .cart_content {
        width: 100%;
        max-width: 100%
    }

    .list-collection-wrapper .image__container img {
        height: 200px;
        width: auto;
    }
}

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

    .shopify-section.shopify-section--slideshow.under-menu {
        padding-top: 20px;
    } 

    .homepage-slideshow .caption-content .action_button {
        width: 20% !important;
        padding: 13px 10px 10px;
        bottom: 0;
        height: 75px !important;
    }

    .sticky_nav--stick .main-menu-right .cart-container {
        display: none;
    }

    .sticky_nav .header__logo {
        padding: 0 15px;
    }

    .sticky_nav .mini_cart {
        padding: 0;
    }

    .product .product_gallery.flickity-enabled {
        padding-bottom: 0;
    }

    .product .flickity-enabled .flickity-page-dots {
        display: none;
    }

    .cart_content {
        width: 600px;
        position: absolute;
    }

    .top-bar {
        justify-content: end;
    }

    .top-bar .promo-text {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }

    .vertical-menu {
        display: flex;
        justify-content: center;
    }

    .cmobile {
        display: none;
    }

    .cdesktop {
        display: block;
    }


    .quiz-suggestion .w-two-third {
        width: 66.67%;
    }

    .quiz-suggestion .w-one-third {
        width: 33.33%;
    }

    .quiz-suggestion .w-50 {
        width: 50%;
    }

    .quiz-suggestion .w-d-50 {
        width: 50%;
    }



    .cart__item--content {
        padding-right: 100px;
    }

    .shopify-section--cart-template .upsell .line {
        display: flex;
        width: 100%;
    }

    .shopify-section--cart-template .upsell .line .item {
        display: flex;
        width: 20%;
    }

    .shopify-section--cart-template .upsell .line .cart__item {
        padding: 0 15px;
        flex-wrap: wrap;
    }


    .shopify-section--cart-template .upsell .line .cart__item .cart__item--image {
        margin-right: 0
    }

    .shopify-section--cart-template .upsell .line .cart__item--content {
        padding: 0;
    }


    .upsell p.cart_text {
        text-align: left;
        font-size: 1.5rem;
    }

    .shopify-section--cart-template .upsell {
        border: none;
    }

    .w-d-100 {
        width: 100%;
    }

    .shopify-section--cart-template .upsell .line .product-quantity-box {
        width: 130px !important;
    }

    .cart__wrapper .cart__item .cart__item--title {
        padding-top: 0;
    }

    .page-wholesale .image-with-text-container.featured_collections {
        display: flex;
        flex-direction: row-reverse;
    }

    .page-wholesale .image-with-text-container.featured_collections .global-button {
        display: flex;
    }

    .homepage-slideshow .caption .caption-content {
        justify-content: flex-start;
    }


    

    /*
  .section-wrapper--index .shopify-section.shopify-section--rich-text-and-image {
  background: url(/cdn/shop/files/satisfaction-desk.png?v=1675235112) no-repeat;
  }

   */

}


.no-touchevents a.cart_content__continue-shopping.secondary_button,
.touchevents a.cart_content__continue-shopping.secondary_button {
    text-align: left;
    background: #ADC1A3;
    color: #fff !important;
    margin-top: 0;
    padding: 10px 25px;
    font-size: 1.2rem;
    display: block;
}

.hidden {
    display: none !important;
}

.original-header {
    padding: 5px 0;
}

.original-header .original-menu {
    display: flex;
    justify-content: center;
    font-family: Cabin, sans-serif;
}

.original-header .top-bar {
    height: auto;
    display: flex;
    align-items: center;
}

.original-header .top-bar .search-container {
    padding-left: 0;
}

.original-header form.search_form,
.original-header .search_form input {
    background: transparent;
}

.original-header .top-bar .search-container .search_form {
    display: flex;
    justify-content: start;
    align-items: center;
}

.search__results-wrapper {
    position: absolute;
    top: 100%;
    right: 0;
}

.search__results {
    z-index: 99999;
    max-height: none;
}

.original-header .top-bar .search-container .search_form input,
.original-header .top-bar .search-container .search_form input:active,
.original-header .top-bar .search-container .search_form input:focus {
    background: transparent;
    border: 1px solid #fff;
    border-radius: 15px;
    color: #fff;
    width: 280px;
    height: 26px;
    min-height: 26px;
}

.original-header .search-submit {
    border-left: 0;
    color: #fff;
    position: absolute;
    padding: 4px 10px 6px 11px;
    right: 6px;
}

.top-bar [class^="icon-"]:before, .top-bar [class*=" icon-"]:before {
    font-size: 20px;
}

div.cart_content form {
    margin: 0 !important;
}

.main-menu-right .menu {
    display: flex;
    justify-content: left;
}

.main-menu-right .menu li {
    padding-right: 0
}

.main-menu-right .menu li a {
    padding: 4px 0;
    margin: 0 0.5rem;
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    color: #fff;
    align-items: end;
}

.main-menu-right .menu a span:not(.sb-icon) {
    padding-bottom: 4px;
}

.main-menu-right .menu li a.mini_cart {
    background: transparent;
    width: auto;
    height: auto;

}

.main-menu-right .menu a span {
    font-size: 0.55rem;
    display: inline-block;
    width: 100%;
    padding: 0;
    text-align: center;
    line-height: 1.25;
}

.main-nav {
    padding: 0;
}

.main-nav .nav {
    position: unset;
}

.main-nav .menu-img {
    padding: 5px;
    margin-bottom: 10px;
}

.main-nav .menu-img.menu-rounded img {
    border-radius: 50%;
    width: 100%;
    max-width: 196px;
}

.vertical-menu .vertical-menu_submenu,
.menu .vertical-menu li:nth-of-type(1) .vertical-menu_submenu,
.menu .vertical-menu li:nth-of-type(2) .vertical-menu_submenu,
.menu .vertical-menu li:nth-of-type(4) .vertical-menu_submenu {
    display: none;
    width: 100%;
    justify-content: center;
}

.menu .vertical-menu_submenu li a {
    display: inline-block;
    text-align: center;
    width: 100%;
    font-size: 14px;
}

.menu .vertical-menu_submenu li a icon-right-arrow {
    font-size: 0.65rem;
}

.cart_items > li.mini-cart-recommend-products {
    border-bottom: 1px solid #ccc;
}

.cart_items > li,
.cart_items > li .line {
    width: 100%;
}

.cart_items > li .cart-shipping__numOuter {
    text-align: center;
}

.cart_items > li .slick-list {
    width: 100%;
}

.cart_items li .slick-dots {
    margin-bottom: 0;
}

.cart_items li .slick-dots li {
    float: none;
}

.cart_items li .slick-track {
    width: 10000px !important;
}

li.mini-cart-recommend-products .product-quantity-box.purchase-details__quantity input.quantity {
    width: 25px;
    min-height: 22px;
}

.cart_items > li .cart__item {
    border-bottom: 0;
}

.cart_content .cart_subtotal {
    width: 100%;
}

.cart_content .cart_subtotal p {
    margin-bottom: 0;
}

.cart_content .cart_subtotal p.meta {
    font-size: 0.75rem;
    font-weight: normal;
    color: #6b6b6b;
}

.width-100 {
    width: 100%;
}

.cart_content > ul > li {
    width: 100%;
}

.cart_content .sticky-checkout-button .action_button {
    border-radius: 0;
    margin-bottom: 10px;
    font-size: 1.5rem;
    font-weight: bold;
}

.cart_content .slick-dots li a.dot {
    font-size: 0;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    border: 1px solid #ddd;
}


.sticky-checkout-button {
    border-bottom: 0 !important;
    background: #fff;
    z-index: 999;
    bottom: 0 !important;
}

.sticky-checkout-button .cart_content__continue-shopping,
.sticky-checkout-button .cart_content__continue-shopping:active,
.sticky-checkout-button .cart_content__continue-shopping:focus {
    display: block;
    text-transform: uppercase;
    font-size: 1.1rem;
    text-align: center;
    color: #414C25 !important;
}

.product__details .description,
.product__details .tabs {
    position: relative;
}

.product__details .tabs-content {
    display: none;
}



.main-color {
    color: #414C25;
}

.product_gallery_nav .flickity-button,
.product_gallery_nav {
    max-height: 140px;
}

.list-collection-wrapper .thumbnail .price,
.list-collection-wrapper .thumbnail .title {
    display: inline-block;
    height: 62px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.mobile-search {
    max-width: 100vw;
}

.mobile-search .search__results {
    top: 0
}

.mobile-search .search__results-wrapper {
    height: 540px;
}

.search__results .all-results a {
    display: inline-flex;
}

.search__results .all-results span {
    color: #ffffff !important;
}

.product_section .description ul.tabs {
    display: flex;
    padding-right: 34px;
}

.product_section .description .tabs li {
    flex: 1;
    text-align: center;
    border-top: thin solid #cccccc;
    border-right: thin solid #cccccc;
    border-left: thin solid #cccccc;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    height: auto;
    margin-bottom: -1px;
}

.product__details .collapse-tabs > div {
    padding: 6.5px 6px;
    background: #ADC1A3;
    color: #fff;
    border-radius: 3px;
}

.product_section .description .tabs li:not(:first-child) {
    margin-left: -1px;
}

.product_section .description ul.tabs li a {
    color: #333333;
    padding: 5px 0;
    height: auto;
    font-size: 9px;
}

.product_section .description ul.tabs li a.active {
    border-bottom: none;
    color: #ADC1A3;
}

.product_section .description .tabs li a {
    margin: auto;
}

.shopify-section.shopify-section--newsletter > section {
    clear: both;
}

.menu .vertical-menu > li.sublink {
    position: unset;
}

.menu .vertical-menu_submenu > li {
    flex: 1;
    position: unset;
}

.gifts-menu .vertical-menu_submenu > li.monthly-gifts-column {
    padding-right: 0;
}

.gifts-menu .vertical-menu_submenu > li.monthly-gifts-column .monthly-gifts-column__title {
    padding: 12px 0;
}

.menu .has-child .vertical-menu_sub-submenu {
    left: 0;
    width: 100%;
    transition: opacity 0.3s ease-in;
    display: flex;
    flex-wrap: wrap;
    background: #e4f6f2;
    padding-bottom: 60px;
    z-index: 3000;
    min-height: 100%;
}

.menu .has-child .vertical-menu_sub-submenu > li {
    width: 33%;
    pointer-events: all;
}

.menu .has-child .vertical-menu_sub-submenu.sub-gift-boxes,
.menu .has-child .vertical-menu_sub-submenu.sub-by-price,
.menu .has-child .vertical-menu_sub-submenu.sub-pots,
.menu .has-child .vertical-menu_sub-submenu.sub-gardening-prints,
.menu .has-child .vertical-menu_sub-submenu.sub-by-event-type-bulk-gifts {
    justify-content: center;
}

.menu .has-child .vertical-menu_sub-submenu.sub-gift-boxes > li,
.menu .has-child .vertical-menu_sub-submenu.sub-by-price > li,
.menu .has-child .vertical-menu_sub-submenu.sub-pots > li,
.menu .has-child .vertical-menu_sub-submenu.sub-gardening-prints > li,
.menu .has-child .vertical-menu_sub-submenu.sub-by-event-type-bulk-gifts > li {
    width: 25%;
    text-align: center;
}

.menu .has-child .vertical-menu_sub-submenu.sub-gift-boxes > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-by-occasions > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-by-price > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-pots > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-gardening-prints > li:not(.title-sub-submenu) a,
.menu .has-child .vertical-menu_sub-submenu.sub-by-event-type-bulk-gifts > li:not(.title-sub-submenu) a {
    text-align: center;
}

.menu .has-child .vertical-menu_sub-submenu > li.title-sub-submenu {
    width: 100% !important;
}

.menu .has-child .vertical-menu_sub-submenu > li.title-sub-submenu a {
    height: 60px;
    display: inline-block;
    line-height: 60px;
}


.menu .has-child .vertical-menu_sub-submenu > li > a {
    text-align: left;
}

.menu .has-child .vertical-menu_sub-submenu li:not(.title-sub-submenu) {
    padding-right: 5px;
}


.menu .has-child .vertical-menu_sub-submenu.sub-by-occasions > li:not(.title-sub-submenu) {
    padding: 2px 15px;
}

.menu .has-child .vertical-menu_sub-submenu.sub-by-occasions > li:not(.title-sub-submenu) a {
    border: 1px solid #e1e1e1;
    padding: 10px 0;
}



.menu .has-child .vertical-menu_sub-submenu.sub-shop-by-genus li:not(.title-sub-submenu) a span,
.menu .has-child .vertical-menu_sub-submenu.sub-shop-by-characteristics li:not(.title-sub-submenu) a span,
.menu .has-child .vertical-menu_sub-submenu.sub-by-genus li:not(.title-sub-submenu) a span,
.menu .has-child .vertical-menu_sub-submenu.sub-by-characteristics li:not(.title-sub-submenu) a span {
    
    top: 50%;
    transform: translateY(-50%);
    
}

.menu .has-child .vertical-menu_sub-submenu.sub-shop-by-genus .sub-menu-img img,
.menu .has-child .vertical-menu_sub-submenu.sub-shop-by-characteristics .sub-menu-img img,
.menu .has-child .vertical-menu_sub-submenu.sub-by-genus .sub-menu-img img,
.menu .has-child .vertical-menu_sub-submenu.sub-by-characteristics .sub-menu-img img {
    width: 100%;
}

.vertical-menu_submenu li.has-child.active-menu {

}


.menu a span.icon-right-arrow {
    padding-right: 0;
    padding-left: 0;
}

#mobile_menu > li {
    padding: 0 0 0 20px;
}

#mobile_menu > li > a.parent-link--false.active {
    visibility: hidden;
}

#mobile_menu li.sublink {
    position: unset;
}

#mobile_menu .mobile-menu-title {
    display: flex;
}

#mobile_menu a span {
    padding: 0 5px;
}

#mobile_menu .sublink > ul {
    position: absolute;
    z-index: 1000;
    top: 0;
    left: -100%;
    background: #e4f6f2;
    width: 100%;
    transition: 0.5s;
}


#mobile_menu .sublink ul.active {
    display: block !important;
}

#mobile_menu .sublink > ul.active {
    left: 0;
}

#mobile_menu {
    margin: 0;
}


.vertical-menu_submenu li.has-child.active-menu .vertical-menu_sub-submenu {
    opacity: 1;
    visibility: visible;
}

.blog__outline {
    position: relative;
    padding: 15px;
    margin-top: 15px;
    margin-bottom: 30px;
    background-image: repeating-linear-gradient(to bottom, #ADC1A3 0, #ADC1A3 50%, transparent 50%, transparent 100%), repeating-linear-gradient(to left, #ADC1A3 0, #ADC1A3 50%, transparent 50%, transparent 100%), repeating-linear-gradient(to top, #ADC1A3 0, #ADC1A3 50%, transparent 50%, transparent 100%);
    background-position: right top, right bottom, left bottom;
    background-repeat: repeat-y, repeat-x, repeat-y;
    background-size: 0.125rem 0.5rem, 0.5rem 0.125rem, 0.125rem 0.5rem;
    border-top: 0.3125rem solid #ADC1A3
}

.blog__outline--header {
    padding: 0 1rem;
    margin-bottom: 1.25rem
}

.blog__outline--header span {
    font-size: 1.125rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #ADC1A3
}

.blog__outline--content {
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.blog__outline--content div {
    padding: 0 1rem
}

.blog__outline--content div a {
    text-decoration: none;
    background-image: -webkit-gradient(linear, left top, right top, from(#6cbfaf), to(#6cbfaf));
    background-image: -webkit-linear-gradient(left, #6cbfaf 0, #6cbfaf 100%);
    background-image: linear-gradient(to right, #6cbfaf 0, #6cbfaf 100%);
    background-position: 0 97%;
    background-repeat: repeat-x;
    background-size: 100% 0.125rem;
    -webkit-transition: background-image 0.25s ease;
    transition: background-image 0.25s ease;
    padding-bottom: 0.15625rem;
    font-size: 1.0625rem;
    line-height: 1.65;
    color: #222
}

.blog__outline--content div a:hover {
    background-image: -webkit-gradient(linear, left top, right top, from(#E4965F), to(#E4965F));
    background-image: -webkit-linear-gradient(left, #E4965F 0, #E4965F 100%);
    background-image: linear-gradient(to right, #E4965F 0, #E4965F 100%)
}

.blog__outline--anchor-point {
    -webkit-transform: translateY(-5rem);
    transform: translateY(-5rem);
    display: block
}

.text-red,
.text-red a {
    color: red !important;
}

/*
.section-wrapper--index h2.title:not(.rich-text__heading), .section-wrapper--index .featured-blog-section a {
  color: #C24F3D!important;
}
*/
/*
.section-wrapper--index .shopify-section.shopify-section--rich-text-and-image {
  background: url(/cdn/shop/files/satisfaction-mobile.png?v=1675235112) no-repeat;
  background-size: cover;
}

.section-wrapper--index .shopify-section.shopify-section--rich-text-and-image h2.title, .section-wrapper--index .shopify-section.shopify-section--rich-text-and-image p {
  color: #fff;
}

.section-wrapper--index .shopify-section.shopify-section--rich-text-and-image .feature_divider {
  visibility: hidden;
}

div.feature_divider {
  border-color: #FF7BAC
}
 */



.shopify-section .footer .footer-menu-wrap h6 {
    
    color: #fff;
    border-top: none;
}

.shopify-section .footer a, .shopify-section .footer a:visited, .shopify-section .footer p {
    color: #ffffff;
}

footer .social_icons a svg {
    fill: #ffffff;
}

.shopify-section .footer_credits {
    border-top: none;
    margin-top: 100px;
}

.shopify-section .footer_credits .credits {
    width: 100%;
    text-align: center;
}

/*
#shopify-section-template--15543057318062__1489283660008 .featured-promotions-slide {
background: none!important;
}
*/

.shopify-section .footer_credits .credits, .shopify-section .footer_credits a, .shopify-section .footer_credits a:visited {
 font-weight: bold;
    font-size: 1rem;
}

.shopify-section .footer a, .shopify-section .footer a:visited, .shopify-section .footer p, .shopify-section .footer .footer-menu-wrap h6 {

}


h3 .saving-percent {
    color: #d54d4d;
    font-size: 14px;
}

.subtotal .cart-shipping__img {
    height: 40px;
    width: auto;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.success-added-product-modal {
    z-index: 99999;
}

.success-added-product-modal p {
    margin-bottom: 5px;
}

.success-added-product-modal .product-price-modal {
    font-weight: bold;
}

.success-added-product-modal .checkout_button a {
    padding-bottom: 13px;
}

.jquery-modal.blocker.current {
    z-index: 99999999999999;
}

.modal a.close-modal {
    top: -12px;
    right: -12px;
    width: 40px;
    height: 40px;
}

.blog-post-section .content .section .one-third.article:hover .sub_title a {
    text-decoration: underline;
}

#remove_modal.fade, #remove_all_modal.fade, #message_modal.fade {
    opacity: 1;
}

.cmobile {
    display: block;
}

.cdesktop {
    display: none;
}

.quiz-suggestion .flex {
    display: flex;
}

.quiz-suggestion .w-100 {
    width: 100%;
}

.quiz-suggestion .w-m-full {
    width: 100%;
}

.quiz-suggestion .flex.flex-half > * {
    width: 50%;
}

.quiz-suggestion .quiz-suggestion-item {
    padding: 5px;
}

.quiz-suggestion-item img {
    max-width: 100%;
}

.quiz-suggestion .w-50, .quiz-suggestion .w-m-50 {
    width: 50%;
}

.index .flickity-viewport, .index .flickity-enabled {
    overflow: hidden;
    z-index: 10;
}

.product .product_gallery.flickity-enabled {
    padding-bottom: 60px;
}

.product .flickity-enabled .flickity-page-dots {
    display: block;
    bottom: 0;
    z-index: 100;
    padding: 10px 0;
}

.add_to_cart_holder {
    bottom: 10px;
    top: auto;
}

.cart-shipping__progress {
    position: relative;
}

.cart-shipping__progress .cart-shipping_bar_text {
    display: inline-block;
    position: absolute;
    width: 100%;
    color: #fff;
    text-align: center;
    top: 0
}

.cart__item-price-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}

.cart__item {
    padding-left: 40px;
    padding-top: 0;
    flex-wrap: wrap;
}

.cart__item.no-border-bottom {
    border-bottom: none;
}


.cart-banner-promotion {
    padding: 0 0 30px;
    border-bottom: 1px solid #cccccc;
}

.cart-banner-promotion > img {
    width: 100%;
}

.cart__item .cart__remove-btn {
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    width: 30px;
    height: 30px;
}

.cart__item .cart__remove-btn .remove-icon:before {
    display: inline-block;
    line-height: 1;
}

.shopify-section--cart-template .upsell {
    width: 100%;
}

.cart__item {
    align-items: flex-start;
}

.upsell .add_to_cart_holder .dropdown .btn {
    min-height: auto;
    height: 35px;
}

.cart__wrapper .cart-shipping__numOuter {
    color: #000;
    font-weight: bold;
}

.upsell .cart_text {
    color: #ADC1A3;
}

.shopify-section--cart-template .upsell .line .cart__item {
    flex-wrap: nowrap;
}

.shopify-section--cart-template .upsell .line .cart__item .image-element__wrap {
    max-width: 150px;
}

.shopify-section--cart-template .upsell .line .cart__item .cart__item--content {
    text-align: center;
}

.shopify-section--cart-template .upsell .line .cart__item .purchase-details {
    flex-wrap: nowrap;
}

.shopify-section--cart-template .upsell .line .product-quantity-box {
    margin: 15px 0 0 !important;
    width: 130px;
}

.upsell .product-quantity-box.purchase-details__quantity input.quantity {
    width: calc(100% - 76px)
}

.upsell a.title {
    color: #000;
    font-weight: normal;
}

.upsell .add_to_cart.action_button {
    white-space: nowrap;
}

.shopify-section--cart-template .upsell .line .purchase-details__buttons {
    flex: auto;
}

.upsell p.cart_text {
    margin-bottom: 15px;
}

.cart__wrapper .cart__item .cart__item--title {
    padding-top: 25px;
}

.page-wholesale .image-with-text-container.featured_collections .global-button {
    background: #ADC1A3;
    color: #ffffff;
    border: 1px solid #ADC1A3;
}

.product-succulent .fancybox-close:before, .product-succulent .fancybox-close-small:before {
    display: none;
}

.promo-text-base {
    color: #d54d4d;
    font-size: 85%;
    background: #FEEBE3;
    padding: 8px 12px;
    border: 1px solid #d54d4d;
    border-top: 4px solid #d54d4d;
}

.swatch .swatch-element.soldout {
    pointer-events: none;
}

.w-full {
    width: 100%;
}

.fnd-cart-module-wrapper {
    display: none !important;
}

.step-mode-0-display {
    display: flex;
    width: 100%;
    justify-content: center;
}

.step-mode-0-display .step-mode-0-display-float {
    width: 50%;
    text-align: center;
    padding: 0 10px;
}

.step-mode-0-display .step-mode-0-display-float.active .step-mode-0-img {
    border: 4px solid #ADC1A3;
    box-sizing: border-box;
    cursor: pointer;
}

.step-mode-0-display .step-mode-0-display-float {
    margin-bottom: 4px;
}

.step-mode-0-display .step-mode-0-display-float.active {
    margin-bottom: 0;
}

.step-mode-0-display .step-mode-0-display-float .step-0-img {
    width: 150px;
    height: 150px;
    margin: auto;
}

.block__subsgift-step-final table tr:nth-of-type(4) {
    color: #333333;
    font-size: 1.2rem;
    font-weight: bold;
}

.block__subsgift-step-final table tr td {
    width: 33.33%;
}

.step-2-display-float.active .step-2-img img, .step-3-display-float.active {
    border-color: #ADC1A3;
}

.step-2-display-float.disabled {
    pointer-events: none;
    cursor: none;
    opacity: 0.6;
}

.step-3-sale .step-3-base-price {
    color: #6b6b6b;
    text-decoration: line-through;
}

.step-3-display {
    display: flex;
    flex-wrap: wrap;
}

.step-3 p, .step-3-1 p {
    margin-bottom: 8px;
}

.block__claypots-step-3-1, .block__subsgift-step-3-1 {
    background: #fff;
}

#banner-subsgift-step-final .checkout-subsgift, #banner-claypots-step-final .checkout-subsgift {
    margin: 1rem 0;
    padding: 2rem;
    font-size: 1.5rem;
}

.heat-month-selection > .sumo_heat_month {
    width: 100%;
}

.heat-month-selection .selectize-input {
    border: 1px solid #ADC1A3;
    box-shadow: none;
    border-radius: 0;
    min-height: 55px;
    padding: 12px 8px
}

.heat-month-selection .selectize-control.multi .selectize-input [data-value].active {
    background: #efefef;
    color: #ADC1A3;
    border: 1px solid #ADC1A3;
}

.selectize-input > input[placeholder] {
    font-size: 1rem;
    padding: 5px 0 !important;
}

.selectize-control.multi .selectize-input [data-value], .selectize-control.multi .selectize-input .more-count {
    background: #efefef;
    color: #ADC1A3;
    border: none;
    font-style: italic;
    font-weight: 600;
    font-size: 1rem;
    border-radius: 0;
    box-shadow: none;
    padding: 10px 25px;
    text-shadow: none;
}

.selectize-dropdown [data-selectable].option {
    font-size: 1rem;
    padding: 15px 10px;
    margin-bottom: 5px;
}

.selectize-dropdown .selected {
    background: #efefef;
    color: #303030;
    position: relative;
}

.selectize-dropdown .selected:after {
    position: absolute;
    font-family: FontAwesome !important;
    content: "\f00c";
    font-weight: 900; /* solid style */
    pointer-events: none;
    right: 5px;
    top: 15px;
}

.selectize-control.multi .selectize-input .more-count {
    padding: 10px 5px;
}

.selectize-control.plugin-remove_button .item .remove {
    border-left: 1px solid #ADC1A3;
}

.heat-month-selection .SumoSelect > .CaptionCont > label > i {
    position: relative;
    font-style: normal;
    background-image: none;
    top: 5px
}

.heat-month-selection .SumoSelect > .CaptionCont > label > i:before {
    font-family: FontAwesome !important;
    content: "\f0d7";
    font-weight: 900; /* solid style */
    pointer-events: none;
    color: #ADC1A3;
    font-size: 24px;
}

.block__claypots-step-3-1 .step-3-1 h2, .block__subsgift-step-3-1 .step-3-1 h2 {
    font-weight: bold;
    font-size: 1.5rem; 
}

.block__claypots-step-2, .block__subsgift-step-2 {
    background: #fff;
}

@media screen and (max-width: 480px) {
    .step-1-img, .step-1-text {
        width: auto;
        display: inline-block;
        float: none;
    }

    .cart__wrapper .cart__item .cart__item--title {
        font-size: 0.75rem;
        padding-top: 5px;
    }

    .cart__wrapper .medium-down--one-whole, .shopify-section--cart-template .medium-down--one-whole {
        margin-left: 0;
    }
}

@media screen and (max-width: 768px) {
    .table-mobile-card,
    .table-mobile-card tr,
    .table-mobile-card tr td {
        display: block;
        max-width: 100%;
    }

    .table-mobile-card tr td iframe {
        max-width: 100%;
    }

    #header .top-bar .icon-search.dropdown_link {
        display: block;
        padding-top: 5px;
    }

    #search-mobile {
        display: none;
    }

    .shopify-section--cart-template .upsell .line .cart__item {
        padding-left: 0;
        align-items: center;
    }

    .shopify-section--cart-template .upsell .line .cart__item .cart__item--content {
        text-align: left;
    }

    .page-wholesale .image-with-text-container.featured_collections .featured-link--half {
        width: 100%;
    }

}

.shopify-section #disqus_thread > iframe:first-child {
    height: 0 !important;
    width: 0 !important;
    position: fixed;
    left: -100%;
}

.step-3-2-banner img {
    width: 100%;
}

.absolute {
    position: absolute;
}

.relative {
    position: relative;
}


.step-3-2.with-border-conner {
    border-right: 8px solid #ADC1A3;
    border-bottom: 8px solid #ADC1A3;
    padding-top: 0;
}

.shopify-section .content.page a {
    margin-left: 5px;
}

@media only screen and (max-width: 480px) {
    #banner-subsgift-banner-1 .caption {
        top: 50%
    }

    .step-2-display-float {
        width: 100%;
        margin-bottom: 1rem;
    }

    .step-2-display-float .step-2-text h6 {
        margin-top: 1rem;
        font-size: 1rem;
    }
}


.caption-content .action_button {
    display: block;
    font-size: 1.5rem;
    letter-spacing: 3px;
    height: auto !important;
    line-height: 1 !important;
    padding: 20px 40px;
    min-width: 170px;
}

#subsgift_message {
    border-radius: 25px;
    border: 1px solid #ba9157;
    margin-top: 15px;
}

.cart__item.flex-no-wrap {
    flex-wrap: nowrap;
}

@media screen and (max-width: 320px) {
    .list-collection-wrapper .image__container img {
        height: 100px;
        width: auto;
    }
}

@media screen and (min-width: 321px) and(max-width: 480px) {
    .list-collection-wrapper .image__container img {
        height: 150px;
        width: auto;
    }
}

@media screen and (min-width: 481px) and(max-width: 798px) {
    .cart_content {
        width: 100%;
        max-width: 100%
    }

    .list-collection-wrapper .image__container img {
        height: 200px;
        width: auto;
    }
}

@media screen and (max-width: 480px) {
    .block__claypots-step-3-2 .step-3-2 .columns, .block__subsgift-step-3-2 .step-3-2 .columns {
        padding-top: 0;
        margin-top: -14px;
    }

    .block__claypots-step-3-2 .step-3-2 .item .sub-item, .block__subsgift-step-3-2 .step-3-2 .item .sub-item {
        border: 2px solid #34bfa2;
        margin-bottom: 0;
    }

    .block__claypots-step-3-2 .step-3-2 .item .sub-item-btn, .block__subsgift-step-3-2 .step-3-2 .item .sub-item-btn {
        margin-top: 0;
        padding-top: 0;
    }

    .block__subsgift-step-3-2 .step-3-2 .item button {
        font-size: 11px;
        min-height: 24px;
    }

    .banner.step .caption-content {
        margin-bottom: 130px;
    }
}

.step-2-display-float {
    width: calc(100% / 2);
}

.step-3-1-display {
    overflow: visible;
}

.step-3-1-display .step-3-1-qty {
    flex-wrap: wrap;
}

.free_ship_banner {
    margin-top: 3px;
    width: 36px;
}

.shopify-product-form .free_ship_promo {
    color: #ADC1A3;
    background: rgba(52, 191, 162, .1);
    padding: 8px 12px;
    border: 1px solid #ADC1A3;
    border-top: 4px solid #ADC1A3;
    align-items: center;
    margin-bottom: 1rem;
}

.shopify-product-form .free_ship_promo p {
    margin-bottom: 0;
    font-style: italic;
    font-size: 0.9rem;
}

.shopify-product-form .free_ship_promo img {
    width: 3rem;
    margin-right: 0.5rem;
}

.custom-upload-wrapper {
    margin-bottom: 0.5rem;
}

@media screen and (min-width: 480px) {
    .step-2-display {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
    }

    .step-2-display-float {
        float: none;
        width: 40%;
    }

    .block__claypots-step-2 .step-2-display .step-2-display-float {
        width: 33%;
    }
}

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

    .sticky_nav--stick .main-menu-right .cart-container {
        display: none;
    }

    .sticky_nav .header__logo {
        padding: 0 15px;
    }

    .product .product_gallery.flickity-enabled {
        padding-bottom: 0;
    }

    .product .flickity-enabled .flickity-page-dots {
        display: none;
    }

    .cart_content {
        width: 600px;
        position: absolute;
    }

    .top-bar {
        justify-content: end;
    }

    .top-bar .promo-text {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }

    .vertical-menu {
        display: flex;
        justify-content: center;
    }

    .cmobile {
        display: none;
    }

    .cdesktop {
        display: block;
    }


    .quiz-suggestion .w-two-third {
        width: 66.67%;
    }

    .quiz-suggestion .w-one-third {
        width: 33.33%;
    }

    .quiz-suggestion .w-50 {
        width: 50%;
    }

    .quiz-suggestion .w-d-50 {
        width: 50%;
    }

    .cart__item--content {
        padding-right: 100px;
    }

    .shopify-section--cart-template .upsell .line {
        display: flex;
        width: 100%;
    }

    .shopify-section--cart-template .upsell .line .item {
        display: flex;
        width: 20%;
    }

    .shopify-section--cart-template .upsell .line .cart__item {
        padding: 0 15px;
        flex-wrap: wrap;
    }


    .shopify-section--cart-template .upsell .line .cart__item .cart__item--image {
        margin-right: 0
    }

    .shopify-section--cart-template .upsell .line .cart__item--content {
        padding: 0;
    }


    .upsell p.cart_text {
        text-align: left;
        font-size: 1.5rem;
    }

    .shopify-section--cart-template .upsell {
        border: none;
    }

    .w-d-100 {
        width: 100%;
    }

    .shopify-section--cart-template .upsell .line .product-quantity-box {
        width: 130px !important;
    }

    .cart__wrapper .cart__item .cart__item--title {
        padding-top: 0;
    }

    .page-wholesale .image-with-text-container.featured_collections {
        display: flex;
        flex-direction: row-reverse;
    }

    .page-wholesale .image-with-text-container.featured_collections .global-button {
        display: flex;
    }


    .shopify-section .footer {
        border-top: none;
        background: #4bc0a8;
    
    }

    .step-3-2-6-months-12-months-banner {
        margin: 3% 6%;
    }

    .block__claypots-step-3-2 .step-3-2 .item .sub-item, .block__subsgift-step-3-2 .step-3-2 .item .sub-item {
        border: 2px solid #34bfa2;
        margin-bottom: 0;
    }

    .block__claypots-step-3-2 .step-3-2 .item .sub-item-btn, .block__subsgift-step-3-2 .step-3-2 .item .sub-item-btn {
        margin-top: 0;
    }

    .block__subsgift-step-3-2 .step-3-2 .item button {
        font-size: 12px;
        min-height: 24px;
    }

    /*
  .section-wrapper--index .shopify-section.shopify-section--rich-text-and-image {
  background: url(/cdn/shop/files/satisfaction-desk.png?v=1675235112) no-repeat;
  }

   */
    .step-mode-0-display .step-mode-0-display-float .step-mode-0-img {
        width: 300px;
        height: 300px;
        margin: auto
    }

    .free_ship_banner {
        margin-top: 7px;
        width: 45px;
    }

}

@media screen and (min-width: 1260px) {
    
}

@media screen and (min-width: 1420px) {
    .shopify-section .footer {
    
    }
}

@media screen and (min-width: 1900px) {
    .shopify-section .footer {
    
    }
}

@media screen and (max-width: 1024px) {
    .cart__wrapper .medium-down--one-whole, .shopify-section--cart-template .medium-down--one-whole {
        width: calc(100% - 20px);
        left: auto !important;
        padding-left: 10px;
    }

    .shopify-section--cart-template .cmobile {
        display: block;
    }

    .cart__wrapper .cdesktop {
        display: none;
    }

    .cart__item.flex-no-wrap p.meta {
        margin-bottom: 5px;
    }
}

@media screen and (min-width: 1025px) {
    .shopify-section--cart-template .cmobile {
        display: none;
    }

    .cart__wrapper .cdesktop {
        display: block;
    }
}

@media screen and (min-width: 1025px) and (max-width: 1120px) {
    .homepage-slideshow .caption-content .action_button {
        bottom: 0;
    }
}

@media screen and (min-width: 1121px) {
    .homepage-slideshow .caption-content .action_button {
        bottom: 30px;
    }
}

@media screen and (max-width: 1600px) and (min-width: 769px) {
    .caption-content .action_button {
        font-size: 2rem;
        letter-spacing: 3px;
        height: auto !important;
        line-height: 1 !important;
        padding: 20px 40px;
        min-width: 200px;
    }

    .page-subsgift-section .caption.position-center {
        transform: translate(0, -25%);
    }
}

/* ============================================================
   Mega-menu redesign (desktop only) — design/Menu-*-01.jpg
   Succulents / Houseplants / Subscription dropdowns
   Dropdown panel background: #F9F9F9
   ============================================================ */
@media screen and (min-width: 799px) {

    /* ---------- Shared: dropdown panel ---------- */
    .menu .vertical-menu > li.sublink.succulents-menu > .vertical-menu_submenu,
    .menu .vertical-menu > li.houseplants-menu > .vertical-menu_submenu,
    .menu .vertical-menu > li.sublink.subscription-menu > .vertical-menu_submenu {
        background: #F9F9F9;
    }

    /* ---------- SUCCULENTS & HOUSEPLANTS ----------
       Two always-visible groups (SHOP BY GENUS / SHOP BY CHARACTERISTIC),
       their level-2 links flow in 2 text columns under each heading. */
    .menu .vertical-menu > li.sublink.succulents-menu > .vertical-menu_submenu,
    .menu .vertical-menu > li.sublink.houseplants-menu > .vertical-menu_submenu {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        gap: 0 6%;
        padding: clamp(24px, 2.2vw, 45px) 7% clamp(28px, 2.4vw, 48px);
    }

    .menu .vertical-menu > li.succulents-menu > .vertical-menu_submenu > li.has-child,
    .menu .vertical-menu > li.houseplants-menu > .vertical-menu_submenu > li.has-child {
        flex: 1 1 0;
        max-width: none;
        padding: 0;
        position: unset;
    }

    /* Group headings */
    .menu .succulents-menu .vertical-menu_submenu > li.has-child > a,
    .menu .houseplants-menu .vertical-menu_submenu > li.has-child > a {
        display: block;
        width: 100%;
        text-align: left;
        font-size: 14px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        color: #1c1c1c;
        margin-bottom: clamp(6px, 0.5vw, 10px);
        font-family: 'Bricolage Grotesque', sans-serif;
    }

    .menu .succulents-menu .vertical-menu_submenu > li.has-child > a .icon-right-arrow,
    .menu .houseplants-menu .vertical-menu_submenu > li.has-child > a .icon-right-arrow,
    .menu .succulents-menu .vertical-menu_submenu .menu-img,
    .menu .houseplants-menu .vertical-menu_submenu .menu-img,
    .menu .succulents-menu .vertical-menu_sub-submenu .sub-menu-img,
    .menu .houseplants-menu .vertical-menu_sub-submenu .sub-menu-img,
    .menu .succulents-menu .vertical-menu_sub-submenu > li.title-sub-submenu,
    .menu .houseplants-menu .vertical-menu_sub-submenu > li.title-sub-submenu {
        display: none !important;
    }

    /* Level-2 lists: static (always visible), 2 columns per group */
    .menu .succulents-menu .has-child .vertical-menu_sub-submenu,
    .menu .houseplants-menu .has-child .vertical-menu_sub-submenu {
        position: static;
        display: block;
        column-count: 2;
        column-gap: clamp(24px, 2vw, 40px);
        width: 100%;
        min-height: 0;
        padding: 0;
        /* Follow the parent panel's state: stay hidden and ignore the mouse
           until the top-level item is hovered, otherwise the invisible panel
           would catch hovers in the middle of the page and open itself. */
        visibility: inherit;
        opacity: 1;
        pointer-events: inherit;
        background: transparent;
        transition: none;
    }

    .menu .succulents-menu .has-child .vertical-menu_sub-submenu > li:not(.title-sub-submenu),
    .menu .houseplants-menu .has-child .vertical-menu_sub-submenu > li:not(.title-sub-submenu) {
        width: 100%;
        padding: 0;
        -webkit-column-break-inside: avoid;
        break-inside: avoid;
    }

    .menu .succulents-menu .has-child .vertical-menu_sub-submenu li:not(.title-sub-submenu) a,
    .menu .houseplants-menu .has-child .vertical-menu_sub-submenu li:not(.title-sub-submenu) a {
        border: 0;
        text-align: left;
        font-size: clamp(13px, 0.95vw, 19px);
        line-height: 1.4;
        padding: clamp(5px, 0.45vw, 9px) 0;
        color: #3a3a3a;
    }

    .menu .succulents-menu .has-child .vertical-menu_sub-submenu li:not(.title-sub-submenu) a:hover,
    .menu .houseplants-menu .has-child .vertical-menu_sub-submenu li:not(.title-sub-submenu) a:hover {
        border: 0;
        color: #ADC1A3;
    }

    .menu .succulents-menu .has-child .vertical-menu_sub-submenu li:not(.title-sub-submenu) a span,
    .menu .houseplants-menu .has-child .vertical-menu_sub-submenu li:not(.title-sub-submenu) a span {
        position: static;
        transform: none;
    }

    /* ---------- SUBSCRIPTION ----------
       Centered row of square photo tiles with bold captions below. */
    .menu .vertical-menu > li.sublink.subscription-menu > .vertical-menu_submenu {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        gap: 0 4.6%;
        padding: clamp(24px, 1.8vw, 36px) 6% clamp(30px, 2.5vw, 50px);
    }

    .menu .vertical-menu > li.subscription-menu > .vertical-menu_submenu > li {
        flex: 0 0 auto;
        width: clamp(190px, 12.8vw, 256px);
        max-width: clamp(190px, 12.8vw, 256px);
        padding: 0;
    }

    .menu .subscription-menu .vertical-menu_submenu .menu-img {
        padding: 0;
        margin-bottom: clamp(12px, 1.25vw, 25px);
    }

    .menu .subscription-menu .vertical-menu_submenu .menu-img.menu-rounded img {
        border-radius: 0;
        width: 100%;
        max-width: 100%;
        aspect-ratio: 1 / 1;
        object-fit: cover;
    }

    .menu .subscription-menu .vertical-menu_submenu > li > a {
        text-align: center;
    }

    .menu .subscription-menu .vertical-menu_submenu > li > a > span {
        display: block;
        font-size: clamp(14px, 1vw, 20px);
        font-weight: 600;
        line-height: 1.4;
        color: #424242;
    }

    .menu .subscription-menu .vertical-menu_submenu > li > a:hover > span {
        color: #ADC1A3;
    }

    .under-menu {
        overflow: hidden;
    }

    .menu .vertical-menu_sub-submenu li:not(.title-sub-submenu) a span, .menu .vertical-menu>li>.vertical-menu_submenu>li a span {
        text-transform: none;
        color: #424242;
        font-size: 14px;
    }

    .menu .vertical-menu_sub-submenu li:not(.title-sub-submenu) a span:hover, .menu .vertical-menu>li>.vertical-menu_submenu>li a span:hover {
        color: var(--brand-terracotta);
    }


}

/* ---------- CUSTOM COLOR PREFERENCE (product tag: "custom color") ---------- */
.custom-color-preference {
    margin: 20px 0;
    padding: 16px 18px;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    background: #fafafa;
}

.custom-color-preference__heading {
    display: block;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #222;
    margin-bottom: 4px;
}

.custom-color-preference__hint {
    margin: 0 0 12px;
    font-size: 13px;
    color: #767676;
}

.custom-color-preference__options {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.custom-color-option {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
    font-weight: 400;
    margin: 0;
}

.custom-color-option__input {
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin-top: 2px;
    accent-color: #ADC1A3;
    cursor: pointer;
}

.custom-color-option__label {
    font-size: 14px;
    line-height: 1.4;
    color: #333;
}

.custom-color-option__label em {
    display: inline-block;
    margin-left: 4px;
    font-size: 12px;
    font-style: normal;
    color: #8a8a8a;
}

.custom-color-option:hover .custom-color-option__label {
    color: #ADC1A3;
}

.custom-color-preference__options.is-locked .custom-color-option {
    cursor: not-allowed;
    opacity: 0.5;
}

.custom-color-preference__options.is-locked .custom-color-option__input {
    cursor: not-allowed;
}

.custom-color-option__input:disabled {
    cursor: not-allowed;
}

/* ---------- Cart line-item property display ---------- */
.cart__item--content .custom-color-property,
.mini-cart__item-content .custom-color-property {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #424242;
}

.cart__item--content .custom-color-property .custom-color-property__name,
.mini-cart__item-content .custom-color-property .custom-color-property__name {
    font-weight: 600;
}

.cart__item--content .custom-color-property .custom-color-property__check,
.mini-cart__item-content .custom-color-property .custom-color-property__check {
    color: #ADC1A3;
    font-weight: 700;
}

/* ======================================================================
   2026 brand redesign — trust bar, header/nav palette, mega-menu panel,
   global buttons/headings, and the new homepage sections.
   Site-wide chrome (header/footer/buttons/headings) is a colour+font
   pass only; structure changes are limited to the trust bar and the
   homepage-only sections below.
   ====================================================================== */
:root {
    --brand-olive: #414C25;
    --brand-olive-light: #68751C;
    --brand-sage: #ADC1A3;
    --brand-terracotta: #CC6235;
    --brand-cream: #FEFFFA;
    --brand-cream-strip: #F7EEE4;
    --brand-card-bg: #FCFBF5;
}

/* ---------- Trust bar (new, above header) ---------- */
.trust-bar {
    background-color: var(--brand-sage);
    padding: 10px 20px;
}
.trust-bar__container {
    max-width: 1497px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 32px;
    padding: 0 40px;
    box-sizing: border-box;
    justify-content: center;
}
.trust-bar__item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--brand-olive);
    white-space: nowrap;
}
.trust-bar__icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}
.trust-bar__item small {
    display: block;
    font-size: 11px;
    font-weight: normal;
    opacity: 0.85;
    white-space: normal;
    line-height: 1;
}

/* ---------- Announcement / promo bar ---------- */
/* Replaced by the standalone .announcement-bar strip above the trust bar;
   the theme's own embedded promo markup (nested inside the header row) is hidden. */
.promo-banner,
.promo-text {
    display: none !important;
}
.announcement-bar {
    background-color: var(--brand-cream-strip);
    padding: 6px 20px;
    text-align: center;
}
.announcement-bar__content {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--brand-olive);
}
.announcement-bar__content p { margin: 0; }

/* ---------- Trust bar item dividers ---------- */
.trust-bar__item:not(:last-child) {
    position: relative;
    padding-right: 32px;
}
.trust-bar__item:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -16px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 24px;
    background: rgba(65, 76, 37, 0.25);
}
.lb-qty-count {
    height: 22px;
}
@media only screen and (max-width: 798px) {
    .trust-bar__item:not(:last-child) {
        padding-right: 0;
    }
    .trust-bar__item:not(:last-child)::after {
        display: none;
    }
    .menu a, .menu a:visited, .menu a:active, #header span.menu_title, .menu a span, select.currencies, .mini_cart span,
    #mobile_menu .mobile-menu-subscribe__title
    {
        font-weight: 600;
        text-transform: uppercase;
        padding: 8px 0;
        font-size: 1rem;
    }
    .promo-banner--show.mobile_nav-fixed--true #pagecontent, .promo-banner--show.mobile_nav-fixed--false #pagecontent {
        padding-bottom: 12px;
    }
    .announcement-bar {
        margin-top: 40px;
    }

}

/* ---------- Header row: logo / search / wishlist / account / cart ---------- */
.original-header,
#header .top-bar {
    background-color: var(--brand-olive) !important;
}
.original-header a,
.original-header .header__logo-text,
.original-header span,
#header .top-bar > a,
#header .top-bar a span {
    color: #ffffff !important;
}

.original-header .header__logo {
    padding-left: 60px;
}

/* ---------- Sticky header state ---------- */
/* The theme ships a second, redundant "compact" header (text links: Wishlist/Login)
   nested inside .main-nav__wrapper that the base stylesheet reveals only once
   .sticky_nav--stick is active, duplicating the icon cluster we already show.
   Keep it hidden in both states so only one wishlist/account/cart cluster ever shows. */
.main-nav__wrapper .original-header {
    display: none !important;
}
.sticky_nav,
.sticky_nav__inner {
    background-color: var(--brand-olive) !important;
}


/* ---------- Header search field ---------- */
.original-header .search-container input[type="text"],
#header .top-bar .search-container input[type="text"] {
    background-color: transparent !important;
    border: 1px solid #ffffff !important;
    border-radius: 999px !important;
    color: #ffffff !important;
}
.original-header .search-container input::placeholder,
#header .top-bar .search-container input::placeholder {
    color: rgba(255, 255, 255, 0.8) !important;
}
.original-header .icon-search,
#header .top-bar .icon-search {
    color: #ffffff !important;
}

/* ---------- Hero caption: stack heading / subtitle / buttons ---------- */
.homepage-slideshow .caption-content {
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    row-gap: 18px;
    column-gap: 14px;
}
.homepage-slideshow .caption-content .headline,
.homepage-slideshow .caption-content .subtitle {
    flex: 1 1 100%;
    margin: 0;
}

/* ---------- Hero caption typography: dark olive text, sentence case, no drop-shadow
   (per design/color-1.jpg — this slide sits on a light photo, not a busy/dark one) ---------- */
.homepage-slideshow .caption-content .headline {
    color: var(--brand-olive) !important;
    text-transform: none !important;
    text-shadow: none !important;
}
.homepage-slideshow .caption-content .subtitle {
    color: var(--brand-olive-light) !important;
    font-style: italic !important;
    text-shadow: none !important;
}

/* ---------- Cart icon: remove leftover teal circle background (site-wide colour pass) ---------- */
a.mini_cart.dropdown_link {
    background-color: transparent !important;
}

/* ---------- Move wishlist/account/cart icons up beside the search field ---------- */
.original-header .top-bar,
.original-header .search-container {
    margin-right: 140px;
}
.main-nav {
    position: relative;
}
.main-nav .main-menu-right {
    position: absolute;
    top: -49px;
    right: 20px;
    z-index: 5;
}
.main-nav .main-menu-right,
.main-nav .main-menu-right a,
.main-nav .main-menu-right span,
.main-nav .main-menu-right .cart_count {
    color: #ffffff !important;
}
.main-nav .main-menu-right .cart-container,
.main-nav .main-menu-right .mini_cart,
.main-nav .main-menu-right .cart_count {
    background-color: transparent !important;
}

/* ---------- "Gifts" mega menu: show all 6 columns at once (per color-2.jpg), not a
   hover-to-reveal flyout. The base template nests each column's items as an absolutely
   positioned flyout that only appears on a second hover; here we pin it open inline
   as a column under its own header instead. Scoped to .gifts-menu only so the other
   (correctly two-level) dropdowns like Succulents/Houseplants are untouched. ---------- */
.gifts-menu .vertical-menu_submenu {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    align-items: start;
    gap: 24px;
    padding: 28px 4%;
}
/* Defensive hover fix: the base theme only shows this panel while the mouse is
   still over the .gifts-menu <li> itself; moving the cursor down into the panel
   should keep it open too (it is a descendant, but key it explicitly off both to
   guard against any stacking/pointer-events edge case rather than closing early). */
.vertical-menu .sublink:hover .vertical-menu_submenu,
.vertical-menu .sublink .vertical-menu_submenu:hover {
    display: flex!important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: all !important;
    z-index: 2000;
}
.gifts-menu .vertical-menu_submenu > li.sublink.has-child {
    min-width: 0;
}
.gifts-menu .vertical-menu_submenu > li.sublink.has-child > a {
    pointer-events: none;
    text-align: left;
    display: block;
    white-space: nowrap;
    border: none !important;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--brand-olive);
    margin-bottom: 4px;
}
.gifts-menu .vertical-menu_submenu > li.sublink.has-child > a .icon-right-arrow {
    display: none;
}
/* Remove the stray red debug border the base theme draws under each item
   (a ::before meant to flag a missing sub-menu image) */
.gifts-menu .vertical-menu_sub-submenu li::before,
.gifts-menu .vertical-menu_sub-submenu li a::before,
.gifts-menu .vertical-menu_sub-submenu li a::after {
    display: none !important;
    content: none !important;
    border: none !important;
}
.gifts-menu .vertical-menu_sub-submenu li a {
    display: inline-block;
    text-align: left;
    white-space: nowrap;
    border: none !important;
    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    color: var(--brand-olive);
    height: 1rem;
}
.vertical-menu_sub-submenu li a:hover {
    color: var(--brand-terracotta);
}
.gifts-menu .vertical-menu_sub-submenu {
    position: static !important;
    visibility: visible !important;
    opacity: 1 !important;
    display: flex !important;
    flex-direction: column;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    padding: 10px 0 0 !important;
    margin: 0 !important;
    width: auto !important;
}
.gifts-menu .vertical-menu_sub-submenu .title-sub-submenu {
    display: none;
}
.gifts-menu .vertical-menu_sub-submenu li {
    padding: 3px 0;
    width: 100% !important;
    white-space: nowrap;
}

/* ---------- "Gifts" mega menu: "Monthly Gifts" column gets an image, a description
   and a VIEW SUBSCRIPTION button instead of a plain link list (per color-2.jpg). ---------- */
.gifts-menu .vertical-menu_submenu > li.monthly-gifts-column {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.gifts-menu .vertical-menu_submenu > li.monthly-gifts-column .monthly-gifts-column__title {
    display: block;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--brand-olive);
    margin-bottom: 8px;
}
.gifts-menu .vertical-menu_submenu .monthly-gifts-column__image {
    display: block;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 10px;
}
.gifts-menu .vertical-menu_submenu .monthly-gifts-column__image img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
.gifts-menu .vertical-menu_submenu .monthly-gifts-column__desc {
    font-size: 12px;
    line-height: 1.4;
    color: var(--brand-olive);
    margin: 0 0 12px;
    white-space: normal;
}
.gifts-menu .vertical-menu_submenu .monthly-gifts-column .monthly-gifts-column__btn,
.gifts-menu .vertical-menu_submenu .monthly-gifts-column .monthly-gifts-column__btn:hover {
    display: block;
    width: 100%;
    box-sizing: border-box;
    background-color: var(--brand-terracotta) !important;
    color: #ffffff !important;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    text-align: center;
    padding: 9px 6px;
    border-radius: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.gifts-menu .vertical-menu_submenu .monthly-gifts-column .monthly-gifts-column__btn:hover {
    background-color: var(--brand-olive) !important;
}

/* ---------- "Gifts" mega menu: "Personalized & Custom" column gets a thumbnail
   image per link (per color-2.jpg) instead of a plain link list. The parent
   ul is the generic .vertical-menu_sub-submenu (flex column, per the rules
   above); these overrides only touch its .sub-personalized-custom instance,
   using the same specificity trick (an extra class) as the rest of this file. ---------- */
.gifts-menu .vertical-menu_sub-submenu.sub-personalized-custom {
    gap: 14px;
}
.gifts-menu .vertical-menu_sub-submenu.sub-personalized-custom li:not(.title-sub-submenu) {
    padding: 0;
    white-space: normal;
}
.gifts-menu .vertical-menu_sub-submenu.sub-personalized-custom li a {
    display: block;
    height: auto;
    white-space: normal;
}
.gifts-menu .vertical-menu_sub-submenu.sub-personalized-custom .sub-menu-img {
    display: block;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 8px;
}
.gifts-menu .vertical-menu_sub-submenu.sub-personalized-custom .sub-menu-img img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

/* ---------- Vertical (mega) menu dropdown panel: match the off-white card bg + brand type from color-2.jpg ---------- */
.vertical-menu_submenu,
.vertical-menu_sub-submenu {
    background-color: var(--brand-card-bg) !important;
    border-color: #e2e2e2 !important;
}
.vertical-menu_submenu > li > a.dropdown_link--vertical,
.vertical-menu_submenu .title-sub-submenu a {
    color: var(--brand-olive) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
.vertical-menu_submenu ul li a,
.vertical-menu_sub-submenu li a {
    color: var(--brand-olive) !important;
    font-weight: 400 !important;
}
.vertical-menu_submenu ul li a:hover,
.vertical-menu_sub-submenu li a:hover {
    color: var(--brand-terracotta) !important;
}
.main-nav .nav a.top_link,
.main-nav .nav a.dropdown_link--vertical {
    color: var(--brand-olive) !important;
}
.main-nav .nav a.top_link:hover,
.main-nav .nav a.top_link.is-active,
.main-nav .nav a.dropdown_link--vertical:hover {
    color: var(--brand-terracotta) !important;
}
.main-nav .nav a[href*="gift" i] {
    color: var(--brand-terracotta) !important;
}

/* ---------- "Gifts" nav item highlighted in terracotta (matches design's featured menu item) ---------- */
.main-nav .nav a[href*="gift" i] {
    color: var(--brand-terracotta) !important;
}

/* ---------- Primary nav row + mega-menu panel ---------- */
.main-nav,
nav.main-nav {
    background-color: var(--brand-cream) !important;
}
.main-nav > ul > li > a,
.nav-desktop__tier-1-link {
    color: var(--brand-olive) !important;
}
.dropdown_content,
.mega-menu {
    background-color: var(--brand-card-bg) !important;
}
.dropdown_column .dropdown_title a {
    color: var(--brand-olive) !important;
}

/* ---------- Global buttons (site-wide colour pass) ---------- */
a[class*="global-button"],
button[class*="global-button"],
input[class*="global-button"],
a.action_button,
button.action_button,
input.action_button {
    background-color: var(--brand-terracotta) !important;
    border-color: var(--brand-terracotta) !important;
    color: #ffffff !important;
    border-radius: 999px !important;
    text-transform: none !important;
}
/* second/outline slideshow buttons: light fill instead of a second solid terracotta pill */
a.action_button.second_button,
a.action_button.third_button {
    background-color: #ffffff !important;
    border-color: #ffffff !important;
    color: var(--brand-olive) !important;
}

/* ---------- Headline capitalisation (redesign uses sentence case) ---------- */
.shopify-section--slideshow .caption h2,
.shopify-section--slideshow .caption .title,
.shopify-section--collection-list .title,
.shopify-section--text-columns-with-images .title,
.shopify-section--logo-bar .title,
.shopify-section--impact-stats .title,
.shopify-section--subscription-promo .title,
.featured-satisfaction-guaranteed-title, .bestsellers-grid .title {
    text-transform: none !important;
}

/* ---------- Headings on the redesigned homepage sections ---------- */
.shopify-section--collection-list .title,
.shopify-section--text-columns-with-images .title,
.shopify-section--logo-list .title,
.shopify-section--featured-collection .title,
.featured-blog-section .title,
.shopify-section--impact-stats .title,
.shopify-section--subscription-promo .title,
.featured-satisfaction-guaranteed-title {
    color: var(--brand-olive);
}
/* Design uses left-aligned section headings, larger size, and no underline rule */
.shopify-section--collection-list .title,
.shopify-section--text-columns-with-images .title,
.shopify-section--logo-list .title,
.shopify-section--featured-collection .title,
.featured-blog-section .title {
    text-align: left !important;
    font-size: 32px;
    font-weight: 600;
    margin-bottom: 0.25rem;
}
.shopify-section--collection-list .one-whole.column,
.shopify-section--text-columns-with-images .one-whole.column,
.shopify-section--logo-list .one-whole.column,
.shopify-section--featured-collection .one-whole.column,
.featured-blog-section .one-whole.column {
    text-align: left;
}
.shopify-section--collection-list .feature_divider,
.shopify-section--text-columns-with-images .feature_divider,
.shopify-section--logo-list .feature_divider,
.shopify-section--featured-collection .feature_divider,
.featured-blog-section .feature_divider {
    display: none !important;
}
.shopify-section--text-columns-with-images .text-columns-with-images__subheading.center {
    text-align: left !important;
}
.text-columns-with-images__subheading,
.collection-info__subtitle {
    color: var(--brand-olive-light);
    font-style: italic;
    font-size: 0.85em;
    display: block;
}

/* ---------- Collection-list placeholder cards: constrain the onboarding SVG to the card (it defaults to full viewport width) ---------- */
.list-collections .thumbnail .placeholder-svg {
    width: 100% !important;
    height: 280px !important;
    max-width: 100%;
}

/* ---------- Collection grids (Shop by Occasion / Explore Our Greenhouse): bordered cards ---------- */
.shopify-section--collection-list .thumbnail {
    padding-bottom: 20px;
}
.shopify-section--collection-list .thumbnail .product-wrap {
    border-radius: 10px;
    padding: 10px 10px 16px;
    box-shadow: 0 2px 8px rgba(65, 76, 37, 0.1);
    height: 100%;
    box-sizing: border-box;
}
.shopify-section--collection-list .thumbnail .image__container {
    border-radius: 6px;
    overflow: hidden;
}
.shopify-section--collection-list .collection-info__caption,
.shopify-section--collection-list .collection-info__caption:hover,
.shopify-section--collection-list .collection-info__caption:focus {
    color: var(--brand-olive) !important;
}
.shopify-section--collection-list .collection-info__caption .title {
    font-size: 18px;
    font-weight: 600;
    margin-top: 10px;
    display: block;
    text-align: left !important;
    color: var(--brand-olive) !important;
}

/* ---------- "Shop by Occasion" (per design/color-3.jpg): flat, borderless image tiles
   with a centered caption, instead of the shared shadowed/left-aligned card style above.
   Scoped to the section's own css_class ("shop-by-occasion-section") so the shared
   .shopify-section--collection-list rules — and other collection-list instances like
   "Explore Our Greenhouse" — are left untouched. ---------- */
.shop-by-occasion-section .title {
    font-size: 28px;
    margin-bottom: 20px;
}
.shop-by-occasion-section .thumbnail {
    padding-bottom: 28px;
}
.shop-by-occasion-section .thumbnail .product-wrap {
    background: transparent;
    padding: 0;
    box-shadow: none;
    border-radius: 12px;
}
.shop-by-occasion-section .thumbnail .image__container {
    border-radius: 12px;
}
.shop-by-occasion-section .collection-info__caption,
.shop-by-occasion-section .collection-info__caption:hover,
.shop-by-occasion-section .collection-info__caption:focus {
    text-align: center !important;
}
.shop-by-occasion-section .collection-info__caption .title {
    text-align: center !important;
    font-size: 18px;
    font-weight: 600;
    margin-top: 14px;
}

/* ---------- "Explore Our Greenhouse" (per design/color-4.jpg): bordered card with a
   flush top image and a left-aligned text panel below, instead of the shared shadowed/
   fully-padded card style above. Scoped to the section's own css_class ("greenhouse-grid")
   so the shared .shopify-section--collection-list rules — and other collection-list
   instances like "Shop by Occasion" — are left untouched. ---------- */
.greenhouse-grid .title {
    font-size: 28px;
    margin-bottom: 20px;
}
.greenhouse-grid .thumbnail {
    padding-bottom: 24px;
}
.greenhouse-grid .thumbnail .product-wrap {
    background-color: #FEFDFB;
    border: 1px solid #CCCCCC;
    border-radius: 12px;
    padding: 0;
    box-shadow: none;
    overflow: hidden;
}
.greenhouse-grid .thumbnail .image__container {
    border-radius: 0;
}
.greenhouse-grid .collection-info__caption,
.greenhouse-grid .collection-info__caption:hover,
.greenhouse-grid .collection-info__caption:focus {
    display: block;
    text-align: center;
    padding: 14px 16px 18px;
}
.greenhouse-grid .collection-info__caption .title {
    text-align: center!important;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    margin-top: 0;
    margin-bottom: 4px;
}
.greenhouse-grid .collection-info__subtitle {
    text-align: center !important;
    font-size: 14px;
    line-height: 1.3;
    margin-top: 0;
}

/* ---------- "Bestselling Gift Sets & Bundles" (per design/color-5.jpg): product cards
   with a light-grey body, a bottom-left "Free Shipping" tag over the image, and the
   Stamped.io review badge's stars recoloured gold (the site-wide rule below tints them
   olive). Uses the section's "Grid" layout (not "Slider" — the Flickity-driven slider
   markup/JS was error-prone for this section) rendered via product-loop/product-thumbnail.
   Scoped to the section's own css_class ("bestsellers-grid") so other product grids using
   the same snippets elsewhere are left untouched. ---------- */
.bestsellers-grid .title {
    font-size: 28px;
    margin-bottom: 20px;
}
/* The heading and the product grid are two separate <section class="section"> blocks
   (title section, then a second section for the grid) — the site-wide 32px top+bottom
   section padding above stacks into a ~64px gap between them. Zero the padding on the
   sides that face each other so only the title's own margin-bottom controls the gap. */
.bestsellers-grid > section.section:first-of-type {
    padding-bottom: 0;
}
.bestsellers-grid > section.section:last-of-type {
    padding-top: 0;
}
.bestsellers-grid .thumbnail {
    padding-bottom: 24px;
}
.bestsellers-grid .thumbnail .product-wrap {
    background-color: #F9F9F9;
    border-radius: 10px;
    overflow: hidden;
}
.bestsellers-grid .thumbnail .image__container {
    border-radius: 0;
}
/* The grid template (unlike the slider one) doesn't pass align_height/collection_height
   through to the image, so force a consistent crop here instead. */
.bestsellers-grid .thumbnail .image__container img {
    width: 100%;
    height: 280px;
    object-fit: cover;
}

/* "Free Shipping" tag: replace the ribbon-shaped FS-02.svg icon (styled for the generic
   top-left badge row) with a plain rounded tag pinned to the bottom-left of the image. */
.bestsellers-grid .free_ship_banner {
    position: absolute;
    top: auto;
    left: 10px;
    bottom: 10px;
    background-color: var(--brand-terracotta);
    border-radius: 4px;
    padding: 7px 14px;
    line-height: 1;
}
.bestsellers-grid .free_ship_banner img {
    display: none;
}
.bestsellers-grid .free_ship_banner::before {
    content: "Free Shipping";
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
}

.bestsellers-grid .product-info__caption {
    display: block;
    text-align: left;
    padding: 14px 16px 18px;
}
.bestsellers-grid .product-details .title {
    display: block;
    color: var(--brand-olive);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.3;
    margin: 0 0 6px;
}
.bestsellers-grid .product-details .price {
    display: block;
    font-size: 15px;
    margin: 0 0 6px;
}
.bestsellers-grid .stamped-product-reviews-badge {
    display: block;
}
.bestsellers-grid .stamped-product-reviews-badge,
.bestsellers-grid .stamped-product-reviews-badge a,
.bestsellers-grid .stamped-product-reviews-badge * {
    color: #767676 !important;
}
.bestsellers-grid .stamped-product-reviews-badge [class*="stamped-fa-star"] {
    color: #FFB800 !important;
}

/* ---------- Mobile: "Explore Our Greenhouse" / "Bestselling Gift Sets" become a
   2.5-item-peek OwlCarousel slider below 798px (see window.mobileGridSliders in
   sections.js), instead of the desktop grid wrapping onto multiple rows. OwlCarousel
   only wraps the existing .thumbnail cards in .owl-stage-outer/.owl-stage/.owl-item —
   it doesn't remove the grid's own flex/width classes, so those have to be neutralized
   here or they fight the width Owl assigns each item. Also matches the Framer reference
   (renewed-party-717054.framer.app) showing greenhouse card captions left-aligned on
   mobile, not centered like the desktop grid (per color-4.jpg). ---------- */
@media screen and (max-width: 798px) {
    .greenhouse-grid .list-collections.owl-carousel,
    .bestsellers-grid .product-list--collection.owl-carousel {
        display: block !important;
    }
    .greenhouse-grid .list-collections.owl-carousel .thumbnail,
    .bestsellers-grid .product-list--collection.owl-carousel .thumbnail {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        float: none !important;
        left: auto !important;
        margin: 0 !important;
    }
    .greenhouse-grid .list-collections .owl-stage,
    .bestsellers-grid .product-list--collection .owl-stage {
        display: flex;
        align-items: stretch;
    }
    /* bestsellers slide: border the whole card like the greenhouse cards. .product-wrap
       only wraps the image here (the title/price caption is its sibling), so the border
       goes on the .thumbnail itself. */
    .bestsellers-grid .product-list--collection.owl-carousel .thumbnail {
        background-color: #F9F9F9;
        border: 1px solid #CCCCCC;
        border-radius: 12px;
        overflow: hidden;
        padding-bottom: 0;
    }
    .bestsellers-grid .product-list--collection.owl-carousel .thumbnail .product-wrap {
        border-radius: 0;
    }

    /* Both grids force a fixed 280px image height for the desktop layout (greenhouse
       via section.settings.collection_height/align_height, bestsellers via the
       ".image__container img" rule above) — sized for ~280px-wide desktop columns.
       At a 2.5-item mobile slider each item is only ~100-150px wide, so that same
       fixed height stretched the photos into tall, warped slivers. Let the image
       size itself from its own width instead, at the square-ish ratio the design
       (color-4.jpg / color-5.jpg) uses for both sections. */
    .greenhouse-grid .list-collections.owl-carousel .thumbnail img,
    .bestsellers-grid .product-list--collection.owl-carousel .thumbnail .image__container img {
        height: auto !important;
        max-height: none !important;
        aspect-ratio: 1 / 1;
        object-fit: cover;
    }

    .greenhouse-grid .collection-info__caption,
    .greenhouse-grid .collection-info__caption:hover,
    .greenhouse-grid .collection-info__caption:focus {
        text-align: left;
    }
    .greenhouse-grid .collection-info__caption .title {
        text-align: left !important;
    }
    .greenhouse-grid .collection-info__subtitle {
        text-align: left !important;
    }
}

/* ---------- "Why Give a Plant?" (per design/color-7.jpg): 2x2 grid of bordered cards,
   image on the left / text on the right within each card — the base section instead
   stacks image-then-text and lays the 4 blocks out in one row. Scoped to the section's
   own css_class ("why-give-a-plant") so other text-columns-with-images instances are
   left untouched. ---------- */
.why-give-a-plant .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}
.why-give-a-plant .container > .one-whole.column {
    grid-column: 1 / -1;
}
.why-give-a-plant .text-column {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 0 !important;
}
.why-give-a-plant .text-column .border-style--box {
    display: flex;
    align-items: center;
    gap: 20px;
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
    border-radius: 12px;
    padding: 20px;
    height: 100%;
    box-sizing: border-box;
}
.why-give-a-plant .text-column .text-column__media {
    flex: 0 0 40%;
    width: 40%;
    max-width: 40%;
    margin: 0;
}
.why-give-a-plant .text-column .text-column__media img,
.why-give-a-plant .text-column .text-column__media .placeholder-svg {
    width: 100%;
    border-radius: 8px;
    margin: 0;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
.why-give-a-plant .text-column .text-column__content {
    flex: 1 1 auto;
    min-width: 0;
}
/* Stagger image/text sides by row (per color-7.jpg): row 1 is image-left/text-right,
   row 2 flips to text-left/image-right. With 2 columns the last 2 blocks are row 2. */
.why-give-a-plant .text-column:nth-last-child(-n+2) .border-style--box {
    flex-direction: row-reverse;
}
.why-give-a-plant .text-column h3 {
    color: var(--brand-olive-light);
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 8px;
    text-transform: none;
}
.why-give-a-plant .text-column .rte-setting {
    color: var(--brand-olive);
    font-style: normal;
    font-size: 14px;
    line-height: 1.5;
}
.why-give-a-plant .text-column .rte-setting p {
    margin: 0;
}
@media only screen and (max-width: 798px) {
    .why-give-a-plant .container {
        grid-template-columns: 1fr;
    }
}

/* ---------- "Plant Care Academy" (per design/color-9.jpg): bordered white article cards
   with a dark-olive "Read More" pill — the site-wide global-button rule further down
   makes it terracotta by default. Scoped to the section's own class (featured-blog-section,
   set via the section's schema `class`) so other blog listings are left untouched. ---------- */
.featured-blog-section .title {
    font-size: 28px;
    margin-bottom: 20px;
}
.featured-blog-section .article {
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
    border-radius: 10px;
    overflow: hidden;
    padding-bottom: 20px;
    margin-bottom: 24px;
    box-sizing: border-box;
}
.featured-blog-section .blog-post-image-wrapper {
    display: block;
    margin: 0;
}
.featured-blog-section .blog-post-image-wrapper img {
    width: 100%;
    height: 160px;
    object-fit: cover;
    display: block;
}
.featured-blog-section h3.sub_title {
    padding: 0 16px;
    margin: 14px 0 8px;
}
.featured-blog-section h3.sub_title a {
    color: var(--brand-olive);
    font-size: 17px;
    font-weight: 600;
}
.featured-blog-section .blog_meta {
    padding: 0 16px;
    color: #767676;
    font-size: 13px;
}
.featured-blog-section .blog__read-more-button {
    margin: 14px 16px 0;
    background-color: var(--brand-olive) !important;
    border-color: var(--brand-olive) !important;
    color: #ffffff !important;
}

/* ---------- Subscription promo section: inset card, not full-bleed ---------- */
.subscription-promo-section {
    background-color: var(--brand-olive);
    max-width: 1400px;
    margin: 0 auto;
    border-radius: 16px;
}
.subscription-promo-section .title,
.subscription-promo__subheading,
.subscription-promo__body,
.subscription-promo__slide-label {
    color: #ffffff;
}
.subscription-promo-section .global-button {
    background-color: #ffffff !important;
    border-color: #ffffff !important;
    color: var(--brand-olive) !important;
    text-transform: uppercase!important;
}

/* ---------- Impact stats section: inset card, not full-bleed ---------- */
.impact-stats-section {
    background-color: var(--brand-sage);
    position: relative;
    max-width: 1400px;
    margin: 0 auto;
    border-radius: 16px;
}
.impact-stats__slide img {
    border-radius: 12px;
}
.impact-stats__watermark {
    position: absolute;
    top: 8px;
    opacity: 0.4;
    pointer-events: none;
}
.impact-stats__watermark--left { left: 24px; }
.impact-stats__watermark--right { right: 24px; }
.impact-stats__card-number { color: var(--brand-terracotta); }
.impact-stats__card-link { color: var(--brand-olive); font-weight: bold; }

/* ---------- Homepage OwlCarousels: equal-height slides, so the carousel doesn't
   jump as slides with taller images / longer titles scroll into view. The stage is
   turned into a stretch-flex row (Owl still sets each .owl-item width inline), every
   slide fills its .owl-item, and slide images get a fixed ratio so a differently
   sized upload can't change the slide height. ---------- */
.subscription-promo__slides .owl-stage,
.impact-stats__track .owl-stage,
.greenhouse-grid .list-collections.owl-carousel .owl-stage,
.bestsellers-grid .product-list--collection.owl-carousel .owl-stage {
    display: flex;
    align-items: stretch;
}
.subscription-promo__slides .owl-item,
.impact-stats__track .owl-item,
.greenhouse-grid .list-collections.owl-carousel .owl-item,
.bestsellers-grid .product-list--collection.owl-carousel .owl-item {
    display: flex;
    float: none;
    height: auto;
}
.subscription-promo__slides .owl-item > *,
.impact-stats__track .owl-item > *,
.greenhouse-grid .list-collections.owl-carousel .owl-item > .thumbnail,
.bestsellers-grid .product-list--collection.owl-carousel .owl-item > .thumbnail {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
}
/* subscription promo: card fills the slide, label pinned to the card bottom */
.subscription-promo__slide-card {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}
.subscription-promo__slide-card .image-element__wrap {
    max-width: none !important;
}
.subscription-promo__slide-card img,
.subscription-promo__slide-card .placeholder-svg {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
.subscription-promo__slide-label {
    margin-top: auto !important;
    padding-top: 0.75rem;
}
/* impact stats: every slide image at the same ratio as the design photos (1611x690) */
.impact-stats__slide .image-element__wrap {
    max-width: none !important;
}
.impact-stats__slide img,
.impact-stats__slide .placeholder-svg {
    width: 100%;
    height: auto;
    aspect-ratio: 1611 / 690;
    object-fit: cover;
}
/* greenhouse / bestsellers (mobile slider): push the price/footer to the card bottom */
.bestsellers-grid .product-list--collection.owl-carousel .thumbnail .product-info__caption,
.greenhouse-grid .list-collections.owl-carousel .thumbnail .collection-info__caption {
    flex: 1 1 auto;
}

/* ---------- Footer: keep existing content, new background only ---------- */
footer.footer {
    background-color: var(--brand-olive) !important;
}

/* ---------- Footer typography/spacing pass (per design/footer.png) ---------- */
footer.footer .footer-menu-wrap h6 {
    color: var(--brand-sage);
    font-size: 15px;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0.02em;
    padding-bottom: 12px;
}
footer.footer .footer_menu ul li,
footer.footer .footer-text .toggle_content p {
    margin-bottom: 0.85em;
}
footer.footer .footer_menu ul li a,
footer.footer .footer-text .toggle_content a {
    font-size: 15px;
}
/* The overview link of a menu ("All Occasions", "Shop all plants", "All care guides")
   is tagged in footer.liquid — it is not necessarily the last item of its menu — and
   renders as the design's italic accent link followed by an arrow. */
footer.footer .footer_menu ul li a.footer_menu__overview-link {
    font-style: italic;
    font-weight: 600;
    color: var(--brand-sage);
}
footer.footer .footer_menu ul li a.footer_menu__overview-link::after {
    content: "\2192";
    margin-left: 0.4em;
    font-style: normal;
    display: inline-block;
}
footer.footer .logo,
footer.footer .header__logo-text {
    color: #ffffff !important;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
footer.footer .footer-text .toggle_content {
    color: rgba(255, 255, 255, 0.85);
    font-size: 14px;
    line-height: 1.6;
}

/* The base theme's "Newsletter in footer" colour override targets a ".footer-section"
   wrapper class this section never actually has (it's "shopify-section--footer"), so the
   newsletter box was rendering with its non-footer default: a solid grey box with black
   text. Re-target the real wrapper instead of layering another dead class on top. */
footer.footer .newsletter_section {
    background-color: transparent;
    color: rgba(255, 255, 255, 0.85);
}
footer.footer .newsletter_section h6 {
    color: var(--brand-sage);
    font-size: 15px;
    font-weight: 600;
}
footer.footer .newsletter_section p {
    color: rgba(255, 255, 255, 0.85);
    font-size: 14px;
}
footer.footer .newsletter .contact_email {
    display: block;
    width: 100%;
    box-sizing: border-box;
    background-color: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 6px;
    color: #ffffff;
    padding: 12px 14px;
    margin-bottom: 12px;
}
footer.footer .newsletter .contact_email::placeholder {
    color: rgba(255, 255, 255, 0.6);
}
/* Terracotta on desktop too, matching what the <=798px block below already does
   for the same button. !important is needed to beat the ID-specificity
   "#contact_form .newsletter-form__sign-up" rule earlier in this file; the text
   goes white with it, since olive on terracotta is unreadable. */
footer.footer .newsletter .newsletter-form__sign-up {
    display: inline-block;
    background-color: var(--brand-terracotta) !important;
    border-color: var(--brand-terracotta) !important;
    color: #ffffff !important;
    font-weight: 700;
}

/* Bottom legal bar */
footer.footer .footer_credits {
    border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
    margin-top: 12px !important;
    padding-top: 12px;
    padding-bottom: 24px;
}
footer.footer .footer__legal {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px 24px;
}
/* Older ".shopify-section .footer_credits .credits" rule elsewhere in this file forces
   width:100% + centered text, which fills the whole flex row and pushes the legal links
   onto their own line below — override both so credits/links sit side by side. */
footer.footer .credits {
    float: none;
    width: auto !important;
    padding-top: 0;
    text-align: left !important;
    color: rgba(255, 255, 255, 0.85) !important;
    font-weight: 400 !important;
    font-size: 0.85rem !important;
}
footer.footer .footer__legal-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 20px;
}
footer.footer .footer__legal-links a {
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.85rem;
}
footer.footer .footer__legal-links a:hover {
    color: #ffffff;
}
@media only screen and (max-width: 798px) {
    footer.footer .footer__legal {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}

/* ---------- Header row proportions (logo row should read tallest, per design) ---------- */
.original-header {
    padding-top: 18px;
    padding-bottom: 18px;
    min-height: 78px;
    box-sizing: border-box;
}
.trust-bar {
    padding-top: 14px;
    padding-bottom: 14px;
}

/* ---------- Generous vertical rhythm between homepage sections (per design) ---------- */
.shopify-section--collection-list .section,
.shopify-section--text-columns-with-images .section,
.shopify-section--logo-list .section,
.shopify-section--featured-collection .section,
.featured-satisfaction-guaranteed-section,
.featured-blog-section {
    padding: 0;
}
.shopify-section--reviews-carousel .section {
    padding-top: 24px;
    padding-bottom: 24px;
}
.featured-satisfaction-guaranteed-section,
.shopify-section--reviews-carousel {
    background-color: #DDE6D7;
}
/* Top gap mirrors the reviews carousel's bottom gap (div.container 20px + .section 24px).
   Two classes so it beats div.container, which otherwise zeroes the top padding. */
.featured-satisfaction.container {
    padding-top: 44px;
}
.subscription-promo-section .subscription-promo,
.impact-stats-section .impact-stats {
    padding-top: 64px;
    padding-bottom: 64px;
}
/* breathing room below each section title before the grid/cards start */
.shopify-section--collection-list .title,
.shopify-section--logo-list .title,
.shopify-section--featured-collection .title {
    margin-bottom: 0;
}

.greenhouse-grid .title {
    margin-bottom: 28px;
}

div.container {
    padding: 0 0 20px 0;
}

/* ---------- Heading font-size pass: match the design's larger, bolder headline scale ---------- */
.homepage-slideshow .headline {
    font-size: 36px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}
.featured-satisfaction-guaranteed-title {
    font-size: 40px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
}
.subscription-promo-section .title,
.impact-stats-section .title {
    font-size: 30px !important;
    margin: 0 0 16px;
}
.impact-stats__card-number {
    font-size: 40px !important;
}

.shop-by-occasion-section .list-collections-wrapper .thumbnail {
    margin-bottom: 0;
    padding-bottom: 16px;
}

/* ---------- Generic link fallback (site-wide colour pass): low specificity so it only
   fills gaps where nothing more specific already sets a colour ---------- */
a {
    color: var(--brand-olive-light);
}
a:hover,
a:focus {
    color: var(--brand-terracotta);
}

/* ---------- Price color (site-wide colour pass): was the old teal brand color ---------- */
.border-style--box {
    border-color: #cccccc !important;
}

.money,
.price,
.price .money,
.price small,
.current_price,
.current_price small,
.current_price .money,
span.price {
    color: var(--brand-terracotta) !important;
}

.stamped-product-reviews-badge,
.stamped-product-reviews-badge a,
a.stamped-product-reviews-badge {
    color: var(--brand-olive-light) !important;
    font-size: 14px;
}

/* ---------- Visible keyboard focus (base theme sets outline-style: none) ---------- */
.trust-bar a:focus-visible,
.original-header a:focus-visible,
.original-header input:focus-visible,
.main-nav a:focus-visible,
a[class*="global-button"]:focus-visible,
a.action_button:focus-visible,
.subscription-promo a:focus-visible,
.impact-stats a:focus-visible,
.shopify-section--collection-list a:focus-visible,
.shopify-section--featured-blog a:focus-visible,
footer.footer a:focus-visible {
    outline: 2px solid var(--brand-terracotta) !important;
    outline-offset: 2px !important;
}

/* ---------- Mobile ---------- */
@media only screen and (max-width: 798px) {
    .trust-bar__container {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }
    .trust-bar__item {
        white-space: normal;
        font-size: 12px;
    }
    .impact-stats__watermark {
        display: none;
    }
    .subscription-promo {
        padding: 2rem 1rem;
    }
    .impact-stats {
        padding: 2rem 1rem;
    }
    .shopify-section--collection-list .section,
    .shopify-section--text-columns-with-images .section,
    .shopify-section--logo-list .section,
    .shopify-section--featured-collection .section,
    .shopify-section--custom-html .section,
    .featured-satisfaction-guaranteed-section,
    .featured-blog-section {
        padding-top: 0;
    }
    .original-header {
        min-height: 60px;
        padding-top: 10px;
        padding-bottom: 10px;
    }
}
/* ==========================================================================
   Typography pass per design/feedback/*.png (Sept 2026 round).
   Two conventions used throughout that round's annotations:
     - "Bricolage <weight>" / "Red hat <weight>" = apply that family (both are
       variable fonts, declared at the top of this file) at the named weight:
       regular 400, medium 500, semibold 600, bold 700, extrabold 800, plus
       "italic" = font-style italic.
     - "(ko capslock)" = the element must NOT be visually all-caps; if a rule
       elsewhere sets text-transform:uppercase on it, this un-sets it (the
       source text itself is left as authored).
   Each block below is scoped to the section's own css_class or a stable
   element class so it doesn't leak into other instances of a shared snippet.
   ========================================================================== */

/* ---------- Header: announcement bar + trust bar (image (4).png) ---------- */
.announcement-bar__content,
.promo-banner__content {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}
.announcement-bar__content strong,
.promo-banner__content strong {
    font-weight: 700;
}
.trust-bar__item span,
.trust-bar__item small {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}
.search_form .search-terms {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}

/* Header logo: the <img> carries hardcoded width="260" height="35" attributes
   (a 7.4:1 placeholder ratio) so browsers auto-apply that as the image's
   aspect-ratio; the actual uploaded logo isn't that shape, so it renders
   squashed. Forcing height:auto drops the attribute-derived ratio and lets
   the browser use the image's real intrinsic ratio instead. */
div.header__logo img {
    height: auto !important;
}

/* ---------- Hero slideshow (image (4).png) ---------- */
.homepage-slideshow .headline {
    font-family: 'Bricolage Grotesque', sans-serif;
    font-weight: 500 !important;
}
.homepage-slideshow .subtitle {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
    font-style: italic;
}
.homepage-slideshow .action_button {
    font-family: 'Red Hat Display', sans-serif !important;
    font-weight: 800 !important;
}

/* ---------- "Loved by thousands..." reviews summary (design/featured-sastisfaction.png) ---------- */
.featured-satisfaction {
    padding-top: 64px;
    padding-bottom: 8px;
    text-align: center;
    color: var(--brand-olive);
}
.featured-satisfaction .featured-satisfaction-guaranteed-title {
    margin: 0 0 12px;
    text-align: center;
    color: var(--brand-olive);
    font-family: 'Bricolage Grotesque', sans-serif;
}
.featured-satisfaction__subtitle,
.featured-satisfaction__tagline {
    margin: 0;
    font-family: 'Red Hat Display', sans-serif;
    font-size: 20px;
    font-style: italic;
    font-weight: 400;
    line-height: 1.4;
    color: var(--brand-olive);
}
.featured-satisfaction__rating,
.featured-satisfaction__rating:hover,
.featured-satisfaction__rating:focus {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 28px;
    margin-top: 4px;
    color: var(--brand-olive);
    text-decoration: none;
}
.featured-satisfaction__stars {
    display: inline-flex;
    gap: 6px;
    color: #F2C230;
}
.featured-satisfaction__star {
    width: 36px;
    height: 36px;
}
.featured-satisfaction__score {
    font-family: 'Red Hat Display', sans-serif;
    font-size: 64px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.01em;
    color: #414C25;
}
.featured-satisfaction__score-max {
    margin-left: 6px;
    font-size: 32px;
    font-weight: 400;
}
.featured-satisfaction__count {
    font-family: 'Red Hat Display', sans-serif;
    font-size: 24px;
    font-weight: 400;
    color: #1f1f1f;
}
.featured-satisfaction__tagline {
    margin-top: 40px;
}
@media only screen and (max-width: 798px) {
    .featured-satisfaction {
        padding-top: 40px;
        padding-bottom: 4px;
    }
    .featured-satisfaction .featured-satisfaction-guaranteed-title {
        margin-bottom: 4px;
        padding: 0 8px;
        text-wrap: balance;
    }
    .featured-satisfaction-guaranteed-title {
        font-size: 28px !important;
    }
    .featured-satisfaction__subtitle,
    .featured-satisfaction__tagline {
        font-size: 15px;
    }
    .featured-satisfaction__rating {
        gap: 2px 14px;
        margin-top: 14px;
    }
    .featured-satisfaction__stars {
        gap: 3px;
    }
    .featured-satisfaction__star {
        width: 22px;
        height: 22px;
    }
    .featured-satisfaction__score {
        font-size: 40px;
    }
    .featured-satisfaction__score-max {
        margin-left: 4px;
        font-size: 20px;
    }
    .featured-satisfaction__count {
        flex-basis: 100%;
        font-size: 16px;
        line-height: 1.4;
    }
    .featured-satisfaction__tagline {
        margin-top: 4px;
    }
}

/* ---------- "Shop by Occasion" (image (3).png) ---------- */
.shop-by-occasion-section .title {
    font-family: 'Bricolage Grotesque', sans-serif;
    font-weight: 400;
    margin-bottom: 24px;
}
.shop-by-occasion-section .collection-info__caption .title {
    font-family: 'Red Hat Display', sans-serif;
}

/* ---------- "Explore Our Greenhouse" (image (6).png) ---------- */
.greenhouse-grid .title {
    font-family: 'Bricolage Grotesque', sans-serif;
    font-weight: 400;
}
.greenhouse-grid .collection-info__caption .title {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 700;
}
.greenhouse-grid .collection-info__subtitle {
    font-weight: 400;
    font-style: italic;
}

/* ---------- "Bestselling Gift Sets & Bundles" (image (7).png) ---------- */
.bestsellers-grid .title {
    font-family: 'Bricolage Grotesque', sans-serif;
    font-weight: 400;
}
.bestsellers-grid .product-details .title {
    font-family: 'Red Hat Display', sans-serif;
    text-transform: none;
}
.bestsellers-grid .stamped-product-reviews-badge {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}
/* Price prefix ("from") reads lighter than the amount next to it, matching
   every price shown across the feedback round - a general refinement of the
   sitewide bold-everything price rule above, not just this section. */
.current_price small {
    font-weight: 400;
}

/* ---------- "Gift a Subscription" banner (image (8).png) ---------- */
.subscription-promo-section .title {
    font-family: 'Bricolage Grotesque', sans-serif;
    font-weight: 400;
}
.subscription-promo__subheading {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
    font-style: italic;
}
.subscription-promo__body {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}
.subscription-promo-section .global-button {
    font-family: 'Red Hat Display', sans-serif !important;
    font-weight: 800 !important;
}
.subscription-promo__slide-label {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 600;
}

/* ---------- "Why Give a Plant?" (image (9).png) ---------- */
.why-give-a-plant .title {
    font-family: 'Bricolage Grotesque', sans-serif;
    font-weight: 400;
}
.why-give-a-plant .text-columns-with-images__subheading {
    font-weight: 400;
}
.why-give-a-plant .text-column h3 {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 600;
}
.why-give-a-plant .text-column .rte-setting {
    font-family: 'Red Hat Display', sans-serif;
}

/* ---------- "Growing Plants. Growing Communities." (image (10).png) ---------- */
.impact-stats-section .title {
    font-family: 'Bricolage Grotesque', sans-serif;
    font-weight: 400;
}
.impact-stats__subheading {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
    font-style: italic;
}
.impact-stats__card-number,
.impact-stats__card-label {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}
.impact-stats__card-label {
    color: var(--brand-olive);
    display: block;
}
.impact-stats__card-link {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 800;
    color: var(--brand-olive);
    /* Was inline right after the label span with no separator, so
       "...Schools" and "About Our Story" ran together as one line. */
    display: block;
    margin-top: 4px;
}

/* ---------- "Growing Plants" on mobile (feedback image (24).png): the stat card no
   longer overlays the photo - it sits centered below the image and the slider dots,
   on the section background (layout lives in sections/impact-stats.liquid). ---------- */
@media only screen and (max-width: 798px) {
    .impact-stats-section {
        background-color: #DEE6D7;
    }
    .impact-stats-section .title {
        font-size: 26px !important;
        line-height: 1.2;
        margin-bottom: 8px;
    }
    .impact-stats-section .impact-stats__subheading {
        font-size: 14px;
        line-height: 1.4;
        margin: 0 auto 16px;
    }
    .impact-stats__slide img,
    .impact-stats__slide .placeholder-svg {
        aspect-ratio: 1.85 / 1;
        border-radius: 0;
    }
    .impact-stats-section .impact-stats__card-number {
        font-size: 32px !important;
        line-height: 1.1;
    }
    .impact-stats-section .impact-stats__card-label {
        font-size: 15px;
        line-height: 1.4;
    }
    .impact-stats-section .impact-stats__card-link {
        margin-top: 12px;
        font-size: 15px;
        font-weight: 700;
    }
    .impact-stats-section .impact-stats__track .owl-dot span {
        width: 6px;
        height: 6px;
        margin: 0 3px;
        transition: width 0.2s ease;
    }
    .impact-stats-section .impact-stats__track .owl-dot.active span {
        width: 18px;
        border-radius: 3px;
    }
}

/* ---------- Footer (image (11).png) ---------- */
/* Logo <img> carries an inline max-width style pinned to the uploaded
   image's own pixel width - override to fill the column like the other
   column content instead of rendering at its (small) native size. */
footer.footer .footer-logo {
    max-width: 100% !important;
    width: 100%;
    height: auto;
}
footer.footer .footer-menu-wrap h6 {
    color: #A1A57C !important;
}
footer.footer .footer_menu ul li a {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}
footer.footer .footer-text .toggle_content,
footer.footer .footer-text .toggle_content p {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}
footer.footer .newsletter_section p {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}
/* Bottom legal strip reads as its own darker band, not a continuation of the
   footer's olive background. footer_credits itself stays full-bleed for this
   (its own .container child - added in the markup - is what keeps the
   copyright/legal-links content aligned with the columns above). */
footer.footer .footer_credits {
    background-color: var(--brand-olive) !important;
}
footer.footer .credits {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 500 !important;
    color: #E7EAD6 !important;
}
footer.footer .footer__legal-links a {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 400;
}

/* ---------- Footer on mobile (feedback image (25).png): everything centered and
   tightened up, a taller rounded email field + full-width terracotta pill button,
   menu titles as large accordion rows with a divider under each, and the social
   icons moved to the very bottom (the in-column copy is hidden). ---------- */
@media only screen and (max-width: 798px) {
    footer.footer > .section {
        padding-top: 32px;
    }
    footer.footer .footer-menu-wrap > .columns,
    footer.footer .footer-menu-wrap > .column {
        margin-bottom: 0;
    }
    footer.footer .footer-menu-wrap [class*="text-align--"] {
        text-align: center;
    }
    footer.footer img.footer-logo {
        display: block;
        width: 72% !important;
        max-width: 300px !important;
        margin: 0 auto 18px !important;
    }
    footer.footer .newsletter_section {
        padding-bottom: 20px;
        text-align: center;
    }
    footer.footer .newsletter_section p {
        margin: 0 0 14px;
        padding: 0;
        font-size: 14px;
        line-height: 1.4;
    }
    footer.footer .newsletter_section p a[href^="tel:"] {
        font-size: 17px;
        line-height: 1.3;
        color: #ffffff;
    }
    footer.footer .newsletter_section p em {
        font-size: 11px;
    }
    footer.footer .newsletter_section p a[href^="mailto:"] {
        font-size: 14px;
        color: #ffffff;
    }
    footer.footer .newsletter_section .social_icons {
        display: none;
    }
    footer.footer .newsletter {
        margin-top: 10px;
    }
    footer.footer .newsletter .contact_email {
        height: 54px;
        margin: 0 0 16px;
        padding: 0 22px;
        border: 0;
        border-radius: 12px;
        background-color: #6A7049;
        font-size: 15px;
    }
    /* #contact_form variant: an older "#contact_form .newsletter-form__sign-up" rule
       (ID specificity) otherwise forces height:30px / inline-block */
    footer.footer .newsletter .newsletter-form__sign-up,
    footer.footer #contact_form .newsletter-form__sign-up {
        display: block;
        width: 100%;
        height: 52px;
        min-height: 52px;
        margin: 0;
        border-radius: 999px;
        background-color: var(--brand-terracotta) !important;
        border-color: var(--brand-terracotta) !important;
        color: #ffffff !important;
        font-size: 15px;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase !important;
    }
    footer.footer .footer_menu {
        margin-top: 0;
    }
    footer.footer .footer-menu-wrap .footer_menu h6 {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin: 0;
        padding: 12px 0 10px;
        border-top: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.18);
        font-family: 'Bricolage Grotesque', sans-serif;
        font-size: 22px;
        font-weight: 400;
        letter-spacing: 0.01em;
        line-height: 1.2;
        text-transform: none;
    }
    footer.footer .footer-menu-wrap .footer_menu h6 > span {
        font-size: 14px;
    }
    footer.footer .footer_menu .toggle_content ul {
        padding: 12px 0 4px;
    }
    footer.footer .footer-social-icons--mobile.columns {
        margin: 24px 0 20px;
        text-align: center;
    }
    footer.footer .footer-social-icons--mobile .social_icons {
        display: flex !important;
        justify-content: center;
        align-items: center;
        gap: 22px;
        margin: 0;
        padding: 0;
    }
    footer.footer .footer-social-icons--mobile .social_icons li {
        padding: 0;
        line-height: 1;
    }
    footer.footer .footer-social-icons--mobile .social_icons a {
        margin: 0;
        font-size: 28px;
        line-height: 1;
        color: #E7EAD6;
    }
    footer.footer .footer-social-icons--mobile .social_icons a svg {
        fill: #E7EAD6;
    }
    /* bottom legal bar: centered, tighter link rows */
    footer.footer .footer_credits {
        margin-top: 0 !important;
        padding-top: 18px;
    }
    footer.footer .footer__legal {
        gap: 10px;
    }
    footer.footer .credits {
        text-align: center !important;
    }
    footer.footer .footer__legal-links {
        justify-content: center;
        gap: 4px 16px;
    }
    footer.footer .footer__legal-links a {
        line-height: 1.6;
    }
}

/* ---------- "Plant Care Academy" (image (13).png) ---------- */
.featured-blog-section .title {
    font-family: 'Bricolage Grotesque', sans-serif;
    font-weight: 400;
}
.featured-blog-section h3.sub_title a {
    font-family: 'Red Hat Display', sans-serif;
    font-weight: 600;
}
.featured-blog-section .blog__read-more-button {
    font-family: 'Red Hat Display', sans-serif !important;
    font-weight: 800 !important;
}

/* ---------- Mega menu "Personalized & Custom" colour bug (image (16).png) ----------
   `a[href*="gift" i]` below was meant to tint only the top-level "GIFTS" tab
   terracotta, but as a descendant selector it also matches any nested link
   whose href happens to contain "gift" (e.g. a "personalized-custom" child
   pointing at a gift collection), turning that submenu heading orange
   instead of the olive every sibling column heading uses. Scope the original
   rule to a direct child of .nav so it only ever reaches the top-level tab. */
.gifts-menu .vertical-menu_submenu > li.has-child > a {
    color: var(--brand-olive) !important;
}

/* ---------- Mobile menu header (design/mobile-menu.png) ----------
   Cart icon used a hardcoded legacy CDN <img> (Icon-03.png) that doesn't match
   the bag glyph the desktop header already renders via the "sb-icon" webfont
   (.main-menu-right .mini_cart span.sb-icon, codepoint \f002). Hide that image
   and draw the same glyph here so mobile and desktop carts correspond. */
#header .top-bar .mini_cart img {
    display: none !important;
}
#header .top-bar .mini_cart:before {
    font-family: "sb-icon" !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    speak: none;
    content: "\f002";
    display: inline-block;
    font-size: 22px;
    line-height: 1;
    color: #ffffff;
    vertical-align: middle;
}
#header .top-bar .mini_cart .cart_count {
    margin-left: 4px;
    vertical-align: middle;
}

/* The base theme centers the mobile logo by absolutely positioning it at a
   fixed 50% width, independent of the hamburger/search/cart it sits between.
   The hamburger (~50px) and search+cart cluster (~100px) aren't the same
   width, so a container that wide reaches under one side or the other and
   the logo image (hardcoded width="150") overlaps it. Put the logo back in
   the normal flex flow, sized to whatever space is actually left between
   its neighbours, so it can never overlap them. */
#header .top-bar a.mobile_logo {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    margin: 0;
    width: auto;
    flex: 1 1 0%;
    min-width: 0;
}
#header .top-bar a.mobile_logo img {
    width: auto;
    max-width: 100%;
    max-height: 28px;
    object-fit: contain;
}

/* ---------- Mobile menu dropdown (design/mobile-menu.png): the site-wide ".dropdown"
   default (#e4f6f2, a pale mint) is meant for the search/mega-menu dropdowns - the
   design's mobile nav panel is the plain off-white the rest of the page uses. Scoped to
   just the mobile nav's own panels so other ".dropdown" instances are untouched. ---------- */
[data-dropdown="mobile_menu"] .dropdown,
#mobile_menu .sublink > ul {
    background: var(--brand-cream-strip) !important;
}

/* ---------- Mobile menu "Monthly Gifts" subscription promo card (design/mobile-menu.png) ----------
   section.settings.main_subscribe_img/main_subscribe_page/main_subscribe_linklist have existed
   in the header schema with real values (Home-TabHover-SUBSCRIBE.png, /pages/subscribe) but were
   never rendered anywhere - snippets/mobile-menu.liquid now renders this card in place of that
   item's normal chevron/drill-down when its handle matches main_subscribe_linklist. */
#mobile_menu .mobile-menu-subscribe {
    padding-bottom: 20px;
}

#mobile_menu .mobile-menu-subscribe__card {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-right: 20px;
}
#mobile_menu .mobile-menu-subscribe__image {
    flex: 0 0 42%;
    max-width: 160px;
    border-radius: 8px;
    overflow: hidden;
}
#mobile_menu .mobile-menu-subscribe__image img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}
#mobile_menu .mobile-menu-subscribe__content {
    flex: 1;
    min-width: 0;
}
#mobile_menu .mobile-menu-subscribe__content p {
    margin: 0 0 12px;
    font-size: 14px;
    line-height: 1.4;
    color: var(--brand-olive);
}
#mobile_menu .mobile-menu-subscribe__button {
    display: inline-block;
    background: var(--brand-terracotta);
    color: #ffffff !important;
    border-radius: 999px;
    padding: 12px 20px;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    max-width: 100%;
}

.menu li a[href]:hover, .menu li a:focus, .menu a[href]:hover span {
    color: var(--brand-terracotta);
}

.mobile_menu_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

/* ---------- Mobile header + hero (feedback image (26).png) ----------
   Order top-down: promo strip, trust bar, then the olive logo row. #header stays
   position:fixed (the theme's open mobile menu relies on it filling the screen),
   but its `top` follows the scroll via --sb-header-top (set in sections/header.liquid)
   so it sits under the promo/trust strips at the top of the page and pins to the top
   of the viewport once they scroll away. The trust-bar's bottom margin reserves the
   space the fixed row covers. ---------- */
@media only screen and (max-width: 798px) {
    .announcement-bar {
        margin-top: 0;
        padding: 7px 12px;
    }
    #header.mobile_nav-fixed--true {
        top: var(--sb-header-top, 0px);
    }
    body.is-active #header {
        top: 0 !important;
    }
    .trust-bar {
        margin-bottom: var(--sb-header-height, 56px);
        padding: 8px 6px;
    }
    /* the old fixed-header spacer; the trust-bar margin above replaces it */
    body #pagecontent {
        padding-bottom: 0 !important;
    }

    /* trust bar: three icons side by side, text wrapping under itself */
    .trust-bar__container {
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;
        gap: 0;
        padding: 0;
    }
    .trust-bar__item,
    .trust-bar__item:not(:last-child) {
        flex: 1 1 0;
        min-width: 0;
        gap: 6px;
        padding: 0 8px;
        font-size: 10.5px;
        line-height: 1.25;
        white-space: normal;
    }
    .trust-bar__item:not(:last-child)::after {
        display: block;
        right: 0;
        height: 30px;
    }
    .trust-bar__icon {
        width: 22px;
        height: 22px;
    }
    .trust-bar__item small {
        display: none;
    }

    /* logo row: the hamburger and the search+cart cluster get the same fixed width,
       so the logo (still in the flex flow, so it can't overlap them) is truly centered
       and gets the rest of the row - bigger than before; search sits right by the cart */
    #header .top-bar {
        height: 56px;
        align-items: center;
    }
    #header .top-bar .mobile_nav {
        flex: 0 0 76px;
        width: 76px;
        height: 56px;
        margin-left: 12px;
    }
    #header .top-bar a.mobile_logo {
        display: flex;
        justify-content: center;
        padding: 0 4px;
    }
    #header .top-bar a.mobile_logo img {
        max-width: min(100%, 180px);
        max-height: none;
        height: auto;
    }
    #header .top-bar .top-bar--right {
        flex: 0 0 88px;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        height: 56px;
        padding-right: 6px;
        box-sizing: border-box;
    }
    #header .top-bar .top-bar--right .icon-search.dropdown_link {
        display: flex;
        align-items: center;
        height: 56px;
        padding: 0;
        margin: 0;
    }
    #header .top-bar .top-bar--right .mini_cart {
        display: flex;
        align-items: center;
        height: 56px;
        margin-left: 6px;
        padding: 0;
    }

    /* hero: caption below the photo, not on the faces. The mobile banner image has a
       white band across roughly its bottom 45%; pull the caption up into it. */
    .homepage-slideshow.single-image .flickity-viewport {
        height: auto !important;
    }
    .homepage-slideshow.single-image .flickity-slider,
    .homepage-slideshow.single-image .gallery-cell {
        position: relative !important;
        transform: none !important;
    }
    .homepage-slideshow.single-image .caption {
        position: relative !important;
        top: auto !important;
        bottom: auto !important;
        transform: none !important;
        margin-top: -56vw;
        padding: 0 16px 4px;
    }
    /* compact caption so the "As Seen In" slideshow below is visible on first load */
    .homepage-slideshow .caption-content {
        row-gap: 6px !important;
        column-gap: 8px !important;
    }
    .homepage-slideshow .caption-content .headline {
        font-size: 20px !important;
        line-height: 1.2 !important;
    }
    .homepage-slideshow .caption-content .subtitle {
        font-size: 13px !important;
        line-height: 1.35 !important;
    }
    .homepage-slideshow .caption-content .subtitle p {
        margin: 0;
    }
    .homepage-slideshow .caption-content .action_button {
        flex: 0 0 auto;
        width: calc(50% - 4px) !important;
        max-width: 160px !important;
        height: 40px !important;
        min-height: 0;
        margin: 2px 0 0 !important;
        padding: 4px 10px !important;
        border-radius: 999px !important;
        font-size: 13px !important;
        line-height: 1.15 !important;
    }
}
