/**
 * #.# Footer
 * #.#  Client Custom Styles
 *
 * Footer area styles including layout, typography, and social links.
 * Four columns: About (logo/tagline/address/social), Company, Legal,
 * Countries — each of the latter three headed by a small uppercase label.
 */

/* =============================
  # Footer
============================= */

footer {
	background-color: var(--nec-alt-blue);
	padding:  80px 0 56px;
	position: relative;
	overflow: hidden;
}

footer p,
footer a {
	color:       var(--white);
	font-size:   16px;
	line-height: 1.6;
}

footer a:hover {
	color: var(--nec-orange);
}

.footer-col {
	margin-bottom: 40px;
}

/* =============================
  # About column: logo, tagline, address, social
============================= */

.footer-logo {
	display: inline-block;
}

.footer-logo img {
	width:     auto;
	max-width: 180px;
	height:    auto;
}

.footer-tagline {
	margin:      12px 0 24px;
	font-size:   14px;
	color:       rgba(255, 255, 255, 0.75);
}

.footer-address {
	padding-top: 35px;
	margin-bottom: 32px;
}

.footer-address p {
	margin: 0;
	color:var(--white);
	font-size: 15px;
	line-height: 22px;
}

.social-links {
	display:    flex;
	gap:        12px;
	list-style: none;
	padding:    0;
	margin:     0;
}

.social-links li a {
	display:         flex;
	align-items:     center;
	justify-content: center;
	width:           36px;
	height:          36px;
	border-radius:   50%;
	background:      var(--nec-orange);
	color:            var(--nec-blue);
	transition:      background 0.2s ease;
}

.social-links li a:hover,
.social-links li a:focus-visible {
	color:      var(--white);
	outline:    none;
}

/* =============================
  # Company / Legal / Countries columns
============================= */

.footer-col__heading {
	margin:         0 0 20px;
	color:          var(--white);
	font-family:    var(--nec-font);
	font-size:      16px;
	font-weight:    400;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.footer-menu-container ul {
	list-style: none;
	padding:    0;
	margin:     0;
}

.footer-menu-container ul li {
	margin-bottom: 12px;
}

.footer-menu-container ul li a {
	color:           var(--white);
	font-size:       15px;
	line-height:     19.5px;
	text-decoration: none;
	border-bottom:   1px solid rgba(255, 255, 255, 0);
	transition:      color 0.2s ease;
}

.footer-menu-container ul li a:hover,
.footer-menu-container ul li a:focus-visible {
	color:   var(--nec-orange);
	outline: none;
}

/* =============================
  # Subfooter
============================= */

.sub-footer {
	padding:          24px 0;
	background-color: var(--nec-alt-blue);
	/*border-top:       1px solid rgba(255, 255, 255, 0.12);*/
}

.sub-footer p {
	margin: 0;
  color: rgba(255, 255, 255, 0.65);
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
	letter-spacing: 2%;
}

.sub-footer a {
	color:         rgba(255, 255, 255, 0.85);
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
	transition:    color 0.2s ease, border-color 0.2s ease;
}

.sub-footer a:hover,
.sub-footer a:focus-visible {
	color:        var(--nec-orange);
	border-color: var(--nec-orange);
	outline:      none;
}

.sub-footer__credit {
	margin-top: 8px;
}

/* =============================
  # Responsive — 991px (footer columns stack to 2 per row)
============================= */

@media (max-width: 991px) {
	footer {
		padding: 56px 0 40px;
	}
}

/* =============================
  # Responsive — 767px (single column, centred sub-footer)
============================= */

@media (max-width: 767px) {
	.footer-col {
		text-align: center;
	}

	.social-links {
		justify-content: center;
	}

	.sub-footer .row {
		text-align: center;
	}

	.sub-footer__credit {
		margin-top: 4px;
	}
}
