#snackys-tpl .form-group label,
#snackys-tpl label.control-label {
    font-weight: var(--font-weight-regular, 400);
}

#snackys-tpl .form-group:has(> .form-control, > select, > textarea) {
    margin-top: var(--spacing-3, 12px);
}

#snackys-tpl .form-group:has(> .form-control, > select, > textarea) > label:not(.sr-only):not([hidden]) {
    position: absolute;
    top: 0;
    left: var(--spacing-3, 12px);
    z-index: 2;
    display: inline-block;
    width: auto;
    max-width: calc(100% - 24px);
    margin: 0;
    padding: 0 var(--spacing-1, 4px);
    overflow: hidden;
    background: var(--inp-b, var(--color-white, #fff));
    color: var(--color-neutral, #242424);
    font-size: var(--font-size-xs, 13px);
    font-weight: var(--font-weight-regular, 400);
    line-height: 1;
    white-space: nowrap;
    text-overflow: ellipsis;
    pointer-events: none;
    transform: translateY(-50%);
}

#snackys-tpl .apply-coupon.panel-body .form-group,
#snackys-tpl .apply-coupon.panel-body .input-group,
#snackys-tpl #shipping-estimate-form .form-inline,
#snackys-tpl #shipping-estimate-form .form-group,
#snackys-tpl #shipping-estimate-form .form-inline > .form-control,
#snackys-tpl #shipping-estimate-form .input-group {
    width: 100%;
    max-width: 100%;
}

#snackys-tpl .apply-coupon.panel-body .input-group,
#snackys-tpl #shipping-estimate-form .input-group {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
}

#snackys-tpl .apply-coupon.panel-body .input-group > .form-control,
#snackys-tpl #shipping-estimate-form .input-group > .form-control {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    max-width: none;
}

#snackys-tpl .apply-coupon.panel-body .input-group-btn,
#snackys-tpl #shipping-estimate-form .input-group-btn {
    flex: 0 0 auto;
    width: auto;
}

#snackys-tpl .btn:hover,
#snackys-tpl .btn:focus,
#snackys-tpl .btn:focus-visible,
#snackys-tpl .btn:active,
#snackys-tpl .consent-btn:hover,
#snackys-tpl .consent-btn:focus {
    box-shadow: none;
}

#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout),
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):visited {
    background: var(--color-primary-100) !important;
    border-color: var(--color-primary-100) !important;
    color: var(--color-white) !important;
}

#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout) svg {
    fill: var(--color-white) !important;
}

#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):hover,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):focus,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):focus-visible {
    background: var(--color-primary-75) !important;
    border-color: var(--color-primary-75) !important;
    color: var(--color-white) !important;
}

#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):hover svg,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):focus svg,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):focus-visible svg {
    fill: var(--color-white) !important;
}

#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):active,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout).active,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):active:focus,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout).active:focus,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout).show {
    background: var(--color-primary-100) !important;
    border-color: var(--color-primary-100) !important;
    color: var(--color-white) !important;
}

#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):active svg,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout).active svg,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout).show svg {
    fill: var(--color-white) !important;
}

#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout):disabled,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout).disabled,
#snackys-tpl .btn.btn-primary:not(.sn-addBasket):not(.to-product-card__add):not(.to-crossselling-card__add):not(.to-stck-bskt__submit):not(.to-cart-checkout)[disabled] {
    background: var(--color-primary-50) !important;
    border-color: var(--color-primary-50) !important;
    color: var(--color-white) !important;
    opacity: 0.7;
}

#snackys-tpl .sn-addBasket,
#snackys-tpl .to-pdp__basket .submit,
#snackys-tpl #stck-bskt-add,
#snackys-tpl .to-stck-bskt__submit,
#snackys-tpl .to-product-card__add,
#snackys-tpl .to-crossselling-card__add,
#snackys-tpl .to-header-saved__products,
#snackys-tpl .to-search-cart,
#snackys-tpl .to-cart-checkout {
    --btn-pr-b: var(--color-success);
    --btn-pr-r: var(--color-success);
    --btn-pr-t: var(--color-white);
    --btn-pr-b-h: var(--color-success-hover);
    --btn-pr-r-h: var(--color-success-hover);
    --btn-pr-t-h: var(--color-white);
    background: var(--color-success) !important;
    border-color: var(--color-success) !important;
    color: var(--color-white) !important;
}

#snackys-tpl .sn-addBasket:hover,
#snackys-tpl .sn-addBasket:focus,
#snackys-tpl .sn-addBasket:focus-visible,
#snackys-tpl .to-pdp__basket .submit:hover,
#snackys-tpl .to-pdp__basket .submit:focus,
#snackys-tpl .to-pdp__basket .submit:focus-visible,
#snackys-tpl .to-stck-bskt__submit:hover,
#snackys-tpl .to-stck-bskt__submit:focus,
#snackys-tpl .to-stck-bskt__submit:focus-visible,
#snackys-tpl .to-product-card__add:hover,
#snackys-tpl .to-product-card__add:focus,
#snackys-tpl .to-product-card__add:focus-visible,
#snackys-tpl .to-crossselling-card__add:hover,
#snackys-tpl .to-crossselling-card__add:focus,
#snackys-tpl .to-crossselling-card__add:focus-visible,
#snackys-tpl .to-header-saved__products:hover,
#snackys-tpl .to-header-saved__products:focus,
#snackys-tpl .to-header-saved__products:focus-visible,
#snackys-tpl .to-search-cart:hover,
#snackys-tpl .to-search-cart:focus,
#snackys-tpl .to-search-cart:focus-visible,
#snackys-tpl .to-cart-checkout:hover,
#snackys-tpl .to-cart-checkout:focus,
#snackys-tpl .to-cart-checkout:focus-visible {
    background: var(--color-success-hover) !important;
    border-color: var(--color-success-hover) !important;
    color: var(--color-white) !important;
}

#snackys-tpl .sn-addBasket:active,
#snackys-tpl .sn-addBasket.active,
#snackys-tpl .to-pdp__basket .submit:active,
#snackys-tpl .to-pdp__basket .submit.active,
#snackys-tpl .to-stck-bskt__submit:active,
#snackys-tpl .to-stck-bskt__submit.active,
#snackys-tpl .to-product-card__add:active,
#snackys-tpl .to-product-card__add.active,
#snackys-tpl .to-crossselling-card__add:active,
#snackys-tpl .to-crossselling-card__add.active,
#snackys-tpl .to-header-saved__products:active,
#snackys-tpl .to-search-cart:active,
#snackys-tpl .to-cart-checkout:active {
    background: var(--color-success) !important;
    border-color: var(--color-success) !important;
    color: var(--color-white) !important;
}

#snackys-tpl {
    --succ-b: var(--color-success-soft, #e5f7ea);
    --succ-r: var(--color-success, #00b831);
    --succ-t: var(--color-success-text, #00671c);
}

#snackys-tpl .alert-success {
    background: var(--color-success-soft, #e5f7ea);
    border-color: var(--color-success, #00b831);
    color: var(--color-success-text, #00671c);
}

#snackys-tpl .alert-success hr {
    border-top-color: var(--color-success, #00b831);
}

#snackys-tpl .alert-success .alert-link,
#snackys-tpl .alert-success a:not(.btn) {
    color: var(--color-success-text, #00671c);
}

#snackys-tpl .bskt .qty-wrapper,
#snackys-tpl .bskt .qty-wrapper .panel-body,
#snackys-tpl .bskt .form-inline.flx-je,
#snackys-tpl .bskt .choose_quantity {
    display: flex;
    justify-content: flex-end;
    width: auto;
    max-width: none;
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

#snackys-tpl .bskt .qty-btns {
    display: grid;
    grid-template-columns: 28px 36px 28px;
    width: 92px;
    height: 40px;
    overflow: hidden;
    border: 2px solid var(--color-tertiary-50);
    border-radius: var(--border-radius-sm, 8px);
}

#snackys-tpl .bskt .qty-btns .btn,
#snackys-tpl .bskt .qty-btns input {
    min-width: 0;
    height: 100%;
    margin: 0;
    padding: 0;
    color: var(--color-neutral, #242424);
    background: var(--color-white, #fff);
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

#snackys-tpl .bskt .qty-btns .btn {
    display: flex;
    align-items: center;
    justify-content: center;
}

#snackys-tpl .bskt .qty-btns .btn svg {
    display: block;
    flex: 0 0 auto;
    width: 14px;
    height: 14px;
    fill: none;
    stroke: currentColor;
}

#snackys-tpl .bskt .qty-btns .qty-sub svg {
    transform: translateX(1px);
}

#snackys-tpl .bskt .qty-btns .qty-add svg {
    transform: translateX(-1px);
}

#snackys-tpl .bskt .qty-btns .qty-sub:disabled {
    opacity: 0.4;
    pointer-events: none;
}

#snackys-tpl .bskt .qty-btns input {
    border-right: 2px solid var(--color-tertiary-50);
    border-left: 2px solid var(--color-tertiary-50);
    font-size: 16px;
    font-weight: var(--font-weight-bold, 700);
    line-height: 1;
    text-align: center !important;
    -moz-appearance: textfield;
}

#snackys-tpl .bskt .qty-btns input::-webkit-inner-spin-button,
#snackys-tpl .bskt .qty-btns input::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

#snackys-tpl select {
    padding-right: 2.75rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23242424' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.85rem center;
    background-size: 20px 20px;
}

#snackys-tpl .to-chevron {
    display: block;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform .18s ease;
}

#consent-banner {
    max-width: var(--to-header-container, 1504px) !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

#consent-manager {
    bottom: 0 !important;
}

#consent-banner-btn-all,
#consent-manager .consent-btn-tertiary {
    background: var(--csm-btn-a-b);
    border: 1px solid var(--csm-btn-a-r);
    color: var(--csm-btn-a-l);
}

#consent-manager .consent-btn-tertiary,
#consent-manager .consent-btn-tertiary:active {
    background: #022594;
    border: 1px solid #022594;
    color: var(--csm-btn-a-l);
}

#consent-manager .consent-btn-tertiary:hover,
#consent-manager .consent-btn-tertiary:focus {
    background: var(--color-primary-75) !important;
    border: 1px solid var(--color-primary-75) !important;
    color: var(--csm-btn-a-l);
}

.consent-accept + div {
    display: none !important;
}

.consent-accept ~ div {
    width: 100% !important;
}

#consent-manager .consent-banner-description > span:not(.mx-1) {
    font-size: var(--font-size-h5);
}

#consent-manager .consent-banner-description > p,
#consent-manager .consent-banner-description > a,
#consent-manager .consent-banner-description > span.mx-1,
.consent-banner-actions button {
    font-size: 16px !important;
}

#consent-manager p i {
    font-style: normal !important;
}

#consent-manager p #consent-banner-btn-settings,
#consent-manager p #consent-banner-btn-close {
    border: none !important;
}
