/*
 * plugins/generic/siteFooter/styles/footer.css
 *
 * The AJOEI website footer, reproduced for OJS. Values are taken from the live site's
 * assets/css/style.css (section "12. footer area") so the two match:
 *   .footer-bottom            background #33495f
 *   .footer-title h4          18px bold white uppercase, 50px x 2px #33495f underline
 *   .f-contact-info i         #ebebeb, 15px
 *   .f-contact-info span      14px white
 *   .footer-list a            white, hover #33495f
 *   social icons              28px white circles, brand-coloured glyphs
 *
 * Everything is namespaced under .ajf so it cannot leak into the OJS theme, and the grid is
 * plain flexbox because the OJS default theme does not ship Bootstrap's grid.
 */

/* The old one-line footer bar. Its content has been moved here, so collapse it.
   .pkp_brand_footer is already hidden by the journal's own styleSheet.css. */
.pkp_structure_footer_wrapper {
	display: none !important;
}

/* The site sets its footer in Roboto; load it so the two render identically. */
@import url("https://fonts.googleapis.com/css?family=Roboto:400,700&display=swap");

.ajf {
	clear: both;
	font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
	line-height: 1.5;
}

.ajf *,
.ajf *::before,
.ajf *::after {
	box-sizing: border-box;
}

.ajf-container {
	max-width: 1170px;
	margin: 0 auto;
	padding: 0 15px;
}

/* ---------- top ---------- */

.ajf-top {
	background-image: url("https://ajoeijournal.org/assets/img/bg/bg-4.jpg");
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #33495f;
	/* Measured from the live site at 1440px: computed padding is 21px / 20px.
	   (style.css's .pt-130 is overridden by a later responsive rule — don't use 120px.) */
	padding: 21px 0 20px;
}

.ajf-row {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -15px;
}

.ajf-col {
	flex: 0 0 25%;
	max-width: 25%;
	padding: 0 15px;
	margin-bottom: 40px;
}

.ajf-title {
	position: relative;
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	line-height: 1;
	text-transform: uppercase;
	margin: 0 0 36px;
	padding: 0 0 14px;
	letter-spacing: 0;
}

.ajf-title::before {
	position: absolute;
	left: 0;
	bottom: 0;
	content: "";
	height: 2px;
	width: 50px;
	background-color: #33495f;
}

.ajf-about {
	color: #fff;
	font-size: 14px;
	line-height: 23px;
	margin: -10px 0 0;
}

.ajf-rule {
	border: 0;
	border-top: 1px solid rgba(255, 255, 255, .25);
	margin: 18px 0;
}

/* link lists */

.ajf-list,
.ajf-contact,
.ajf-menu,
.ajf-social {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ajf-list {
	margin-top: -10px;
}

.ajf-list li {
	margin-bottom: 8px;
	padding: 0;
	border: 0;
	line-height: 1.5;
}

.ajf-list li:last-child {
	margin-bottom: 0;
}

.ajf-list a {
	color: #fff;
	display: block;
	font-size: 14px;
	text-decoration: none;
}

.ajf-list a:hover,
.ajf-list a:focus {
	color: #cfe0f5;
	text-decoration: underline;
}

/* address / email blocks */

.ajf-contact {
	margin-top: 16px;
}

.ajf-contact li {
	display: flex;
	align-items: flex-start;
	margin-bottom: 9px;
	padding: 0;
	border: 0;
}

.ajf-contact li:last-child {
	margin-bottom: 0;
}

.ajf-contact span {
	font-size: 14px;
	font-weight: 400;
	color: #fff;
}

.ajf-contact a {
	color: #fff;
	text-decoration: none;
	word-break: break-word;
}

.ajf-contact a:hover,
.ajf-contact a:focus {
	text-decoration: underline;
}

.ajf-icon {
	flex: 0 0 15px;
	width: 15px;
	height: 15px;
	margin: 4px 6px 0 0;
	fill: #ebebeb;
	color: #ebebeb;
}

/* ---------- bottom bar ---------- */

.ajf-bottom {
	background-color: #33495f;
	padding: 15px 0;
}

.ajf-bottom-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px 20px;
}

.ajf-copyright {
	color: #fff;
	font-size: 14px;
	margin: 0;
}

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

.ajf-copyright a:hover,
.ajf-copyright a:focus {
	text-decoration: underline;
}

.ajf-bottom-right {
	display: flex;
	align-items: center;
	gap: 34px;
}

.ajf-menu {
	display: flex;
	gap: 15px;
}

.ajf-menu li {
	margin: 0;
	padding: 0;
	border: 0;
}

.ajf-menu a {
	color: #fff;
	font-size: 14px;
	text-decoration: none;
}

.ajf-menu a:hover,
.ajf-menu a:focus {
	color: #ddd;
	text-decoration: underline;
}

/* social circles */

.ajf-social {
	display: flex;
	gap: 6px;
}

.ajf-social li {
	margin: 0;
	padding: 0;
	border: 0;
}

.ajf-social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	background-color: #fff;
	border-radius: 100%;
	text-decoration: none;
}

.ajf-social svg {
	width: 14px;
	height: 14px;
	fill: currentColor;
}

.ajf-social .ajf-facebook { color: #0054a6; }
.ajf-social .ajf-youtube  { color: #c4302b; }
.ajf-social .ajf-twitter  { color: #38a1f3; }
.ajf-social .ajf-google   { color: #cc3333; }

.ajf-social .ajf-facebook:hover { background-color: #0054a6; color: #fff; }
.ajf-social .ajf-youtube:hover  { background-color: #c4302b; color: #fff; }
.ajf-social .ajf-twitter:hover  { background-color: #38a1f3; color: #fff; }
.ajf-social .ajf-google:hover   { background-color: #cc3333; color: #fff; }

/* ---------- responsive ---------- */

@media (max-width: 991px) {
	.ajf-col {
		flex: 0 0 50%;
		max-width: 50%;
	}
}

@media (max-width: 767px) {
	.ajf-col {
		flex: 0 0 100%;
		max-width: 100%;
		margin-bottom: 32px;
	}

	.ajf-bottom-inner {
		flex-direction: column;
		text-align: center;
	}

	.ajf-bottom-right {
		flex-direction: column;
		gap: 10px;
	}

	.ajf-menu {
		justify-content: center;
	}
}
