/* @group Site Footer
------------------------------------ */

/* Deco - Líneas
----------------------- */
.site-footer {
	position: relative;
	margin-top: -1px;
}
.site-footer .row {
	position: relative;
}
.site-footer .row:has(.title-box)::after,
.site-footer .row:has(.title-box)::before {
	content: '';
	position: absolute;
	pointer-events: none;
}
.site-footer .row:has(.title-box)::before,
.site-footer .row:has(.title-box)::after {
	height: 2px;
	left: 50%;
	transform: translate(-50%, 0);
	width: 100vw;
	background: var(--khaki);
}
.site-footer .row:has(.title-box)::before {
	top: 0;
}
.site-footer .row:has(.title-box)::after {
	bottom: 0;
}

/* Title
----------------------- */
.site-footer .title-box h2 {
	--fs: 1.7rem;
	--lh: 1em;
	--ls: 0;
	text-transform: uppercase;
	text-align: center;
	color: var(--khaki);
	pointer-events: none;
}

/* Content
----------------------- */
.site-footer .content-box a {
	color: inherit;
}
/* Content - Top
----------------------- */
.site-footer .content-box .top-box .left p:not(:last-of-type) {
	margin: 0 0 1rem;
}
.site-footer .content-box .top-box .left p strong {
	--fw: 500;
}
.site-footer .content-box .top-box .right .logo {
	height: auto;
	width: 13rem;
}
.site-footer .content-box .top-box .right .logo img {
	object-fit: contain;
}
.site-footer .content-box .top-box .right .legals-menu {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 3.6rem;
}
.site-footer .content-box .top-box .right .legals-menu li {
	text-transform: capitalize;
	--fw: 500;
	--fs: 1.4rem;
	--lh: 1.3em;
	--ls: 0;
}
/* Content - Bottom
----------------------- */
.site-footer .content-box .bottom-box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.site-footer .content-box .bottom-box .copyright {
	--fs: 1.5rem;
	--lh: 1.1em;
}
.site-footer .content-box .bottom-box .copyright img {
	margin-left: .5rem;
}
.site-footer .content-box .bottom-box .stands {
	display: flex;
	justify-content: center;
	gap: 7rem;
}
.site-footer .content-box .bottom-box .stands li {
	--fs: 3.5rem;
	--lh: 1em;
}

@media only screen 
and (min-width : 961px) {
	.site-footer .second-row {
		position: relative;
	}
	/* Deco - Torres
	----------------------- */
	.site-footer .second-row::after,
	.site-footer .second-row::before {
		content: '';
		position: absolute;
		pointer-events: none;
	}
	.site-footer .second-row::before,
	.site-footer .second-row::after {
		top: -2px;
		width: 16.2rem;
		height: 32.2rem;
		background: no-repeat url('../../img/global/footer/tower.svg') center top;
		background-size: contain;
	}
	.site-footer .second-row::before {
		left: calc(2px + 5.8%);
	}
	.site-footer .second-row::after {
		right: calc(2.7% + 2px);
	}

	/* Title
	----------------------- */
	.site-footer .title-box {
		width: 91.2% !important;
        margin-left: 6%;
	}
	.site-footer .title-box h2 {
		--fs: unset;
		--lh: unset;
		position: relative;
		top: -.3rem;
	}
	.site-footer .title-box h2 span {
		-webkit-text-stroke-width: 2px;
		-webkit-text-stroke-color: var(--khaki);
		-webkit-text-fill-color: var(--bodyBackground);
		display: inline-block;
		position: relative;
		top: .2rem;
		white-space: nowrap;
		line-height: .85;
	}
	.site-footer.animateActive .title-box h2 span {
		left: -.5rem;
		letter-spacing: 0.03rem;
	}
	/* Content 
	----------------------- */
	.site-footer .content-box a:hover {
		color: var(--khaki);
	}
	/* Content - Top
	----------------------- */
	.site-footer .content-box .top-box {
		display: flex;
		align-items: center;
		padding-block: 7.5rem 10rem;
	}
	.site-footer .content-box .top-box > div {
		flex: 0 1 33%;
		width: 33%;
	}
	.site-footer .content-box .top-box .left p {
		--fs: 1.7rem;
	}
	.site-footer .content-box .top-box .middle {
		text-align: center;
	}
	.site-footer .content-box .top-box .middle .isologo img {
		width: 6.7rem;
		height: auto;
		color: var(--khaki);
	}
	.site-footer .content-box .top-box .right {
		text-align: right;
	}
	.site-footer .content-box .top-box .right .logo {
		width: 16.5rem;
		margin: 0 0 2.2rem auto;
	}
	.site-footer .content-box .top-box .right .legals-menu {
		justify-content: flex-end;
		gap: 2rem;
	}
	.site-footer .content-box .top-box .right .legals-menu li {
		position: relative;
	}
	.site-footer .content-box .top-box .right .legals-menu li:not(:last-of-type)::after {
		content: '|';
		position: absolute;
		right: -1.25rem;
		top: 50%;
		transform: translate(0, -55%);
	}
	/* Content - Bottom
	----------------------- */
	.site-footer .content-box .bottom-box {
		padding-bottom: 4rem;
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-end;
	}
	.site-footer .content-box .bottom-box .copyright {
		--fs: 1.8rem;
	}
	.site-footer .content-box .bottom-box .stands {
		gap: 3.5rem;
		justify-content: flex-end;
	}
	.site-footer .content-box .bottom-box .stands li {
		--fs: 3rem;
	}
}
@media only screen 
and (min-width : 0) 
and (max-width : 960px) {
	.site-footer {
		padding-bottom: 10.7rem;
		color: var(--white);
	}
	/* Content - Top
	----------------------- */
	.site-footer .content-box .top-box {
		height: 24.8rem;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
		position: relative;
		margin-bottom: 5rem;
	}
	.site-footer .content-box .top-box::before {
		content: '';
		position: absolute;
		right: 11%;
		top: -2px;
		width: 12.5rem;
		height: 25rem;
		background: no-repeat url('../../img/global/footer/tower-mobile.svg') top center;
		/* background-size: contain; */
		background-size: auto calc(100% + 4px);
        background-position-x: 2px;
	}
	.site-footer .content-box .top-box::after {
		content: '';
		width: 100vw;
		height: 2px;
		position: absolute;
		left: 50%;
		transform: translate(-50%, 0);
		background-color: var(--khaki);
		top: auto;
		bottom: -3px;
	}
	.site-footer .content-box .top-box :is(.left, .right) {
		margin-left: calc(12% + 2px);
		margin-right: 20rem;
		padding-inline: 3rem;
	}
	.site-footer .content-box .top-box .left p {
		--fs: 1.5rem;
		--lh: 1.4em;
		width: 13rem;
	}
	.site-footer .content-box .top-box .right .logo {
		margin-top: 4rem;
	}
	.site-footer .content-box .top-box .right .menu-legals-menu-container {
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translate(-50%, 0);
		width: calc(100% - 6rem);
		margin-top: 2.5rem;
	}
	.site-footer .content-box .top-box .right .legals-menu li {
		color: var(--white);
	}

	.site-footer .content-box .bottom-box .stands {
		order: -1;
		margin-block: 3rem 4rem;
	}
	
}

/* @end */


/* Animations
------------------------------------ */
:where(#wrapper) .contenedor .elemento {
	opacity: 0;
	--duration: 1s;
}
:where(#wrapper) .contenedor.animateActive .elemento {
	animation: fade var(--duration) forwards;
	animation-delay: var(--delay, 0);
}
:where(#wrapper) .contenedor.animateActive .elemento {
    --delay: 0.3s;
}