:root {
  --color-primary: #000;
  --color-primary-hover: #222;
}



/* Frame for header */
.pp__topbar--row ~ .bwf-align-wrap-wide {
  /* border: 3px solid red; */
}

#pp__slider,
.pp__hero:first-child,
#site-content,
body:is(.post-type-archive-product, .single-product, .tax-product_cat) header:has(+ #site-content, + .woocommerce),
.pp__topbar--row ~ .bwf-align-wrap-wide {
  position: relative;
}

body:is(.post-type-archive-product, .single-product, .tax-product_cat) header:has(+ #site-content, + .woocommerce) {
  margin-bottom: 50px;
}

#pp__slider::after,
.pp__hero:first-child::after,
#pp__slider::before,
.pp__hero:first-child::before,
*:not(.woocommerce) > #site-content:not(:has(.woocommerce))::after,
body:is(.post-type-archive-product, .single-product, .tax-product_cat) header:has(+ #site-content, + .woocommerce)::after,
.pp__topbar--row ~ .bwf-align-wrap-wide::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 2;
}

#pp__slider::after,
.pp__hero:first-child::after,
#site-content::after,
body:is(.post-type-archive-product, .single-product, .tax-product_cat) header:has(+ #site-content, + .woocommerce)::after,
.pp__topbar--row ~ .bwf-align-wrap-wide::after {
  background: transparent url(grunge-border.svg) repeat-x top left;
}

body:is(.post-type-archive-product, .single-product, .tax-product_cat) header:has(+ #site-content, + .woocommerce)::after {
  translate: 0 calc(100% - 1px);
}

#pp__slider::before,
.pp__hero:first-child::before {
  background: transparent url(grunge-border.svg) repeat-x top left;
  transform: rotate(180deg);
}

/* Spider Animation CSS - Based on CSSnowflakes */
/* Falling spiders animation for dark theme */

.spider-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: 9999;
  overflow: hidden;
}

.spider {
  position: absolute;
  user-select: none;
  pointer-events: none;
  /* use an explicit box so the bat image can be sized consistently */
  width: var(--spider-size, 32px);
  height: var(--spider-size, 32px);
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  /* color used historically for theme; not required for external SVG but keep for consistency */
  color: var(--color-primary-hover);
  /* start just off the top of the viewport by default; per-spider override via --spider-initial */
  transform: translateY(var(--spider-initial, -12vh)) translateX(0) rotate(0deg);
}

/* Spider character - using emoji */
.spider::before {
  /* inline SVG using currentColor so the bat inherits `.spider { color }` */
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 45 24'><path d='M21.1854 11.4398C21.1854 11.4398 21.9191 10.9179 23.041 11.6122C23.041 11.6122 23.6597 10.4087 24.4151 10.3515C25.1703 10.2941 23.9692 12.9791 23.9692 12.9791C23.9692 12.9791 25.1636 13.9612 26.6716 12.7758C28.1793 11.5904 31.5496 5.47082 36.3672 3.14306C41.1851 0.815294 44.9586 0.133176 44.9586 0.133176C44.9586 0.133176 38.0279 4.21694 42.6344 8.2C42.6344 8.2 36.5273 9.96518 38.7867 15.0784C38.7867 15.0784 32.1549 12.3659 27.1549 21.6245C27.1549 21.6245 24.046 16.5802 21.7068 23.9805C21.7068 23.9805 19.1798 15.8372 16.3075 20.9487C16.3075 20.9487 10.9908 12.2325 5.28918 14.5689C5.28918 14.5689 6.66575 8.53153 1.88761 7.30306C1.88761 7.30306 4.97465 6.12424 0 -2.01166e-07C0 -2.01166e-07 11.5882 4.04141 12.4387 7.38682C12.4387 7.38682 13.9543 13.4758 20.133 13.2487C20.133 13.2487 18.8402 11.2581 19.9814 9.99624C19.9814 9.99624 21.0969 10.8927 21.1854 11.4398Z' fill='rgb(55 55 55)'/></svg>");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  /* ensure the image doesn't capture pointer events */
  pointer-events: none;
}

/* Falling animation keyframes with more pronounced horizontal sway */
@keyframes spider-fall-1 {
  0% {
    transform: translateY(var(--spider-initial, -12vh)) translateX(0px) rotate(0deg);
  }
  25% {
    transform: translateY(25vh) translateX(50px) rotate(90deg);
  }
  50% {
    transform: translateY(50vh) translateX(-40px) rotate(180deg);
  }
  75% {
    transform: translateY(75vh) translateX(60px) rotate(270deg);
  }
  100% {
    transform: translateY(100vh) translateX(-30px) rotate(360deg);
  }
}

@keyframes spider-fall-2 {
  0% {
    transform: translateY(var(--spider-initial, -12vh)) translateX(0px) rotate(0deg);
  }
  20% {
    transform: translateY(20vh) translateX(-45px) rotate(-72deg);
  }
  40% {
    transform: translateY(40vh) translateX(70px) rotate(-144deg);
  }
  60% {
    transform: translateY(60vh) translateX(-55px) rotate(-216deg);
  }
  80% {
    transform: translateY(80vh) translateX(35px) rotate(-288deg);
  }
  100% {
    transform: translateY(100vh) translateX(-20px) rotate(-360deg);
  }
}

@keyframes spider-fall-3 {
  0% {
    transform: translateY(var(--spider-initial, -12vh)) translateX(0px) rotate(0deg);
  }
  16% {
    transform: translateY(16vh) translateX(-80px) rotate(60deg);
  }
  33% {
    transform: translateY(33vh) translateX(90px) rotate(120deg);
  }
  50% {
    transform: translateY(50vh) translateX(-70px) rotate(180deg);
  }
  66% {
    transform: translateY(66vh) translateX(85px) rotate(240deg);
  }
  83% {
    transform: translateY(83vh) translateX(-45px) rotate(300deg);
  }
  100% {
    transform: translateY(100vh) translateX(25px) rotate(360deg);
  }
}

@keyframes spider-swing {
  0%, 100% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(10px);
  }
}

/* Generate spider animations - much slower */
.spider:nth-child(1) {
  left: 5%;
  animation: spider-fall-1 25s infinite; /* Increased from 16s */
  animation-delay: 0s;
  --spider-initial: -18vh;
}

.spider:nth-child(2) {
  left: 15%;
  animation: spider-fall-2 35s infinite; /* Increased from 24s */
  animation-delay: 1s;
  --spider-initial: -10vh;
}

.spider:nth-child(3) {
  left: 25%;
  animation: spider-fall-1 30s infinite; /* Increased from 20s */
  animation-delay: 2s;
  --spider-initial: -22vh;
}

.spider:nth-child(4) {
  left: 35%;
  animation: spider-fall-3 40s infinite; /* Increased from 28s */
  animation-delay: 0.5s;
  --spider-initial: -14vh;
}

.spider:nth-child(5) {
  left: 45%;
  animation: spider-fall-2 28s infinite; /* Increased from 18s */
  animation-delay: 3s;
  --spider-initial: -16vh;
}

.spider:nth-child(6) {
  left: 55%;
  animation: spider-fall-1 32s infinite; /* Increased from 22s */
  animation-delay: 1.5s;
  --spider-initial: -8vh;
}

.spider:nth-child(7) {
  left: 65%;
  animation: spider-fall-3 38s infinite; /* Increased from 26s */
  animation-delay: 4s;
  --spider-initial: -20vh;
}

.spider:nth-child(8) {
  left: 75%;
  animation: spider-fall-2 22s infinite; /* Increased from 14s */
  animation-delay: 2.5s;
  --spider-initial: -12vh;
}

.spider:nth-child(9) {
  left: 85%;
  animation: spider-fall-1 45s infinite; /* Increased from 30s */
  animation-delay: 0.8s;
  --spider-initial: -24vh;
}

.spider:nth-child(10) {
  left: 95%;
  animation: spider-fall-3 20s infinite; /* Increased from 12s */
  animation-delay: 3.5s;
  --spider-initial: -6vh;
}

/* Reduce animation on mobile for performance */
@media (max-width: 768px) {
  .spider:nth-child(n+6) {
    display: none;
  }
  
  .spider {
    animation-duration: 25s !important; /* Increased from 16s to match slower speed */
  }
}

/* Respect user preferences for reduced motion */
@media (prefers-reduced-motion: reduce) {
  .spider-container {
    display: none;
  }
}




.pp__cintillo {
    background-color: var(--color-primary) !important;
    color: #fff !important;
}


#wfspb-top-bar .wfspb-lining-layer.wfspb-lining-layer {
    background-color: var(--color-primary) !important;
    color: #fff !important;
}
#wfspb-top-bar.top_bar #wfspb-main-content > a,
#wfspb-top-bar.top_bar #wfspb-main-content b span {
    color: #fff !important;
}

#wfspb-top-bar #wfspb-current-progress {
    background-color: var(--color-primary-hover) !important;
}


.fkcart-checkout-wrap.fkcart-checkout-wrap #fkcart-checkout-button, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce .wfacp-next-btn-wrap button, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce #payment button#place_order, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce button#place_order, body #wfacp_qr_model_wrap .wfacp_qr_wrap .wfacp_qv-summary .button, body #wfob_qr_model_wrap .wfob_qr_wrap .button, body #wfob_qr_model_wrap .wfob_option_btn, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce .wfacp_payment #ppcp-hosted-fields .button,
.wfacp-mini-cart-block.wfacp-7cf9ad66 .wfacp_mini_cart_start_h button.wfacp-coupon-btn, #sb_instagram .sbi_follow_btn a, #fkcart-modal .fkcart-coupon-area .fkcart-coupon-input-wrap .fkcart-coupon-button {
    background-color: var(--color-primary) !important;
}
.fkcart-checkout-wrap.fkcart-checkout-wrap #fkcart-checkout-button:hover, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce .wfacp-next-btn-wrap button:hover, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce #payment button#place_order:hover, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce button#place_order:hover, body #wfacp_qr_model_wrap .wfacp_qr_wrap .wfacp_qv-summary .button:hover, body #wfob_qr_model_wrap .wfob_qr_wrap .button:hover, body #wfob_qr_model_wrap .wfob_option_btn:hover, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce .wfacp_payment #ppcp-hosted-fields .button:hover, #sb_instagram .sbi_follow_btn a:hover, #fkcart-modal .fkcart-coupon-area .fkcart-coupon-input-wrap .fkcart-coupon-button:hover {
    background-color: var(--color-primary-hover) !important;
}

.wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp-form .wfacp_main_form.woocommerce .wfacp_steps_sec ul li a, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp-form .wfacp_main_form.woocommerce .wfacp_steps_wrap .wfacp_steps_sec ul li a.wfacp_breadcrumb_link, .wfacp-mini-cart-block.wfacp-7cf9ad66 .wfacp_mini_cart_start_h .woocommerce-info, .wfacp-mini-cart-block.wfacp-7cf9ad66 .wfacp_mini_cart_start_h .wfacp-coupon-page .woocommerce-info a {
    color: var(--color-primary) !important;
}

body:not(.wfacp_anim_active) #wfacp-e-form .wfacp-coupon-section .wfacp-coupon-page p.wfacp-form-control-wrapper .wfacp-form-control:focus, body:not(.wfacp_anim_active) .wfacp_mini_cart_start_h form.checkout_coupon.woocommerce-form-coupon .wfacp-form-control:focus {
  border-color: var(--color-primary-hover) !important;
  box-shadow: 0 0 0 1px var(--color-primary-hover) !important;
}

#fkcart-modal .fkcart-coupon-area .fkcart-coupon-input-wrap #fkcart-coupon__input:focus {
  border-color: var(--color-primary-hover) !important;
}

.wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .woocommerce-form-login-toggle .woocommerce-info a, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form a:not(.wfacp_close_icon):not(.button-social-login):not(.wfob_btn_add):not(.ywcmas_shipping_address_button_new):not(.wfob_qv-button):not(.wfob_read_more_link):not(.wfacp_step_text_have):not(.wfacp_cart_link):not(.wfacp_summary_link):not(.wfacp_back_page_button), .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form label a, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form ul li a:not(.wfacp_breadcrumb_link), .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form table tr td a, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_steps_sec ul li a, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form a.wfacp_remove_coupon, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form a:not(.button-social-login):not(.wfob_read_more_link), .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp-login-wrapper input#rememberme + span, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form .wfacp_collapsible, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form .wfacp_collapsible svg, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form .wfacp_collapsible span, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form #product_switching_field .wfacp_product_switcher_col_2 .wfacp_product_switcher_description a.wfacp_qv-button {
    color: var(--color-primary) !important;
}

.pp-hero + .pp__cintillo {
    background-color: var(--color-primary) !important;
    color: #fff !important;
}

.wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .form-row:not(.woocommerce-invalid-required-field) .wfacp-form-control:not(.input-checkbox):focus, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form .form-row:not(.woocommerce-invalid-required-field) .woocommerce-input-wrapper .select2-container .select2-selection--single .select2-selection__rendered:focus, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce .form-row:not(.woocommerce-invalid-required-field) .woocommerce-input-wrapper .select2-container .select2-selection--single:focus > span.select2-selection__rendered, .wfacp-checkout-form-block.wfacp-195cab8e .wfacp_main_form.woocommerce #payment li.wc_payment_method input.input-radio:checked, .wfacp-checkout-form-block.wfacp-195cab8e .wfacp_main_form.woocommerce #payment.wc_payment_method input[type="radio"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e .wfacp_main_form.woocommerce input[type="radio"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form input[type="radio"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form #add_payment_method #payment ul.payment_methods li input[type="radio"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form #payment ul.payment_methods li input[type="radio"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce #add_payment_method #payment ul.payment_methods li input[type="radio"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce .woocommerce-cart #payment ul.payment_methods li input[type="radio"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce .woocommerce-checkout #payment ul.payment_methods li input[type="radio"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form.woocommerce #wfacp_checkout_form input[type="radio"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp-form input[type="checkbox"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form #payment input[type="checkbox"]:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form .woocommerce-input-wrapper .wfacp-form-control:checked, .wfacp-checkout-form-block.wfacp-195cab8e #wfacp-e-form .wfacp_main_form input[type="checkbox"]:checked {
  border-color: var(--color-primary) !important;
}

body .bwf-icon-wrap.bwf-icon-61237f1a .bwf--icon.bwf--icon {
  color: var(--color-primary);
}


/* Moovin */
#sg_delivery_address_shipping_save_address.sg-button {
    background-color: var(--color-primary) !important;
}
#sg_delivery_address_shipping_save_address.sg-button:hover {
    background-color: var(--color-primary-hover) !important;
}

.sg-del-add-selected-address .change-option {
  color: var(--color-primary) !important;
}
.sg-del-add-selected-address .change-option:hover {
  color: var(--color-primary-hover) !important;
}

.addresses-section.addresses-section .single-address .sg-button.button-outline {
  /* background-color: transparent; */
  color: var(--color-primary) !important;
}

.addresses-section.addresses-section .single-address .sg-button:not(.button-outline) {
  background-color: var(--color-primary) !important;
  /* color: #fff !important; */
}
.addresses-section.addresses-section .single-address .sg-button:not(.button-outline):hover {
  background-color: var(--color-primary-hover) !important;
  /* color: #fff !important; */
}


.pp__ally-card__txt .taxonomy-pp_specialty::before, .pp__ally-card__txt .taxonomy-pp_province::before {
  filter: brightness(0) saturate(100%);
}