@charset "utf-8";
/* CSS Document */

body {
	font-family: 'Raleway', sans-serif;
}

a, a:hover {
    color: #2880b9;
}
a:hover {
    text-decoration: none;
}

.logoContainer {
	background: #f7f7f7;
	margin-bottom: 2px;
}
.logo img {
	width: 100%;
	height: auto;
	margin: 25px 0;
}

.headerSocial {
	margin-top: 12px;
	font-size: 22px;
}
.headerSocial a {
	color: #000;
	opacity: 0.3;
	transition: all 0.25s;
}
.headerSocial a:hover, .footerSocial a:hover {
	opacity: 0.6;
	transition: all 0.25s;
}

#navContainer .col-md-12 {
	padding: 0;
	margin: 0;
}
.navbar {
	padding: 0;
}
.navbar-nav {
	width: 100%;
}
#portal-globalnav li {
	text-transform: uppercase;
	font-family: 'Questrial', sans-serif;
	border-right: 2px solid #fff;
}
#portal-globalnav li a {
	color: #000;
	background: #c8c8c8;
	opacity: 0.5;
	transition: all 0.25s;
	border-bottom: 3px solid #fff;
	display: block;
	padding: 8px;
}
.navbar-nav .nav-link {
	padding-left: 10px;
}
#portal-globalnav li a:hover {
	opacity: 0.8;
	transition: all 0.25s;
}
.active a {
	background: #179cd8;
	color: #fff;
	opacity: 1;
	transition: all 0.25s;
	border-bottom: 3px solid #2880b9;
}
.active a:hover {
	opacity: 1;
}
#portal-globalnav li:last-child {
	border-right: none;
}
.dropdown-menu {
	padding: 0;
}
#portal-globalnav .dropdown-menu li {
    border-right: none;
}
.dropdown-menu {
    margin-left: 10px;
}

.dropdown-submenu {
  position: relative;
}
.dropdown-submenu a::after {
  transform: rotate(-90deg);
  position: absolute;
  right: 6px;
  top: 1.1em;
}
.dropdown-submenu .dropdown-menu {
  top: 0;
  left: 100%;
  margin-left: .1rem;
  margin-right: .1rem;
  margin-bottom: 4px;
}

.home #content {
	margin-top: 40px;
	margin-bottom: 40px;
}

.block {
	background: #434343;
	border: 1px solid #fff;
	margin: 10px;
	position: relative;
	overflow: hidden;
}
.block img {
    position: absolute;
    top: 0;
    z-index: 0;
}
.block .portletHeader {
    background: rgba(0,0,0,0.7);
    color: #fff;
    text-transform: uppercase;
    font-size: 12px;
    padding: 5px 8px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
}
.block .portlet {
    min-height: 225px;
    position: relative;
}
.block .portletItemDetails {
    position: absolute;
    background: #f4f4f4;
    padding: 12px;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10;
}
.block .portletItemDetails a {
    font-size: 18px;
    line-height: 18px;
}
.block hr {
    margin-top; 8px;
    margin-bottom: 8px;
}
.block .portletItemDates {
    font-size: 14px;
    text-align: right;
    color: #414141;
}
.block.one a {
    color: #fff;
    text-align: right;
    padding: 10px 30px 10px 20px;
    display: block;
    margin-left: 40px;
    text-transform: uppercase;
    font-size: 18px;
    font-family: 'Questrial', sans-serif;
    background: #179cd8;
    border-left: 4px #2880b9 solid;
    line-height: 20px;
}
.block.one {
    position: relative;
    background: #00090f;
    min-height: 420px;
}
.helenImage {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #00090f url(/siteworkspace/helenhomepage.jpg) top;
    background-size: cover;
    opacity: 0.4;
}
.quoteWrapper {
    position: absolute;
    bottom: 25px;
    right: 0;
}
.block.one .quote {
    font-family: 'Lora', serif;
    font-size: 22px;
    color: #fff;
    line-height: 28px;
    margin: 0 30px 15px 25px;
    text-align: right;
}
.block.one .quotation {
    position: relative;
}
.block.one .quotation span {
    opacity: 0.1;
    font-family: 'Lora', serif;
    font-size: 300px;
    position: absolute;
    line-height: 300px;
    top: -40px;
}

#headWrapper {
	background: #434343; 
	background-size: cover;
	color: #fff;
	position: relative;
	padding: 0;
	overflow: hidden;
}
#headWrapper a, #headWrapper a:hover, #headWrapper a:visited {
	color: #fff;
}
.headerImage .newsImage {
    display: none;
}
.headerImage {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
    background-size: cover;
    background-color: #fff;
    background-position: center;
}
.headImageCover {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0,0,0,0.4);
}
#headContainer {
	padding-top: 35px;
	padding-bottom: 35px;
	position: relative;
	z-index: 10;
}
h1.documentFirstHeading {
	font-family: 'Lora', serif;
	text-transform: uppercase;
	font-size: 36px;
	line-height: 36px;
	color: #fff;
	margin: 0;
}
.thisAuthor {
    text-transform: uppercase;
    display: none;
}
.portaltype-news-item .thisAuthor {
    display: block;
}
#descriptionContainer {
	padding-top: 40px;
	padding-bottom: 40px;
	background: rgba(0,0,0,0.4);
	position: relative;
	z-index: 10;
}
.documentDescription {
	font-size: 18px;
	text-transform: uppercase;
	font-family: 'Questrial', sans-serif;
	line-height: 18px;
}
span#categories-filed-under {
	display: none;
}
#category {
	margin-top: 20px;
	font-size: 12px;
}
#category ul, #category li {
	list-style: none;
	padding: 0;
	margin: 0;
	display: inline-block;
}
.link-category {
	background: #000;
	border-radius: 4px;
	display: inline-block;
	margin: 0 2px 2px 0;
	padding: 4px 12px;
}

#portal-breadcrumbs {
    font-size: 12px;
	text-transform: uppercase;
	margin-bottom: 10px;
}
#portal-breadcrumbs a, #portal-breadcrumbs a:hover {
    color: #fff;
}
#portal-breadcrumbs .container {
    padding: 0;
}
.breadcrumb {
    display: inline-block;
    background-color: transparent;
    margin: 0;
    padding: 0;
}
#breadcrumbs-current, #breadcrumbs-you-are-here {
    display: none;
}
.breadcrumb li {
    display: inline-block;
}
.breadcrumb > li + li::before {
    padding: 0 5px;
    color: #ccc;
    content: "/\00a0";
}

.itemAuth, .itemDetail {
    margin-bottom: 15px;
}
.itemAuth div, .itemDetail div {
    display: inline; block;
}

#content-core {
	margin: 35px 0 45px;
}
#content-core h2 {
    font-size: 28px;
	text-transform: uppercase;
	font-family: 'Lora', serif;
}
#content-core h3 {
    font-size: 24px;
	text-transform: uppercase;
	margin-top: 30px;
}
#content-core h4 {
    font-size: 20px;
}

article.entry {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px dashed #dedede;
}
article.entry header {
    font-size: 18px;
    font-family: 'Questrial', sans-serif;
    text-transform: uppercase;
}
article.entry img {
    float: right;
    margin: 0 0 10px 10px;
}
article.entry::after {
    content: " ";
    display: block;
    clear: both;
    height: 2px;
    visibility: hidden;
}

.paginationContainer {
    display: table;
    margin: 35px auto 0;
}

.hiddenStructure, .sr-only, #social-tags-body {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
    color: #fff;
    background-color: #000;
}
.event.summary {
    max-width: 300px;
    float: right;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.17);
    display: none;
}
.event.summary strong {
    display: block;
}

#footerSearch .container {
	background: #e1e1e1;
	padding-top: 18px;
}
#portal-searchbox {
	position: relative;
	width: 100%;
	display: inline-block;
}
#footerSearch .searchButton {
	border: none;
	background: transparent;
	position: absolute;
	right: 0;
	top: 2px;
	cursor: pointer;
}
#footerSearch .btn-lg {
	padding: 0 10px;
	opacity: 0.4;
	transition: all 0.25s ease;
}
#footerSearch .btn-lg:hover {
	opacity: 0.8;
	transition: all 0.25s ease;
}
#portal-searchbox label, #portal-searchbox .searchSection, #portal-advanced-search {
    display: none;
}

#footerContainer .container {
	background: #303030;
	padding-top: 35px;
	padding-bottom: 20px;
	color: #fff;
}
#portal-footernav {
    margin-left: 0;
    padding-left: 0;
}
#portal-footernav > li {
	padding: 0;
	list-style: none;
	display: inline-block;
	margin: 0 20px 0 0;
	vertical-align: top;
	float: none;
}
#portal-footernav li a {
	text-transform: uppercase;
	display: inline-block;
	color: #fff;
	font-size: 12px;
    padding: 0;
}
#portal-footernav li a:hover {
        background: transparent;
}
#portal-footernav span.caret {
       display: none;
}
#portal-footernav .dropdown-menu {
	display: block;
	padding: 0 0 0 4px;
	border: none;
	border-left: 2px solid #fff;
	position: relative;
    background: transparent;
    box-shadow: none;
    float: none;
    min-width: auto;
    border-radius: 0;
}
#portal-footernav .dropdown-menu li {
        display: block;
        line-height: 12px;
        max-width: 110px;
}
#portal-footernav .dropdown-menu li a {
        font-size: 10px;
        background: none;
        color: #a6a6a6;
        padding: 0 0 0 2px;
        white-space: inherit;
}
#portal-footernav .dropdown-menu li a:hover {
        text-decoration: underline;
        color: #c6c6c6;
}
#portal-footernav .dropdown-menu img {
        display: none;
}
#portal-footernav .dropdown-submenu > a::after {
    display: none;
}
#portal-footernav .dropdown-toggle {
    pointer-events: none;
}
#portal-footernav .navTreeLevel1 {
    margin-left: -102px;
}

.footerCalls {
	color: #c1c1c1;
	font-size: 10px;
	text-transform: uppercase;
}
.footerCalls a {
	color: #c1c1c1;
}
.footerSocial a {
	color: #fff;
	opacity: 0.3;
	transition: all 0.25s;
	font-size: 20px;
	display: inline-block;
	margin-left: 5px;
}

/* Accordion View */
.firstItem {
    margin-top: 45px;
    margin-bottom: 20px;
}
.firstItem hr {
    margin-top: 2rem;
}
.ui-accordion-content .item {
    margin-left: 20px;
}
.ui-accordion-content .description {
    margin-bottom: 8px;
}
.ui-widget-content a {
    color: #2880b9;
}
.ui-widget-content h2.headline a {
    color: #1f1506;
}
.ui-accordion-content .item .description {
    margin-left: 15px;
}
.accordion .portletStaticText .portletHeader {
    display: none;
}
.accordion #content > .headline, .firstItem .itemDescription {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
    color: #fff;
    background-color: #000;
}
.ui-accordion .ui-accordion-header {
    transition: 0.25s all;
    padding: 15px 0;
    font-size: 22px !important;
}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {
    background: #2880b9;
    border-color: #2880b9;
    transition: 0.25s all;
    font-size: 24px !important;
}
#content-core .ui-accordion-content h2.headline {
    font-family: 'Raleway', sans-serif;
    font-size: 22px;
}
#content-core .ui-accordion-content hr {
    display: none;
}

.section-publications #content-core .ui-accordion-content h2.headline {
    font-size: 18px;
}

.container.map {
    padding: 0;
}

p.callout {
    margin: 10px 20px 20px 50px;
    background: #dedede;
    font-size: 18px;
    border-left: 4px #434343 solid;
    text-align: right;
    padding: 15px 32px;
}

.template-search #portal-breadcrumbs, .template-search .actionMenu, .template-search #content-core h1 {
    display: none;
}
#search-results-wrapper {
    margin-top: 15px;
}
#searchResultsSort {
    margin-bottom: 10px;
}
.documentLocation {
    display: block;
}
.searchResults {
    margin: 0;
    padding: 0;
}
.searchResults li {
    margin: 0 0 15px;
    padding: 0 0 15px;
    border-bottom: 1px dashed #dedede;
    list-style: none;
}
.result-title {
    font-size: 18px;
}

.video-container { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; } 
.video-container iframe, .video-container object, .video-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.image-left {
    float: left;
    margin: 0 15px 15px 0;
}
.image-right {
    float: right;
    margin: 0 0 15px 15px;
}

/*Page specific CSS*/
/*Migration*/
.subsection-hsf-briefs-the-south-african-migration-policy-landscape #content-core table h3 {
    margin-top: 5px;
}
.subsection-hsf-briefs-interpreting-the-data-on-south-african-migration .callout {
    font-size: 14px;
}

/*Donate*/
.form-check-input {
    margin-left: 0 !important;
}

@media only screen and (min-width : 1024px) {
	/* Bigger grid */
	.blocks {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		grid-template-rows: 1fr 1fr;
	}
	.block.one {
		grid-column: 1;
		grid-row: 1/3;
	}
	#portal-globalnav > li {
		width: 20%;
		text-align: center;
	}
}
@media only screen and (max-width : 1024px) {
	/* Smaller grid */
/*	.blocks {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr 1fr;
	}
	.block.one {
		grid-column: span 2;
	}*/
	
	.event.summary {
        max-width: 100%;
        float: none;
        margin-bottom: 20px;
    }
}
@media only screen and (max-width : 768px) {
	/* Smaller grid */
/*	.blocks {
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: 1fr 1fr 1fr 1fr 1fr;
	}
	.block.one {
		grid-column: 1;
	}*/
	
	.event.summary {
        max-width: 100%;
        float: none;
        margin-bottom: 20px;
    }
}