/* Page layout: header / main / footer (CSP-safe, no inline styles) */

/* Sticky footer: footer stays at the bottom even when page content is short */
html,
body {
	height: 100%;
}

body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

#header,
#main-content,
.top-footer,
#footer {
	flex-shrink: 0;
	width: 100%;
}

#main-content {
	flex: 1 0 auto;
	padding: 20px 0 30px;
}

/* Home news ticker: full width, flush under the nav */
.news_sectoin.news-full {
	width: 100%;
	margin-top: -20px;
}

/* Footer */
#portfolio .portfolio-items::after {
	content: "";
	display: table;
	clear: both;
}

.top-footer .portal-link img {
	max-width: 100%;
	margin-top: 10px;
}

/* "Call for Papers" 3D cube (replaces inline style on .stage) */
.suggestionsBox .stage {
	width: 120px;
	height: 120px;
}

.cubespinner > div a {
	cursor: pointer;
	text-decoration: none;
}
