/**
 * Sitewide commerce shells (popup cart + instant quote + Meet Now).
 * Combined to cut HTTP requests; behaviour/CSS unchanged.
 */


/* ==========================================================================
 * Bundled from `css/popup-cart.css` (do not enqueue separately).
 * ========================================================================== */

body .xoo-wsc-container{display:none!important}.sb-popup-cart-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:0;border:0;background:0 0;color:#ea733d;cursor:pointer;flex-shrink:0}.sb-popup-cart-trigger:active,.sb-popup-cart-trigger:focus,.sb-popup-cart-trigger:focus-visible,.sb-popup-cart-trigger:hover{border:0;background:0 0;outline:0;box-shadow:none}.sb-popup-cart-trigger__icon{display:inline-flex}.sb-popup-cart-trigger__icon>svg{width:30px;height:30px}.sb-popup-cart-count{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#ea733d;color:#fff;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:700;line-height:16px;text-align:center}.sb-popup-cart-count.is-hidden{display:none}body.sb-catalog-archive .sb-catalog-nav__cart-widget,body.single-product .sb-catalog-nav__cart-widget{display:inline-flex;align-items:center;flex-shrink:0;margin-right:20px}body.sb-catalog-archive .sb-catalog-nav__cart-widget .sb-popup-cart-trigger,body.single-product .sb-catalog-nav__cart-widget .sb-popup-cart-trigger{color:#fff}.sb-popup-cart{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:24px;font-family:Inter,system-ui,sans-serif}.sb-popup-cart.is-open{display:flex}body.sb-popup-cart-open{overflow:hidden;overscroll-behavior:none}.sb-popup-cart__overlay{position:absolute;inset:0;background:#000000c2!important}.sb-popup-cart__panel{position:relative;z-index:1;display:flex;flex-direction:column;width:100%;max-width:800px;max-height:min(90dvh,820px);background:#f6f7f9;border-radius:10px;box-shadow:0 24px 64px rgba(15,23,42,.2);overflow:hidden}.sb-popup-cart.is-loading .sb-popup-cart__panel{opacity:1;pointer-events:auto}@keyframes sb-popup-cart-spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}body .sb-popup-cart .sb-popup-cart__spinner-svg{animation:.75s linear infinite sb-popup-cart-spin}body .sb-popup-cart .sb-popup-cart__header-spinner{display:none;align-items:center;justify-content:center;width:18px;height:18px;color:#ea733d;flex-shrink:0}body .sb-popup-cart .sb-popup-cart__header-spinner.is-active{display:inline-flex}body .sb-popup-cart .sb-popup-cart__item-remove.is-loading,body .sb-popup-cart .sb-popup-cart__qty-btn.is-loading,body .sb-popup-cart .sb-popup-rec__add.is-loading{pointer-events:none}body .sb-popup-cart .sb-popup-cart__item-remove.is-loading .sb-popup-cart__spinner-svg,body .sb-popup-cart .sb-popup-cart__qty-btn.is-loading .sb-popup-cart__spinner-svg,body .sb-popup-cart .sb-popup-rec__add.is-loading .sb-popup-cart__spinner-svg{width:14px;height:14px}.sb-popup-cart__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.sb-popup-cart__title-wrap{display:inline-flex;align-items:center;gap:10px;min-width:0}.sb-popup-cart__title-icon{display:inline-flex;color:#ea733d}.sb-popup-cart__title{margin:0;font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#0f172a}.sb-popup-cart__count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:#ea733d;color:#fff;font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:700;line-height:22px}.sb-popup-cart__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin:0;padding:0;border:0;border-radius:8px;background:0 0;color:#64748b;cursor:pointer}.sb-popup-cart__close:focus-visible,.sb-popup-cart__close:hover{background:#f1f5f9;color:#334155;outline:0}.sb-popup-cart__body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:20px 20px 24px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.sb-popup-cart__promo{display:none!important}.sb-popup-cart__promo-icon{flex-shrink:0;display:inline-flex;align-items:center;color:#ea733d;line-height:1}.sb-popup-cart__promo-text{font-family:Inter,system-ui,sans-serif;font-size:12px;line-height:20px;color:#000}.sb-popup-cart__promo-highlight{font-weight:700;color:#eb743d}.sb-popup-cart__promo-link{color:#647690;text-decoration:underline}.sb-popup-cart__promo-link:hover{color:#647690}.sb-popup-cart__items{display:flex;flex-direction:column;gap:10px}.sb-popup-cart__empty{margin:32px 0;font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:20px;color:#64748b;text-align:center}body .sb-popup-cart .sb-popup-cart__item{padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}body .sb-popup-cart .sb-popup-cart__item-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}body .sb-popup-cart .sb-popup-cart__item-main{min-width:0;flex:1 1 auto}body .sb-popup-cart .sb-popup-cart__item-name{margin:0;font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif;font-size:14px;font-weight:600;line-height:20px;color:#141d2e;overflow-wrap:anywhere;word-break:break-word}body .sb-popup-cart .sb-popup-cart__item-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px}body .sb-popup-cart .sb-popup-cart__item-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-family:Inter,system-ui,sans-serif;font-size:11px;font-weight:600;line-height:16px}body .sb-popup-cart .sb-popup-cart__item-badge--stock{color:#15803d;background:#dcfce7}body .sb-popup-cart .sb-popup-cart__item-badge--inventory,body .sb-popup-cart .sb-popup-cart__item-badge--mto{color:#a16207;background:#fef9c3}body .sb-popup-cart .sb-popup-cart__item-badge--custom{color:#c2410c;background:#ffedd5}body .sb-popup-cart .sb-popup-cart__item-detail{font-family:Inter,system-ui,sans-serif;font-size:11px;line-height:16px;color:#64748b}body .sb-popup-cart .sb-popup-cart__item-remove{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:-2px -2px 0 0;padding:0;border:0;border-radius:6px;background:0 0;color:#94a3b8;cursor:pointer;flex-shrink:0}body .sb-popup-cart .sb-popup-cart__item-remove:focus-visible,body .sb-popup-cart .sb-popup-cart__item-remove:hover{background:#f1f5f9;color:#64748b;outline:0}body .sb-popup-cart .sb-popup-cart__item-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}body .sb-popup-cart .sb-popup-cart__qty{display:inline-flex;align-items:center;height:28px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;overflow:hidden}body .sb-popup-cart .sb-popup-cart__qty-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0;padding:0;border:0;background:#f8fafc;color:#334155;font-family:Inter,system-ui,sans-serif;font-size:16px;font-weight:500;line-height:1;cursor:pointer}body .sb-popup-cart .sb-popup-cart__qty-btn:focus-visible,body .sb-popup-cart .sb-popup-cart__qty-btn:hover{background:#e2e8f0;outline:0}body .sb-popup-cart .sb-popup-cart__qty-value{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px;padding:0 6px;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;line-height:28px;color:#0f172a;background:#fff;border-left:1px solid #e2e8f0;border-right:1px solid #e2e8f0}body .sb-popup-cart .sb-popup-cart__item-price{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:8px;flex-wrap:wrap;font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif;font-size:13px;font-weight:700;line-height:18px;color:#0f172a;text-align:right;white-space:nowrap}body .sb-popup-cart .sb-popup-cart__item-price-before{font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:500;line-height:16px;color:#94a3b8;text-decoration:line-through}body .sb-popup-cart .sb-popup-cart__item-price-before .woocommerce-Price-amount{color:#94a3b8!important;font-weight:500!important;text-decoration:line-through}body .sb-popup-cart .sb-popup-cart__item-price-current .woocommerce-Price-amount{font-weight:700}.sb-popup-cart__recommendations-wrap:empty{display:none}.sb-popup-cart__recommendations{display:flex;flex-direction:column;gap:28px;margin-top:28px}.sb-popup-rec__header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.sb-popup-rec__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;flex-shrink:0}.sb-popup-rec__icon--healthy,.sb-popup-rec__icon--matched{background:#fff7ed;color:#ea733d}.sb-popup-rec__heading{min-width:0;flex:1 1 auto}.sb-popup-rec__title-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin:0}.sb-popup-rec__title{margin:0;font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif;font-size:14px;font-weight:700;line-height:20px;color:#0f172a}.sb-popup-rec__subtitle{margin:0;font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:400;line-height:18px;color:#64748b}.sb-popup-rec__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sb-popup-rec__card{position:relative;display:flex;flex-direction:column;gap:4px;min-height:0;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;transition:background-color .15s,border-color .15s}.sb-popup-rec__card:not(.is-in-cart):hover{background:#edeff24d;border-color:#ea733d66}.sb-popup-rec__card.is-in-cart{border-color:#ea733d;background:#eb743d0d}.sb-popup-rec__card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.sb-popup-rec__card-title{margin:0;font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif;font-size:12px;font-weight:600;line-height:16px;color:#141d2e;overflow-wrap:anywhere;word-break:break-word}.sb-popup-rec__add{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin:-2px -2px 0 0;padding:0;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#64748b;cursor:pointer;flex-shrink:0}.sb-popup-rec__add.is-loading,.sb-popup-rec__add.loading{opacity:1;pointer-events:none}.sb-popup-rec__added{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin:-2px -2px 0 0;border:1.5px solid #ea733d;border-radius:6px;background:#ea733d;color:#fff;flex-shrink:0}.sb-popup-rec__add:focus-visible,.sb-popup-rec__add:hover{background:#f1f5f9;color:#334155;outline:0}.sb-popup-rec__badges{display:flex;flex-wrap:wrap;gap:6px}.sb-popup-rec__badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-family:Inter,system-ui,sans-serif;font-size:11px;font-weight:600;line-height:16px}.sb-popup-rec__badge--type{color:#334155;background:#f1f5f9}.sb-popup-rec__badge--serum{color:#c2410c;background:#ffedd5}.sb-popup-rec__badge--pbmc{color:#15803d;background:#dcfce7}.sb-popup-rec__badge--whole-blood{color:#b91c1c;background:#fee2e2}.sb-popup-rec__badge--plasma{color:#1d4ed8;background:#dbeafe}.sb-popup-rec__badge--cd3-t-cells,.sb-popup-rec__badge--cd4-t-cells,.sb-popup-rec__badge--t-cells{color:#7e22ce;background:#f3e8ff}.sb-popup-rec__badge--leukopak{color:#0f766e;background:#ccfbf1}.sb-popup-rec__badge--avail.sb-popup-rec__badge--stock{color:#15803d;background:#dcfce7}.sb-popup-rec__badge--avail.sb-popup-rec__badge--inventory,.sb-popup-rec__badge--avail.sb-popup-rec__badge--mto{color:#a16207;background:#fef9c3}.sb-popup-rec__badge--avail.sb-popup-rec__badge--custom{color:#c2410c;background:#ffedd5}.sb-popup-rec__meta{margin:0;font-family:Inter,system-ui,sans-serif;font-size:11px;line-height:16px;color:#64748b;min-width:0;flex:1 1 auto;overflow-wrap:anywhere;word-break:break-word}.sb-popup-rec__footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}.sb-popup-rec__price{position:static;margin:0;font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif;font-size:13px;font-weight:700;line-height:16px;color:#0f172a;text-align:right;white-space:nowrap;flex-shrink:0}.sb-popup-rec__price .woocommerce-Price-amount{font-weight:700}body.sb-catalog-archive .woocommerce-notices-wrapper,body.single-product .woocommerce-notices-wrapper{display:none!important}.sb-popup-cart__footer{padding:18px 20px 24px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));border-top:1px solid #e2e8f0;background:#fff;flex-shrink:0}.sb-popup-cart__totals-wrap{margin-bottom:16px}.sb-popup-cart__subtotal-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:0;background:0 0!important}.sb-popup-cart__subtotal-meta{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;flex:1 1 auto;flex-wrap:wrap}.sb-popup-cart__save-badge{gap:4px!important;display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#dcfce7!important;color:#15803d;font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:600;line-height:16px;white-space:nowrap;flex-shrink:0}.sb-popup-cart__save-badge .woocommerce-Price-amount{color:#15803d!important;font-weight:600!important}.sb-popup-cart__subtotal-values{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:8px;flex-wrap:nowrap;flex-shrink:0}.sb-popup-cart__subtotal-before{font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:500;line-height:20px;color:#94a3b8;text-decoration:line-through;white-space:nowrap}.sb-popup-cart__subtotal-before .woocommerce-Price-amount{color:#94a3b8!important;font-weight:500!important;text-decoration:line-through}.sb-popup-cart__subtotal-label{font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:20px;color:#64748b;background:0 0!important}body .sb-popup-cart .sb-popup-cart__subtotal,body .sb-popup-cart .sb-popup-cart__subtotal *,body .sb-popup-cart .sb-popup-cart__subtotal-row *{background:0 0}.sb-popup-cart__subtotal{font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif;font-size:16px;font-weight:700;line-height:22px;color:#0f172a}.sb-popup-cart__subtotal .woocommerce-Price-amount,.sb-popup-cart__subtotal del,.sb-popup-cart__subtotal ins,.sb-popup-cart__subtotal mark{background:0 0!important;color:#0f172a!important;text-decoration:none}.sb-popup-cart__actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sb-popup-cart__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 16px;border-radius:5px;font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:600;line-height:20px;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.sb-popup-cart__btn svg{flex-shrink:0}.sb-popup-cart__btn--outline{border:1px solid #cbd5e1;background:#fff;color:#0f172a}.sb-popup-cart__btn--outline:focus-visible,.sb-popup-cart__btn--outline:hover{background:#ea733d;border-color:#ea733d;color:#fff;outline:0;text-decoration:none}.sb-popup-cart__btn--primary{border:1px solid #ea733d;background:#ea733d;color:#fff}.sb-popup-cart__btn--primary:active,.sb-popup-cart__btn--primary:focus,.sb-popup-cart__btn--primary:focus-visible,.sb-popup-cart__btn--primary:hover{background:#d86532;border-color:#d86532;color:#fff;outline:0;text-decoration:none}.sb-popup-cart.is-empty .sb-popup-cart__footer{opacity:.55;pointer-events:none}@media (max-width:840px){.sb-popup-cart{padding:16px}.sb-popup-cart__panel{max-height:min(92dvh,820px)}}@media (max-width:640px){.sb-popup-cart{padding:0;align-items:flex-end;justify-content:center}.sb-popup-cart__panel{width:100%;max-width:100%;max-height:min(94dvh,100dvh);border-radius:14px 14px 0 0;box-shadow:0 -10px 40px rgba(15,23,42,.18)}.sb-popup-cart__header{padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top,0px))}.sb-popup-cart__title-wrap{flex-wrap:wrap;row-gap:4px}.sb-popup-cart__title{font-size:15px;line-height:24px}.sb-popup-cart__close{width:44px;height:44px;margin:-4px -4px -4px 0}.sb-popup-cart__body{padding:16px}.sb-popup-cart__promo{margin-bottom:16px;padding:8px 12px}.sb-popup-cart__recommendations{gap:24px;margin-top:24px}.sb-popup-rec__header{align-items:flex-start;margin-bottom:12px}.sb-popup-rec__title-line{flex-direction:column;align-items:flex-start;gap:2px}.sb-popup-rec__grid{grid-template-columns:1fr;gap:10px}body .sb-popup-cart .sb-popup-cart__item{padding:12px}body .sb-popup-cart .sb-popup-cart__item-remove{width:44px;height:44px;margin:-8px -8px 0 0}body .sb-popup-cart .sb-popup-cart__qty{height:44px}body .sb-popup-cart .sb-popup-cart__qty-btn{width:44px;height:44px}body .sb-popup-cart .sb-popup-cart__qty-value{min-width:40px;height:44px;line-height:44px;font-size:14px}.sb-popup-rec__add,.sb-popup-rec__added{width:44px;height:44px;margin:-8px -8px 0 0}.sb-popup-cart__footer{padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}.sb-popup-cart__subtotal-row{align-items:flex-start;flex-direction:column;gap:8px}.sb-popup-cart__subtotal-meta{width:100%;justify-content:space-between}.sb-popup-cart__actions{grid-template-columns:1fr;gap:10px}.sb-popup-cart__btn{width:100%;min-height:48px;padding:12px 16px;font-size:14px}}@media (max-width:380px){.sb-popup-cart__header{padding-left:12px;padding-right:12px}.sb-popup-cart__body{padding:12px}.sb-popup-cart__footer{padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.sb-popup-cart__promo-text{font-size:11px;line-height:18px}.sb-popup-cart__btn{font-size:13px;gap:6px}body .sb-popup-cart .sb-popup-cart__item-footer{flex-wrap:wrap;row-gap:8px}body .sb-popup-cart .sb-popup-cart__item-price{margin-left:auto}.sb-popup-rec__footer{flex-wrap:wrap;row-gap:4px}.sb-popup-rec__price{margin-left:auto}}@media (max-width:840px) and (max-height:520px){.sb-popup-cart{padding:8px;align-items:center}.sb-popup-cart__panel{max-height:min(96dvh,100dvh);border-radius:10px}.sb-popup-cart__body{padding-top:12px;padding-bottom:12px}.sb-popup-cart__recommendations{gap:16px;margin-top:16px}}body .sb-popup-cart .sb-popup-cart__qty-btn:disabled,body .sb-popup-cart .sb-popup-cart__qty-btn.is-disabled{opacity:.4;cursor:not-allowed;pointer-events:none}body .sb-popup-cart .sb-popup-cart__qty-btn:disabled:hover,body .sb-popup-cart .sb-popup-cart__qty-btn.is-disabled:hover{background:#f8fafc}

/* ==========================================================================
 * Bundled from `css/instant-quote-popup.css` (do not enqueue separately).
 * ========================================================================== */

/* Instant quote popup — moved from functions.php wp_footer inline <style> (packaging only). */

/* Overlay */
#instant-quote-popup {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.6);
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 9999;
}

/* Inner box */
#instant-quote-popup .popup-inner {
	background: #fff;
	width: 100%;
	max-width: 450px;
	padding: 30px;
	border-radius: 8px;
	position: relative;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
	animation: popupFade 0.3s ease;
}

/* Close button */
#instant-quote-popup .close-popup {
	position: absolute;
	top: 5px;
	right: 10px;
	font-size: 22px;
	cursor: pointer;
	color: #333;
}

/* Hover effect */
#instant-quote-popup .close-popup:hover {
	color: #000;
}

#instant-quote-popup .hs-form-field > label {
	display: none;
}

#instant-quote-popup .hs-form-field {
	margin-bottom: 10px;
}

/* Inputs */
#instant-quote-popup input,
#instant-quote-popup textarea,
#instant-quote-popup select {
	width: 100%;
	padding: 5px 12px;
	border: 1px solid #ccc;
	border-radius: 6px;
	font-size: 16px;
	font-family: 'HKGrotesk-Regular';
}

#instant-quote-popup textarea {
	height: 65px !important;
}

#instant-quote-popup input::placeholder,
#instant-quote-popup textarea::placeholder {
	font-size: 16px !important;
}

/* Submit button */
#instant-quote-popup .hs-button {
	 background: #ea733d;
	color: #fff;
	padding: 12px;
	border-radius: 6px;
	border: none;
	cursor: pointer;
	font-weight: 600;
	transition: 0.2s ease;
}
#instant-quote-popup .hs-button:hover {
	background: #ea733d;
}
#instant-quote-popup ul.hs-error-msgs {
	margin-top: 3px;
	margin-bottom: 0px !important;
	padding: 0px;
	font-size: 14px;
	color: red;
	font-family: 'HKGrotesk-Regular';
}

#instant-quote-popup ul.inputs-list {
	list-style: none;
	padding: 0px;
}

#instant-quote-popup ul.hs-error-msgs li > label {
	margin-bottom: 0px !important;
}

#instant-quote-popup .legal-consent-container .hs-form-booleancheckbox-display > span {
	display: initial !important;
	margin-left: 10px !important;
	font-size: 14px !important;
	line-height: 20px !important;
}

#instant-quote-popup input[type="checkbox"] {
	margin-top: 7px;
	width: auto !important;
}

#instant-quote-popup .hs-fieldtype-booleancheckbox {
	padding: 0px 3px !important;
}

/* Animation */
@keyframes popupFade {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}


/* ==========================================================================
 * Bundled from `css/meet-now-chilipiper.css` (do not enqueue separately).
 * ========================================================================== */

/**
 * Meet Now modal — base rules; flex centering + z-index live in
 * template-parts/product-single-legacy-commerce-styles.php (loads later on PDP).
 */
#meet-now-popup {
	display: none;
}

#meet-now-popup.sb-modal-open {
	display: flex !important;
	position: fixed !important;
	inset: 0;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.6);
	z-index: 999998;
	padding: 16px;
	box-sizing: border-box;
}

#meet-now-popup .popup-content {
	flex-direction: column;
}

#meet-now-form input:placeholder {
    font-size: 16px;
    font-family: 'HKGrotesk-Regular', system-ui, sans-serif;
}

.ui-menu-item {
	padding: 5px;
}

.ui-menu-item:hover {
	background: #f0f0f0;
}

.spinner {
	margin-left: 8px;
	width: 16px;
	height: 16px;
	border: 2px solid currentColor;
	border-top: 2px solid transparent;
	border-radius: 50%;
	display: inline-block;
	animation: spin 0.8s linear infinite;
	vertical-align: middle;
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* ==========================================================================
 * Checkout auth modal (login / create account / guest) — guests only.
 * Typography: Plus Jakarta Sans (heading only); Inter elsewhere.
 * ========================================================================== */

.sb-checkout-auth {
	--sb-auth-text: #1a1a40;
	--sb-auth-muted: #64748b;
	--sb-auth-accent: #ea733d;
	--sb-auth-accent-hover: #d86532;
	--sb-auth-border: #e2e8f0;
	--sb-auth-bg: #f7f4ef;
	position: fixed;
	inset: 0;
	z-index: 100010;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 12px;
	box-sizing: border-box;
	font-family: Inter, system-ui, sans-serif;
	font-size: 16px;
	line-height: 24px;
	color: var(--sb-auth-text);
	-webkit-font-smoothing: antialiased;
}

.sb-checkout-auth.is-open {
	display: flex;
}

body.sb-checkout-auth-open {
	overflow: hidden;
	overscroll-behavior: none;
}

.sb-checkout-auth__overlay {
	position: absolute;
	inset: 0;
	background: rgb(0 0 0 / 84%);
}

.sb-checkout-auth__panel {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 540px;
	max-height: min(96dvh, 900px);
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
	padding: 22px 28px 20px;
	border-radius: 14px;
	background: var(--sb-auth-bg);
	box-shadow: 0 24px 64px rgba(15, 23, 42, 0.22);
	box-sizing: border-box;
	outline: none;
	font-family: Inter, system-ui, sans-serif;
	color: var(--sb-auth-text);
	scrollbar-width: thin;
	scrollbar-color: #cbd5e1 transparent;
}

.sb-checkout-auth__close {
	position: absolute !important;
	top: 10px;
	right: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 6px;
	background: transparent !important;
	color: var(--sb-auth-muted) !important;
	font-family: Inter, system-ui, sans-serif;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	box-shadow: none !important;
}

.sb-checkout-auth__close:hover,
.sb-checkout-auth__close:focus,
.sb-checkout-auth__close:focus-visible,
.sb-checkout-auth__close:active {
	background: #efeae3 !important;
	color: var(--sb-auth-text) !important;
	outline: 0;
	box-shadow: none !important;
}

.sb-checkout-auth__title {
	margin: 0 0 0px;
	padding-right: 32px;
	font-family: 'Plus Jakarta Sans', Inter, system-ui, sans-serif !important;
	font-size: 22px;
	font-weight: 700;
	line-height: 30px;
	color: var(--sb-auth-text) !important;
	letter-spacing: -0.02em;
}

.sb-checkout-auth__subtitle {
	margin: 0 0 14px;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 15px !important;
	font-weight: 400;
	line-height: 22px !important;
	color: var(--sb-auth-muted) !important;
}

.sb-checkout-auth__notices {
	margin: 0 0 10px;
}

.sb-checkout-auth__notice-list {
	margin: 0;
	padding: 8px 10px;
	list-style: none;
	border-radius: 6px;
	border: 1px solid #fecaca;
	background: #fef2f2;
}

.sb-checkout-auth__notice {
	margin: 0;
	font-family: Inter, system-ui, sans-serif;
	font-size: 14px;
	line-height: 20px;
	color: #b91c1c;
}

.sb-checkout-auth__notice + .sb-checkout-auth__notice {
	margin-top: 4px;
}

#sb-checkout-auth .sb-checkout-auth__field-error {
	display: block;
	margin: 4px 0 0;
	padding: 0;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 18px !important;
	color: #b91c1c !important;
}

#sb-checkout-auth .form-row.has-error > label,
#sb-checkout-auth .woocommerce-form-row.has-error > label {
	color: #b91c1c !important;
}

#sb-checkout-auth .form-row.has-error .input-text,
#sb-checkout-auth .form-row.has-error input,
#sb-checkout-auth .form-row.has-error select,
#sb-checkout-auth .form-row.has-error .sb-tgwcfb-ms__toggle,
#sb-checkout-auth .form-row.has-error .sb-checkout-auth__password-wrap .input-text,
#sb-checkout-auth .woocommerce-form-row.has-error .input-text,
#sb-checkout-auth .woocommerce-form-row.has-error input,
#sb-checkout-auth .sb-checkout-auth__input-error {
	border-color: #f87171 !important;
}

#sb-checkout-auth .form-row.has-error .input-text:focus,
#sb-checkout-auth .form-row.has-error input:focus,
#sb-checkout-auth .form-row.has-error select:focus,
#sb-checkout-auth .form-row.has-error .sb-tgwcfb-ms__toggle:focus {
	border-color: #ef4444 !important;
	box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.15) !important;
}

/*
 * Kill WooCommerce default .login / .register card (border + 20px pad + margins)
 * that forces the modal scrollbar.
 */
#sb-checkout-auth form.sb-checkout-auth__form,
#sb-checkout-auth form.woocommerce-form.login,
#sb-checkout-auth form.woocommerce-form.register,
#sb-checkout-auth form.tgwcfb-register {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	max-width: none !important;
	font-family: Inter, system-ui, sans-serif !important;
	color: var(--sb-auth-text) !important;
}

#sb-checkout-auth .sb-checkout-auth__form .form-row,
#sb-checkout-auth .sb-checkout-auth__form .woocommerce-form-row,
#sb-checkout-auth .sb-checkout-auth__form p.form-row {
	margin: 0 0 10px !important;
	padding: 0 !important;
}

#sb-checkout-auth .sb-checkout-auth__form label,
#sb-checkout-auth .sb-checkout-auth__form .form-row > label,
#sb-checkout-auth .sb-checkout-auth__form .woocommerce-form-row > label {
	display: block;
	margin: 3px 0 4px !important;
	padding: 0 !important;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 20px !important;
	color: var(--sb-auth-text) !important;
}

#sb-checkout-auth .sb-checkout-auth__form label .required,
#sb-checkout-auth .sb-checkout-auth__form .required {
	color: #dc2626 !important;
}

#sb-checkout-auth .sb-checkout-auth__form .input-text,
#sb-checkout-auth .sb-checkout-auth__form input[type='text'],
#sb-checkout-auth .sb-checkout-auth__form input[type='email'],
#sb-checkout-auth .sb-checkout-auth__form input[type='tel'],
#sb-checkout-auth .sb-checkout-auth__form input[type='password'],
#sb-checkout-auth .sb-checkout-auth__form select,
#sb-checkout-auth .sb-checkout-auth__form .sb-tgwcfb-ms__toggle,
#sb-checkout-auth .sb-checkout-auth__form .sb-tgwcfb-ms__label {
	width: 100%;
	min-height: 35px !important;
	height: 35px !important;
	padding: 8px 12px !important;
	border: 1px solid var(--sb-auth-border) !important;
	border-radius: 8px !important;
	background: #fff !important;
	color: var(--sb-auth-text) !important;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 20px !important;
	box-sizing: border-box;
	box-shadow: none !important;
}

#sb-checkout-auth .sb-checkout-auth__form .sb-tgwcfb-ms__toggle {
	display: flex;
	align-items: center;
}

#sb-checkout-auth .sb-checkout-auth__form .sb-tgwcfb-ms__label {
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--sb-auth-muted) !important;
}

#sb-checkout-auth .sb-checkout-auth__form .sb-tgwcfb-ms__toggle.has-selection .sb-tgwcfb-ms__label {
	color: var(--sb-auth-text) !important;
}

#sb-checkout-auth .sb-checkout-auth__form .input-text::placeholder,
#sb-checkout-auth .sb-checkout-auth__form input::placeholder {
	color: #94a3b8 !important;
	opacity: 1;
}

#sb-checkout-auth .sb-checkout-auth__form .input-text:hover,
#sb-checkout-auth .sb-checkout-auth__form input:hover,
#sb-checkout-auth .sb-checkout-auth__form select:hover {
	border-color: #cbd5e1 !important;
}

#sb-checkout-auth .sb-checkout-auth__form .input-text:focus,
#sb-checkout-auth .sb-checkout-auth__form input:focus,
#sb-checkout-auth .sb-checkout-auth__form select:focus,
#sb-checkout-auth .sb-checkout-auth__form .sb-tgwcfb-ms__toggle:focus {
	outline: 0;
	border-color: var(--sb-auth-accent) !important;
	box-shadow: 0 0 0 2px rgba(234, 115, 61, 0.18) !important;
}

/* Two-column field pairs when TGWCFB outputs half-width rows */
#sb-checkout-auth .sb-checkout-auth__form .form-row-first,
#sb-checkout-auth .sb-checkout-auth__form .form-row-last {
	width: calc(50% - 6px);
	float: left;
	clear: none;
}

#sb-checkout-auth .sb-checkout-auth__form .form-row-last {
	float: right;
}

#sb-checkout-auth .sb-checkout-auth__form .form-row-wide {
	clear: both;
	width: 100%;
	float: none;
}

.sb-checkout-auth__password-wrap,
#sb-checkout-auth .password-input {
	position: relative;
	display: block;
}

.sb-checkout-auth__password-wrap .input-text,
.sb-checkout-auth__password-wrap input,
#sb-checkout-auth .password-input .input-text,
#sb-checkout-auth .password-input input {
	padding-right: 42px !important;
}

/* WooCommerce password eye conflicts with ours (and often can't toggle nested inputs). */
#sb-checkout-auth .show-password-input {
	display: none !important;
	pointer-events: none !important;
	visibility: hidden !important;
}

.sb-checkout-auth__toggle-password {
	position: absolute !important;
	top: 50%;
	right: 6px;
	z-index: 5;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 4px;
	background: transparent !important;
	color: var(--sb-auth-muted) !important;
	cursor: pointer;
	box-shadow: none !important;
	pointer-events: auto;
}

.sb-checkout-auth__toggle-password svg {
	pointer-events: none;
}

.sb-checkout-auth__toggle-password:hover,
.sb-checkout-auth__toggle-password:focus,
.sb-checkout-auth__toggle-password:focus-visible,
.sb-checkout-auth__toggle-password:active {
	color: var(--sb-auth-text) !important;
	background: #f1f5f9 !important;
	outline: 0;
	box-shadow: none !important;
}

.sb-checkout-auth__forgot {
	margin: -2px 0 8px !important;
}

.sb-checkout-auth__forgot a {
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 14px !important;
	line-height: 20px !important;
	color: var(--sb-auth-accent) !important;
	text-decoration: none;
	font-weight: 600;
	background: transparent !important;
}

.sb-checkout-auth__forgot a:hover,
.sb-checkout-auth__forgot a:focus {
	text-decoration: underline;
	color: var(--sb-auth-accent-hover) !important;
	background: transparent !important;
}

.sb-checkout-auth__remember {
	margin: 0 0 12px !important;
}

.sb-checkout-auth__remember label,
#sb-checkout-auth .sb-checkout-auth__remember label {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	font-family: Inter, system-ui, sans-serif !important;
	font-weight: 500 !important;
	font-size: 16px !important;
	line-height: 22px !important;
	color: var(--sb-auth-text) !important;
	cursor: pointer;
}

#sb-checkout-auth .sb-checkout-auth__btn,
#sb-checkout-auth a.sb-checkout-auth__btn,
#sb-checkout-auth button.sb-checkout-auth__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 35px !important;
	height: auto !important;
	padding: 5px 16px !important;
	border-radius: 8px !important;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 20px !important;
	text-decoration: none !important;
	cursor: pointer;
	box-sizing: border-box;
	box-shadow: none !important;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

#sb-checkout-auth .sb-checkout-auth__btn--primary,
#sb-checkout-auth button.sb-checkout-auth__btn--primary,
#sb-checkout-auth button.woocommerce-form-register__submit.sb-checkout-auth__btn {
	border: 1px solid var(--sb-auth-accent) !important;
	background: var(--sb-auth-accent) !important;
	background-color: var(--sb-auth-accent) !important;
	color: #fff !important;
}

#sb-checkout-auth .sb-checkout-auth__btn--primary:hover,
#sb-checkout-auth .sb-checkout-auth__btn--primary:focus,
#sb-checkout-auth .sb-checkout-auth__btn--primary:focus-visible,
#sb-checkout-auth .sb-checkout-auth__btn--primary:active,
#sb-checkout-auth button.sb-checkout-auth__btn--primary:hover,
#sb-checkout-auth button.sb-checkout-auth__btn--primary:focus,
#sb-checkout-auth button.sb-checkout-auth__btn--primary:active,
#sb-checkout-auth button.woocommerce-form-register__submit.sb-checkout-auth__btn:hover,
#sb-checkout-auth button.woocommerce-form-register__submit.sb-checkout-auth__btn:focus,
#sb-checkout-auth button.woocommerce-form-register__submit.sb-checkout-auth__btn:active {
	background: var(--sb-auth-accent-hover) !important;
	background-color: var(--sb-auth-accent-hover) !important;
	border-color: var(--sb-auth-accent-hover) !important;
	color: #fff !important;
	outline: 0;
	text-decoration: none !important;
	box-shadow: none !important;
}

#sb-checkout-auth .sb-checkout-auth__btn--primary:disabled,
#sb-checkout-auth .sb-checkout-auth__form.is-loading .sb-checkout-auth__btn--primary {
	opacity: 0.7;
	cursor: wait;
}

#sb-checkout-auth .sb-checkout-auth__btn--guest,
#sb-checkout-auth a.sb-checkout-auth__btn--guest {
	border: 1px solid var(--sb-auth-accent) !important;
	background: #fff !important;
	background-color: #fff !important;
	color: var(--sb-auth-text) !important;
}

#sb-checkout-auth .sb-checkout-auth__btn--guest:hover,
#sb-checkout-auth .sb-checkout-auth__btn--guest:focus,
#sb-checkout-auth .sb-checkout-auth__btn--guest:focus-visible,
#sb-checkout-auth .sb-checkout-auth__btn--guest:active,
#sb-checkout-auth a.sb-checkout-auth__btn--guest:hover,
#sb-checkout-auth a.sb-checkout-auth__btn--guest:focus,
#sb-checkout-auth a.sb-checkout-auth__btn--guest:active {
	background: #fff7ed !important;
	background-color: #fff7ed !important;
	border-color: var(--sb-auth-accent-hover) !important;
	color: var(--sb-auth-text) !important;
	outline: 0;
	text-decoration: none !important;
	box-shadow: none !important;
}

.sb-checkout-auth__divider {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 12px 0;
	color: var(--sb-auth-muted);
	font-family: Inter, system-ui, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
}

.sb-checkout-auth__divider::before,
.sb-checkout-auth__divider::after {
	content: '';
	flex: 1 1 auto;
	height: 1px;
	background: var(--sb-auth-border);
}

.sb-checkout-auth__switch {
	margin: 12px 0 0 !important;
	text-align: center;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 14px !important;
	font-weight: 400;
	line-height: 20px !important;
	color: var(--sb-auth-muted) !important;
}

/* Reset theme/BB button hover (red box) on text switch links */
#sb-checkout-auth .sb-checkout-auth__switch-link,
#sb-checkout-auth button.sb-checkout-auth__switch-link {
	display: inline !important;
	width: auto !important;
	min-height: 0 !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	color: var(--sb-auth-accent) !important;
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 20px !important;
	cursor: pointer;
	text-decoration: none !important;
	box-shadow: none !important;
}

#sb-checkout-auth .sb-checkout-auth__switch-link:hover,
#sb-checkout-auth .sb-checkout-auth__switch-link:focus,
#sb-checkout-auth .sb-checkout-auth__switch-link:focus-visible,
#sb-checkout-auth .sb-checkout-auth__switch-link:active,
#sb-checkout-auth button.sb-checkout-auth__switch-link:hover,
#sb-checkout-auth button.sb-checkout-auth__switch-link:focus,
#sb-checkout-auth button.sb-checkout-auth__switch-link:active {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	color: var(--sb-auth-accent-hover) !important;
	text-decoration: underline !important;
	outline: 0;
	box-shadow: none !important;
}

/* Hide TGWCFB / Woo default register submit if a second one appears in blocks */
#sb-checkout-auth .sb-checkout-auth__form--register button[name='register']:not(.sb-checkout-auth__btn) {
	display: none !important;
}

.sb-checkout-auth__form::after {
	content: '';
	display: table;
	clear: both;
}

/* Multiselect dropdown inside compact modal */
#sb-checkout-auth .sb-tgwcfb-ms__dropdown {
	z-index: 2;
}

#sb-checkout-auth .sb-tgwcfb-ms__options {
	max-height: 230px;
}

#sb-checkout-auth .sb-tgwcfb-ms__option,
#sb-checkout-auth .sb-tgwcfb-ms__option span {
	font-family: Inter, system-ui, sans-serif !important;
	font-size: 12px !important;
	color: var(--sb-auth-text) !important;
	font-weight: 600 !important;
}

@media (max-width: 640px) {
	.sb-checkout-auth {
		padding: 0;
		align-items: flex-end;
	}

	.sb-checkout-auth__panel {
		max-width: 100%;
		max-height: min(92dvh, 100dvh);
		border-radius: 14px 14px 0 0;
		padding: 18px 16px calc(16px + env(safe-area-inset-bottom, 0px));
	}

	.sb-checkout-auth__title {
		font-size: 20px;
		line-height: 28px;
	}

	#sb-checkout-auth .sb-checkout-auth__form .form-row-first,
	#sb-checkout-auth .sb-checkout-auth__form .form-row-last {
		width: 100%;
		float: none;
	}
}

@media (max-height: 720px) {
	.sb-checkout-auth__panel {
		padding: 30px 35px;
	}

	.sb-checkout-auth__title {
		font-size: 22px;
		line-height: 32px;
	}

	.sb-checkout-auth__subtitle {
		margin-bottom: 10px;
	}

	#sb-checkout-auth .sb-checkout-auth__form .form-row,
	#sb-checkout-auth .sb-checkout-auth__form .woocommerce-form-row,
	#sb-checkout-auth .sb-checkout-auth__form p.form-row {
		margin: 0 0 8px !important;
	}

	.sb-checkout-auth__divider {
		margin: 10px 0;
	}

	.sb-checkout-auth__switch {
		margin-top: 10px !important;
	}
}

.sb-checkout-auth__remember .woocommerce-form__input-checkbox {
 margin-top: 2px !important;
}