:root {
	/* 2px */
	--space-100: .125rem;
	/* 4px */
	--space-200: .25rem;
	/* 8px */
	--space-300: .5rem;
	/* 12px */
	--space-400: .75rem;
	/* 16px */
	--space-500: 1rem;
	/* 20px */
	--space-600: 1.25rem;
	/* 24px */
	--space-700: 1.5rem;
	/* 32px */
	--space-800: 2rem;
	/* 48px */
	--space-900: 3rem;
	/* 64px */
	--space-950: 4rem;
}

fieldset {
	gap: var(--space-300)
}

.product-essential dl {
	margin: initial
}

dl {
	margin: initial
}

dt {
	font-size: smaller
}

dd {
	margin: initial;
	font-weight: bolder;
}

ul {
	margin: initial
}







.page--customer-info .site-main,
.page--change-password .site-main {
	max-width: 32rem;
}

/* Narrow content such as form fieldsets */
.narrow-content {
	width: 100%;
	max-width: 32rem;
	margin: 0 auto;
}

/* Optimize for readability width */
.ofr {
	width: 100%;
	max-width: 40rem;
	line-height: 1.6;
	margin: auto;
}



/* Helps to layout main items such as products, manufacturers, categories, etc. */
.item-grid,
.stack {
	display: grid;
	grid-gap: var(--space-500);
	align-items: start;
}



.homepage-products {
	width: 100%;
	max-width: 76rem;
	margin: auto;
}

.item-box .picture,
.item-box .ribbon-wrapper {
	width: initial;
	margin: initial;
	display: block;
	float: initial;
}

@media (min-width: 20rem) {

	.item-grid,
	.stack {
		grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
	}

	.item-grid>*,
	.stack>* {
		height: 100%;
	}

	.stack--manufacturers {
		grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr))
	}

	.stack--footer-navigation {
		grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
	}

	.stack--products,
	.product-list .item-grid,
	.product-grid .item-grid {
		/* grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)) */
	}

	.stack--products {
		align-items: stretch;
	}
}







/* Layout items in rows */
.shelf {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-300);
	align-items: center;
	margin: initial;
}

.shelf--base {
	align-items: baseline;
}

[class].ajax-cart-button-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-300);
	align-items: center;
	direction: initial;
}


.shelf--centered {
	justify-content: center
}

.shelf--spaced {
	justify-content: space-between
}

.shelf--no-wrap {
	flex-wrap: nowrap
}

.shelf__item--grow {
	flex-grow: 1
}

.shelf--spc-100 {
	gap: var(--space-100)
}

.shelf--spc-200 {
	gap: var(--space-200)
}

.shelf--spc-300 {
	gap: var(--space-300)
}

.shelf--spc-400 {
	gap: var(--space-400)
}

.shelf--spc-500 {
	gap: var(--space-500)
}

.shelf--spc-600 {
	gap: var(--space-600)
}

.shelf--spc-700 {
	gap: var(--space-700)
}

.shelf--spc-800 {
	gap: var(--space-800)
}

.margin--spc-300 {
	margin: var(--space-300)
}

.shelf--newsletter-email {
	flex-direction: column;
	align-items: end;
}

.shelf--newsletter-email input {
	width: 100%;
	border-color: transparent;
	/* max-width: 20rem; */
}





/* Layout items in one column */
.rack {
	display: grid;
	gap: var(--space-300);
	align-content: start;
}

@media (min-width: 64rem) {
	.rack--order-summary {
		grid-template-columns: 2fr 1fr;
	}
}

.rack--spc-100 {
	gap: var(--space-100)
}

.rack--spc-200 {
	gap: var(--space-200)
}

.rack--spc-300 {
	gap: var(--space-300)
}

.rack--spc-400 {
	gap: var(--space-400)
}

.rack--spc-500 {
	gap: var(--space-500)
}

.rack--spc-600 {
	gap: var(--space-600)
}

.rack--spc-700 {
	gap: var(--space-700)
}

.rack--spc-800 {
	gap: var(--space-800)
}

.rack--smart-product-collection .navigation {
	display: none;
}


.site-aside {
	display: grid;
	gap: 1rem;
	align-items: start;
	padding: 0 .5rem;

}




.master-wrapper-page {
	position: relative;
	overflow-x: hidden;
	gap: var(--space-800);
}

.master-wrapper-page header {
	order: 10
}

.master-wrapper-page main {
	display: block;
	flex-direction: column;
	gap: var(--space-700);
	padding: 1rem;
	order: 20;
}

.master-wrapper-page aside {
	order: 22;
}

.master-wrapper-page footer {
	flex-basis: 100%;
	order: 40
}

.page--cart main,
.page--checkout main {
	padding: 0 var(--space-300);
}

.page--home main {
	gap: var(--space-400);
	padding: .5rem;
}


@media (min-width: 64rem) {
	.master-wrapper-page {
		display: flex;
		align-items: start;
		flex-wrap: wrap;
		justify-content: center;
	}

	.master-wrapper-page header {
		flex-basis: 100%;
	}

	.master-wrapper-page aside {
		flex-basis: 20%;
		order: 20;
		max-width: 20rem;
		padding-right: 0;
		padding-left: var(--space-300);
	}

	.master-wrapper-page aside:empty {
		display: contents;
	}

	.master-wrapper-page main {
		flex-grow: 1;
		order: 30;
		max-width: 76rem;
		padding: 0 1rem;
	}

	.page--home main {
		max-width: 100%;
		margin-top: calc(var(--space-800) * -1);
		padding: 0.5rem;
	}

	.master-wrapper-page aside+main {
		max-width: 54rem;
		padding-right: var(--space-300);
		padding-left: 0;
	}

	.master-wrapper-page aside:empty+main {
		padding-left: var(--space-300);
	}

	.master-wrapper-page footer {
		flex-basis: 100%;
	}
}





.ship-to-same-address {
	margin: auto;
}

.product-details-micro-data>*,
.product-details-micro-data {
	display: contents;
}



.slider {
	width: 100%;
}

.homepage-productos-por-departamento .rack--smart-product-collection {
	margin-bottom: 2.75rem;
}


/* MARGINS */
.m-t-100 { margin-top: var(--space-100) }
.m-t-200 { margin-top: var(--space-200) }
.m-t-300 { margin-top: var(--space-300) }
.m-t-400 { margin-top: var(--space-400) }
.m-t-500 { margin-top: var(--space-500) }
.m-t-600 { margin-top: var(--space-600) }
.m-t-700 { margin-top: var(--space-700) }
.m-t-800 { margin-top: var(--space-800) }
.m-t-900 { margin-top: var(--space-900) }

.m-b-100 { margin-bottom: var(--space-100) }
.m-b-200 { margin-bottom: var(--space-200) }
.m-b-300 { margin-bottom: var(--space-300) }
.m-b-400 { margin-bottom: var(--space-400) }
.m-b-500 { margin-bottom: var(--space-500) }
.m-b-600 { margin-bottom: var(--space-600) }
.m-b-700 { margin-bottom: var(--space-700) }
.m-b-800 { margin-bottom: var(--space-800) }
.m-b-900 { margin-bottom: var(--space-900) }

.m-l-100 { margin-left: var(--space-100) }
.m-l-200 { margin-left: var(--space-200) }
.m-l-300 { margin-left: var(--space-300) }
.m-l-400 { margin-left: var(--space-400) }
.m-l-500 { margin-left: var(--space-500) }
.m-l-600 { margin-left: var(--space-600) }
.m-l-700 { margin-left: var(--space-700) }
.m-l-800 { margin-left: var(--space-800) }
.m-l-900 { margin-left: var(--space-900) }

.m-r-100 { margin-right: var(--space-100) }
.m-r-200 { margin-right: var(--space-200) }
.m-r-300 { margin-right: var(--space-300) }
.m-r-400 { margin-right: var(--space-400) }
.m-r-500 { margin-right: var(--space-500) }
.m-r-600 { margin-right: var(--space-600) }
.m-r-700 { margin-right: var(--space-700) }
.m-r-800 { margin-right: var(--space-800) }
.m-r-900 { margin-right: var(--space-900) }