/* ODDMODE 5.0 pre-live refinements. Merchant facts remain data-driven. */
.oddmode-storefront-active *,
.oddmode-storefront-active *::before,
.oddmode-storefront-active *::after { box-sizing: border-box; }

.oddmode-product-details,
.oddmode-product-details__item,
.oddmode-product-details__body { width: 100%; max-width: 100%; min-width: 0; }
.oddmode-product-details__toggle { min-height: 56px; overflow-wrap: anywhere; }
.oddmode-product-details__body { overflow-wrap: anywhere; word-break: normal; }
.oddmode-product-details__toggle[aria-expanded="true"] + .oddmode-product-details__body { animation: oddmode-details-in .18s ease-out; }
.oddmode-product-details__body p,
.oddmode-product-details__body li,
.oddmode-product-details__body dd { line-height: 1.6; }
.oddmode-product-details__body dl { display: grid; grid-template-columns: minmax(120px, .42fr) minmax(0, 1fr); gap: 10px 22px; margin: 0; }
.oddmode-product-details__body dt { font-size: 10px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.oddmode-product-details__body dd { min-width: 0; margin: 0; }

.oddmode-policy { width: min(calc(100% - (2 * var(--odd-pad))), 980px); margin: 0 auto; padding: clamp(52px, 8vw, 120px) 0; }
.oddmode-policy__header { margin-bottom: clamp(42px, 7vw, 76px); padding-bottom: clamp(30px, 5vw, 52px); border-bottom: 1px solid var(--odd-line); }
.oddmode-policy__header h1 { max-width: 900px; margin: 0; font-size: clamp(2.8rem, 7vw, 6.8rem); font-weight: 900; letter-spacing: -.06em; line-height: .9; overflow-wrap: anywhere; }
.oddmode-policy__meta { margin: 20px 0 0; color: var(--odd-muted); font-size: 11px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.oddmode-policy__section { padding: clamp(28px, 5vw, 48px) 0; border-bottom: 1px solid var(--odd-line); }
.oddmode-policy__section h2 { margin: 0 0 18px; font-size: clamp(1.45rem, 3vw, 2.4rem); font-weight: 850; letter-spacing: -.035em; }
.oddmode-policy__section p,
.oddmode-policy__section li { max-width: 780px; color: #4c4642; font-size: 16px; line-height: 1.75; overflow-wrap: anywhere; }
.oddmode-policy__notice { margin: 22px 0; padding: 18px 20px; border: 1px solid #b88654; color: #6a421e; background: #fff7e9; line-height: 1.55; }
.oddmode-policy__toc { margin-bottom: 18px; padding: clamp(22px, 4vw, 32px); background: var(--odd-warm); }
.oddmode-policy__toc > strong { font-size: 10px; letter-spacing: .11em; }
.oddmode-policy__toc ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 28px; margin: 18px 0 0; padding-left: 20px; }
.oddmode-policy__toc a { color: var(--odd-ink); text-underline-offset: 3px; }
.oddmode-policy__legal-note { margin-top: 34px; color: var(--odd-muted); font-size: 13px; line-height: 1.65; }

.oddmode-search { overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; }

@media (max-width: 768px) {
	.woocommerce-checkout.oddmode-storefront-active .wc-block-checkout.is-mobile .checkout-order-summary-block-fill-wrapper,
	.woocommerce-checkout.oddmode-storefront-active .wc-block-checkout.is-small .checkout-order-summary-block-fill-wrapper,
	.woocommerce-checkout.oddmode-storefront-active .wc-block-checkout.is-medium .checkout-order-summary-block-fill-wrapper { display: none !important; }
	body.single-product.oddmode-storefront-active { padding-bottom: calc(86px + env(safe-area-inset-bottom)); }
	.single-product.oddmode-storefront-active .product-entry-wrapper,
	.single-product.oddmode-storefront-active .summary.entry-summary { min-width: 0; max-width: 100%; }
	.single-product.oddmode-storefront-active .oddmode-product-details { margin: 0; padding: 34px clamp(16px, 5vw, 20px) 12px; }
	.single-product.oddmode-storefront-active .oddmode-product-details__toggle { padding-block: 17px; font-size: 11px; line-height: 1.4; }
	.single-product.oddmode-storefront-active .oddmode-product-details__body { padding: 4px 0 25px; font-size: 15px; }
	.single-product.oddmode-storefront-active .oddmode-product-details__body dl { grid-template-columns: 1fr; gap: 4px; }
	.single-product.oddmode-storefront-active .oddmode-product-details__body dd + dt { margin-top: 10px; }
	.single-product.oddmode-storefront-active .woocommerce-variation-add-to-cart { width: auto; max-width: none; padding: 10px clamp(12px, 4vw, 18px) calc(10px + env(safe-area-inset-bottom)); }
	.single-product.oddmode-storefront-active .woocommerce-variation-add-to-cart .ct-cart-actions { grid-template-columns: 134px minmax(0, 1fr); gap: 8px; max-width: 100%; }
	.single-product.oddmode-storefront-active .quantity { grid-template-columns: 44px 44px 44px; width: 134px; min-width: 134px; }
	.single-product.oddmode-storefront-active .quantity input.qty { width: 44px; }
	.single-product.oddmode-storefront-active .single_add_to_cart_button { min-width: 0; padding-inline: 10px; white-space: normal; line-height: 1.25; }

	.oddmode-policy { width: calc(100% - 32px); padding-block: 48px 70px; }
	.oddmode-policy__header h1 { font-size: clamp(2.45rem, 13vw, 4rem); }
	.oddmode-policy__toc ol { grid-template-columns: 1fr; }
}

@media (max-width: 340px) {
	.single-product.oddmode-storefront-active .woocommerce-variation-add-to-cart .ct-cart-actions { grid-template-columns: 134px minmax(0, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
	.oddmode-search *, .oddmode-product-details * { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

@keyframes oddmode-details-in {
	from { opacity: 0; transform: translateY(-4px); }
	to { opacity: 1; transform: none; }
}
