.ac-hdr{ position:relative; }
.ac-cat{ position:static; }
.ac-cats{ position:static; }

.ac-mega{
	position:absolute; left:0; right:auto; top:100%; z-index:400;
	width:max-content; max-width:min(1180px,94vw);
	background:#fff; color:#2a2a2a;
	border:1px solid #e6e2dd; border-top:0;
	box-shadow:0 22px 48px rgba(17,17,17,.14);
	padding:28px 34px 22px;
	opacity:0; visibility:hidden; transform:translateY(-6px);
	transition:opacity .18s ease, transform .18s ease, visibility .18s;
}
.ac-cat.abierto .ac-mega{ opacity:1; visibility:visible; transform:translateY(0); }
.ac-mega__cols{ display:block; column-gap:46px; }
.ac-mega__col{ break-inside:avoid; -webkit-column-break-inside:avoid; margin:0 0 20px; }
.ac-mega a.ac-mega__tit{
	display:block; font-family:'Cormorant Garamond',Georgia,serif;
	font-size:1.18rem; font-weight:500; color:#111 !important;
	text-decoration:none; letter-spacing:.01em; margin:0 0 10px;
	white-space:normal; text-transform:none;
	padding-bottom:7px; border-bottom:1px solid #e6e2dd;
}
.ac-mega a.ac-mega__tit:hover{ text-decoration:underline; text-underline-offset:4px; }
.ac-mega__lista{ list-style:none; margin:0; padding:0; }
.ac-mega__lista li{ margin:0 0 7px; }
.ac-mega .ac-mega__lista a{
	font-family:'Jost',sans-serif; font-size:.9rem; font-weight:300;
	color:#6f6f6f !important; text-decoration:none;
	white-space:normal; text-transform:none; letter-spacing:0;
}
.ac-mega .ac-mega__lista a:hover{ color:#111 !important; }
.ac-mega__pie{ margin-top:24px; padding-top:16px; border-top:1px solid #e6e2dd; }
.ac-mega a.ac-mega__todo{
	font-family:'Jost',sans-serif; font-size:.78rem; font-weight:400;
	letter-spacing:.14em; text-transform:uppercase;
	color:#111 !important; text-decoration:none;
	border-bottom:1px solid #111; padding-bottom:2px;
}

.ac-ov{
	position:absolute; left:0; right:0; top:100%; z-index:500;
	background:#fff; border-top:1px solid #e6e2dd;
	box-shadow:0 22px 48px rgba(17,17,17,.16);
	opacity:0; visibility:hidden; transform:translateY(-6px);
	transition:opacity .18s ease, transform .18s ease, visibility .18s;
}
.ac-ov.abierto{ opacity:1; visibility:visible; transform:translateY(0); }
.ac-ov__in{
	display:grid; grid-template-columns:236px 1fr; gap:34px;
	max-width:1560px; margin:0 auto; padding:28px 30px 34px;
	max-height:calc(100vh - 190px); overflow-y:auto;
}
.ac-ov__filtros{ font-family:'Jost',sans-serif; }
.ac-f__tit{
	font-family:'Jost',sans-serif !important; font-size:.72rem; font-weight:500;
	letter-spacing:.16em; text-transform:uppercase; color:#6f6f6f; margin:0 0 12px;
}
.ac-f__arbol + .ac-f__tit, .ac-f__sel + .ac-f__tit, .ac-f__precio + .ac-f__tit{ margin-top:26px; }
.ac-f__fila{ display:flex; align-items:center; gap:2px; }
.ac-f__chev{
	background:none; border:0; cursor:pointer; width:18px; height:24px;
	padding:0; flex:0 0 18px; color:#6f6f6f; font-size:1rem; line-height:1;
	transition:transform .16s;
}
.ac-f__chev.abierto{ transform:rotate(90deg); }
.ac-f__chev--vacio{ cursor:default; }
.ac-f__nom{
	background:none; border:0; cursor:pointer; flex:1; text-align:left;
	padding:5px 8px; font-family:'Jost',sans-serif; font-size:.86rem;
	font-weight:300; color:#2a2a2a; border-radius:2px;
	display:flex; justify-content:space-between; gap:8px;
}
.ac-f__nom:hover{ background:#f4f2ef; }
.ac-f__num{ color:#6f6f6f; font-size:.76rem; }
.ac-f__fila.activo > .ac-f__nom{ background:#111 !important; color:#fff !important; font-weight:400; }
.ac-f__fila.activo > .ac-f__nom .ac-f__num{ color:rgba(255,255,255,.7) !important; }
.ac-f__sel{
	width:100%; padding:9px 10px; border:1px solid #e6e2dd; border-radius:0;
	background:#fff; font-family:'Jost',sans-serif; font-size:.86rem;
	font-weight:300; color:#2a2a2a;
}
.ac-f__precio{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.ac-f__num-in{
	width:100%; padding:9px 10px; border:1px solid #e6e2dd; border-radius:0;
	font-family:'Jost',sans-serif; font-size:.86rem; font-weight:300;
}
.ac-f__ap{
	grid-column:1/-1; padding:10px; cursor:pointer;
	background:#111; color:#fff; border:1px solid #111;
	font-family:'Jost',sans-serif; font-size:.74rem;
	letter-spacing:.14em; text-transform:uppercase;
}
.ac-f__ap:hover{ background:#fff; color:#111; }
.ac-f__limpiar{
	margin-top:20px; width:100%; padding:9px; cursor:pointer;
	background:none; border:1px solid #e6e2dd;
	font-family:'Jost',sans-serif; font-size:.74rem;
	letter-spacing:.12em; text-transform:uppercase; color:#6f6f6f;
}
.ac-f__limpiar:hover{ border-color:#111; color:#111; }
.ac-ov__cab{
	font-family:'Jost',sans-serif; font-size:.74rem; letter-spacing:.16em;
	text-transform:uppercase; color:#6f6f6f; margin:0 0 16px;
}
.ac-ov__rej{ display:grid; grid-template-columns:repeat(5,1fr); gap:13px; }
.ac-ov__vacio{ grid-column:1/-1; font-family:'Jost',sans-serif; font-weight:300; color:#6f6f6f; }
.ac-ov__mas{ margin-top:22px; text-align:center; }
.ac-ov__ver{
	padding:13px 30px; cursor:pointer; background:none;
	border:1px solid #111; color:#111; font-family:'Jost',sans-serif;
	font-size:.76rem; letter-spacing:.14em; text-transform:uppercase;
}
.ac-ov__ver:hover{ background:#111; color:#fff; }
.ac-t{ display:flex; flex-direction:column; }
.ac-t__img{ display:block; background:#f4f1ed; }
.ac-t__img img{ width:100%; height:auto; aspect-ratio:1/1; object-fit:contain; display:block; }
.ac-t__sin{ display:block; aspect-ratio:1/1; }
.ac-t__marca{
	font-family:'Jost',sans-serif; font-size:.66rem; letter-spacing:.14em;
	text-transform:uppercase; color:#6f6f6f; margin:10px 0 3px !important;
}
.ac-t__nom{
	font-family:'Cormorant Garamond',Georgia,serif; font-size:1.02rem;
	font-weight:500; line-height:1.25; margin:0 0 5px !important;
}
.ac-t__nom a{ color:#111 !important; text-decoration:none; }
.ac-t__precio{
	font-family:'Jost',sans-serif; font-size:.86rem; font-weight:400;
	color:#2a2a2a; margin:0 0 9px !important;
}
.ac-t__precio del{ color:#6f6f6f; margin-right:5px; }
.ac-t__agotado{
	font-family:'Jost',sans-serif; font-size:.74rem; letter-spacing:.1em;
	text-transform:uppercase; color:#6f6f6f; margin-top:auto;
}
.ac-t__btn.button{
	margin-top:auto !important; padding:10px 14px !important;
	font-size:.72rem !important; letter-spacing:.14em !important; text-align:center;
}
body.ac-ov-abierto{ overflow:hidden; }
.ac-burger{ display:none; }
.ac-cajon{ display:none; }

@media (max-width:900px){
	.ac-mega{ display:none !important; }
	.ac-ov__in{ grid-template-columns:1fr; gap:22px; padding:20px 18px 26px; max-height:calc(100vh - 150px); }
	.ac-ov__filtros{ order:2; }
	.ac-ov__res{ order:1; }
	.ac-ov__rej{ grid-template-columns:repeat(2,1fr); gap:16px; }
	.ac-t__nom{ font-size:1.06rem; }
	.ac-burger{
		display:flex !important; flex-direction:column; justify-content:center; gap:5px;
		position:absolute; right:20px; top:18px; width:40px; height:40px; padding:9px;
		background:none; border:0; cursor:pointer; z-index:60;
	}
	.ac-burger span{ display:block; height:1.5px; background:#fff; transition:transform .2s, opacity .2s; }
	.ac-burger.abierto span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
	.ac-burger.abierto span:nth-child(2){ opacity:0; }
	.ac-burger.abierto span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }
	.ac-cajon{
		display:block; position:fixed; inset:0; z-index:900;
		background:#111; color:#fff; padding:86px 24px 40px; overflow-y:auto;
		transform:translateX(100%); transition:transform .26s ease;
	}
	.ac-cajon.abierto{ transform:translateX(0); }
	body.ac-cajon-abierto{ overflow:hidden; }
	.ac-cajon__f{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
	.ac-cajon__a{
		flex:1; display:block; padding:13px 0;
		font-family:'Cormorant Garamond',Georgia,serif; font-size:1.34rem; font-weight:500;
		color:#fff !important; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.12);
	}
	.ac-cajon__ch{
		background:none; border:0; color:#fff; cursor:pointer;
		width:40px; height:40px; font-size:1.4rem; line-height:1; transition:transform .18s;
	}
	.ac-cajon__ch.abierto{ transform:rotate(90deg); }
	.ac-cajon__sub{ display:none; }
	.ac-cajon__sub.abierto{ display:block; }
	.ac-cajon__sub .ac-cajon__a{
		font-family:'Jost',sans-serif; font-size:1rem; font-weight:300;
		color:rgba(255,255,255,.82) !important; padding:10px 0;
	}
}

@media (min-width:901px) and (max-width:1200px){
	.ac-ov__rej{ grid-template-columns:repeat(4,1fr); }
}