/* Custom CSS generated by p9customcss */
@font-face {
    font-family: "Open Sans";
    src: url("/fonts/OpenSans-VariableFont_wdth,wght.woff2") format("woff2");
    font-weight: 300 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Open Sans";
    src: url("/fonts/OpenSans-Italic-VariableFont_wdth,wght.woff2") format("woff2");
    font-weight: 300 500;
    font-style: italic;
    font-display: swap;
}
/* ======================= no
@font-face {
    font-family: "Exo";
    src: url("/fonts/Exo-VariableFont_wght.woff2") format("woff2");
    font-weight: 300 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
  font-family: "Carattere";
  src: url("/fonts/Carattere-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
    font-family: "Roboto Flex";
    src: url("/fonts/RobotoFlex-VariableFont_GRAD,XOPQ,XTRA,YOPQ,YTAS,YTDE,YTFI,YTLC,YTUC,opsz,slnt,wdth,wght.woff2") format("woff2-variations");
    font-weight: 100 1000;
    font-stretch: 25% 151%;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Jura";
    src: url("/fonts/Jura-VariableFont_wght.woff2") format("woff2");
    font-weight: 300 700;
    font-style: normal;
}
@font-face {
    font-family: "Advent Pro";
    src: url("/fonts/AdventPro-VariableFont_wdth,wght.woff2") format("woff2");
    font-weight: 100 900;
    font-style: normal;
}
@font-face {
    font-family: "Advent Pro";
    src: url("/fonts/AdventPro-Italic-VariableFont_wdth,wght.woff2") format("woff2");
    font-weight: 100 900;
    font-style: italic;
}
========================= */

:root, [data-bs-theme = light] {
  --panacea3: #289DC8;
  --panacea3-rgb: 40,157,200;
  --panacea3-yes: #28bDC8;
  --panacea3-yes-rgb: 40,189,200;
  --panacea3-color: var(--bs-gray-500);
  --panacea3-color-faint: var(--bs-gray-600);
  --panacea3-bg: linear-gradient(89deg, #080808 0%, #202020 50%, #080808 100%);
  --panacea3-bg-2: #202020;
  --panacea3-header-color: var(--bs-gray-500);
  --panacea3-header-hover-color: var(--panacea3);
  --panacea3-header-heading-color: var(--bs-gray-400);
  --panacea3-header-bg: #000;
  --panacea3-footer-color: var(--bs-gray-500);
  --panacea3-footer-hover-color: var(--bs-white);
  --panacea3-footer-heading-color: var(--bs-gray-400);
  --panacea3-footer-bg: #000;
  
  --edc: #531d2b;
  --edc-rgb: 83, 29, 43;
  --edc-yes: #733d4b;
  --edc-yes-rgb: 115, 61, 75;
  --edc-color: var(--bs-gray-900);
  --edc-color-faint: var(--bs-gray-800);
  --edc-bg: #fff;
  --edc-bg-2: #fff8f9;
  --edc-header-color: var(--bs-gray-500);
  --edc-header-hover-color: var(--bs-white);
  --edc-header-heading-color: var(--bs-gray-400);
  --edc-header-bg: var(--edc);
  --edc-footer-color: var(--bs-gray-500);
  --edc-footer-hover-color: var(--bs-white);
  --edc-footer-heading-color: var(--bs-gray-400);
  --edc-footer-bg: var(--edc);

  --theme: var(--edc);
  --theme-rgb: var(--edc-rgb);
  --theme-yes: var(--edc-yes);
  --theme-yes-rgb:  var(--edc-yes-rgb);
  --theme-color: var(--edc-color);
  --theme-color-faint: var(--edc-color-faint);
  --theme-bg: var(--edc-bg);
  --theme-bg-2: var(--edc-bg-2);
  --theme-header-color: var(--edc-header-color);
  --theme-header-hover-color: var(--edc-header-hover-color);
  --theme-header-heading-color: var(  --edc-header-heading-color);
  --theme-header-bg: var(--edc-header-bg);
  --theme-footer-color: var(--edc-footer-color);
  --theme-footer-hover-color: var(--edc-footer-hover-color);
  --theme-footer-heading-color: var(--edc-footer-heading-color);
  --theme-footer-bg: var(--edc-footer-bg);

  --bs-body-color: var(--theme-color);
  --bs-secondary-color: var( --theme-color-faint);

  --bs-body-bg:  var(--theme-bg-2);

  --bs-primary: var(--theme);
  --bs-border-color: var(--bs-body-color);
  --bs-link-color: var(--theme);
  --bs-link-color-rgb: var(--theme-rgb);
  --bs-link-hover-color: var(--theme-yes);
  --sticky-atc-pad: 4rem;
}
img, svg { vertical-align: baseline; }
button { color: var(--bs-body-color) }
a:hover { --bs-link-color-rgb: var(--theme-yes-rgb); }

body {
  --bs-body-font-family: "Open Sans", sans-serif;
  --bs-body-font-size: calc(0.9rem + 0.12vw);
  --bs-body-font-weight: 400;
  font-family: var(--bs-body-font-family);
  background: var(--theme-bg)
}

#wrapper, .wrapper  { padding-bottom: 2em; }

/* ============================ fonts ============================ */

h2 { font-size: 1.1rem }
.product-miniature .product-miniature__title { font-size: larger; }
.block-category #category-description, .email-subscription .email-subscription__label, .footer .footer__block__title, .page-product .product__prices, .dropdown-menu, .page-product .product__tax-info, .rich-text .h3, .rich-text h3, .small, small, h4, .rich-text .h2, .rich-text h2, .rich-text p, .rich-text ul { font-size: revert }
.btn { --bs-btn-font-size: revert; }
@media (min-width: 1200px) { .h2, h2 { font-size: revert; } }
@media (max-width: 767.98px) { .product-miniature.productlist-card .productlist-card__summary h1, .product-miniature.productlist-card .productlist-card__summary h2, .product-miniature.productlist-card .productlist-card__summary h3, .product-miniature.productlist-card .productlist-card__summary h4, .product-miniature.productlist-card .productlist-card__summary h5, .product-miniature.productlist-card .productlist-card__summary h6, .product-miniature.productlist-card .productlist-card__summary p, .product-miniature.productlist-card .productlist-card__summary li, .product-miniature.productlist-card .productlist-card__summary small { font-size: revert; } }
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { line-height: revert; }

/* ============================ colors ============================ */

.header a:not(.dropdown-item):not(.btn), .main-menu__mobile .menu a, .main-menu__mobile .menu li:not(.h5),
.order-confirmation__items .item .item__prices div, .order-confirmation__items .item .item__title, .address__alias, .address__content, .checkout__steps .nav-tabs .checkout__steps--current .nav-link.active, .page-product .product__images__modal-opener, .col-form-label, .form-label, .cart-summary, .cart-summary .card-footer, .cart__item .product-line__title, .subcategory__name, .accordion-button, .accordion-item, .card, .breadcrumb a, .rich-text .h1, .rich-text .h2, .rich-text .h3, .rich-text .h4, .rich-text .h5, .rich-text .h6, .rich-text h1, .rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5, .rich-text h6, .form-control, .block-category #category-description, .breadcrumb__wrapper { color: inherit; background: inherit; }
.bg-light { background: inherit !important }

/* ============================ product list ============================ */

@media (max-width: 767.98px) { .product-miniature.productlist-card > .card.productlist-card__inner { gap: revert; } }
.product-miniature .product-miniature__infos__top { padding-top: revert; }
.product-miniature .product-miniature__quickview_touch, .product-miniature .product-miniature__quickview_button { display: none; }
.product-miniature .product-miniature__image { margin-bottom: .5em; }

.product-miniature .product-miniature__infos__bottom, .product-miniature .product-miniature__infos__top, .product-miniature .product-miniature__quickview, .product__details, .product__features { background-color: unset; }
.accordion-button:not(.collapsed) { background-color: inherit; color: inherit; }

.product-miniature.productlist-card .productlist-card__quantity-button .btn, .product-miniature.productlist-card .productlist-card__quantity-button input.form-control, .product-miniature.productlist-card .productlist-card__cart-btn { min-height: revert; }

.detail { border-bottom: unset; }

.breadcrumb {
    --bs-breadcrumb-divider-color: var(--bs-gray-700);
    --bs-breadcrumb-item-active-color: var(--bs-gray-700);
}

.dropdown-menu {
    --bs-dropdown-color: var(--bs-body-color);
    --bs-dropdown-bg: var(--bs-body-bg);
    --bs-dropdown-border-color: var(--bs-dropdown-color);
    --bs-dropdown-link-color: var(--bs-dropdown-color);
    --bs-dropdown-link-hover-color: var(--theme-yes);
}

.btn { --bs-btn-border-radius: 2em; }
.btn:hover { border-color: var(--theme-yes); }
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--theme);
    --bs-btn-border-color: var(--theme);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--theme-yes);
    --bs-btn-hover-border-color: var(--theme-yes);
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--theme-yes);
    --bs-btn-active-border-color: var(--theme-yes);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--bs-gray-500);
    --bs-btn-disabled-border-color: var(--bs-gray-500);
}
.btn-outline-primary {
    --bs-btn-color: var(--theme);
    --bs-btn-border-color: var(--theme);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--theme-yes);
    --bs-btn-hover-border-color: var(--theme-yes);
    --bs-btn-focus-shadow-rgb: 13,110,253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--theme);
    --bs-btn-active-border-color: var(--theme);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0,.125);
    --bs-btn-disabled-color: var(--theme);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--theme);
    --bs-gradient: none;
}
.btn-close {
    background: var(--bs-gray-300) var(--bs-btn-close-bg) center / 1em auto no-repeat;
    border-radius: 1em;
}

#boxnow-popup-content-wrapper { padding: 1em 0; }
#boxnow-map-button { font-size: revert; line-height: revert; color: inherit; padding: .3em; }

.header {
  --header-bg: var(--theme-header-bg);
  --header-color: var(--theme-header-color);
  --header-top-bg: var(--header-bg);
  --header-top-color: var(--header-color);

  color: var(--header-color);
  padding: 0;
  z-index: 101; /* above paypal buttons */
}
.header-top {
    --header-top-border-bottom: none;
}
.header-bottom {
    border-bottom: unset;
}
.header-bottom .navbar-brand {
    max-width: 125px;
    padding: 5px 0;
}
.header a:not(.dropdown-item):not(.btn):hover, .header a:not(.dropdown-item):not(.btn):hover i {
    color: var(--theme-header-hover-color);
}

.main-menu__tree>li .menu-container a[data-depth="1"] {
    color: inherit;
    font-weight: inherit;
}

#language-selector.form-select {
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
}
.form-text, .product-miniature .product-miniature__regular-price { color: var(--bs-secondary-color) }
.form-select:focus {
    border-color: var(--bs-border-color);
    box-shadow: 0 0 0.25rem rgba(var(--theme-rgb), .25);
}
.header-block--active .header-block, .header-block--active .header-block__icon {
    color: var(--theme-header-color);
}

.offcanvas {
  --bs-offcanvas-color: var(--theme-color);
  --bs-offcanvas-bg: var(--theme-bg-2);
}

.p9marquee { background: var(--bs-body-bg) }

@media (min-width: 768px) {
    .ratio-homeSlider {
        --bs-aspect-ratio: 33.33333%;
    }
}

.search-widgets__dropdown { z-index: 1; } /* otherwise marquee text scrolls above search results */

.carousel .carousel-control-prev, .carousel .carousel-control-next { display: none; }

.form-control:focus, .modal .product-comment-modal .form-control:focus, .modal .product-comment-modal textarea:focus {
    border-color: var(--theme);
    box-shadow: 0 0 0 2px rgba(var(--theme-rgb), .5);
}
.form-check-input:checked {
    background-color: var(--theme);
    border-color: var(--theme);
}

.productlist-card__summary .awards { display: none; }
/*.product-name, .page-product .product__name, .product-miniature__title, .product-line__title {
    font-family: 'Exo', sans-serif;
    font-weight: 400;
}*/
.page-product .product__images .carousel { border-radius: unset; }
.thumbnails__container .thumbnail img {
    border: unset;
    border-radius: unset;
}
.thumbnails__container .thumbnail.active img {
    border: 2px solid var(--theme);
}
.accordion-button { text-transform: uppercase; }

#content-wrapper { padding-bottom: inherit; }

#content-wrapper .page-footer { margin-top: revert; }

@media (min-width: 768px) {
    .col-md-5 {
        align-content: center;
    }
}

.email-subscription {
    background-color: inherit;
    padding: 2.5rem 1rem;
}
.email-subscription .email-subscription__label {
/*    display: none;*/
    color: inherit;
    font-size: inherit;
    line-height: inherit;
}
.email-subscription .email-subscription__content__inputs .btn-primary {
    color: inherit;
    text-transform: inherit;
    background: inherit;
    border: 1px solid white;
}
.email-subscription .email-subscription__content__inputs input[type = email] {
    border: 1px solid var(--bs-gray-300);
    color: inherit;
    background: inherit;
}
input[name="email"]::placeholder { color: inherit; }

#footer, .footer {
    --footer-background-color: var(--theme-footer-bg);
    --footer-color: var(--theme-footer-color);
    --footer-hover-color: var(--theme-footer-hover-color);
    --footer-heading-color: var(--theme-footer-heading-color);

    color: var(--footer-color);
    background: var( --footer-background-color);
}
@media (max-width: 767.98px) {
    .footer .footer__block {
        margin-bottom: 2em;
    }
}
.footer .footer__block__title { text-transform: uppercase; }
.footer .footer__block__content-list a { padding: 1rem .25rem .25rem 0; }
.footer__main .row { justify-content: space-between; }

.copyright { display: none; }
.text-justify { text-align:justify; }
.form-check-label em, #epacart .epacart__shipping-line, p.asterisk { font-size: smaller; }
.highlight {
    padding: 0 0.5em;
    border-left: 3px solid var(--theme);
}

#custom-text, #custom-text .container, #custom-text .container-fluid, #custom-text .container-lg, #custom-text .container-md, #custom-text .container-sm, #custom-text .container-xl, #custom-text .container-xxl { padding: 0; }

.snailsecretion1infotable, .snailsecretion2infotable {
  margin: 1em auto;
  table-layout: auto;
  color: #289DC8;
  text-align: left;
  border-radius: 0.5em;
  background-image: linear-gradient(to right, #d7d7d7, white, #d7d7d7); }
  .snailsecretion1infotable tr:first-child td, .snailsecretion2infotable tr:first-child td {
    text-align: right;
    background-color: lightgray;
    border-radius: 0.3em;
    font-weight: bold; }
  .snailsecretion1infotable tr:nth-child(2), .snailsecretion2infotable tr:nth-child(2) {
    text-align: right; }
  .snailsecretion1infotable tr:nth-child(3) td, .snailsecretion2infotable tr:nth-child(3) td {
    background-color: lightgray;
    border-radius: 0.3em;
    font-weight: bold; }
  .snailsecretion1infotable tr td:nth-child(2), .snailsecretion2infotable tr td:nth-child(2) {
    text-align: right; }
  .snailsecretion1infotable td, .snailsecretion2infotable td {
    padding: 0.1em 0.5em; }
  .snailsecretion1infotable tr:nth-child(6), .snailsecretion1infotable tr:nth-child(7), .snailsecretion1infotable tr:nth-child(8), .snailsecretion2infotable tr:nth-child(6), .snailsecretion2infotable tr:nth-child(7), .snailsecretion2infotable tr:nth-child(8) {
    animation: shineit 3s linear infinite; }
.snailsecretion2infotable {
  background-image: linear-gradient(to right, #dbd4a6, white, #dbd4a6); }
  .snailsecretion2infotable tr:first-child td, .snailsecretion2infotable tr:nth-child(3) td {
    background-color: #dbd4a6; }
.rich-text table>:not(caption)>*>*, .table>:not(caption)>*>* {
    background-color: unset;
    border-bottom-width: 0;
    box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)));
    color: unset;
    padding: inherit;
}
th, thead, tr {
    padding: 0 5px;
}
/*.productfont { font-family: 'Exo', sans-serif;font-weight:500;font-style:normal;margin:0.3em 0 0 }*/
.motofont { font-family: 'Ubuntu', sans-serif;font-weight:300;font-style:italic }

.cart__item .product-line__title, .cart-summary__products .cart-summary__product__body .product-name a {
    font-weight: 500;
}

#loyalty_cart, #loyalty_product {
    font-size: smaller;
    background: inherit;
    border: 1px solid;
}
#loyalty_cart span.material-icons, #loyalty_product span.material-icons {
/*    font-size: 40px;*/
}

.section-title {
/*    font-size: inherit;*/
    font-weight: 500;
    margin: 0;
}




.a-whole { position: relative; }
.a-whole a {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.flexrow {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}
.fp-single-container {
  display: flex;
  width: 100%;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  border-radius: 30px;
  transition: 0.5s;
  margin: 0.5em 0;
  padding: 15px;
  text-align: center;
  font-size: 1.1em;
/*  color: #afafaf;*/
  border-color: #289DC8;
  box-shadow: 0 0 5px 1px #289DC8;
}
  .fp-single-container img {
    max-width: 60vw;
    width: 100%;
}
  .fp-single-container:hover {
    box-shadow: 0 0 15px 1px #289DC8;
}
.ford1, .ford2, .fp-ord1, .fp-ord2 {
  order: 1;
}
@media (min-width: 500px) {
  .fp-container, .fp-single-container {
    flex-direction: row;
    width: 95%;
    margin: 0.5em;
  }
  .fp-container img, .fp-single-container img { max-width: 30vw; }
  .fp-container div, .fp-single-container div { width: 50%; }
  .fp-ord2 { order: 2; }
}

@media (min-width: 1024px) {
  .flexrow { flex-direction: row; }
  .ford2 { order: 2; }
}



.linefont {
  font-family: 'Carattere', cursive;
  font-weight: 400;
/*  font-size: 1.5em;*/
  margin: 0 0.05em 0 0.1em; }

.silverline {
  color: silver;
  font-size: x-large;
  animation: shineit 5s linear infinite; }

.goldline {
  color: #e8c258;
  font-size: x-large;
  animation: shineit 5s linear infinite; }

.snailharmony {
  color: lightgreen;
  font-size: x-large;
  animation: shineit 5s linear infinite; }

.mysterious {
  color: #2C45DC;
  font-size: x-large;
  animation: shineit 5s linear infinite; }

.snailfirstaid {
  color: #E52323;
  animation: shineit 5s linear infinite; }
/*
.productfont {
  font-family: 'Exo', sans-serif;
  font-weight: 400;
  font-style: normal;
  margin: 0.3em 0 0; }

.motofont {
  font-family: 'Ubuntu', sans-serif;
  font-weight: 300;
  font-style: italic; }
*/

.ps_checkout-payment-option label {
    display: flex !important;
    line-height: normal;
}

/*
.material-icons { margin-right: 5px }
*/

#ps_checkout-payment-method-logo-block-container, #payment-option-2-container .visa-logo, #payment-option-2-container .mastercard-logo, #payment-option-2-container .amex-logo { display: none }



#epacart .epacart__overlay { background: rgba(0, 0, 0, 0.35) }
#epacart .epacart__panel { background: var(--bs-body-bg) }
#epacart .epacart__shipping-lines { color: var(--theme-bg-2) }
#epacart .epacart__qty-label { color: unset }
.epafarmbooking-box { border: 1px solid; background: inherit }
.epafarmbooking-help { color: inherit }


/* ================================
     = Sticky ATC bar (layout + overflow-safe) =
     ================================ */

body.has-sticky-atc { padding-bottom: 3em; }

/* Hide sticky bar when any Bootstrap offcanvas OR modal is open */
body.overlay-open #sticky-atc-bar { display: none !important; }

#sticky-atc-bar {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 1030;               /* not relied upon; overlay-open hides it */
  background: var(--bs-black);
  border-top: 1px solid var(--bs-gray-900);
  border-radius: 1em;
  padding: 0.4em 0px;

  box-sizing: border-box;
  max-width: 100vw;
  overflow: hidden;

  transform: translateY(110%);
  transition: transform .3s ease;
}

#sticky-atc-bar.is-visible { transform: translateY(0); }

#sticky-atc-bar .sticky-atc-row {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

#sticky-atc-bar .sticky-qty {
  flex: 0 0 auto;
  max-width: 140px;
}

#sticky-atc-bar .sticky-qty .btn {
  padding-left: 10px;
  padding-right: 10px;
}

#sticky-atc-bar .sticky-qty-input {
  width: 52px;
  min-width: 48px;
  text-align: center;
  padding-left: 6px;
  padding-right: 6px;
}

/* Content aligns to theme container widths (Bootstrap 5-style) */
#sticky-atc-bar .sticky-atc-row {
  display: flex;
  align-items: center;
  gap: 8px;

  width: 100%;
  box-sizing: border-box;

  /* center */
  margin-left: auto;
  margin-right: auto;

  /* same horizontal padding as containers */
  padding-left: calc(var(--bs-gutter-x, 1.5rem) * .5);
  padding-right: calc(var(--bs-gutter-x, 1.5rem) * .5);
}

/* Bootstrap container max-widths */
@media (min-width: 576px)  { #sticky-atc-bar .sticky-atc-row { max-width: 540px; } }
@media (min-width: 768px)  { #sticky-atc-bar .sticky-atc-row { max-width: 720px; } }
@media (min-width: 992px)  { #sticky-atc-bar .sticky-atc-row { max-width: 960px; } }
@media (min-width: 1200px) { #sticky-atc-bar .sticky-atc-row { max-width: 1140px; } }
@media (min-width: 1400px) { #sticky-atc-bar .sticky-atc-row { max-width: 1320px; } }
