.cc-comunidad-canvas {
	margin: 0;
	background: #eef2f7;
}

.cc-comunidad-single-page {
	min-height: 100vh;
	padding: clamp(24px, 4vw, 54px) 18px clamp(42px, 6vw, 76px);
	background:
		radial-gradient(circle at 8% 0%, rgba(38, 116, 200, 0.1), transparent 30rem),
		linear-gradient(180deg, #f8fbff 0%, #eef2f7 100%);
}

.cc-comunidad-single-page__inner {
	width: min(100%, 980px);
	margin: 0 auto;
}

.cc-comunidad-single-page__nav {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 18px;
}

.cc-comunidad-single-page__back,
.cc-comunidad-single-page__section {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #001b3f;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
	text-decoration: none;
}

.cc-comunidad-single-page__back:hover,
.cc-comunidad-single-page__section:hover,
.cc-comunidad-single-page__back:focus,
.cc-comunidad-single-page__section:focus {
	color: #176bc0;
	text-decoration: none;
}

.cc-comunidad-single-page__section {
	padding: 7px 11px;
	border: 1px solid rgba(0, 27, 63, 0.1);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: #526174;
}

.cc-single-notice,
.cc-single-notice * {
	box-sizing: border-box;
}

.cc-single-notice {
	width: 100%;
	margin: 0;
	padding: 0;
}

.cc-single-notice__status {
	margin: 0 0 16px;
	padding: 14px 16px;
	border: 1px solid #d8dee8;
	border-radius: 14px;
	background: #f3f4f6;
	color: #374151;
	font-weight: 700;
}

.cc-single-notice .cch__item {
	--cch-accent: #2674c8;
	position: relative;
	padding: clamp(20px, 4vw, 30px);
	overflow: hidden;
	border: 1px solid rgba(0, 27, 63, 0.1);
	border-top: 6px solid var(--cch-accent);
	border-radius: 22px;
	background: #fff;
	color: #29364a;
	box-shadow: 0 18px 42px rgba(0, 27, 63, 0.1);
	font-family: inherit;
}

.cc-single-notice .cch__item--urgente {
	--cch-accent: #c62828;
}

.cc-single-notice .cch__item--atencion {
	--cch-accent: #d97706;
}

.cc-single-notice .cch__item--ok {
	--cch-accent: #4f7d11;
}

.cc-single-notice .cch__item-top {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.cc-single-notice .cch__locality,
.cc-single-notice .cch__state {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 10px;
	border-radius: 999px;
	background: #f1f5f9;
	color: #475569;
	font-size: 12px;
	font-weight: 800;
}

.cc-single-notice .cch__locality svg {
	width: 16px;
	height: 16px;
	fill: currentColor;
}

.cc-single-notice .cch__state {
	background: color-mix(in srgb, var(--cch-accent) 12%, white);
	color: var(--cch-accent);
}

.cc-single-notice .cch__item-title {
	margin: 20px 0 12px;
	color: #001b3f;
	font-size: clamp(26px, 5vw, 38px);
	font-weight: 850;
	line-height: 1.12;
}

.cc-single-notice .cch__item-content {
	color: #405066;
	font-size: 16px;
	line-height: 1.7;
}

.cc-single-notice .cch__item-content p {
	margin: 0 0 12px;
}

.cc-single-notice .cch__service-schedule {
	margin-top: 20px;
	padding: clamp(16px, 3vw, 22px);
	border: 1px solid #d7e2ef;
	border-radius: 16px;
	background: #f7faff;
	color: #33465e;
}

.cc-single-notice .cch__service-schedule h4 {
	margin: 0 0 15px;
	color: #001b3f;
	font-size: 20px;
	line-height: 1.25;
}

.cc-single-notice .cch__schedule-overview {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin: 0 0 16px;
}

.cc-single-notice .cch__schedule-overview > div {
	min-width: 0;
	padding: 11px 12px;
	border: 1px solid #dce6f1;
	border-radius: 12px;
	background: #fff;
}

.cc-single-notice .cch__schedule-overview dt {
	margin: 0 0 3px;
	color: #65758a;
	font-size: 11px;
	font-weight: 850;
	letter-spacing: 0.05em;
	line-height: 1.25;
	text-transform: uppercase;
}

.cc-single-notice .cch__schedule-overview dd {
	margin: 0;
	color: #20344d;
	font-size: 14px;
	font-weight: 750;
	line-height: 1.45;
}

.cc-single-notice .cch__schedule-directions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.cc-single-notice .cch__schedule-direction {
	min-width: 0;
	padding: 14px;
	border: 1px solid #dce6f1;
	border-radius: 14px;
	background: #fff;
}

.cc-single-notice .cch__schedule-direction h5 {
	margin: 0 0 11px;
	color: #001b3f;
	font-size: 15px;
	font-weight: 850;
	line-height: 1.35;
}

.cc-single-notice .cch__schedule-times {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(58px, 1fr));
	gap: 7px;
}

.cc-single-notice .cch__schedule-time {
	display: inline-flex;
	min-height: 34px;
	align-items: center;
	justify-content: center;
	padding: 6px 8px;
	border: 1px solid #d9e5f1;
	border-radius: 9px;
	background: #f2f7fc;
	color: #173b62;
	font-size: 13px;
	font-weight: 850;
	line-height: 1;
}

.cc-single-notice .cch__schedule-note {
	margin: 14px 0 0;
	padding: 11px 12px;
	border-left: 3px solid #2674c8;
	border-radius: 0 10px 10px 0;
	background: #edf6ff;
	color: #405b77;
	font-size: 13px;
	line-height: 1.5;
}

.cc-single-notice .cch__schedule-legacy-content p {
	margin: 0 0 10px;
	white-space: pre-wrap;
}

.cc-single-notice .cch__schedule-legacy-content p:last-child {
	margin-bottom: 0;
}

.cc-single-notice .cch__item-meta {
	display: grid;
	gap: 10px;
	margin-top: 20px;
	padding-top: 18px;
	border-top: 1px solid #e2e8f0;
}

.cc-single-notice .cch__item-meta span {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	color: #526174;
	font-size: 13px;
	line-height: 1.5;
}

.cc-single-notice .cch__item-meta svg {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	fill: var(--cch-accent);
}

.cc-single-notice .cch__item-meta a {
	color: #001b3f;
	font-weight: 800;
}

.cc-single-notice .cch__item-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-top: 20px;
}

.cc-single-notice .cch__item-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 16px;
	border-radius: 12px;
	background: #001b3f;
	color: #fff;
	text-decoration: none;
}

.cc-single-notice .cch__item-link--whatsapp {
	background: #0b7a4b;
}

.cc-single-notice .cch__item-link:hover,
.cc-single-notice .cch__item-link:focus {
	filter: brightness(1.08);
	text-decoration: none;
}

.cc-single-notice .cch__item-link svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.cc-single-notice__footer {
	margin: 20px 0 0;
}

.cc-single-notice__back {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: #001b3f;
	font-weight: 800;
	text-decoration: none;
}

.cc-single-notice__back:hover,
.cc-single-notice__back:focus {
	color: #176bc0;
	text-decoration: none;
}

@media (max-width: 640px) {
	.cc-single-notice .cch__schedule-overview,
	.cc-single-notice .cch__schedule-directions {
		grid-template-columns: 1fr;
	}

	.cc-single-notice .cch__schedule-times {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 380px) {
	.cc-single-notice .cch__schedule-times {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.cc-comunidad-single-page {
		padding: 16px 10px 42px;
	}

	.cc-comunidad-single-page__nav {
		margin-bottom: 12px;
		padding-inline: 4px;
	}

	.cc-comunidad-single-page__section {
		font-size: 12px;
	}

	.cc-single-notice {
		margin-top: 0;
		padding-inline: 0;
	}

	.cc-single-notice .cch__item {
		border-radius: 17px;
	}
}
