/* =========================================================
   CHEF CHAPÍN — PÁGINAS EDITORIALES
   ========================================================= */


/* =========================================================
   1. ESTRUCTURA GENERAL
   ========================================================= */

body.page {
	overflow-x: clip;
}

body.page .site-content {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

body.page .site-content > .ast-container {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

body.page #primary {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

body.page #secondary {
	display: none;
}


/* =========================================================
   2. CONTENEDOR PRINCIPAL
   ========================================================= */

.cc-page-main {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.cc-page {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	background: #FFFFFF;
}

.cc-page__inner {
	width: min(calc(100% - 56px), 980px);
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;

	padding-top: 48px;
	padding-bottom: 60px;
}


/* =========================================================
   3. CABECERA
   ========================================================= */

.cc-page__header {
	width: 100%;
	max-width: 1000px;

	margin: 0 0 30px;
}

.cc-page__title {
	margin: 0;

	color: #20241E;

	font-size: clamp(34px, 4.2vw, 52px);
	font-weight: 700;
	line-height: 1.08;

	letter-spacing: -0.035em;
}


/* =========================================================
   4. CONTENIDO EDITORIAL
   ========================================================= */

.cc-page__content {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}


/* =========================================================
   PÁRRAFOS
   ========================================================= */

.cc-page__content > p {
	max-width: 100%;

	margin: 0 0 18px;

	color: #4F584B;

	font-size: 17px;
	line-height: 1.75;
}


/* =========================================================
   ENLACES
   ========================================================= */

.cc-page__content a {
	color: #5F7800;
}

.cc-page__content a:hover {
	color: #4E6400;
}


/* =========================================================
   H2
   ========================================================= */

.cc-page__content > h2 {
	max-width: 1000px;

	margin: 48px 0 18px;

	color: #20241E;

	font-size: clamp(25px, 3vw, 34px);
	font-weight: 700;
	line-height: 1.15;

	letter-spacing: -0.025em;
}


/* =========================================================
   H3
   ========================================================= */

.cc-page__content > h3 {
	max-width: 1000px;

	margin: 36px 0 14px;

	color: #20241E;

	font-size: 22px;
	font-weight: 700;
	line-height: 1.2;
}


/* =========================================================
   H4
   ========================================================= */

.cc-page__content > h4 {
	margin: 28px 0 12px;

	color: #20241E;

	font-size: 19px;
	font-weight: 700;
	line-height: 1.3;
}


/* =========================================================
   LISTAS
   ========================================================= */

.cc-page__content > ul,
.cc-page__content > ol {
	max-width: 100%;

	margin: 0 0 20px;
	padding-left: 28px;

	color: #4F584B;

	font-size: 16px;
	line-height: 1.7;
}

.cc-page__content li {
	margin-bottom: 6px;
}


/* =========================================================
   IMÁGENES
   ========================================================= */

.cc-page__content img {
	max-width: 100%;
	height: auto;
}

.cc-page__content figure {
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
}


/* =========================================================
   NEGRITAS
   ========================================================= */

.cc-page__content strong {
	color: #20241E;
	font-weight: 700;
}


/* =========================================================
   CITAS
   ========================================================= */

.cc-page__content blockquote {
	margin: 28px 0;

	padding: 18px 22px;

	border-left: 4px solid #5F7800;

	background: #F5F7F1;

	color: #4F584B;

	font-size: 17px;
	line-height: 1.7;
}


/* =========================================================
   SEPARADORES
   ========================================================= */

.cc-page__content hr {
	margin: 38px 0;

	border: 0;
	border-top: 1px solid #E1E5D5;
}


/* =========================================================
   5. TARJETAS DE RECETAS
   ========================================================= */

/*
 * Las tarjetas utilizan el sistema existente:
 *
 * .cc-recipe-grid
 * .cc-card
 * .cc-card__media
 * .cc-card__body
 * .cc-card__title
 * .cc-card__meta
 *
 * cards.css proporciona el diseño base.
 */

.cc-page__content .cc-recipe-grid {
	width: 100%;
	max-width: 100%;

	margin: 0;
}


/* =========================================================
   6. SECCIONES DE RECETAS
   ========================================================= */

.cc-page__content .cc-recipe-grid {
	margin-top: 4px;
	margin-bottom: 30px;
}


/* =========================================================
   7. ELEMENTOS VACÍOS
   ========================================================= */

.cc-page__content .cc-empty {
	margin: 20px 0;
}


/* =========================================================
   8. MÓVIL
   ========================================================= */

@media (max-width: 767px) {

	body.page {
		overflow-x: hidden;
	}


	/* =====================================================
	   CONTENEDOR
	   ===================================================== */

	.cc-page__inner {
		width: 100% !important;
		max-width: 100% !important;

		margin: 0 !important;

		padding-top: 24px;
		padding-bottom: 40px;

		box-sizing: border-box;
	}


	/* =====================================================
	   H1
	   ===================================================== */

	.cc-page__header {
		width: 100% !important;
		max-width: 100% !important;

		margin: 0 8px 20px !important;
		padding: 0 !important;

		box-sizing: border-box;
	}

	.cc-page__title {
		font-size: clamp(32px, 8vw, 40px);

		line-height: 1.08;

		letter-spacing: -0.035em;
	}


	/* =====================================================
	   CONTENIDO
	   ===================================================== */

	.cc-page__content {
		width: 100% !important;
		max-width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;

		box-sizing: border-box;
	}


	/* =====================================================
	   PÁRRAFOS
	   ===================================================== */

	.cc-page__content > p {
		max-width: none;

		margin: 0 8px 18px !important;
		padding: 0 !important;

		font-size: 16px;
		line-height: 1.7;

		box-sizing: border-box;
	}


	/* =====================================================
	   H2
	   ===================================================== */

	.cc-page__content > h2 {
		max-width: none;

		margin: 38px 8px 18px !important;
		padding: 0 !important;

		font-size: 25px;
		line-height: 1.18;

		box-sizing: border-box;
	}


	/* =====================================================
	   H3
	   ===================================================== */

	.cc-page__content > h3 {
		max-width: none;

		margin: 30px 8px 14px !important;
		padding: 0 !important;

		font-size: 21px;
		line-height: 1.2;

		box-sizing: border-box;
	}


	/* =====================================================
	   H4
	   ===================================================== */

	.cc-page__content > h4 {
		margin: 26px 8px 12px !important;

		font-size: 18px;
	}


	/* =====================================================
	   LISTAS
	   ===================================================== */

	.cc-page__content > ul,
	.cc-page__content > ol {
		margin: 0 8px 20px !important;
		padding-left: 28px !important;

		font-size: 16px;
		line-height: 1.7;

		box-sizing: border-box;
	}


	/* =====================================================
	   IMÁGENES
	   ===================================================== */

	.cc-page__content img {
		max-width: 100%;
		height: auto;
	}


	/* =====================================================
	   BLOCKQUOTE
	   ===================================================== */

	.cc-page__content blockquote {
		margin: 24px 8px;

		padding: 15px 17px;

		font-size: 16px;
		line-height: 1.65;
	}


	/* =====================================================
	   SEPARADOR
	   ===================================================== */

	.cc-page__content hr {
		margin: 32px 8px;
	}


	/* =====================================================
	   TARJETAS
	   ===================================================== */

	.cc-page__content .cc-recipe-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));

		gap: 10px;

		margin: 0 8px 26px;

		width: calc(100% - 16px);
		max-width: none;
	}


	.cc-page__content .cc-card {
		border-radius: 9px;

		box-shadow:
			0 2px 9px rgba(32, 37, 28, .06);
	}


	.cc-page__content .cc-card:hover {
		transform: none;

		box-shadow:
			0 2px 9px rgba(32, 37, 28, .06);
	}


	.cc-page__content .cc-card__media {
		aspect-ratio: 4 / 3;
	}


	.cc-page__content .cc-card__body {
		padding: 9px 9px 10px;
	}


	.cc-page__content .cc-card__title {
		font-size: 16px;
		line-height: 1.25;
	}


	.cc-page__content .cc-card__meta {
		margin-top: 6px;
	}


	.cc-page__content .cc-card__time {
		font-size: 11px;
	}


	.cc-page__content .cc-card__time-icon {
		font-size: 13px;
	}

}


/* =========================================================
   9. TELÉFONOS MUY ESTRECHOS
   ========================================================= */

@media (max-width: 380px) {

	.cc-page__content .cc-recipe-grid {
		gap: 8px;

		margin-left: 6px;
		margin-right: 6px;

		width: calc(100% - 12px);
	}


	.cc-page__content .cc-card__title {
		font-size: 14px;
	}


	.cc-page__content .cc-card__body {
		padding: 8px;
	}

}


/* =========================================================
   10. ASTRA — ELIMINAR ESPACIO EXTERIOR EN MÓVIL
   ========================================================= */

@media (max-width: 544px) {

	body.page.ast-separate-container .ast-article-single,
	body.page.ast-separate-container .ast-article-post {
		width: 100% !important;
		max-width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;

		box-sizing: border-box;
	}


	body.page.ast-separate-container .ast-container {
		width: 100% !important;
		max-width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;
	}


	body.page.ast-separate-container .site-content {
		width: 100% !important;
		max-width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;
	}


	body.page.ast-separate-container #primary {
		width: 100% !important;
		max-width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;
	}

}

/* =========================================================
   GRID WPRM ROUNDUP
   ========================================================= */

.cc-roundup-grid {
	display: grid;

	grid-template-columns: repeat(4, minmax(0, 1fr));

	gap: 22px;

	width: 100%;

	margin: 24px 0 32px;
}

.cc-roundup-grid > * {
	min-width: 0;
	margin: 0 !important;
}


/* TABLET */

@media (max-width: 900px) {

	.cc-roundup-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));

		gap: 16px;
	}

}


/* MÓVIL */

@media (max-width: 767px) {

	.cc-roundup-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));

		gap: 10px;

		width: calc(100% - 16px);

		margin: 20px 8px 26px;
	}

}

/* =========================================================
   IMAGEN DESTACADA
   ========================================================= */

.cc-page__featured {
	width: 100%;
	margin: 0 0 28px;
	padding: 0;
}

.cc-page__featured-image {
	display: block;

	width: 100%;
	height: auto;

	aspect-ratio: 16 / 9;
	object-fit: cover;

	border-radius: 12px;
}


/* MÓVIL */

@media (max-width: 767px) {

	.cc-page__featured {
		width: calc(100% - 16px);
		margin: 0 8px 22px;
	}

	.cc-page__featured-image {
		border-radius: 9px;
	}

}