/*
IMPORTANTE:
Evitar estos colores. Los colores del sistema están definidos al final de este archivo.
*/
:root { 
	--color-primary: #62D7EC; 
	--color-secondary: #8B3BAD;
	--color-button-primary: #EAB32F; 
	--color-button-secondary: #8B3BAD; 
	--color-text: #666; 
	--color-dark: #3f3f3f; 
	--color-light: #f8f7fb; 
	--color-white: #fff; 
	--color-whatsapp: #61CE70; 
	--radius : 18px; 
	--shadow: 0 10px 30px rgba(68, 44, 88, .10); 
	--content: 1120px;
	--radius: 18px;
}

* {
	box-sizing: border-box
}

html {
	scroll-behavior: smooth
}

body {
	margin: 0;
	color: var(--color-text);
	font-family: "Montserrat", sans-serif;
	font-size: 17px;
	background-color: var(--color-primary);
}

img {
	display: block;
	max-width: 100%;
	height: auto
}

a {
	color: inherit
}

h1, h2, h3, h4 {
	margin: 0 0 18px;
	color: var(--color-white);
	font-family: "Montserrat", sans-serif;
	line-height: 1.18
}

h1 {
	font-size: clamp(36px, 5vw, 58px);
	font-weight: 700
}

h2 {
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 700
}

h3 {
	font-size: 20px;
	font-weight: 700
}

p {
	margin: 0 0 16px
}

ul {
	margin: 0;
	padding-left: 20px
}

i.colorPrimary {
	color: var(--color-primary);
}
i.colorSecondary {
	color: var(--color-secondary);
}


.container {
	padding: 0 20px;
}

.skip-link {
	position: absolute;
	left: -9999px
}

.skip-link:focus {
	left: 15px;
	top: 15px;
	z-index: 1000;
	padding: 10px 15px;
	background: #fff
}

.site-header {
    z-index: 1;
    position: relative;
}

.announcement {
	background: var(--color-secondary);
	color: #fff;
	font-size: 13px;
	letter-spacing: .02em;
	padding: 7px 20px;
	text-align: center;
	margin-right: auto;
}

.navbar {
	min-height: 74px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	margin: 0 20px;
}

.brand {
	font-family: "Ruluko", sans-serif;
	font-size: 25px;
	text-decoration: none;
	color: var(--color-secondary);
	font-weight: 400
}

.nav-toggle {
	display: none;
	border: 0;
	background: transparent;
	padding: 8px;
	font-size: 28px;
	color: var(--color-secondary);
	cursor: pointer
}

.nav-list {
	display: flex;
	gap: 30px;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0
}

.nav-list a {
	text-decoration: none;
	color: var(--c-neutral-10);
	font-size: 15px;
	transition: ease 0.2s all;
	font-weight: bold;
	/* font-weight: 500; */
}

.nav-list a:hover, .nav-list a[aria-current="page"] {
	color: var(--color-secondary);
}

main {
	overflow: hidden;
}

.section {
	padding: 30px 0;
	background-color: var(--color-white);
}

.section-alt {
	background: var(--color-light)
}

.section-title {
	text-align: center;
	max-width: 760px;
	margin: 0 auto 45px
}

.section-title h2 {
	color: var(--color-secondary);
}

.section-title p {
	font-size: 18px
}

.hero {
	position: relative;
	min-height: 450px;
	display: flex;
	align-items: center;
	padding: 0;
}


.heroBackground {
	/*
    background-image: url(../../../../../../resources_cust_ilianacarrillo/img/website/iliana-imagotipo-1.png);
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 50% auto;
    */
    transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
    position: absolute;
    inset: 0px;
    opacity: 0.15;
    height: 700px;
    top: -100px;
}

.heroContainer {
	display: flex;
	justify-content: space-evenly;
	align-items: center;
	gap: 20px;
	min-width: 100%;
	padding: 0 40px;
	position: relative;
	top: -20px;
}

.heroContainerPrimary {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.heroContainerPrimary .heroPrimaryTitle {
	color: var(--c-neutral-10);
	font-size: 30px;
	font-weight: bold;
	text-align: center;
}

.heroContainerPrimary .heroPrimarySubtitle {
	color: var(--color-secondary);
	font-size: 26px;
	text-align: center;
}

.heroContainerPrimary .hero-image {
	width: 700px;
}

.heroContainerLocation {
	color: var(--c-neutral-10);
    width: 30%;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 10px;
    
    position: relative;
    top: -30px;
}

.heroContainerLocation div {
    font-size: 26px;
    font-weight: bold;
    font-family: Ruluko, sans-serif;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.heroContainerLocation p {
	min-width: 250px;
}



.hero-subtitle {
	font-family: "Ruluko", sans-serif;
	font-size: 24px;
	color: var(--color-dark)
}

.hero-image {
	justify-self: center;
	max-height: 470px;
	object-fit: contain
}

.contact-row {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
	margin: 25px 0
}

.contact-row .button {
	border-radius: 10px;
	padding: 16px 40px;
	z-index: 10;
}

.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 13px 22px;
	border-radius: 999px;
	text-decoration: none;
	font-weight: 600;
	border: 2px solid var(--color-primary);
	color: #fff;
	background: var(--color-primary);
	transition: transform .2s, box-shadow .2s
}

.button:hover {
	transform: scale(1.05); 
	box-shadow: 0 8px 18px rgba(98, 215, 236, .25)
}

.button.primary {
	background: var(--color-button-primary);
	border-color: var(--color-button-primary);
}

.button.secondary {
	background: var(--color-button-secondary);
	border-color: var(--color-button-secondary);
}

.button.secondaryWhatsapp {
	background: var(--color-whatsapp);
	border-color: var(--color-whatsapp);
}

.button.ghost {
	background: #fff;
	color: var(--color-secondary);
	border-color: var(--color-secondary)
}

.descriptionContainer .descriptionContainerDiv {
	padding: 0 20px 0 0;
}

.two-col {
	display: grid;
	grid-template-columns: 0.6fr 1fr;
	gap: 50px;
}

.two-col-alt {
	display: grid;
	grid-template-columns: 0.35fr 1fr;
	gap: 50px;
}

.three-col {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px
}

.four-col {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px
}

.comoAcudirBackground,
.senalAlarmaBackground {
	position: relative;
  	width: 100%;

}

.comoAcudirBackground .comoAcudirBackgroundDiv,
.senalAlarmaBackground .senalAlarmaBackgroundDiv {
    background-repeat: no-repeat;
    background-size: cover;
    transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
    position: absolute;
    inset: 0px;
    opacity: 0.15;
    z-index: 1;
}
.comoAcudirBackground .comoAcudirBackgroundDiv {
	background-image: url(../../../../../../resources_cust_ilianacarrillo/img/website/charming-female-doctor-holding-uterus-anatomy-model-scaled-e1661960999473.jpg);	
}
.senalAlarmaBackground .senalAlarmaBackgroundDiv {
	background-image: url(../../../../../../resources_cust_ilianacarrillo/img/website/pregnant-woman-scaled.jpg);
    opacity: 0.5;
}

.senalAlarmaBackground .container {
	position: relative;
	z-index: 1;
}

.comoAcudirBackground .contenido {
	position: relative;
	z-index: 2;
}

.comoAcudir .card,
.senalAlarma .card {
	display: flex;
	flex-direction: column;
    border-radius: 10px 100px 5px 100px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.13);
	padding: 10%;
	position: relative;
	z-index: 2;
	background-color: var(--color-white);
}

.senalAlarma {
	display: flex;
	justify-content: center;
	align-items: center;
}
.senalAlarma .card {
	padding: 50px;
	width: fit-content;
	flex-direction: row;
	gap: 20px;
	font-family: Ruluko, sans-serif;
	font-weight: bold;
	background-color: #ffffffab;
}
.senalAlarma .card .alert-list li {
    width: 400px;
   	font-size: 20px;
}
..senalAlarma .card .alert-list li i.colorPrimary {
	color: var(--color-primary);
}

.primerTrimestreTitle {
    margin: 0;
    width: 100%;
    max-width: none;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.primerTrimestreTitle h3,
.segundoTrimestreTitle h3,
.tercerTrimestreTitle h3 {
	color: var(--color-text);
}
.primerTrimestreTitle p {
	max-width: 800px;
}

.procedimientosContainer .card {
    border-radius: 10px 100px 5px 100px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.13);
    background-color: var(--color-white);
	padding: 10%;	
}

.primerTrimestreContainer .card {
	padding: 10%;
}

.procedimientosContainer .card img,
.primerTrimestreContainer .card img {
	border-radius: 10px 100px 5px 100px;
}

.primerTrimestreContainer .card h3 {
	color: var(--color-primary);
}
.primerTrimestreContainer .card p {
	text-align: center;
}
.segundoTrimestreContainer {
	gap: 60px;
}
.segundoTrimestreContainer .card h3 {
	color: var(--color-text);
}
.segundoTrimestreContainer .card {
	display: flex;
	flex-direction: column;
    justify-content: start;
	align-items: center;
}
.segundoTrimestreContainer .card img {
   	width: 150px;
}

.segundoTrimestreContainer p {
	text-align: center;
}

/* -------------------------------------------------- */
/* ***** IMAGENES DESLIZABLES TERCER TRIMESTRE ***** */


.features {
    width: 100%;
    max-width: 1200px;
    margin: 80px auto;
    padding: 0 30px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center;
}
.features-list {
    width: 100%;
}
.feature-item {
    border-bottom: 1px solid #ddd;
}
.feature-title {
    width: 100%;
    border: 0;
    background: transparent;
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 10px 0;
    cursor: pointer;
    text-align: left;
}

.feature-title h3 {
	color: var(--color-text);
	margin: 0;
}

.feature-number {
    width: 35px;
    font-size: 14px;
    font-weight: 700;
    color: #999;
    flex-shrink: 0;
}

.feature-item.active h3 {
        color: var(--color-primary);
}
.feature-description {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.5s ease, opacity 0.4s ease;
}

.feature-description p {
    margin: 0;
    padding: 0 0 10px 0;
    line-height: 1.7;
    color: var(--color-text);
    text-align: justify;
}

.feature-item.active .feature-description {
    max-height: 300px;
    opacity: 1;
}

.features-image {
    position: relative;
    width: 100%;
    height: 400px;
    overflow: hidden;
}

.feature-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    visibility: hidden;
    transform: translateX(60px);
    transition: opacity 0.6s ease, transform 0.6s ease, visibility 0.6s ease;
}

.feature-img.active {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}


/* ***** IMAGENES DESLIZABLES TERCER TRIMESTRE ***** */
/* -------------------------------------------------- */
.partoHumanizadoContainer {
	display: flex;
	align-items: start;
    justify-content: center;
	flex-wrap: wrap;
}
.partoHumanizadoContainer .card {
    max-width: 300px;
}

.partoHumanizadoContainer .card img {
	width: 100px;
	height: 100px;
	margin-bottom: 0;
}

.principalesServiciosContainer {
	
}

.principalesServiciosContainer .principalesServiciosDiv2 {
	text-align: center;
	font-family: Ruluko, sans-serif;
}


.principalesServiciosContainer .principalesServiciosDiv3 {
	margin-top: 20px;
}
.principalesServiciosContainer .principalesServiciosDiv3 h3 {
	color: var(--color-primary);
	margin: 0;
	text-align: center;
	min-height: 50px;
}

.principalesServiciosContainer .principalesServiciosDiv3 div {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: start;
	gap: 20px;
}

.principalesServiciosContainer .principalesServiciosDiv3 div p {
	text-align: center;
}

.principalesServiciosContainer img{
    border-radius: 10px 100px 5px 100px;
}

.locationContainer .card {
    align-self: center;
    text-align: center;
}

.locationContainer .card h2 {
	color: var(--color-secondary);
}

.locationContainer .card h3 {
	color: var(--color-primary);
	margin: 0;
}
.locationContainer .card p {
	margin: 10px;
}	

.card .imgCard {
    background-color: var(--color-primary);
    border-radius: 50%;
    padding: 20px;
    width: fit-content;
}

.card img {
	width: 100%;
	max-height: 260px;
	object-fit: cover;
	border-radius: 14px;
	margin-bottom: 22px
}

.card h3 {
	color: var(--color-secondary);
	text-align: center;
	font-size: 30px;
}



.icon-card {
	text-align: center;
	padding: 26px 20px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

.serviciosContainer .cardsContainer {
	display: flex;
	justify-content: space-around;
	align-items: flex-start;
	gap: 20px;
}


.serviciosContainer .icon-card {
	max-width: 250px;
}


.serviciosContainer .icon-card img {
	width: 90px;
	height: 90px;
	object-fit: contain;
	margin: 0 auto 15px
}

.fourCardsContainer {
	display: flex;
	
}

.fourCardsContainer .container {
	display: flex;
    align-items: center;
    justify-content: space-evenly;
    flex-wrap: wrap;
    gap: 40px;
}

.fourCardsContainer .container .card {
	width: 45%;
}
.fourCardsContainer .container .card.textBackWhite {
	background-color: var(--color-white);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px 100px 5px 100px;
    min-height: 450px;
}	
@media ( max-width :921px) {
	.fourCardsContainer .container .card {
		width: 90%;
	}
	.fourCardsContainer .container .card.textBackWhite {
	    min-height: 260px;
	}	
}
	
.fourCardsContainer .container .card img {
	border-radius: 10px 100px 5px 100px;
	min-height: 450px;
}


.icon-card h3 {
	color: var(--color-text);
}

.photo-card img {
	aspect-ratio: 4/3;
	object-fit: cover
}

.info-list {
	display: grid;
	gap: 14px
}

.info-item {
	display: flex;
	gap: 16px;
	padding: 10px;
	background: #fff;
}

.info-item p {
    text-align: justify;
    max-width: 500px;
}

.info-item strong {
	display: block;
}

.containerMedal {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	margin: 30px 0;
}

.containerMedal p {
	text-align: center;
}


.check-list {
	list-style: none;
	padding: 0;
	display: grid;
	gap: 9px
}

.check-list i {
	color: var(--color-primary);
}


.check-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	color: var(--color-secondary);
	font-weight: 700
}

.callout {
	background-color: var(--color-secondary);
	color: #fff;
	padding: 48px
}

.callout h2, .callout h3 {
	color: #fff
}

.callout p {
	color: rgba(255, 255, 255, .94)
}

.agendaCitaContainer {
	
}

.agendaCitaLocation {
	
}

.agendaCitaContainer {
	color: var(--color-white);
	width: 100%;
	text-align: center;
}

.agendaCitaLocation div {
	font-size: 26px;
    font-weight: bold;
    font-family: Ruluko, sans-serif;
    display: flex;
    flex-direction: column;
    margin: 20px 0;
    gap: 10px;
}

.heroContainerLocation p {
	min-width: 250px;
}


.recomendadaPacientes .section-title {
	width: 100%;
	max-width: inherit;
	margin: 30px 0;
}

.testimonials {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px
}

.testimonial {
	background: #fff;
	border-radius: 18px;
	padding: 24px;
	box-shadow: var(--shadow)
}

.testimonial img {
	width: 58px;
	height: 58px;
	object-fit: contain;
	float: left;
	margin-right: 14px
}

.testimonial p {
	clear: both;
	padding-top: 12px
}

.testimonial strong {
	color: var(--color-secondary)
}

.gallery {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    gap: 10px;
}

.gallery img {
	/*
	Logos de los seguros: el ancho sale de la altura y de la proporción de cada imagen.
	No usar width: 100%: el div que contiene la imagen no tiene ancho propio, así que el ancho de
	uno depende del otro, y Safari (iPhone y Mac) lo resuelve con el tamaño original del PNG (250,
	500 o 1042 px). Los logos quedaban de distinto ancho, uno por fila y recortados.
	object-fit: contain para que ningún logo se recorte, aunque no sea cuadrado.
	*/
	width: auto;
	height: 200px;
	object-fit: contain;
	border-radius: 16px
}

.timeline {
	display: grid;
	gap: 24px
}

.timeline-item {
	display: grid;
	grid-template-columns: 170px 1fr;
	gap: 30px;
	align-items: start;
	padding: 24px;
	border-radius: 18px;
	background: #fff;
	box-shadow: var(--shadow)
}

.timeline-label {
	font-family: "Ruluko", sans-serif;
	font-size: 25px;
	color: var(--color-secondary);
	font-weight: 400
}

.alert-list {
	columns: 2;
	column-gap: 45px
}

.alert-list li {
	break-inside: avoid;
	margin-bottom: 8px
}

.privacy {
	text-align: justify;
}

.privacy p {
	margin-bottom: 22px;
}

.privacy ol.check-list {
	list-style: auto;
	padding-left: 30px;
}

.privacy p strong:first-child {
	color: var(--color-text);
}

.map {
	width: 100%;
	min-height: 340px;
	border: 0;
	border-radius: 18px
}

.siteFooter {
	background: #33313a;
	color: #ddd;
	padding-top: 60px;
	position: relative;
	z-index: 2;
}


.siteFooter .siteFooterBackground {
	background-image: url(../../../../../../resources_cust_ilianacarrillo/img/website/covid-recovery-center-female-doctor-holding-older-patient-s-hands-scaled-1.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    inset: 0px;
    opacity: 0.15;
    z-index: 1;
}

.footerFlex {
	display: flex;
	align-items: center;
	gap: 40px;
	padding-bottom: 40px;
	z-index: 1;
    position: relative;
}

.footerFlex section {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	flex-direction: column;
}

.footerFlex section p {
	text-align: center;
}

.siteFooter h3 {
	color: #fff;
	margin: 0;
}

.siteFooter a {
	color: #fff;
	text-decoration: none
}

.footerBottom {
	border-top: 1px solid rgba(255, 255, 255, .12);
	padding: 18px 20px;
	text-align: center;
	font-size: 13px;
	position: relative;
	z-index: 2;
}

.footerBottom a {
	transition: ease 0.2s all;	
}
.footerBottom a:hover {
	color: var(--color-secondary);
	font-weight: bold;
}

.whatsapp {
	position: fixed;
	right: 22px;
	bottom: 22px;
	width: 58px;
	height: 58px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	text-decoration: none;
	background: #25d366;
	color: #fff;
	font-size: 26px;
	font-weight: 700;
	box-shadow: 0 8px 25px rgba(0, 0, 0, .2);
	z-index: 90;
	transition: ease-in-out 0.2s all;
}

.whatsapp:hover {
	transform: scale(1.1);
}

.small {
	font-size: 14px
}

.center {
	text-align: center
}

.googleLocationContainer iframe {
    width: 100%;
    height: 400px;
    position: relative;
    z-index: 1;
    border-color: transparent;
}

.separator1 svg {
	height: 200px;
}

@media ( max-width :921px) {
	.nav-toggle {
		display: block
	}
	.nav-list {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		display: none;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 10px 20px 20px;
		background: #fff;
		border-bottom: 1px solid #eee
	}
	.nav-list.open {
		display: flex;
		z-index: 20;
	}
	.nav-list li {
		border-bottom: 1px solid #eee
	}
	.nav-list a {
		display: block;
		padding: 14px 4px
	}
	.hero-grid, .two-col, .two-col-alt {
		grid-template-columns: 1fr
	}
	.hero {
		text-align: center
	}
	.hero-image {
		max-height: 360px;
		order: -1
	}
	.contact-row {
		justify-content: center
	}
	.three-col, .four-col, .testimonials {
		grid-template-columns: repeat(2, 1fr)
	}
	.footer-grid {
		grid-template-columns: 1fr 1fr
	}
	
    .features {
        grid-template-columns: 1fr;
        gap: 40px;
        margin: 50px auto;
        padding: 0 20px;
    }

    .feature-name {
        font-size: 22px;
    }

    .features-image {
        height: 350px;
    }
}

@media ( max-width :650px) {
	body {
		font-size: 16px
	}
	.section {
		padding: 60px 0
	}
	.three-col, .four-col, .testimonials, .gallery {
		grid-template-columns: 1fr
	}
	.timeline-item {
		grid-template-columns: 1fr;
		gap: 8px
	}
	.alert-list {
		columns: 1
	}
	.footer-grid {
		grid-template-columns: 1fr
	}
	.callout {
		padding: 32px 24px
	}
	.callout h2 {
		text-align: center;
	}
	.callout p {
		text-align: justify;
	}
	
	.whatsapp {
		width: 52px;
		height: 52px;
		right: 15px;
		bottom: 15px
	}
	
	.navbar {
		margin: 0;
	}
	.nav-list a, .nav-list a[aria-current="page"] {
		color: var(--color-secondary)
	}
	.nav-list a:hover, .nav-list a:focus {
		background-color: var(--color-light);
	}
	.hero-image {
	    height: 40px;
	}
	
	.heroContainer {
		flex-direction: column;
		top: 20px;
	}
	.heroContainerPrimary .hero-image {
	    height: 70px; 
	}
	
	.heroContainerLocation {
		width: 100%;
		margin-bottom: 50px;
	}

	.descriptionContainer .descriptionContainerDiv {
		padding: 0;
	}
		
	.serviciosContainer .cardsContainer {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	
	.serviciosContainer .icon-card {
		max-width: auto;
	}
	
	.gallery img {
		height: 100px;
	}
	
	.testimonial p {
		text-align: justify;
	}
	
	.senalAlarma .card {
		flex-direction: column;
        max-width: 90%;
	}
	.senalAlarma .card .alert-list li {
		width: 100%;
	}
	
	.principalesServiciosContainer .principalesServiciosDiv3 h3 {
		min-height: auto;
	}
	
	.footerFlex {
		flex-direction: column;
	}	
	
	.separator1 svg {
		height: 100px;
	}
	
	.containerMedal {
		padding: 0 20px;
	}

}

/* ****************************************
   *************** / :ROOT ****************
   **************************************** */

/*
Lista de selectores que se permite utilizar para superar la precedencia de la forma antigua de css:
(A posteriori, va a ser necesario quitarlos para seguir con la nueva implementacion)

- #form


*/




/*
Escala 10–90:

- 10 -> mínimo contraste (casi fondo)
- 20 -> fondo suave
- 30 -> superficie suave
- 40 -> superficie
- 50 -> color base (referencia)
- 60 -> énfasis leve
- 70 -> énfasis medio (bordes, hover)
- 80 -> alto contraste
- 90 -> máximo contraste (texto fuerte / íconos)

Regla:
- siempre sube contraste, nunca cambia el "color semántico"
*/

:root {
    /* NEUTRAL: color base (gama blanco/negro) */
    --c-neutral-10: #111111;
    --c-neutral-20: #2e2e2e;
    --c-neutral-30: #525252;
    --c-neutral-40: #757575;
    --c-neutral-50: #9e9e9e;
    --c-neutral-60: #c2c2c2;
    --c-neutral-70: #e0e0e0;
    --c-neutral-80: #f0f0f0;
    --c-neutral-90: #fafafa;
	
	/* PRIMARY: color principal de marca (acciones clave, CTAs) */
    --c-primary-10: #2d2032;
    --c-primary-20: #4c3c53;
    --c-primary-30: #6a5771;
    --c-primary-40: #836d8b;
    --c-primary-50: #937C9C;
    --c-primary-60: #a18baa;
    --c-primary-70: #baa5c3;
    --c-primary-80: #dac6e2;
    --c-primary-90: #ffedff;

    /* SECONDARY: soporte visual (menos protagonismo que primary) */
    --c-secondary-10: #425c15;
    --c-secondary-20: #5f7f2e;
    --c-secondary-30: #7aa043;
    --c-secondary-40: #91bb55;
    --c-secondary-50: #a0cc61;
    --c-secondary-60: #b0db76;
    --c-secondary-70: #cdf697;
    --c-secondary-80: #e8ffb9;
    --c-secondary-90: #ebffc2;

    /* ACCENT: destacar elementos específicos (links, foco, detalles) */
    --c-accent-10: #06000e;
    --c-accent-20: #21052d;
    --c-accent-30: #3c1c4b;
    --c-accent-40: #543065;
    --c-accent-50: #633D76;
    --c-accent-60: #704b83;
    --c-accent-70: #876499;
    --c-accent-80: #a484b6;
    --c-accent-90: #c7aad7;

    /* NEON: alto impacto visual (alerts visuales, foco extremo) */
    --c-neon-10: #6c5900;
    --c-neon-20: #917a00;
    --c-neon-30: #b39900;
    --c-neon-40: #cfb21a;
    --c-neon-50: #E1C327;
    --c-neon-60: #f0d34b;
    --c-neon-70: #ffef77;
    --c-neon-80: #ffff96;
    --c-neon-90: #ffffa5;
}

:root {
    /* HIGHLIGHT: destacar visualmente (NO es estado, es énfasis) */
    --c-highlight-10: #001c58;
    --c-highlight-20: #003b84;
    --c-highlight-30: #1657ac;
    --c-highlight-40: #296fcd;
    --c-highlight-50: #357fe3;
    --c-highlight-60: #498ff0;
    --c-highlight-70: #68aaff;
    --c-highlight-80: #8fcbff;
    --c-highlight-90: #bcf2ff;

    /* MUTED: menor relevancia (texto secundario, deshabilitado) */
    --c-muted-10: #202020;
    --c-muted-20: #3d3d3d;
    --c-muted-30: #585858;
    --c-muted-40: #707070;
    --c-muted-50: #7f7f7f;
    --c-muted-60: #8e8e8e;
    --c-muted-70: #a7a7a7;
    --c-muted-80: #c7c7c7;
    --c-muted-90: #ededed;

	/* COMPLETED: proceso finalizado (no necesariamente exitoso) */
    --c-completed-10: #4a006c;
    --c-completed-20: #71009a;
    --c-completed-30: #9408c4;
    --c-completed-40: #b228e8;
    --c-completed-50: #c537ff;
    --c-completed-60: #d352ff;
    --c-completed-70: #ea78ff;
    --c-completed-80: #ffa2ff;
    --c-completed-90: #ffd1ff;

    /* SUCCESS: resultado positivo confirmado */
    --c-success-10: #003400;
    --c-success-20: #005600;
    --c-success-30: #007600;
    --c-success-40: #009115;
    --c-success-50: #10a223;
    --c-success-60: #36b13d;
    --c-success-70: #5fca60;
    --c-success-80: #8ae989;
    --c-success-90: #baffb8;

    /* WARNING: posible problema */
    --c-warning-10: #524a00;
    --c-warning-20: #746b00;
    --c-warning-30: #948900;
    --c-warning-40: #aea300;
    --c-warning-50: #bfb306;
    --c-warning-60: #cec339;
    --c-warning-70: #e7de67;
    --c-warning-80: #ffff97;
    --c-warning-90: #ffffa9;

    /* REVIEW: requiere atención humana (nivel intermedio real) */
    --c-review-10: #754200;
    --c-review-20: #9e6000;
    --c-review-30: #c37c00;
    --c-review-40: #e39407;
    --c-review-50: #f7a31a;
    --c-review-60: #ffb441;
    --c-review-70: #ffd16d;
    --c-review-80: #fff099;
    --c-review-90: #fff2a7;

    /* DANGER: problema confirmado / crítico */
    --c-danger-10: #610000;
    --c-danger-20: #900000;
    --c-danger-30: #bb0000;
    --c-danger-40: #df1b0e;
    --c-danger-50: #f62c1d;
    --c-danger-60: #ff4a38;
    --c-danger-70: #ff705c;
    --c-danger-80: #ff9b85;
    --c-danger-90: #ffcab4;
}
