﻿/* The default styles are for all devices from portrait phones up (mobile-first). */
/* Changes for larger devices are in media queries at the bottom of the stylesheet. */
.footer {
	background-color: #393c41;
	color: #fff;
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.2;
}

	.footer h2 {
		color: #fff;
		font-weight: 300;
	}

	.footer a {
		color: #fff;
		text-decoration: none;
	}

	.footer .social,
	.footer .newsletter {
		border-bottom: 1px solid #979797;
		padding: 1.5rem;
		text-align: center;
	}

		.footer .social .title {
			font-size: 1.375rem;
			margin-top: 0.75rem;
			margin-bottom: 1.5rem;
		}

		.footer .social .icons {
			margin: 0;
		}

			.footer .social .icons img {
				display: inline-block;
				width: 43px;
				height: 43px;
			}

			.footer .social .icons a {
				margin: 0 24px 0 0;
			}

				.footer .social .icons a:last-of-type {
					margin: 0;
				}

		.footer .newsletter .title {
			font-size: 1.375rem;
			margin: 0.75rem auto 1.5rem;
			width: 16.25rem;
		}

		.footer .newsletter .subtitle {
			margin: 0 auto 1.5rem;
			width: 8.75rem;
		}

		.footer .newsletter .button {
			margin: 0;
		}

		.footer .newsletter .btn {
			color: #4a4a4a;
			font-size: 1rem;
			padding: 0.625rem 1.75rem;
		}

	.footer .back-to-top {
		position: relative;
	}

	.footer .back-to-top-btn {
		background-color: transparent;
		border: 0;
		cursor: pointer;
		padding: 0;
		height: 45px;
		width: 40px;
		position: absolute;
		top: -25px;
		right: 0;
	}

		.footer .back-to-top-btn img {
			display: block;
			height: 40px;
			width: 40px;
			position: absolute;
			top: 5px;
			left: 0;
		}

		.footer .back-to-top-btn:hover img {
			top: 0;
		}

	.footer .links {
		padding: 3rem 0 0;
	}

		.footer .links a:hover {
			text-decoration: underline;
		}

	.footer .links-list {
		font-size: 0.875rem;
		padding-bottom: 2rem;
	}

	.footer .address {
		padding-bottom: 2rem;
	}

		.footer .address .email {
			margin-top: 1.5rem;
		}

		.footer .address .logo img {
			margin-bottom: 2.5rem;
			width: 160px;
		}

	.footer .links-list {
		font-size: 0.875rem;
	}

		.footer .links-list .title {
			font-weight: bold;
		}

		.footer .links-list ul {
			padding: 0;
		}

		.footer .links-list li {
			list-style: none;
			margin: 0 0 0.75rem;
		}

	.footer .credit-suisse-logo {
		display: flex;
		justify-content: flex-end;
		padding-bottom: 2rem;
	}

		.footer .credit-suisse-logo p {
			align-self: flex-end;
			margin-bottom: 0.75rem;
		}

		.footer .credit-suisse-logo img {
			max-width: 160px;
			width: 100%;
		}

	.footer .copyright {
		font-size: 0.75rem;
		padding-bottom: 1rem;
		text-align: right;
	}

	/* Home page */
	.footer.home-page .bg-social {
		background-color: #000;
		background-image: url('/external/homepage/backgrounds/320/320-social.jpg');
		background-position: center bottom;
	}

	.footer.home-page .social,
	.footer.home-page .newsletter {
		border-right: 4px solid #fff;
		border-bottom: 4px solid #fff;
		border-left: 4px solid #fff;
	}

	.footer.home-page .social {
		padding-top: 17rem;
	}

		.footer.home-page .social .title,
		.footer.home-page .newsletter .title {
			font-size: 1.5rem;
		}

	.footer.home-page .bg-newsletter {
		background-color: #000;
	}

	.footer.home-page .newsletter {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}

	.footer.home-page .newsletter .btn {
		font-size: 1.125rem;
		padding: 0.75rem 3rem;
	}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
	.footer .links {
		padding-left: calc(2rem - 15px);
		padding-right: calc(2rem - 15px);
	}

	.footer .credit-suisse-logo {
		padding-bottom: 0.5rem;
	}

	.footer .copyright {
		padding-left: 2rem;
		padding-right: 2rem;
	}

	.footer .newsletter .title {
		width: auto;
	}

	.footer .newsletter .subtitle,
	.footer .newsletter .button {
		display: inline;
	}

	.footer .newsletter .subtitle {
		margin-right: 1.75rem;
	}

	/* Home page */
	.footer.home-page .bg-social {
		background-image: url('/external/homepage/backgrounds/576/576-social.jpg');
		border-bottom: 1px solid #979797;
	}

	.footer.home-page .social {
		padding-top: 24rem;
		padding-bottom: 2rem;
	}

		.footer.home-page .social .icons a {
			margin: 0 48px 0 0;
		}

			.footer.home-page .social .icons a:last-of-type {
				margin-right: 0;
			}

		.footer.home-page .social .icons img {
			width: 60px;
			height: 70px;
			padding-top: 10px;
			padding-bottom: 0;
		}

	.footer.home-page .social,
	.footer.home-page .newsletter {
		border-right: 0;
		border-bottom: 0;
		border-left: 0;
	}
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
	.footer .links .address {
		border-right: 1px solid #979797;
	}

	.footer .links .links-list {
		font-size: 1rem;
	}

	.footer .copyright {
		font-size: 0.875rem;
	}

	/* Home page */
	.footer.home-page .bg-social {
		background-image: url('/external/homepage/backgrounds/768/768-social.jpg');
	}

	.footer.home-page .social {
		padding-top: 34rem;
		padding-bottom: 2rem;
	}

		.footer.home-page .social .title {
			font-size: 2rem;
		}

	.footer.home-page .newsletter {
		padding-bottom: 4rem;
	}

		.footer.home-page .newsletter .title {
			font-size: 2rem;
			margin: 2rem 0;
		}

		.footer.home-page .newsletter .subtitle {
			font-size: 1.5rem;
			margin-bottom: 1rem;
			margin-right: 50px;
		}
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
	.footer .social-and-email {
		border-bottom: 1px solid #979797;
	}

	.footer .social,
	.footer .newsletter {
		border: 0;
		padding-left: 15px;
		padding-right: 15px;
		text-align: left;
	}

	.footer .social {
		padding-left: 55px;
	}

	.footer .newsletter {
		padding-right: 55px;
	}

	.footer .social .icons img {
		width: 43px;
		height: 53px;
		padding-top: 10px;
		padding-bottom: 0;
	}

		.footer .social .icons img:hover {
			padding-top: 5px;
			padding-bottom: 5px;
		}

	.footer .social .title {
		margin-bottom: 0.875rem;
	}

	.footer .newsletter .subtitle {
		display: inline-block;
		margin-right: 5.25rem;
		width: 8.75rem;
	}

	.footer .newsletter .button {
		display: inline-block;
		vertical-align: text-bottom;
	}

	.footer .links {
		padding-left: 40px;
		padding-right: 40px;
	}

	.footer .copyright {
		padding-left: 55px;
		padding-right: 55px;
	}

	/* Home page */
	.footer.home-page .bg-social {
		background-image: url('/external/homepage/backgrounds/992/992-social.jpg');
	}

	.footer.home-page .social {
		text-align: right;
	}

		.footer.home-page .social .title,
		.footer.home-page .social .icons {
			display: inline-block;
			margin-bottom: 0;
		}

		.footer.home-page .social .title {
			margin-right: 100px;
		}

		.footer.home-page .social .icons {
			vertical-align: bottom;
		}

	.footer.home-page .social,
	.footer.home-page .newsletter {
		padding-left: 3rem;
		padding-right: 3rem;
	}

		.footer.home-page .newsletter .subtitle {
			float: left;
			width: auto;
		}

		.footer.home-page .newsletter .button {
			float: right;
		}

		.footer.home-page .social .icons img:hover {
			padding-top: 5px;
			padding-bottom: 5px;
		}
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
	/* Home page */
	.footer.home-page .bg-social {
		background-image: url('/external/homepage/backgrounds/1280/1280-social.jpg');
	}

	.footer.home-page .links address,
	.footer.home-page .links .links-list {
		font-size: 1.25rem;
	}

		.footer.home-page .links address .email {
			font-size: 1rem;
		}

	.footer.home-page .copyright {
		font-size: 1rem;
	}

	.footer.home-page .newsletter .title,
	.footer.home-page .social .title {
		font-size: 2.5rem;
	}
}

/* Largest background image */
@media (min-width : 1500px) {
	/* Home page */
	.footer.home-page .bg-social {
		background-image: url('/external/homepage/backgrounds/1920/1920-social.jpg');
	}
}
