/* ==========================================================================
   TYPOGRAPHY
   ========================================================================== */

body {
	font-family: 'Lora', serif;
	color: #333;
}

h1, h2, h3 {
	margin: 0 0 20px;
	color: #1a1a1a;
	font-family: 'Playfair Display', serif;
	font-weight: 500;
}

h1 {
	font-size: 300%;
}

h2 {
	font-size: 200%;
}

h3 {
	font-size: 150%;
}

p {
	line-height: 1.7;
}

p:last-child {
	margin-bottom: 0;
}

a {
	color: #1a1a1a;
	transition: .3s;
}

a:hover {
	color: #6f6f6f;
	transition: .3s;
}

.label {
	margin-bottom: 10px;
	color: #6f6f6f;
	font-size: 90%;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.label-light {
	color: #fff;
}

.lead {
	font-size: 120%;
	line-height: 1.8;
}

.link-arrow {
	display: inline-block;
	color: #6f6f6f;
	font-size: 90%;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-decoration: underline;
}

.link-arrow:hover {
	color: #1a1a1a;
}

/* ==========================================================================
   SECTIONS
   ========================================================================== */

section {
	padding: 100px 0;
	background: #fff;
	color: #333;
}

section.black {
	background: #1a1a1a;
	color: #fff;
}

section.black h1,
section.black h2,
section.black h3 {
	color: #fff;
}

section.grey {
	background: #f5f5f5;
	color: #333;
}

.split-content {
	padding: 4rem;
}

.split-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ==========================================================================
   BUTTONS
   ========================================================================== */

.btn-white,
.btn-black {
	display: inline-block;
	padding: 10px 28px;
	border-radius: 0;
	font-size: 90%;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-decoration: none;
	transition: .3s;
}

.btn-white {
	background: #fff;
	border: 1px solid #1a1a1a;
	color: #1a1a1a;
}

.btn-white:hover {
	background: #1a1a1a;
	color: #fff;
}

.btn-black {
	background: #1a1a1a;
	border: 1px solid #1a1a1a;
	color: #fff;
}

.btn-black:hover {
	background: transparent;
	color: #1a1a1a;
}

/* ==========================================================================
   NAVIGATION
   ========================================================================== */

.navbar {
	padding: 25px 0;
	background: #fff;
	box-shadow: 0 10px 10px -10px #ddd;
}

.navbar-brand {
	color: #1a1a1a;
	font-family: 'Playfair Display', serif;
	font-size: 110%;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.navbar-brand:hover {
	color: #1a1a1a;
}

.nav-link {
	margin: 0 16px;
	padding: 0 !important;
	color: #1a1a1a !important;
	font-size: 90%;
	letter-spacing: 1px;
	text-transform: uppercase;
	border-bottom: 1px solid transparent;
}

.nav-link:hover,
.nav-link.active {
	border-bottom: 1px solid #1a1a1a;
}

/* ==========================================================================
   HERO
   ========================================================================== */

.hero {
	position: relative;
	height: 640px;
	overflow: hidden;
}

.hero-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, .05) 0%, rgba(0, 0, 0, .55) 100%);
}

.hero-content {
	position: absolute;
	right: 0;
	bottom: 60px;
	left: 0;
	z-index: 2;
}

/* ==========================================================================
   FOOTER
   ========================================================================== */

.site-footer {
	padding: 60px 0 30px;
	border-top: 1px solid #1a1a1a;
	background: #fff;
}

.footer-title {
	margin-bottom: 15px;
	font-size: 110%;
}

.site-footer p {
	color: #333;
}

.site-footer a {
	color: #333;
}

.site-footer .copyright {
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid #ddd;
	color: #6f6f6f;
	font-size: 85%;
	text-align: center;
}

/* ==========================================================================
   MEDIA QUERIES
   ========================================================================== */

@media only screen and (max-width: 768px) {
	h1 {
		font-size: 220%;
	}

	h2 {
		font-size: 175%;
	}

	.hero {
		height: 420px;
	}

	.split-content {
		padding: 2.5rem 5%;
		text-align: center;
	}

	.split-img {
		height: 320px;
	}
}
