/* viewport, major structural divs
========================================================== */
html, body {
	background: #fff;
	font-family: "Barlow", helvetica, arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
	vertical-align: top;
	color: #000;
	scroll-behavior: smooth;
}
header, footer {
	background-color: #11124e;
	color: #fff;
}

a { color: #040191; }

.infographic-description {
	display: none;
}

/* navbar
========================================================== */
.navbar {
	padding: 2rem 0;
}
.navbar-toggler {
	color: #fff;
}

.nav-item {
	margin-left: 2rem;
}

.navbar-nav,
.nav-link,
.navbar-nav .nav-link.active,
.navbar-nav .nav-link.show,
.nav-link:focus, .nav-link:hover {
	color: #fff;
	font-weight: 800;
	font-size: 1.25rem;
	text-transform: uppercase;
}

.dropdown-toggle::after {
	display: none;
}

.dropdown-menu {
	background-color: #fff;
	border-radius: 0;
	color: #11124e;
	border: 1px solid #11124e;
}

/* jumbotron
========================================================== */
.jumbotron {
	position: relative;
	margin-bottom: 3rem;
	color: #fff;
}
.jumbotron--home {
	height: 55vh;
	background-image: url(https://www.bsr.org/images/heroes/bsr-ci-tech-against-trafficking-hero.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}
.jumbotron--inner-page {
	height: 25vh;
	background-repeat: no-repeat;
	background-size: cover;
}
.jumbotron--inner-page-involved {
	background-image: url(/images/heroes/tat-header-who.png);
}
.jumbotron--inner-page-contact {
	background-image: url(/images/heroes/tat-header-contact.png);
}
.jumbotron--inner-page-work {
	background-image: url(/images/heroes/tat-header-work.png);
}
.jumbotron--inner-page-news {
	background-image: url(/images/heroes/tat-header-news.png);
	background-position: bottom;
}
.jumbotron--inner-page-news-entry {
	height: 35vh;
}
.jumbotron--inner-page-news-entry::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.65);
}
.jumbotron--inner-page-news-entry .container {
	position: relative;
	z-index: 1;
}

.jumbotron h1 {
	font-size: 2.5rem;
	text-transform: uppercase;
	font-weight: 800;
}

/*
.hero-image {
	height: 75vh;
	object-fit: cover;
	object-position: 100% 0;
	width: 100%;
} */

@media (max-width: 768px) {
	.jumbotron h1 {
		font-size: 1.5rem;
	}
}



/* images
========================================================== */
.mark {
	width: 50%;
	color: transparent;
	background-color: transparent;
}
.card--marks {
	margin-top: 0;
	margin-bottom: 2.5rem;
	border: none;
}
.card--marks img {
	padding: 0 3.5rem;
}



/* typography
========================================================== */
h2, h3 {
	color: #11124e;
	font-weight: 600;
}
h2 {
	font-size: 3rem;
}
strong {
	font-weight: 600;
}
main p,
main li {
	font-size: 1.5rem;
}

.callout {
	padding: 6rem 5rem;
	color: #11124e;
	font-weight: 600;
	text-align: center;
}
.callout-number {
	margin: 0;
	font-size: 10rem;
}
.callout-caption {
	font-size: 1rem;
	text-transform: uppercase;
}

.highlight {
	background: linear-gradient(
		to top,
		rgba(2,3,222,0.25) 30%,
		transparent 30%
	);
}
.jumbotron .highlight {
	background: linear-gradient(
		to top,
		#1d40e3 50%,
		transparent 50%
	);
}

.card--marks p {
	margin-top:0.25rem;
	text-align:center;
	color:#888;
	font-size:0.75rem;
}

.caption,
.sidebar .caption,
.sidebar .caption p {
	font-size: 0.85rem;
	font-style: italic;
}

.text--primary {
	color: #1d40e3;
}

.icon-link {
	/* align-items: flex-start; */
}
.fa-quote-left {
	padding: 0.5rem 0.75rem;
	background: #1d40e3;
	color: #fff;
	font-size: 2rem;
	border-radius: 50%;
}

@media (max-width: 768px) {
	.callout-number {
		font-size: 5rem;
	}
}


/* buttons
========================================================== */
.btn {
	border-radius: 0;
}
.jumbotron .btn {
	padding: 0.5rem 2.25rem;
	font-size: 1.75rem;
	color: #fff;
	font-weight: 800;
	text-transform: uppercase;
	background: #1d40e3;
}
.jumbotron .btn:hover,
main .btn:hover {
	color: #1d40e3;
	background: #fff;
	border: 1px solid #1d40e3;
}

main .btn {
	padding: 0.25rem 1.25rem;
	font-size: 1.5rem;
	color: #fff;
	font-weight: 800;
	text-transform: uppercase;
	background: #1d40e3;
}

/* cta's
========================================================== */
.bg--callout {
	padding: 5rem 0;
	border-top: 1px solid #c9c9c9;
	border-bottom: 1px solid #c9c9c9;
}
.bg--testimonial {
	margin: 2rem 0;
	padding: 2rem 0;
	border-top: 1px solid #c9c9c9;
	border-bottom: 1px solid #c9c9c9;
	font-style: italic;
	font-size: 2rem;
}
.testimonial-source {
	font-style: normal;
	font-size: 1rem;
}
.download-cover {
	max-width:200px;
}

@media (min-width: 768px) {
	.sidebar.float-end {
		display: block;
		width: 100%;
		max-width: 100%;
	}
}
@media (min-width: 992px) {
	.sidebar.float-end {
		float: right;
		max-width: 35%;
	}
}


/* forms
========================================================== */
legend {
	font-size: 2rem;
}
.form label {
	margin-top: 2rem;
}
textarea[name="message"] {
	height: 8rem;
}
.form label[for="tat_mailing_list"] {
	margin-top: 0.25rem;
}


/* cards
========================================================== */
.card {
	border: none;
}
.card-title {
	font-weight: 600;
	font-size: 1.75rem;
}
.card-title a {
	color: inherit;
	text-decoration: none;
}
.card-text p,
.card-footer p {
	font-size: 0.85rem;
}

.card-footer {
	border-top: none;
	background: #fff;
}
.card-footer p a,
.return a {
	text-decoration: none;
}


/* pagination
========================================================== */
.page-item:first-child .page-link,
.page-item:last-child .page-link {
	border-radius: 0;
}
.active>.page-link,
.page-link.active {
	background-color: #1d40e3;
	border-color: #1d40e3;
}



/* footer
========================================================== */
footer img {
	width: 40%;
}
footer {
	margin-top: 3rem;
	font-size: smaller;
}
footer a,
footer a:hover {
	color: #fff;
}
