/*
Theme Name: Electrodescuento
Description: Tema hijo de Blocksy para electrodescuento.com.ar (reemplaza a Flatsome y su child).
Author: Electrodescuento
Template: blocksy
Version: 4.0.0
Text Domain: ed
*/


/*************** ADD CUSTOM CSS HERE.   ***************/

/*
 * Tarjetas de producto (shop, home, relacionados, upsells).
 * Recuadro cuadrado; contain + padding para no recortar gráficas Jadever.
 */
.product-small .box-image {
	aspect-ratio: 1 / 1;
	background: #fff;
	overflow: hidden;
	position: relative;
}
.product-small .box-image .image-none,
.product-small .box-image .image-cover,
.product-small .box-image > a,
.product-small .box-image .image-none > a,
.product-small .box-image .image-cover > a {
	display: block;
	width: 100%;
	height: 100%;
}
.product-small .box-image img {
	object-fit: contain !important;
	object-position: center center !important;
	width: 100% !important;
	height: 100% !important;
	max-width: 100%;
	max-height: 100%;
	padding: 10px !important;
	box-sizing: border-box !important;
}
.product-small .box-text .name.product-title,
.product-small .box-text .product-title,
.woocommerce-loop-product__title,
.product-small .product-title a,
.woocommerce-loop-product__title a {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	min-height: calc(1.35em * 2);
	max-height: calc(1.35em * 2);
	line-height: 1.35;
}

/* Relacionados / upsells / home: mismas tarjetas ≥ ~60 caracteres. */
body.single-product .related .row:not(.slider):not(.row-slider),
body.single-product .upsells .row:not(.slider):not(.row-slider),
body.home .products.row:not(.slider):not(.row-slider) {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, 265px);
	justify-content: start;
	align-items: stretch;
	width: 100% !important;
	max-width: none !important;
}
body.single-product .related .row:not(.slider):not(.row-slider) > .product-small.col,
body.single-product .upsells .row:not(.slider):not(.row-slider) > .product-small.col,
body.home .products.row:not(.slider):not(.row-slider) > .product-small.col {
	flex: none !important;
	float: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
}
@media (max-width: 320px) {
	body.single-product .related .row:not(.slider):not(.row-slider),
	body.single-product .upsells .row:not(.slider):not(.row-slider),
	body.home .products.row:not(.slider):not(.row-slider) {
		grid-template-columns: minmax(0, 1fr);
	}
}

:root {
	--ed-fs: clamp(13px, 0.28vw + 12px, 15px);
	--ed-fs-sm: clamp(12px, 0.2vw + 11px, 13px);
	--ed-fs-lg: clamp(15px, 0.35vw + 13px, 17px);
	--ed-bar-h: clamp(36px, 2.1vw, 44px);
}

.ed-benefits-bar {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 0;
	align-items: start;
	background: #fff;
	border: 1px solid #e8edf2;
	border-radius: 12px;
	padding: 18px 8px;
	margin: 0 20px 8px;
	box-sizing: border-box;
}
.ed-benefits-item {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	gap: 8px !important;
	min-width: 0;
	padding: 4px 20px;
	border-right: 1px solid #e8edf2;
}
.ed-benefits-item:last-child {
	border-right: 0;
}
.ed-benefits-k {
	font-size: 14px;
	font-weight: 800;
	color: #0d1b2a;
	line-height: 1.25;
	margin: 0;
}
.ed-benefits-v {
	font-size: 13px;
	color: #5b6b7a;
	line-height: 1.4;
	margin: 0;
}
.ed-benefits-payments {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center;
	gap: 8px;
	margin: 0;
}
.ed-benefits-payments img {
	display: block;
	height: 22px;
	width: auto;
	max-width: 80px;
	object-fit: contain;
}
.ed-benefits-divider {
	display: none !important;
}
@media (max-width: 849px) {
	.ed-benefits-bar {
		grid-template-columns: 1fr;
		margin: 0 12px 8px;
		padding: 8px 0;
	}
	.ed-benefits-item {
		border-right: 0;
		border-bottom: 1px solid #e8edf2;
		padding: 14px 16px;
		width: 100% !important;
	}
	.ed-benefits-item:last-child {
		border-bottom: 0;
	}
}

/* Banner de marca: columna derecha (no debajo, centrado). */
.ed-jadever-rightcol .ed-side-banner img,
.ed-brand-rightcol .ed-side-banner img {
	display: block;
	width: 100%;
	height: auto;
	max-height: none;
	object-fit: contain;
	object-position: center top;
	background: #0d1b2a;
	border-radius: 8px;
	box-shadow: 0 4px 14px rgba(13, 27, 42, 0.1);
}
.ed-side-banner--loop {
	display: none !important;
}
@media (min-width: 850px) {
	.row.category-page-row.ed-has-jadever-banner,
	.row.category-page-row.ed-has-brand-banner {
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
	}
	.row.category-page-row.ed-has-jadever-banner > .col,
	.row.category-page-row.ed-has-brand-banner > .col {
		float: none !important;
	}
	.row.category-page-row.ed-has-jadever-banner > .col.large-3,
	.row.category-page-row.ed-has-brand-banner > .col.large-3 {
		flex: 0 0 280px !important;
		width: 280px !important;
		max-width: 280px !important;
	}
	.row.category-page-row.ed-has-jadever-banner > .col.large-9,
	.row.category-page-row.ed-has-brand-banner > .col.large-9 {
		flex: 1 1 auto !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
	}
	.row.category-page-row.ed-has-jadever-banner > .ed-jadever-rightcol,
	.row.category-page-row.ed-has-brand-banner > .ed-brand-rightcol {
		flex: 0 0 220px !important;
		width: 220px !important;
		max-width: 220px !important;
		margin-left: 12px !important;
	}
}
@media (max-width: 849px) {
	.ed-side-banner--loop {
		display: block !important;
		max-width: 220px;
		margin: 16px auto 0;
	}
	.ed-side-banner--loop img {
		width: 100%;
		height: auto;
		border-radius: 8px;
	}
}

/* Flatsome pinta html con footer_bottom_color (#0d1b2a). La home debe ser blanca. */
html,
body {
	background-color: #fff !important;
}
#wrapper,
#main,
#content,
.page-wrapper {
	background-color: #fff !important;
}
.absolute-footer {
	background-color: #0d1b2a !important;
}

/* Outlet: bloque navy original; tarjetas de producto blancas. */
html body .outlet-section,
html body .row.outlet-section,
html body .outlet-section .col,
html body .outlet-section ul.products {
	background-color: #0d1b2a !important;
}
html body .outlet-section ul.products {
	padding: 20px 40px 40px !important;
	margin: 0 !important;
}
html body .outlet-section .product-small .box,
html body .outlet-section .product-small .box-image,
html body .outlet-section li.product .box-image {
	background: #fff !important;
	border-radius: 8px;
}

/* Home: títulos de producto/categoría legibles (fondo claro). */
body.home .product-small .category,
body.home .product-small .category a {
	color: #0d1b2a !important;
	opacity: 1 !important;
	font-weight: 700;
	text-transform: uppercase;
}
body.home .product-small .product-title a,
body.home .product-small .woocommerce-loop-product__title,
body.home .product-small .price,
body.home .product-small .price * {
	color: #0d1b2a !important;
}

/* Títulos de sección tipo Flatsome (línea + caja, alto contraste). */
body.home .section-title span,
body.home .section-title-main,
body.home .title-wrapper .title {
	color: #0d1b2a !important;
	background: #fff;
}

/*
 * Galería Flatsome (Flickity): una imagen por vista.
 * El tema centra celdas sin forzar ancho completo y se ve un “peek” de la siguiente.
 * Ver también: Personalizar → WooCommerce → Página de producto → Gallery → Tipo → Fade.
 */
.woocommerce-product-gallery__wrapper.product-gallery-slider:not(.slider-type-fade)
	.flickity-slider
	> * {
	width: 100% !important;
	max-width: 100% !important;
}

.woocommerce-product-gallery__wrapper.product-gallery-slider .flickity-viewport {
	overflow: hidden !important;
}

/* Misma idea en tarjetas de tienda con slider en .box-image */
.box-image .slider:not(.slider-type-fade) .flickity-slider > * {
	width: 100% !important;
	max-width: 100% !important;
}

.box-image .slider .flickity-viewport {
	overflow: hidden !important;
}

/*
 * reCAPTCHA v3: ocultar badge (permitido por Google si hay atribución visible).
 * Ver: https://developers.google.com/recaptcha/docs/faq#id-like-to-hide-the-recaptcha-badge.-what-is-allowed
 */
.grecaptcha-badge {
	visibility: hidden !important;
	opacity: 0 !important;
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

.recaptcha-footer-notice {
	display: block;
	margin-top: 0.35em;
	font-size: 11px;
	line-height: 1.4;
	opacity: 0.65;
}

.recaptcha-footer-notice a {
	text-decoration: underline;
	opacity: 0.9;
}

/* Categoría FacetWP: si el padre ya está en "Filtros aplicados", no lo repitas; mostrá hijas. */
.facetwp-facet-categorias_full .facetwp-checkbox.checked:has(+ .facetwp-depth) {
	display: none;
}
.facetwp-facet-categorias_full .facetwp-checkbox.checked + .facetwp-depth {
	display: block;
}

/* Catálogo: centrar y que la grilla ocupe el espacio (el CSS extra forzaba 100% + columna 75%). */
@media (min-width: 850px) {
	body.woocommerce-shop #main,
	body.woocommerce-shop main#main,
	html body.woocommerce-shop main#main {
		max-width: 1840px !important;
		width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 24px !important;
		padding-right: 24px !important;
		box-sizing: border-box !important;
	}
	body.woocommerce-shop .row.category-page-row {
		display: flex !important;
		align-items: flex-start !important;
		width: 100% !important;
		max-width: 100% !important;
	}
	body.woocommerce-shop .shop-container {
		display: block !important;
		width: 100% !important;
	}
	body.woocommerce-shop .woocommerce-pagination {
		display: block !important;
		width: 100% !important;
		clear: both !important;
		float: none !important;
	}
	body.woocommerce-shop .product-small .box-text .product-title,
	body.woocommerce-shop .product-small .box-text .name.product-title {
		font-size: var(--ed-fs);
	}
	body.woocommerce-shop .ed-ship-hint {
		font-size: var(--ed-fs-sm);
	}
	body.woocommerce-shop .row.category-page-row > .col.large-3 {
		flex: 0 0 280px !important;
		width: 280px !important;
		max-width: 280px !important;
		overflow-x: hidden !important;
		align-self: flex-start !important;
		height: auto !important;
	}
	body.woocommerce-shop .row.category-page-row > .col.large-9 {
		flex: 1 1 0% !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
	}
	body.woocommerce-shop .row.category-page-row > .ed-jadever-rightcol,
	body.woocommerce-shop .row.category-page-row > .ed-brand-rightcol {
		flex: 0 0 220px !important;
		width: 220px !important;
		max-width: 220px !important;
		align-self: flex-start !important;
	}
	#shop-sidebar,
	.fwp-filtros {
		max-width: 100% !important;
		overflow-x: hidden !important;
		box-sizing: border-box !important;
	}
}

/* Filtros del catálogo: acordeón. Abiertos: aplicados, búsqueda, categoría. */
.fwp-filtros > div > h4 {
	cursor: pointer;
	position: relative;
	padding-right: 22px;
	user-select: none;
}
.fwp-filtros > div > h4::after {
	content: "+";
	position: absolute;
	right: 0;
	top: 0;
	font-weight: 700;
	color: #1a73e8;
}
.fwp-filtros > div:not(.is-collapsed) > h4::after {
	content: "−";
}
.fwp-filtros > .fwp-busqueda > h4::after,
.fwp-filtros > .fwp-selecciones > h4::after {
	content: none;
}
.fwp-filtros > .fwp-busqueda > h4,
.fwp-filtros > .fwp-selecciones > h4 {
	cursor: default;
}
.fwp-filtros > div.is-collapsed .facetwp-facet {
	display: none !important;
}
.fwp-filtros > div.is-empty-facet,
.fwp-filtros > div.ed-facet-off-cat {
	display: none !important;
}
body.woocommerce-shop .widget_recently_viewed_products,
body.woocommerce-shop .woocommerce.widget_recently_viewed_products {
	display: none !important;
}

.badge-inner.ed-ship-coord,
.badge-inner.ed-ship-fast {
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 0.01em;
	line-height: 1.15;
	text-transform: uppercase;
	padding: 7px 6px;
	white-space: normal;
	max-width: 82px;
}
.badge-inner.ed-ship-coord {
	background: #0d1b2a !important;
	color: #f5c518 !important;
}
.badge-inner.ed-ship-fast {
	background: #2dc653 !important;
	color: #0d1b2a !important;
}
.ed-ship-notice {
	padding: 10px 14px;
	margin: 0 0 12px;
	font-size: 14px;
	border-radius: 4px;
}
.ed-ship-notice--coord {
	background: #0d1b2a;
	color: #fff;
	border-left: 4px solid #f5c518;
}
.ed-ship-notice--coord strong {
	color: #f5c518;
}

/* H1 de archivo Woo: Flatsome a veces lo deja en span. */
.shop-page-title.page-title h1,
.woocommerce-products-header__title,
h1.shop-page-title {
	font-size: 32px;
	letter-spacing: 0.01em;
	word-spacing: 0.04em;
}

/* Tarjetas de catálogo: menos “placeholder” gris. */
.box-image img[src*="woocommerce-placeholder"] {
	opacity: 0.35;
	filter: grayscale(1);
}
.ed-ship-notice--fast {
	background: #e8f8ee;
	color: #0d1b2a;
	border-left: 4px solid #2dc653;
}

/* Variantes tipo Mercado Libre: color circular + sección como etiqueta. */
.single-product .ux-swatches.ux-swatches--color .ux-swatch__text {
	display: none;
}
.single-product .ux-swatches.ux-swatches--color .ux-swatch {
	border: 1px solid rgba(13, 27, 42, 0.18);
	box-shadow: none;
}
.single-product .ux-swatches.ux-swatches--color .ux-swatch.selected,
.single-product .ux-swatches.ux-swatches--color .ux-swatch:hover {
	border-color: #0d1b2a;
}
.single-product .variations th.label {
	font-size: 13px;
	color: #6b7e8f;
	font-weight: 600;
	text-transform: none;
}

@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}

/* Footer: menos aire vertical. */
#footer.footer-1,
.footer-1 {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.ed-footer-grid {
	column-gap: 28px !important;
	row-gap: 14px !important;
}

.ed-footer-grid ul {
	gap: 2px !important;
}

.ed-footer-grid li,
#footer .ed-footer-grid li,
.footer-1 .widget ul li {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.35 !important;
	border: 0 !important;
}

.ed-footer-grid li a {
	line-height: 1.35 !important;
	padding: 1px 0 !important;
	display: inline-block;
}

.ed-footer-bottom {
	margin-top: 16px !important;
	padding-top: 12px !important;
}

/*
 * Contraste global — tokens nativos de Flatsome (Personalizar → Colores):
 *   --fs-color-primary     = amarillo de marca (fondos, acentos)
 *   --fs-color-secondary   = navy (texto sobre amarillo)
 *   --fs-experimental-link-color = color_links (ya navy)
 *
 * Flatsome asume primary oscuro: .button { color:#fff } y
 * .is-outline { color: var(--fs-color-primary) }. Con primary amarillo
 * eso deja blanco-sobre-yellow y yellow-sobre-blanco en TODA la tienda.
 * El hover de links del Customizer no se toca acá: se cambia el theme_mod.
 */
.button:not(.secondary):not(.white):not(.alert):not(.is-link),
input[type='submit']:not(.secondary),
input[type='button'].button:not(.secondary),
.primary:not(.secondary):not(.is-link):not(.is-outline):not(.is-underline) {
	color: var(--fs-color-secondary);
}

.button.is-outline,
.button.is-underline,
.primary.is-outline,
.primary.is-underline,
.primary.is-link {
	color: var(--fs-color-secondary);
}

.button.is-outline:hover,
.primary.is-outline:hover,
.is-outline:hover {
	color: var(--fs-color-secondary);
	background-color: var(--fs-color-primary);
	border-color: var(--fs-color-primary);
}

.badge-inner {
	color: var(--fs-color-secondary);
}

.badge-frame .badge-inner,
.badge-outline .badge-inner {
	color: var(--fs-color-secondary);
}

.grid-tools a,
.grid-tools a:hover {
	color: var(--fs-color-secondary);
}

/* Contador header: Flatsome pinta [data-icon-label]:after en blanco.
 * El fondo suele quedar en primary (amarillo) → 1 ilegible. Navy sobre amarillo. */
.header-wishlist-icon [data-icon-label]:after,
i.wishlist-icon[data-icon-label]:after {
	background-color: var(--fs-color-primary);
	color: var(--fs-color-secondary);
}

.product-small .category a,
.product_meta a,
.posted_in a,
.tagged_as a {
	color: var(--fs-experimental-link-color);
}

.shop_table th,
.cart_totals th,
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table .product-name,
.woocommerce-checkout-review-order-table .product-name a {
	color: var(--fs-color-secondary);
	opacity: 1;
}

.woocommerce-shipping-destination,
.shipping__list_label {
	color: var(--fs-color-base);
	opacity: 1;
}

.header-wrapper .search-field::placeholder,
.header-wrapper input[type='search']::placeholder {
	color: rgba(255, 255, 255, 0.72);
	opacity: 1;
}

/* Footer grid + hueco del dock (2026-08-29) */
.ed-footer-grid {
	display: grid !important;
	grid-template-columns: 1.3fr 1fr 1fr 1.3fr;
	align-items: start;
	text-align: left !important;
}
.ed-footer-grid > div {
	text-align: left !important;
}
#footer .widget {
	margin: 0 !important;
}
#footer .logo,
#footer .header-logo,
.footer-1 .img-logo {
	display: none !important;
}
.absolute-footer {
	display: none !important;
}
@media (max-width: 849px) {
	.ed-footer-grid {
		grid-template-columns: 1fr 1fr !important;
		column-gap: 16px !important;
		row-gap: 18px !important;
		text-align: left !important;
	}
	.ed-footer-bottom {
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		text-align: center !important;
		margin-bottom: 0 !important;
		padding-bottom: 0 !important;
	}
	html,
	body {
		padding-bottom: 0 !important;
	}
	#footer,
	#footer.footer-1,
	.footer-wrapper {
		background-color: #0d1b2a !important;
		padding-bottom: calc(110px + env(safe-area-inset-bottom, 0px)) !important;
		margin-bottom: 0 !important;
	}
	body.ed-has-freeship-bar #footer,
	body.ed-has-freeship-bar #footer.footer-1,
	body.ed-has-freeship-bar .footer-wrapper {
		padding-bottom: calc(124px + env(safe-area-inset-bottom, 0px)) !important;
	}
	.footer .col,
	.footer .flex-col,
	.footer .col:has(a[href*="/mi-cuenta/"]),
	.footer .flex-col:has(a[href*="/mi-cuenta/"]) {
		text-align: left !important;
	}
	.footer .col:has(a[href*="/mi-cuenta/"]) ul,
	.footer .flex-col:has(a[href*="/mi-cuenta/"]) ul,
	.footer .col:has(a[href*="/mi-cuenta/"]) li,
	.footer .flex-col:has(a[href*="/mi-cuenta/"]) li {
		text-align: left !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

.ed-freeship-modal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	background: rgba(13, 27, 42, 0.45);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.ed-freeship-modal[hidden] {
	display: none !important;
}
.ed-freeship-modal__box {
	position: relative;
	background: #fff;
	color: #0d1b2a;
	max-width: 380px;
	width: 100%;
	padding: 20px 20px 16px;
	border-radius: 8px;
	border: 1px solid #e8edf2;
}
.ed-freeship-modal__close {
	position: absolute;
	top: 8px;
	right: 10px;
	appearance: none;
	border: 0;
	background: transparent;
	color: #0d1b2a;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	padding: 0 4px;
}
.ed-freeship-modal__title {
	margin: 0 0 6px;
	font-size: 16px;
	font-weight: 700;
	color: #0d1b2a;
	padding-right: 24px;
}
.ed-freeship-modal__text {
	margin: 0 0 12px;
	font-size: 13px;
	line-height: 1.4;
	color: #4b5563;
	font-weight: 400;
}
.ed-freeship-modal__btn {
	appearance: none;
	border: 0;
	background: #f2c830;
	color: #0d1b2a;
	font-weight: 700;
	font-size: 13px;
	padding: 8px 14px;
	border-radius: 4px;
	cursor: pointer;
}
.ed-freeship-modal__btn:disabled {
	opacity: 0.65;
	cursor: wait;
}
.ed-freeship-modal__btn--ghost {
	background: transparent;
	border: 0;
	color: #0d1b2a;
	text-decoration: underline;
	text-underline-offset: 2px;
	font-weight: 600;
	font-size: 12px;
	padding: 4px 0;
	text-transform: none;
	letter-spacing: 0;
	width: auto;
}
.ed-cp-form.is-saved .ed-freeship-modal__btn {
	display: none;
}
.ed-cp-form.is-saved .ed-cp-form__actions {
	display: none;
}
.ed-cp-form.is-saved .ed-cp-form__input,
.ed-cp-form.is-saved #ed_modal_cp,
#ed_modal_cp[hidden] {
	display: none !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
}
.ed-cp-form.is-saved .ed-cp-form__hint {
	display: none;
}
.ed-cp-line {
	margin: 0 0 12px;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.4;
	color: #111827;
	background: none;
	border: 0;
	box-shadow: none;
	padding: 0;
	letter-spacing: 0;
}
.ed-cp-line__n {
	font-weight: 500;
	font-variant-numeric: tabular-nums;
}
button.ed-cp-line__a,
.ed-cp-line__a {
	appearance: none !important;
	display: inline !important;
	margin-left: 12px;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	min-height: 0 !important;
	height: auto !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: inherit !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: #6b7280 !important;
	text-decoration: underline !important;
	text-underline-offset: 2px;
	cursor: pointer;
}
.ed-cp-form__actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}
.ed-cp-form__label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	margin: 0 0 4px;
}
.ed-cp-form__input {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #cfd8e3;
	border-radius: 4px;
	padding: 8px 10px;
	font-size: 15px;
	letter-spacing: 0.04em;
	color: #0d1b2a;
	margin: 0 0 6px;
}
.ed-cp-form__input:focus {
	outline: 2px solid #f2c830;
	border-color: #0d1b2a;
}
.ed-cp-form__err {
	margin: 0 0 8px;
	color: #b42318;
	font-size: 13px;
	font-weight: 600;
}
.ed-cp-form__hint {
	margin: 0 0 14px;
	font-size: 13px;
}
.ed-cp-form__hint a {
	color: #0d1b2a;
	text-decoration: underline;
}
.ed-cp-form__result {
	margin: 0 0 10px;
	font-size: 13px;
	line-height: 1.4;
	font-weight: 400;
	color: #4b5563;
	background: none;
	padding: 0;
}
body.ed-freeship-open {
	overflow: hidden;
}
.ed-freeship-bar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9990;
	min-height: var(--ed-bar-h);
	background: rgba(13, 27, 42, 0.96);
	color: #fff;
	overflow: hidden;
	box-sizing: border-box;
	cursor: pointer;
}
.ed-freeship-bar:focus {
	outline: 2px solid #f2c830;
	outline-offset: -2px;
}
.ed-freeship-bar.is-off {
	display: none;
}
.ed-freeship-bar.is-need-cp .ed-freeship-bar__fill,
.ed-freeship-bar.is-no-moto .ed-freeship-bar__fill,
.ed-freeship-bar.is-pickup .ed-freeship-bar__fill {
	width: 0 !important;
}
.ed-freeship-bar__fill {
	display: none;
}
.ed-freeship-bar__txt {
	position: relative;
	z-index: 1;
	margin: 0;
	min-height: var(--ed-bar-h);
	line-height: var(--ed-bar-h);
	text-align: center;
	font-size: var(--ed-fs);
	font-weight: 600;
	letter-spacing: 0.01em;
	padding: 0 16px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ed-freeship-bar__cta {
	display: inline-block;
	margin-left: 10px;
	padding: 5px 12px;
	background: #f2c830;
	color: #0d1b2a;
	font-weight: 800;
	font-size: 13px;
	line-height: 1.2;
	border-radius: 4px;
	vertical-align: middle;
	letter-spacing: 0;
}
.ed-freeship-bar__x {
	appearance: none !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	vertical-align: middle;
	margin: 0 0 0 4px;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	min-height: 0 !important;
	width: 22px;
	height: 22px;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	color: #fff !important;
	cursor: pointer;
	opacity: 0.85;
}
.ed-freeship-bar__x:hover,
.ed-freeship-bar__x:focus {
	opacity: 1;
}
body.ed-has-freeship-bar:not(.ed-freeship-open) {
	padding-bottom: 0;
}
@media (min-width: 850px) {
	body.ed-has-freeship-bar #footer,
	body.ed-has-freeship-bar #footer.footer-1,
	body.ed-has-freeship-bar .footer-wrapper {
		padding-bottom: calc(48px + env(safe-area-inset-bottom, 0px));
		background-color: #0d1b2a;
	}
	html.ed-has-freeship-bar,
	body.ed-has-freeship-bar {
		background-color: #0d1b2a;
	}
}
@media (max-width: 849px) {
	.ed-freeship-bar {
		bottom: calc(56px + env(safe-area-inset-bottom, 0px));
		z-index: 10040;
		min-height: 0;
	}
	.ed-freeship-bar__txt {
		min-height: 0;
		line-height: 1.2;
		white-space: normal;
		padding: 5px 12px;
		font-size: 12px;
	}
	.ed-freeship-bar__cta {
		margin: 0 0 0 6px;
		font-size: 11px;
		padding: 2px 8px;
	}
	body.ed-has-freeship-bar:not(.ed-freeship-open) {
		padding-bottom: 0;
	}
	body.woocommerce-cart.ed-has-freeship-bar:not(.ed-freeship-open) .ed-cart,
	body.woocommerce-checkout.ed-has-freeship-bar:not(.ed-freeship-open) .woocommerce {
		padding-bottom: 0;
	}
	body.woocommerce-cart.ed-has-freeship-bar .ed-cart .wc-proceed-to-checkout {
		padding-bottom: calc(56px + 40px + 12px + env(safe-area-inset-bottom, 0px));
	}
	body.woocommerce-cart:not(.ed-has-freeship-bar) .ed-cart .wc-proceed-to-checkout {
		padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
	}
	body.ed-has-freeship-bar #footer,
	body.ed-has-freeship-bar #footer.footer-1,
	body.ed-has-freeship-bar .footer-wrapper {
		padding-bottom: calc(100px + env(safe-area-inset-bottom, 0px));
	}
	body.ed-has-freeship-bar:has(.ed-dock) .ed-top-fab,
	body.ed-has-freeship-bar:has(.ed-dock) .ed-wa-fab {
		bottom: calc(104px + env(safe-area-inset-bottom, 0px));
	}
}
@media (max-width: 549px) {
	.ed-freeship-bar__txt {
		font-size: 12px;
	}
}

.ed-shipping-note.ed-freeship-note,
.ed-shipping-note.ed-freeship-progress {
	background: transparent;
	border: 0;
	padding: 0;
	margin: 0 0 10px;
	font-weight: 500;
	font-size: var(--ed-fs-sm);
	color: #4b5563;
}

.ed-cart-title {
	font-size: var(--ed-fs-lg);
	font-weight: 600;
	color: #111827;
	margin: 0 0 16px;
}
.woocommerce-cart .page-title,
.woocommerce-cart .shop-page-title,
.woocommerce-cart .woocommerce-products-header {
	display: none;
}
.ed-cart-items {
	margin-bottom: 16px;
}
.ed-cart-item {
	display: flex;
	align-items: center;
	gap: 16px;
	background: #fff;
	border-radius: 0;
	padding: 16px 0;
	margin-bottom: 0;
	border: 0;
	border-bottom: 1px solid #e0e0e0;
}
.ed-cart-item__img {
	flex: 0 0 72px;
}
.ed-cart-item__img img {
	width: 72px;
	height: 72px;
	object-fit: contain;
	display: block;
}
.ed-cart-item__info {
	flex: 1 1 auto;
	min-width: 0;
}
.ed-cart-item__name {
	display: block;
	font-weight: 500;
	color: #111827;
	text-decoration: none;
}
.ed-cart-item__remove {
	display: inline-block;
	margin-top: 6px;
	color: #0d1b2a;
	font-size: 13px;
	text-decoration: underline;
}
.ed-cart-items__head {
	display: flex;
	align-items: flex-end;
	gap: 16px;
	padding: 0 0 8px;
	margin: 0;
	border-bottom: 1px solid #e0e0e0;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #6b7280;
}
.ed-cart-item__col-label {
	display: none;
}
.ed-cart-item__unit {
	flex: 0 0 132px;
	text-align: right;
}
.ed-cart-item__qty {
	flex: 0 0 132px;
}
.ed-cart-item__price {
	flex: 0 0 160px;
	text-align: right;
	font-weight: 400;
	color: #0d1b2a;
}
.ed-cart-items__head .ed-cart-item__unit,
.ed-cart-items__head .ed-cart-item__price {
	text-align: right;
}
.ed-cart-items__head .ed-cart-item__qty {
	text-align: center;
}
.ed-cart-empty-all {
	margin: 12px 0 0;
	font-size: 13px;
}
.ed-cart-empty-all a {
	color: #0d1b2a;
	text-decoration: underline;
}
.ed-cart-actions {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}
.ed-cart-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
	gap: 0 28px;
	align-items: start;
	padding-top: 4px;
}
.ed-cart-main {
	min-width: 0;
}
.ed-cart-box,
.ed-cart-sector {
	background: #fff;
	border-radius: 0;
	border: 0;
	border-top: 1px solid #e8edf2;
	padding: 14px 0;
	min-width: 0;
	width: 100%;
}
.ed-cart-main .ed-cart-sector:first-child {
	border-top: 0;
	padding-top: 4px;
}
.ed-cart-sector--sum {
	border: 1px solid #e8edf2;
	padding: 14px 16px 16px;
	background: #fafbfc;
	position: sticky;
	top: 88px;
}
.ed-cart-box__title {
	margin: 0 0 10px;
	font-size: 15px;
	font-weight: 600;
	color: #111827;
	text-transform: none;
	letter-spacing: 0;
}
.ed-cart-methods {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.ed-cart-methods--ship {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 8px;
}
.ed-cart-methods li {
	margin: 0;
}
.ed-cart-method {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid #e8edf2;
	border-radius: 6px;
	cursor: pointer;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.3;
	color: #111827;
	height: 100%;
	box-sizing: border-box;
}
.ed-cart-methods li:last-child .ed-cart-method {
	padding-bottom: 10px;
}
.ed-cart-method:has(input:checked),
.ed-cart-method.is-selected {
	border-color: #111827;
	background: #fff;
}
.ed-cart-method input {
	appearance: auto;
	-webkit-appearance: auto;
	width: 16px;
	height: 16px;
	margin: 3px 0 0;
	flex: 0 0 auto;
	accent-color: #2563eb;
}
.ed-cart.is-updating .ed-cart-sector--sum {
	opacity: 0.55;
}
.ed-cart-method__body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.ed-cart-method__name {
	font-weight: 500;
	color: #111827;
}
.ed-cart-method__meta {
	font-size: 12px;
	font-weight: 400;
	color: #6b7280;
}
.ed-cart-method__price {
	flex: 0 0 auto;
	font-weight: 600;
	color: #111827;
	white-space: nowrap;
	padding-top: 1px;
	margin-left: auto;
}
.ed-cart-radios {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 28px;
}
.ed-cart-radios li {
	margin: 0;
}
.ed-cart-radios label {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: var(--ed-fs);
	font-weight: 400;
	line-height: 1.35;
	cursor: pointer;
	color: #1f2937;
}
.ed-cart-radios strong {
	display: inline-block;
	margin-left: 6px;
}
.ed-cart-box__hint {
	margin: 8px 0 0;
	font-size: 13px;
	font-weight: 400;
	color: #6b7280;
}
.ed-cart-cp {
	margin: 0 0 10px;
}
.ed-cart-method:has(input:checked) .ed-cart-method__name {
	font-weight: 600;
}
.ed-cart-cp label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: #111827;
	margin: 0 0 6px;
}
.ed-cart-cp--set {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin: 0 0 10px;
}
.ed-cart-cp--set label {
	display: inline;
	margin: 0;
}
.ed-cart .ed-cp-line {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	margin: 0;
}
.ed-cp-line__x {
	appearance: none !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	margin: 0 0 0 2px;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	min-height: 0 !important;
	width: 22px;
	height: 22px;
	font-size: 20px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	color: #6b7280 !important;
	cursor: pointer;
}
.ed-cp-line__x:hover {
	color: #111827 !important;
}
.ed-cart-cp__row {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 8px;
	max-width: 360px;
}
.ed-cart-cp input {
	flex: 1 1 auto;
	width: auto;
	box-sizing: border-box;
	border: 1px solid #e0e0e0;
	padding: 7px 10px;
	font-size: 14px;
	color: #0d1b2a;
}
.ed-cart-cp .button,
.ed-cart-cp button.button {
	display: inline-block;
	width: auto;
	box-sizing: border-box;
	background: #f2c830 !important;
	border: 0 !important;
	color: #0d1b2a !important;
	font-weight: 700;
	text-transform: none;
	white-space: nowrap;
	line-height: 1.2;
	padding: 8px 12px !important;
	font-size: var(--ed-fs-sm) !important;
	text-align: center;
}
.ed-cart-cp--set label {
	font-size: 13px;
	font-weight: 600;
	margin: 0;
}
.ed-cart .shipping-calculator-button,
.ed-cart .button[name="calc_shipping"],
.ed-cart button[name="calc_shipping"] {
	background: #f2c830 !important;
	border-color: #f2c830 !important;
	color: #0d1b2a !important;
	font-weight: 700;
	text-transform: uppercase;
}
.ed-cart-summary h2 {
	display: none;
}
.ed-cart-summary .woocommerce-shipping-totals,
.ed-cart-summary .woocommerce-shipping-destination,
.ed-cart-summary .shipping-calculator-button,
.ed-cart-summary .woocommerce-shipping-calculator,
.ed-cart-summary ul#shipping_method {
	display: none !important;
}
.ed-cart-sector--sum .ed-cart-summary {
	display: block;
}
.ed-cart-sector--sum .ed-cart-summary > .ed-shipping-note {
	margin: 0 0 10px;
}
.ed-cart-summary__rows {
	list-style: none;
	margin: 0 0 12px;
	padding: 0;
	max-width: none;
}
.ed-cart-summary__rows li {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 5px 0;
	font-size: var(--ed-fs);
	color: #0d1b2a;
	border-bottom: 1px solid #eef1f4;
}
.ed-cart-sum-fee {
	color: #111827;
}
.ed-cart-summary__total {
	font-weight: 700;
	align-items: flex-end;
}
.ed-cart-summary__total > span:last-child {
	text-align: right;
}
.ed-cart-finish,
.ed-cart .checkout-button {
	display: block !important;
	width: 100%;
	min-width: 0;
	text-align: center;
	background: #f2c830 !important;
	border: 0 !important;
	color: #0d1b2a !important;
	font-weight: 700;
	border-radius: 4px;
	padding: 12px 16px;
	text-transform: none;
	letter-spacing: 0;
	box-shadow: none !important;
	font-size: var(--ed-fs);
}
.ed-cart .checkout-button:hover {
	background: #e8bc20 !important;
	color: #0d1b2a !important;
}
.ed-cart input.input-text,
.ed-cart .shipping-calculator-form input {
	border: 1px solid #e0e0e0;
	background: #fff;
	color: #0d1b2a;
}
@media (max-width: 849px) {
	.ed-cart-grid {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.ed-cart-sector--sum {
		position: static;
		margin-top: 8px;
	}
	.ed-cart-methods--ship {
		grid-template-columns: 1fr;
	}
	.ed-cart-item {
		flex-wrap: wrap;
	}
	.ed-cart-items__head {
		display: none;
	}
	.ed-cart-item__col-label {
		display: block;
		margin-bottom: 4px;
		font-size: 11px;
		font-weight: 700;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: #6b7280;
	}
	.ed-cart-item__unit,
	.ed-cart-item__qty,
	.ed-cart-item__price {
		flex: 1 1 30%;
	}
}

.ed-contact-map {
	max-width: 920px;
	margin: 8px auto 0;
}
.ed-contact-map iframe {
	display: block;
	width: 100%;
	height: 380px;
	border: 0;
	border-radius: 6px;
	box-shadow: 0 1px 8px rgba(13, 27, 42, 0.08);
}
.ed-contact-map__link {
	margin: 10px 0 0;
	text-align: center;
}
.ed-contact-map__link a {
	color: #0d1b2a;
	text-decoration: underline;
	font-size: 14px;
}
@media (max-width: 849px) {
	.ed-contact-map iframe {
		height: 280px;
	}
}
