.links {
	color: #0067ee;
	padding: 30px 0 30px 0;
	display: inline-block;
}
.links:hover {
	color: #0000EE;
}
.links:visited {
	color: #6c23b1;
}
.swiper-bgd {
	padding: 175px 0;
	color: #fff;
	text-align: center;
	background-position: center bottom;
	background-color: rgba(35, 31, 31, 0.80);
	background-blend-mode: overlay;
	background-size: cover;
	max-height: 350px;
}
/*==========INTERACTIVE LIST==========*/
.interactive-list dt {
    cursor: pointer;
    padding: 8px 12px;
    margin: 4px 0;
    border-radius: 4px;
	background-color: #F9F9F9;
	box-shadow: inset 5px 0 0 #FFF311;
    transition: all 0.3s ease;
}
.interactive-list dt:hover {
    background-color: #f0f0f0;
}
.interactive-list dt.active {
    background-color: #e0e0e0;
    font-weight: bold;
	box-shadow: inset 3px 0 0 #0066cc;
}
.content-container {
    position: relative;
    min-height: 400px;
	transition: min-height 0.3s ease;
}
.content-item {
	text-align: justify;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}
.content-item.active {
    opacity: 1;
    visibility: visible;
    position: relative;
}
.interactive-list {
    position: relative;
}
.content-item {
    transition: opacity 0.3s ease, visibility 0.3s ease, height 0.3s ease;
    will-change: opacity, height;
}

.interactive-list dt.active {
    box-shadow: inset 3px 0 0 #0066cc;
}

.interactive-list dt:hover:not(.active) {
    transform: translateX(3px);
}

.content-container {
    transition: min-height 0.3s ease;
}
.gallery {
	margin-top: 50px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
}

.image-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 290px;
	padding: 1rem;
	border: 1px solid #ccc;
	border-radius: 12px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	background: white;
	box-sizing: border-box;
}

.image-card img {
	width: 270px;
	height: 270px;
	object-fit: contain;
	border-radius: 8px;
	display: block;
	box-sizing: border-box;
}

.image-card .caption {
  margin-top: 0.5rem;
  font-weight: bold;
  text-align: center;
}
.gallery-2 {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 20px;
}

.gallery-2 img {
    flex: 1 1 calc(50% - 15px);
    min-width: 250px;
    max-width: 100%;
    min-height: 200px;
	height: auto;
    object-fit: cover;
}
.video-container {
    margin: 30px auto;
    max-width: 800px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.auto-play-video {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 12px 12px 0 0;
}
.auto-play-video::-webkit-media-controls-panel {
    border-radius: 0 0 12px 12px;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.5));
}

.auto-play-video::-moz-range-progress {
    border-radius: 12px;
}

/*==========DIVISIONES==========*/
/* Auto START */
.s-auto {
	padding: 90px 0;
}
.auto-row {
	display: flex;
	align-items: center;
}
.s-auto .def-desc {
	margin-bottom: 30px;
}
.auto-left {
	margin-right: 70px;
	max-width: 490px;
	margin-bottom: auto;
}
.auto-right {
	margin-bottom: auto;
	width: 600px;
}
#default-content img {
	margin-top: 50px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*Auto END */

/*==========DILIGENCIA==========*/
/* Anticorrupción START */
.s-ap {
	padding: 100px 0;
}
.ap-row {
	display: flex;
	align-items: center;
}
.ap-left {
	max-width: 505px;
    margin-right: auto;
}
.ap-left img {
	display: block;
    max-width: 100%;
}
.s-ap .def-desc {
	margin-bottom: 55px;
}
.ap-features-item {
	display: flex;
	margin-bottom: 25px;
	max-width: 500px;
}
.ap-features-title {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 10px;
}
.ap-features-desc {
	color: #6D6A6A;
	text-align: justify;
	margin-bottom: 15px;
}
.ap-right {
	margin-left: auto;
}
/* Anticorrupción END */

/* Ética START */
.s-etica {
	padding: 100px 0;
	background-color: #F9F9F9;
}
.etica-row {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
}
.etica-left {
	max-width: 500px;
    margin-left: auto;
	text-align: end;
}
.s-etica .def-title {
	position: relative;
}
.s-etica .def-title::before {
	height: 2px;
	width: 100%;
	position: absolute;
	top: 30px;
	left: calc(100% + 25px);
}
.s-etica .def-desc {
	margin-bottom: 55px;
}
.etica-features-item {
	display: flex;
	margin-bottom: 45px;
	max-width: 400px;
}
.etica-features-desc {
	color: #6D6A6A;
	text-align: justify;
}
.etica-features-desc li {
	margin-bottom: 15px;
}
.etica-right {
	margin-right: auto;
}
.etica-left img {
	margin-left: auto;
	display: block;
    max-width: 100%;
}

/* Ética END */

/* Responsive START */
@media screen and (max-width: 992px) {
	/* Anticorrupción 992 START */
	.s-ap {
		padding: 60px 0;
	}
	.ap-row {
		display: block;
	}
	.ap-left {
		margin: 0 auto;
	}
	.ap-right {
		max-width: 500px;
		margin: 0 auto;
	}
	.ap-left img {
		width: 100%;
		margin-bottom: 50px;
	}
	.ap-features-icon img {
		max-width: 25px;
	}
	.ap-features-title {
		font-size: 16px;
	}
	.ap-features-desc {
		font-size: 14px;
	}
	/* Anticorrupción 992 END */

	/* Ética 992 START */
	.s-etica {
		padding: 60px 0;
	}
	.etica-row {
		display: block;
	}
	.etica-left {
		margin: 0 auto;
	}
	.etica-right {
		max-width: 500px;
		margin: 0 auto;
	}
	.etica-left img {
		width: 100%;
		margin-bottom: 50px;
	}
	.etica-features-icon img {
		max-width: 25px;
	}
	.etica-features-title {
		font-size: 16px;
	}
	.etica-features-desc {
		font-size: 14px;
	}
	/* Ética 992 END */

	/* Auto 992 START */
	.auto-row {
		display: block;
	}
	.auto-left {
		margin: 0 auto 30px auto;
	}
	.s-auto .def-desc {
		margin-bottom: 20px;
	}
	.auto-right {
		margin: 0 auto;
		width: 100%;
		max-width: 505px;
	}
	/* Auto 992 END */
}

@media screen and (max-width: 768px) {
	.s-inst {
		padding: 45px 0;
	}
}