/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */
/*
*
* Custom text
*
*/
.text__gradient {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.9) 25%, #3f4e20 65%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
/*
*
* End of custom text
*
*/

/* 
*
* Side spacings
*
*/
@media only screen and (max-width: 999px) {
  div[data-device='mobile'] .ct-sticky-container > div,
  .ct-footer .ct-container {
    padding: 0 48px;
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  div[data-device='mobile'] .ct-sticky-container > div,
  .ct-footer .ct-container {
    padding: 0 16px;
    width: 100%;
    margin: 0;
  }

  div[data-device='mobile'] .ct-sticky-container .ct-container {
    margin: 0;
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  body .wp-block-stackable-columns.alignfull > .stk-row:not(.alignfull) {
    width: 100% !important;
  }
}
/* 
*
* End of side spacings
*
*/

/*
*
* Buttons - add arrow on left side
*
*/
.button__arrow {
  padding-left: 48px !important;
  position: relative;
  white-space: nowrap;
}

.button__arrow:after {
  content: url('/wp-content/uploads/2025/02/ButtonArrow.svg');
  position: absolute;
  width: 16px;
  height: 16px;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 20px;
}
/*
*
* End of Buttons - add arrow on left side
*
*/

/*
*
* Research partners section
*
*/
@media only screen and (max-width: 1199px) {
  .research__images-container .stk-block-content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}

@media only screen and (max-width: 767px) {
  .research__section .stk--block-horizontal-flex {
    flex-direction: column !important;
    gap: 32px;
    padding-bottom: 16px;
  }

  .research__image img {
    max-height: 30px;
    min-height: 30px;
    height: 30px;
  }
}
/*
*
* Research partners section
*
*/

/*
*
* Swiper pagination - override
*
*/
body .swiper-pagination-bullet {
  background: #e7f388;
  width: 11px;
  height: 11px;
  transition: 0.3s ease;
  border-radius: 16px;
  opacity: 1;
}

body .swiper-pagination-bullet-active {
  width: 34px;
  transition: 0.3s ease;
}
/*
*
* Swiper pagination - override
*
*/

/*
*
* BG COLOR SWITCH ADJUSTMENTS
*
*/
body {
  background-color: var(--theme-palette-color-7) !important;
  transition: background-color 0.4s ease;
}

body.bg-green {
  background: var(--theme-palette-color-5) !important;
  transition: background-color 0.4s ease;
}

body.bg-dark {
  background: var(--theme-palette-color-2) !important;
  transition: background-color 0.4s ease;
}

.bg__switcher-dark-hide {
  transition: opacity 0.4s ease;
}
body.bg-dark .bg__switcher-dark-hide {
  opacity: 0;
}

/* Adjust color text when switched to dark bg */
body.bg-dark .switch__light,
body.bg-dark .switch__light * {
  color: var(--theme-palette-color-4) !important;
  transition: 0.25s ease !important;
}
/*
*
* END OF BG COLOR SWITCH ADJUSTMENTS
*
*/

/*
*
* Waiting list - brevo - overrides
*
*/
.sib-form {
  padding: 0 !important;
}

#sib-container {
  background: transparent !important;
  padding: 0 !important;
  max-width: unset !important;
}

#sib-container .sib-form-block {
  padding: 0;
}

#sib-container #sib-form > div,
#sib-container #sib-form .entry__field {
  padding: 0 !important;
  margin: 0 !important;
}

/* Inputs */
.sib-form #sib-container .entry__field {
  background: transparent;
  border: none;
  border-bottom: 1px solid white;
  border-radius: 0;
  height: 60px;
  color: white;
  outline: none !important;
}

.sib-form .entry__field:focus-within {
  box-shadow: none !important;
}

.sib-form .entry__field .input::placeholder {
  font-family: Outfit !important;
  color: white !important;
  opacity: 1 !important;
}

/* Change input bg - autofill */
.sib-form input:-webkit-autofill {
  box-shadow: 0 0 0px 1000px var(--theme-palette-color-3) inset !important;
  background-color: transparent !important;
  color: #ffffff !important;
}

.sib-form input:-webkit-autofill::first-line {
  color: #ffffff !important;
}

/* Submit button */
.sib-form-block__button {
  background-color: var(--theme-palette-color-4) !important;
  color: var(--theme-palette-color-1) !important;
  padding-left: 48px !important;
  border-radius: 100px !important;
  font-family: Outfit !important;
  font-weight: 500 !important;
  position: relative !important;
  transition: 0.2s ease !important;
  margin-top: 12px !important;
}

.sib-form-block__button:hover {
  background-color: #dde982 !important;
  transition: 0.2s ease !important;
}

.sib-form-block__button:after {
  content: url('/wp-content/uploads/2025/02/ButtonArrow.svg');
  position: absolute;
  width: 16px;
  height: 16px;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 20px;
}

/* Grid display */
#sib-form {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

#sib-form > div:nth-child(n + 5) {
  grid-column: span 2;
}

#sib-form * {
  font-family: Outfit !important;
}

@media only screen and (max-width: 767px) {
  #sib-form {
    display: flex !important;
    flex-direction: column;
  }
}

/* Entry error */
.sib-form .entry__error {
  font-size: 14px !important;
  background: transparent !important;
  color: #ff9b71 !important;
  margin-top: 8px !important;
  font-family: Outfit !important;
}

/* Optin checkbox */
.sib-optin {
  margin-top: 24px !important;
}
.sib-optin * {
  color: #ffffff !important;
}

.sib-optin .checkbox {
  box-shadow: none !important;
  outline: none !important;
  border-radius: 0 !important;
}

.sib-form .input_replaced:checked + .checkbox_tick_positive {
  background-color: var(--theme-palette-color-4) !important;
  border-color: var(--theme-palette-color-4) !important;
}

.sib-form
  label:has(input[type='checkbox']:checked)
  .checkbox_tick_positive:before {
  border-color: #000 !important;
}

/* Success message overrides */
.sib-form #success-message {
  background: transparent !important;
  border: none !important;
  color: #c8f79c !important;
  border-radius: 16px !important;
  font-family: 'Outfit' !important;
  padding: 0 !important;
}

.sib-form #success-message .sib-form-message-panel__text {
  flex-direction: row !important;
  justify-content: start !important;
  align-items: start !important;
  gap: 16px !important;
  padding: 24px 0 !important;
}

.sib-form
  #success-message
  .sib-form-message-panel__text
  .sib-notification__icon {
  width: 24px !important;
  height: 24px !important;
  fill: #c8f79c !important;
  margin: 0 !important;
}

/* Error message overrides */
.sib-form #error-message {
  background: transparent !important;
  border: none;
  color: #ff9b71 !important;
  border-radius: 16px !important;
  font-family: Outfit !important;
  padding: 0 !important;
}

.sib-form #error-message .sib-form-message-panel__text {
  flex-direction: row !important;
  justify-content: start !important;
  align-items: start !important;
  gap: 16px !important;
  padding: 24px 0 !important;
}

.sib-form #error-message .sib-form-message-panel__text .sib-notification__icon {
  width: 24px !important;
  height: 24px !important;
  fill: #ff9b71 !important;
  margin: 0 !important;
}
/*
*
* End of Waiting list - brevo - overrides
*
*/

/*
*
* Moved from customizer
*
*/

/* 
*
* Header adjustments 
*
*/
#header.header-opacity [data-row='middle:boxed'] .ct-container {
  background: rgba(255, 255, 255, 0.8);
  transition: 0.3s ease;
}

header .ct-sticky-container {
  max-height: 0 !important;
}

#header [data-row*='boxed'] > div {
  padding: 10px 12px 10px 24px !important;
}

* {
  --shrink-height: 0;
}
/* 
*
* End of header adjustments 
*
*/

/* 
*
* Footer adjustments 
*
*/
footer [data-row='middle'] .widget-menu {
  margin-top: 36px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

footer [data-row='middle'] .widget-menu * {
  font-size: 14px;
}

footer [data-row='middle'] .widget-menu a {
  color: white;
  background: linear-gradient(
      to right,
      rgba(100, 200, 200, 0),
      rgba(100, 200, 200, 0)
    ),
    linear-gradient(
      to right,
      var(--theme-palette-color-4),
      var(--theme-palette-color-4)
    );
  background-size: 100% 0.1em, 0 0.1em;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  transition: 400ms;
  border: none;
  padding-bottom: 5px !important;
  display: inline !important;
}

footer [data-row='middle'] .widget-menu a:hover {
  background-size: 100% 0.15em;
}
footer .widget-title {
  color: white !important;
  margin-bottom: 0;
}

body:not(.home) footer {
  background: var(--theme-palette-color-2) !important;
}
body:not(.home) .site-main {
  padding-top: 100px;
}

#contact-us {
  --theme-form-text-initial-color: #fff;
  --theme-form-field-border-initial-color: #fff;
}
#contact-us *::placeholder {
  color:#fff !important;
  opacity: 0.6 !important;
  font-weight: 300;
}

/* 
*
* End of footer adjustments 
*
*/

/* Options (radio buttons) */
.product__options {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 40px;
}

.product__option-price,
.product__option-price * {
  margin: 0 !important;
}

.product__option-note,
.product__option-note * {
  margin: 0 !important;
}

.product__option {
  display: flex;
  align-items: start;
  gap: 10px;
}

/* Product option input */
.product__option input[type='radio'] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 21px;
  min-width: 21px;
  max-width: 21px;
  height: 21px;
  min-height: 21px;
  max-height: 21px;
  border-radius: 50%;
  border: 2px solid #252525;
  position: relative;
  cursor: pointer;
  padding: 4px;
}

.product__option input[type='radio']:checked::before {
  content: '';
  position: absolute;
  background-color: #252525;
  border-radius: 50%;
  width: 9px;
  height: 9px;
}

/* Product option details (title, price) */
.product__option-details {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.product__option-title,
.product__option-price {
  margin: 0;
  font-size: 18px;
  font-weight: 500;
}

.product__price-regular {
  color: #e11010;
  text-decoration: line-through;
}

.product__option-link {
  font-size: 16px;
  font-weight: 300;
}

.product__option-link:hover {
  text-decoration: underline;
}

/* Alternate Variations */
.cb-variation--alternate .variations {
  display: none;
}

.cb-variations {
  margin-bottom: 24px;
}

/*
*
* Modal - buy products
*
*/
.modal {
  display: flex;
  position: fixed;
  inset: 0;
  justify-content: center;
  align-items: center;
  z-index: 999999;
  padding: 50px;
  opacity: 0;
  pointer-events: none;
  user-select: none;
  transition: opacity 0.5s ease;
}

.modal.opened {
  opacity: 1;
  transition: opacity 0.5s ease;
  pointer-events: all;
}
.modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
}

.modal__container {
  background-color: white;
  display: flex;
  flex-direction: column;
  max-width: 745px;
  width: 100%;
  z-index: 99999;
  overflow: auto;
  max-height: 80vh;
  position: relative;
  border-radius: 16px;
}

.modal__header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 24px 24px 48px 24px;
  background-color: #4F6228;
}

.modal__header .custom-logo {
  width: 220px;
  height: auto;
}

.modal__content {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: auto;
  gap: 24px;
  padding: 24px;
}

.modal__content .tnp {
  max-width: 425px;
  margin: 0 auto;
}

.modal__heading {
  margin-bottom: 0;
  color: #4F6228;
}

.modal__image {
  width: 100%;
  height: auto;
  padding: 0 64px;
}

.modal__close-button {
  background-color: transparent;
  width: fit-content;
  align-self: end;
  padding: 6px;
  line-height: 0;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .modal {
    padding: 16px;
  }

  .modal__content {
    gap: 16px;
  }

  .modal__image {
    padding: 0 24px;
  }
}
/*
*
* End of modal - buy products
*
*/

/* 
*
* Modal Brevo form
*
*/
.modal .sib-form {
  padding: 0 !important;
  max-width: 425px;
}

.modal #sib-container {
  padding: 0 !important;
}

.modal .sib-form-block {
  padding: 0 !important;
}

/* Entry label */
.modal .sib-form .entry__label {
  margin-bottom: 4px !important;
  font-size: 14px !important;
  color: var(--theme-palette-color-1) !important;
  font-weight: 500 !important;
  font-family: Outfit !important;
}

.modal .sib-form .entry__label::after {
  color: var(--theme-palette-color-1) !important;
}

/* Entry field */
.modal .sib-form .entry__field {
  margin: 0 !important;
  border: 1px solid var(--theme-palette-color-1) !important;
}

.modal .sib-form .entry__field:focus-within {
  box-shadow: none !important;
}

/* Sib form display */
.modal #sib-form * {
  font-family: Outfit !important;
}

/* Error message */
.modal .sib-form .entry__error {
  padding: 4px;
  font-size: 12px !important;
  color: var(--theme-palette-color-1) !important;
  border: 1px solid red;
}

.modal__content {
  width: 100%;
  padding: 48px 64px 64px 64px;
}
.modal .sib-form {
  max-width: none;
}

.modal .waiting-list,
.modal .sib-form,
.modal .sib-form-container {
  width: 100%;
}

.modal #sib-container input::placeholder {
  color: #4F6228 !important;
}
.modal .sib-form .entry__field {
  border: 0 !important;
  border-bottom: 1px solid #4F6228 !important;
}
.modal .sib-form .input, 
.modal .sib-form .input__button,
.modal .entry__choice label p {
  color: #4F6228 !important;
}

/* Submit button */
/* .modal .sib-form-block:has(.sib-form-block__button) {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}
.modal .sib-form .sib-form-block__button {
  min-height: 48px !important;
  border-radius: 0 !important;
  font-family: Outfit !important;
  font-size: 18px !important;
  min-width: 160px !important;
  border: 1px solid var(--theme-palette-color-1);
} */

/* Input and select fields */
/* .modal .sib-form input[type='text'],
.modal .sib-form select {
  min-height: 48px !important;
  font-size: 16px !important;
  padding: 0 16px !important;
  font-family: Outfit !important;
  color: var(--theme-palette-color-1) !important;
  outline: none !important;
}

.modal .sib-form input[type='text']::placeholder {
  color: rgba(37, 37, 37, 0.3) !important;
} */
/*
*
* End of Modal Brevo form
* */

/*
*
* Single Product
*
*/

.single-product .is-width-constrained {
  --theme-block-max-width: 1040px;
}
.single-product
  .is-layout-constrained
  > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: 1040px;
}

.woocommerce-product-gallery .ct-media-container {
  height: auto;
}

.ct-product-gallery-container {
  border-radius: 20px;
  overflow: hidden;
}
.ct-product-gallery-container .onsale,
.out-of-stock-badge,
[class*='ct-woo-badge-'] {
  display: none;
}

.cb-savings-percentage {
  margin-bottom: 16px;
}

.cb-savings-percentage-value {
  font-size: 18px;
  font-weight: 500;
  background-color: var(--theme-palette-color-6);
  color: #fff;
  border-radius: 100px;
  padding: 4px 12px;
}
.entry-summary .entry-title {
  font-size: 40px;
  font-weight: 500;
  margin-bottom: 24px !important;
}
.entry-summary .entry-title + .price {
  display: none !important;
}
.woocommerce-product-details__short-description {
  font-weight: 300;
}
.entry-summary .price {
  --theme-font-weight: 500;
  --theme-font-size: 40px;
  margin-bottom: 24px;
}
.entry-summary-items > .woocommerce-product-details__short-description {
  --product-element-spacing: 24px;
}
.product[class*='gallery'] .entry-summary-items > * {
  --product-element-spacing: 24px;
}

@media (min-width: 1000px) {
  .ct-default-gallery .entry-summary,
  .ct-stacked-gallery .entry-summary {
    margin-left: 100px !important;
  }
}
.woocommerce-tabs[data-type*='type-1'] .tabs {
  padding: 0 0 24px 0 !important;
  border-bottom: 1px solid #000 !important;
}
.woocommerce div.product div.woocommerce-tabs ul.tabs {
  justify-content: flex-start !important;
}
.woocommerce div.product div.woocommerce-tabs ul.tabs li:before {
  display: none;
}
.woocommerce div.product div.woocommerce-tabs ul.tabs li + li {
  margin-left: 32px;
}
.woocommerce div.product div.woocommerce-tabs ul.tabs li a {
  font-size: 24px;
  font-weight: 500;
  padding: 0 !important;
  border: 0 !important;
  text-transform: none;
}

.ct-cart-actions .quantity {
  height: 48px !important;
  border-radius: 48px;
  border: 0 !important;
}
.quantity[data-type='type-2'] input[type='number'] {
  padding-inline-start: 42px;
  border: 0;
  color: var(--theme-palette-color-1);
  height: 42px;
  font-size: 24px;
  font-weight: 500;
}
div.quantity {
  margin-right: 14px;
}
div.quantity .ct-increase,
div.quantity .ct-decrease {
  width: 42px !important;
  height: 42px !important;
  border: 1px solid var(--theme-palette-color-1);
  border-radius: 42px !important;
}
div.quantity .ct-decrease {
  top: 0 !important;
  left: 0 !important;
}
div.quantity .ct-increase {
  top: 0 !important;
  right: 0 !important;
}

.cart_item div.quantity {
  width: 126px;
  margin: 0;
}

.woocommerce .ct-product-add-to-cart button.button,
.ct-cart-actions .added_to_cart {
  height: 42px !important;
  min-height: 42px !important;
  flex-grow: 0 !important;
  color: #fff !important;
  white-space: nowrap;
  background-image: url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.4043 2.6543L15.7499 8.99995L9.4043 15.3456" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M15.7499 9L2.25 9" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-position: right 24px center;
  background-size: 18px 18px;
  padding-right: 50px;
  padding-left: 24px;
}
.ct-cart-actions .added_to_cart {
  background-color: var(--theme-palette-color-2) !important;
  background-image: none;
  padding-right: 24px;
}
.single-product .ct-container-full {
  padding-bottom: 150px;
}

.product-type-variable-subscription
  .woocommerce-product-details__short-description
  + .price {
  display: none !important;
}

.cb-bottom-disclatimer {
  font-size: 12px;
  margin-bottom: 24px;
  font-weight: 300;
}

[name="coupon_code"] {
  color: var(--theme-palette-color-1) !important;
  border-color: var(--theme-palette-color-1) !important;

  ::placeholder {
    color:rgba(0, 0, 0, 0.6);
  }
}

/*
*
* Cart
*
*/
.cart .product-name .price {
  display: none !important;
}