/* =========================================================
   FOOTER
   Blanca Sosa World Lawyer
========================================================= */

.bs-footer {
	position: relative;
	padding: 38px 0 0;

	background: var(--bs-navy-dark);
	color: var(--bs-white);
}


/* =========================================================
   GRID PRINCIPAL
========================================================= */

.bs-footer__grid {
	display: grid;

	grid-template-columns:
		minmax(0, 1.25fr)
		minmax(180px, 0.65fr)
		minmax(220px, 0.85fr);

	gap: 56px;

	align-items: start;

	width: 100%;

	padding-bottom: 28px;
}


/* =========================================================
   MARCA
========================================================= */

.bs-footer__brand {
	min-width: 0;
	max-width: 330px;
}


.bs-footer__logo-link {
	display: inline-flex;
	align-items: center;

	margin-bottom: 12px;
}


.bs-footer__logo {
	display: block;

	width: auto;
	max-width: 82px;
	max-height: 68px;

	object-fit: contain;
}


.bs-footer__logo-fallback {
	color: var(--bs-white);

	font-family: var(--bs-font-title);
	font-size: 1.35rem;
	font-weight: 700;
}


.bs-footer__description {
	max-width: 320px;

	margin: 0 0 16px;

	color: rgba(255, 255, 255, 0.72);

	font-size: 0.82rem;
	line-height: 1.58;
}


/* =========================================================
   REDES SOCIALES
========================================================= */

.bs-footer__social {
	display: flex;
	align-items: center;
	flex-wrap: wrap;

	gap: 8px;
}


.bs-footer__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 34px;
	height: 34px;
	min-width: 34px;

	padding: 0;

	border: 0;
	border-radius: 50%;

	color: #ffffff;

	font-size: 0.68rem;
	font-weight: 800;
	line-height: 1;

	text-decoration: none;

	transition:
		transform var(--bs-transition),
		box-shadow var(--bs-transition),
		filter var(--bs-transition),
		background var(--bs-transition);
}


.bs-footer__social-link i {
	color: inherit;

	font-size: 0.95rem;
	line-height: 1;
}


/* Instagram
========================================================= */

.bs-footer__social-link--instagram {
	background:
		linear-gradient(
			135deg,
			#f58529 0%,
			#dd2a7b 42%,
			#8134af 72%,
			#515bd4 100%
		);
}


/* Facebook
========================================================= */

.bs-footer__social-link--facebook {
	background: #1877f2;
}


/* X
========================================================= */

.bs-footer__social-link--x {
	background: #111111;
}


/* LinkedIn
========================================================= */

.bs-footer__social-link--linkedin {
	background: #0a66c2;
}


/* YouTube
========================================================= */

.bs-footer__social-link--youtube {
	background: #ff0000;
}


.bs-footer__social-link--youtube i {
	font-size: 0.9rem;
}


/* TikTok
========================================================= */

.bs-footer__social-link--tiktok {
	background: #111111;
}


.bs-footer__social-link--tiktok i {
	font-size: 0.9rem;
}


/* Hover redes
========================================================= */

.bs-footer__social-link:hover {
	color: #ffffff;

	transform: translateY(-2px);

	filter: brightness(1.1);

	box-shadow:
		0 8px 18px rgba(0, 0, 0, 0.18);
}


/* =========================================================
   COLUMNAS
========================================================= */

.bs-footer__column {
	min-width: 0;
}


.bs-footer__title {
	margin: 0 0 13px;

	color: var(--bs-gold);

	font-size: 0.72rem;
	font-weight: 800;

	text-transform: uppercase;
	letter-spacing: 0.14em;
}


/* =========================================================
   NAVEGACIÓN
========================================================= */

.bs-footer__nav {
	display: flex;
	flex-direction: column;
	align-items: flex-start;

	gap: 8px;
}


.bs-footer__nav a {
	color: rgba(255, 255, 255, 0.80);

	font-size: 0.83rem;
	font-weight: 600;
	line-height: 1.35;

	text-decoration: none;
}


.bs-footer__nav a:hover {
	color: var(--bs-gold);
}


/* =========================================================
   CONTACTO
========================================================= */

.bs-footer__contact {
	display: flex;
	flex-direction: column;
	align-items: flex-start;

	gap: 8px;
}


.bs-footer__contact a,
.bs-footer__contact span {
	color: rgba(255, 255, 255, 0.80);

	font-size: 0.83rem;
	line-height: 1.4;

	text-decoration: none;
}


.bs-footer__contact a:hover {
	color: var(--bs-gold);
}


/* =========================================================
   PARTE INFERIOR
========================================================= */

.bs-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;

	width: 100%;
	min-height: 52px;

	gap: 20px;

	padding: 13px 0;

	border-top:
		1px solid rgba(255, 255, 255, 0.10);
}


.bs-footer__copyright {
	margin: 0;

	color: rgba(255, 255, 255, 0.52);

	font-size: 0.72rem;
	line-height: 1.35;
}


/* =========================================================
   PIXEL NARANJA
========================================================= */

.bs-footer__credit {
	display: inline-flex;
	align-items: center;

	gap: 6px;

	color: rgba(255, 255, 255, 0.60);

	font-size: 0.72rem;
	line-height: 1;

	letter-spacing: 0.02em;

	text-decoration: none;

	transition:
		opacity var(--bs-transition),
		transform var(--bs-transition);
}


.bs-footer__credit-text {
	color: rgba(255, 255, 255, 0.52);
}


.bs-footer__credit-brand {
	color: #ff7a00;

	font-weight: 800;
}


.bs-footer__credit-arrow {
	color: #ff7a00;

	font-size: 0.84rem;

	transition:
		transform var(--bs-transition);
}


.bs-footer__credit:hover {
	opacity: 1;

	transform: translateY(-1px);
}


.bs-footer__credit:hover
.bs-footer__credit-arrow {
	transform: translate(2px, -2px);
}

/* =========================================================
   WHATSAPP FLOTANTE
========================================================= */

.bs-whatsapp {

	position:
		fixed;

	right:
		24px;

	bottom:
		24px;

	z-index:
		9999;

	width:
		58px;

	height:
		58px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	background:
		#25d366;

	color:
		#ffffff;

	border-radius:
		50%;

	box-shadow:
		0 12px 30px rgba(0, 0, 0, 0.22);

	text-decoration:
		none;

	transition:
		transform var(--bs-transition),
		box-shadow var(--bs-transition),
		background var(--bs-transition);
}


.bs-whatsapp i {

	font-size:
		1.85rem;

	line-height:
		1;
}


.bs-whatsapp:hover {

	background:
		#1ebe5d;

	color:
		#ffffff;

	transform:
		translateY(-3px) scale(1.04);

	box-shadow:
		0 16px 36px rgba(0, 0, 0, 0.28);
}