/* Meptides Woo skin - managed through WordPress Additional CSS */
:root {
  --mp-ink: #111111;
  --mp-muted: #555555;
  --mp-soft: #fafaf8;
  --mp-surface: #f6f6f4;
  --mp-border: #ececec;
  --mp-strong-border: #dadada;
  --mp-red: #ef4143;
  --mp-orange: #f7a24b;
  --mp-yellow: #fed401;
  --mp-cyan: #30c5f4;
  --mp-purple: #9558a3;
  --mp-gradient: linear-gradient(95deg, #ef4143 0%, #f7a24b 26%, #fed401 48%, #30c5f4 74%, #9558a3 100%);
}

html, body {
  background: #ffffff !important;
  color: var(--mp-ink) !important;
  font-family: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

body:before {
  content: "Research use only  •  Third-party lab tested  •  Discreet Canadian fulfillment";
  display: block;
  background: var(--mp-ink);
  color: #f4f4f2;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 38px;
  min-height: 38px;
  text-align: center;
  text-transform: uppercase;
}

.wp-site-blocks {
  background: #fff !important;
  min-height: 100vh;
}

.wp-site-blocks > header,
header.wp-block-template-part,
.wp-block-template-part:has(header) {
  background: rgba(255, 255, 255, .92) !important;
  border-bottom: 1px solid var(--mp-border) !important;
  backdrop-filter: blur(12px);
  position: sticky;
  top: 0;
  z-index: 50;
}

.wp-site-blocks > header:after,
header.wp-block-template-part:after {
  content: "";
  display: block;
  height: 3px;
  background: var(--mp-gradient);
}

.site-title,
.wp-block-site-title,
.wp-block-site-title a {
  color: var(--mp-ink) !important;
  font-size: clamp(25px, 3vw, 34px) !important;
  font-weight: 900 !important;
  letter-spacing: -0.05em !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-transform: lowercase !important;
}

.wp-block-site-title a:after,
.wp-block-site-title:after {
  content: ".";
  background: var(--mp-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.wp-block-navigation a,
.wp-block-navigation-item__content {
  color: var(--mp-ink) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.wp-block-navigation a:hover { opacity: .65; }

main,
.wp-block-post-content,
.entry-content {
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(20px, 4vw, 48px) !important;
  padding-right: clamp(20px, 4vw, 48px) !important;
}

.woocommerce-products-header__title,
.wp-block-post-title,
h1, h2, h3 {
  color: var(--mp-ink) !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
}

h1.wp-block-post-title,
.woocommerce-products-header__title {
  font-size: clamp(42px, 7vw, 82px) !important;
  line-height: .95 !important;
  margin-top: clamp(40px, 7vw, 84px) !important;
}

.wp-block-button__link,
button,
.button,
.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
  border-radius: 999px !important;
  font-family: inherit !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  min-height: 46px !important;
  text-transform: none !important;
}

.wp-block-button__link,
.button,
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
  background: var(--mp-ink) !important;
  border: 1px solid var(--mp-ink) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.wp-block-button__link:hover,
.button:hover,
.wc-block-components-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
  background: #000 !important;
  opacity: 1 !important;
  transform: translateY(1px);
}

a { color: var(--mp-ink) !important; }
a:hover { opacity: .7; }

input,
select,
textarea,
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-components-form .wc-block-components-text-input input[type=email],
.wc-block-components-form .wc-block-components-text-input input[type=tel],
.wc-block-components-form .wc-block-components-text-input input[type=text] {
  background: #fff !important;
  border: 1px solid var(--mp-strong-border) !important;
  border-radius: 8px !important;
  color: var(--mp-ink) !important;
  font-family: inherit !important;
  min-height: 48px !important;
}

input:focus,
select:focus,
textarea:focus,
.wc-block-components-text-input input:focus {
  border-color: var(--mp-cyan) !important;
  box-shadow: 0 0 0 3px rgba(48, 197, 244, .16) !important;
  outline: 0 !important;
}

.wc-block-components-sidebar,
.wc-block-cart__totals-title,
.wc-block-components-totals-wrapper,
.wc-block-components-panel,
.wc-block-components-checkout-step,
.wc-block-components-order-summary,
.woocommerce-order,
.woocommerce-customer-details,
.woocommerce-order-details,
.woocommerce-checkout-review-order,
ul.products li.product,
.wp-block-post.product {
  background: var(--mp-soft) !important;
  border: 1px solid var(--mp-border) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

.wc-block-components-checkout-step,
.wc-block-components-sidebar,
.wc-block-components-order-summary,
ul.products li.product,
.wp-block-post.product {
  padding: clamp(18px, 3vw, 28px) !important;
}

.wc-block-components-checkout-step__title,
.wc-block-components-title,
.wc-block-components-totals-footer-item,
.wc-block-components-product-name,
.wc-block-components-order-summary-item__description,
ul.products li.product .woocommerce-loop-product__title {
  color: var(--mp-ink) !important;
  font-weight: 850 !important;
}

.wc-block-components-radio-control__option,
.wc-block-components-radio-control-accordion-option {
  background: #fff !important;
  border: 1px solid var(--mp-border) !important;
  border-radius: 12px !important;
  margin-bottom: 10px !important;
  padding: 16px !important;
}

.wc-block-components-radio-control__option-checked,
.wc-block-components-radio-control-accordion-option--checked-option-highlighted {
  border-color: var(--mp-cyan) !important;
  box-shadow: 0 0 0 3px rgba(48, 197, 244, .12) !important;
}

.wc-block-components-radio-control__input:checked:before {
  background: var(--mp-cyan) !important;
}

.wc-block-components-checkout-step__heading:before,
.wc-block-components-checkout-step__title:before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 3px;
  margin-right: 10px;
  vertical-align: middle;
  background: var(--mp-gradient);
  border-radius: 999px;
}

.wc-block-components-sidebar:before,
.wp-block-woocommerce-checkout-order-summary-block:before,
.wp-block-woocommerce-cart-order-summary-block:before {
  content: "";
  display: block;
  height: 3px;
  margin: -1px -1px 18px;
  background: var(--mp-gradient);
  border-radius: 12px 12px 0 0;
}

.wc-block-components-product-image,
.wc-block-components-order-summary-item__image,
ul.products li.product img,
.wc-block-grid__product-image img {
  background: #fff !important;
  border: 1px solid var(--mp-border) !important;
  border-radius: 12px !important;
}

.wc-block-formatted-money-amount,
.amount,
.price {
  color: var(--mp-ink) !important;
  font-weight: 900 !important;
}

.wc-block-components-notice-banner,
.woocommerce-message,
.woocommerce-info {
  background: #fff !important;
  border-color: var(--mp-cyan) !important;
  border-radius: 12px !important;
  color: var(--mp-ink) !important;
}

footer,
.wp-site-blocks > footer,
footer.wp-block-template-part {
  background: #111 !important;
  color: #9e9e9e !important;
  margin-top: clamp(56px, 8vw, 96px) !important;
  padding: clamp(44px, 6vw, 72px) clamp(20px, 4vw, 48px) !important;
}

footer a,
footer .wp-block-site-title a {
  color: #fff !important;
}

footer:before {
  content: "meptides.  •  Research use only  •  Not for human consumption";
  display: block;
  max-width: 1280px;
  margin: 0 auto 28px;
  color: #fff;
  font-size: clamp(28px, 5vw, 54px);
  font-weight: 900;
  letter-spacing: -0.05em;
  line-height: 1;
}

@media (max-width: 760px) {
  body:before {
    font-size: 10px;
    line-height: 32px;
    min-height: 32px;
    padding: 0 12px;
  }
  main,
  .wp-block-post-content,
  .entry-content {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  .wc-block-components-sidebar,
  .wc-block-components-checkout-step,
  .wc-block-components-order-summary {
    padding: 16px !important;
  }
}


/* Remove starter-theme leftovers on the Woo subdomain. */
body.home.blog .wp-block-cover,
body.home.blog .wp-block-cover + .wp-block-group,
body.home.blog .wp-block-cover.alignfull {
  display: none !important;
}

.wp-block-navigation__container > li:nth-child(3),
.wp-block-navigation__container > li:nth-child(5) {
  display: none !important;
}

footer.wp-block-template-part > *,
.wp-site-blocks > footer > * {
  display: none !important;
}

footer.wp-block-template-part,
.wp-site-blocks > footer {
  display: block !important;
  min-height: 220px;
}

footer.wp-block-template-part:after,
.wp-site-blocks > footer:after {
  content: "info@meptides.com  •  +1 437-324-8556  •  Toronto, Canada";
  display: block;
  max-width: 1280px;
  margin: 0 auto;
  color: #9e9e9e;
  font-size: 14px;
  line-height: 1.8;
}

/* Checkout polish: fix duplicate dots, duplicate stripes, and Woo radio controls. */
.wp-block-site-title:after {
  content: none !important;
}
.wp-block-site-title a:after {
  content: "." !important;
  background: var(--mp-gradient) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
}

.wc-block-components-sidebar:before {
  margin: -1px -1px 18px !important;
}
.wp-block-woocommerce-checkout-order-summary-block:before,
.wp-block-woocommerce-cart-order-summary-block:before {
  content: none !important;
  display: none !important;
}

/* Checkout layout polish v3: single accents and stable payment rows. */
.wc-block-components-checkout-step__heading:before,
.wc-block-components-checkout-step__heading:after {
  content: none !important;
  display: none !important;
}

.wc-block-components-checkout-step__title {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
}

.wc-block-components-checkout-step__title:before {
  content: "" !important;
  display: block !important;
  width: 30px !important;
  min-width: 30px !important;
  height: 3px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: var(--mp-gradient) !important;
}

.wc-block-components-radio-control,
.wc-block-components-radio-control-accordion-content,
.wc-block-components-radio-control-accordion-option {
  width: 100% !important;
}

.wc-block-components-radio-control-accordion-option,
.wc-block-components-radio-control__option {
  box-sizing: border-box !important;
}

.wc-block-components-radio-control__option {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: 18px 20px !important;
  border: 1px solid var(--mp-border) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  outline: none !important;
}

.wc-block-components-radio-control__option-layout,
.wc-block-components-radio-control__label-group {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  flex: 1 1 auto !important;
  grid-template-columns: none !important;
  gap: 0 !important;
}

.wc-block-components-radio-control__label {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  color: var(--mp-ink) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.wc-block-components-radio-control__input {
  position: static !important;
  display: block !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  border: 1.5px solid var(--mp-strong-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.wc-block-components-radio-control__input:checked {
  border-color: var(--mp-cyan) !important;
  background: radial-gradient(circle at center, var(--mp-cyan) 0 5px, #ffffff 5.5px) !important;
}

.wc-block-components-radio-control__option-checked,
.wc-block-components-radio-control-accordion-option--checked-option-highlighted > .wc-block-components-radio-control__option {
  border-color: var(--mp-cyan) !important;
  box-shadow: 0 0 0 2px rgba(48, 197, 244, 0.16) !important;
}

.wc-block-components-radio-control__option:focus-within {
  border-color: var(--mp-cyan) !important;
  box-shadow: 0 0 0 2px rgba(48, 197, 244, 0.16) !important;
}

.wc-block-components-radio-control__description,
.wc-block-components-radio-control-accordion-content {
  margin: 12px 0 0 32px !important;
  color: var(--mp-muted) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.wc-block-components-radio-control-accordion-option--checked-option-highlighted {
  border: 1px solid var(--mp-border) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.wc-block-components-radio-control-accordion-option--checked-option-highlighted:before,
.wc-block-components-radio-control-accordion-option--checked-option-highlighted:after,
.wc-block-components-radio-control__option:before,
.wc-block-components-radio-control__option:after {
  content: none !important;
  display: none !important;
}

@media (max-width: 700px) {
  .wc-block-components-checkout-step__title {
    gap: 10px !important;
  }

  .wc-block-components-checkout-step__title:before {
    width: 24px !important;
    min-width: 24px !important;
  }

  .wc-block-components-radio-control__option {
    padding: 16px !important;
  }

  .wc-block-components-radio-control__description,
  .wc-block-components-radio-control-accordion-content {
    margin-left: 32px !important;
  }
}

/* Checkout radio pseudo-dot fix: keep checked dot inside the radio circle. */
.wc-block-components-radio-control__input:before,
.wc-block-components-radio-control__input:after,
.wc-block-components-radio-control .wc-block-components-radio-control__input:before,
.wc-block-components-radio-control .wc-block-components-radio-control__input:after {
  content: none !important;
  display: none !important;
  position: static !important;
  width: 0 !important;
  height: 0 !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  background: transparent !important;
}

/* Checkout summary cleanup: keep coupons, hide gift cards. */
.wc-block-components-totals-wrapper:has(.wc-gift-cards-apply-panel),
.wc-gift-cards-apply-panel {
  display: none !important;
}

/* Checkout design polish v4: softer rows and fewer outlines. */
#contact-fields .wc-block-components-checkbox,
#order-notes .wc-block-components-checkbox,
#contact-fields .wc-block-components-checkbox label,
#order-notes .wc-block-components-checkbox label {
  box-sizing: border-box !important;
  width: 100% !important;
}

#contact-fields .wc-block-components-checkbox label,
#order-notes .wc-block-components-checkbox label {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-height: 59px !important;
  padding: 18px 20px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

#contact-fields .wc-block-components-checkbox__input,
#order-notes .wc-block-components-checkbox__input {
  position: static !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  margin: 0 !important;
  border-radius: 6px !important;
  transform: none !important;
}

#contact-fields .wc-block-components-checkbox__label,
#order-notes .wc-block-components-checkbox__label {
  display: block !important;
  min-width: 0 !important;
  color: var(--mp-ink) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

#contact-fields .wc-block-components-checkbox__label > div {
  margin: 0 !important;
}

#payment-method .wc-block-components-radio-control-accordion-option,
#payment-method .wc-block-components-radio-control-accordion-option--checked-option-highlighted {
  border: 0 !important;
  border-radius: 14px !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#payment-method .wc-block-components-radio-control__option,
#payment-method .wc-block-components-radio-control__option-checked,
#payment-method .wc-block-components-radio-control__option:focus,
#payment-method .wc-block-components-radio-control__option:focus-within {
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

#payment-method .wc-block-components-radio-control__option {
  margin: 0 0 10px !important;
  background: #ffffff !important;
}

#payment-method .wc-block-components-radio-control-accordion-content {
  border: 0 !important;
  box-shadow: none !important;
}

.wc-block-components-sidebar.wc-block-checkout__sidebar,
.wp-block-woocommerce-checkout-order-summary-block {
  border: 0 !important;
  box-shadow: none !important;
}

.wp-block-woocommerce-checkout-order-summary-block {
  border-radius: 0 !important;
}

/* Checkout coupon polish v5: show coupon form without accordion chrome. */
.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-panel__button {
  display: none !important;
}

.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-panel__content,
.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__content {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

.wp-block-woocommerce-checkout-order-summary-coupon-form-block {
  padding: 12px 0 !important;
}

.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 8px !important;
  align-items: stretch !important;
  margin: 0 !important;
}

.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__input,
.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__input input {
  min-width: 0 !important;
  width: 100% !important;
}

.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__input input {
  border-radius: 10px !important;
  border-color: var(--mp-strong-border) !important;
  font-size: 14px !important;
}

.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__button {
  min-height: 42px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  background: var(--mp-ink) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__button:disabled {
  opacity: 0.45 !important;
}
