/*
 Theme Name:   Kristan Hawkins Site
 Author:       Jason Craft
 Version:      1.0.0
 Text Domain:  kristan-hawkins
*/


/* headings / misc. */
html, body {
	font-family: 'Open Sans', Helvetica, sans-serif;
	font-size: 16px;
	color: #444;
}
h1, h2, h3, h4, h5, .heading {
	font-size: 60px;
	font-weight: 700;
	font-family: Poppins, 'Open Sans', sans-serif;
	line-height: 1.1;
}
h3, h3.heading, .secondary.heading {
	margin: 10px 0;
	font-size: 32px;
	line-height: 1.2;
}
h4.heading, h5.heading, h4, h5 {
	font-size: 20px;
	font-weight: 600;
}
strong {
	font-weight: 600;
}
.heading strong {
	font-weight: inherit;
}
img {
	max-width: 100%;
}
a, a:hover {
	text-decoration: none;
	color: #f04e5e;
}
a:hover {
	text-decoration: underline;
}
.heading a, .title a {
	color: inherit;
}
sup {
	font-size: 60%;
}

/* content / layout */
section {
	padding-top: 80px;
	padding-bottom: 80px;
	overflow: hidden;
}
.container {
	padding: 0 20px;
	max-width: 1100px;
}
.narrow.container {
	max-width: 900px;
}
.row {
	margin-right: -20px;
	margin-left: -20px;
}
.row > * {
	padding: 0 20px;
}
.half-background {
	position: relative;
}
.half-background::before, .half-background::after {
	position: absolute;
	left: 0;
	top: 0;
	background-position: 50% 50%;
	background-size: cover;
	width: 50%;
	height: 100%;
	z-index: 0;
	content: " ";
}
.half-background::after {
	left: auto;
	right: 0;
}
.half-background .container {
	position: relative;
	z-index: 2;
}


/**** buttons ****/
.button {
	display: inline-block;
	padding: 10px 22px;
	border: none;
	background: #444;
	font-family: Poppins, 'Open Sans', sans-serif;
	text-transform: uppercase;
	text-decoration: none;
	color: #fff;
	vertical-align: middle;
	transition: all 0.5s;
}
.button:hover {
	background: #000;
	text-decoration: none;
	color: #fff;
}


/**** header ****/
header {
	position: absolute;
	top: 20px;
	left: 0;
	right: 0;
	padding: 18px 0;
	background: rgba(240, 78, 94, 0.9);
	font-family: Poppins, 'Open Sans', sans-serif;
	font-weight: 700;
	text-transform: uppercase;
	color: #fff;
	z-index: 9;
}
header .row {
	align-items: center;
}
header .logo {
	margin: 0;
	font-weight: 800;
	font-size: 30px;
	white-space: nowrap;
}
header nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: right;
}
header nav li {
	display: inline-block;
	margin: 0;
	padding: 0 0 0 20px;
}
header a, header a:hover {
	text-decoration: none;
	color: #fff;
}
header nav a {
	display: inline-block;
	padding: 2px 0;
	border-bottom: solid 2px transparent;
}
header nav a:hover,
header nav .active a,
header nav .current-page-item a,
header nav .current-menu-item a  {
	border-bottom: solid 2px #fff;
	color: #fff;
}
header .mobile-button {
	display: none;
}


/**** hero ****/
#hero {
	padding: 220px 0 150px;
	background: url(images/hero-bg.jpg) 50% 50% / cover no-repeat #555;
	color: #fff;
}
#hero .heading {
	margin: 10px auto;
	max-width: 600px;
}
#hero .heading img {
	width: 100%;
}


/**** the future ****/
#the_future::after {
	padding: 80px 0;
	background: url(images/kristan-speaking.jpg) 50% 50% / cover no-repeat;
}
.category {
	font-family: Poppins, 'Open Sans', sans-serif;
	text-transform: uppercase;
	color: #707070;
}
#the_future .heading {
	margin: 10px 0 60px;
}


/**** media logos ****/
#media_logos {
	padding: 22px 0;
	background: #242424;
	text-align: center;
	color: #fff;
}
#media_logos img {
	height: 40px;
	vertical-align: middle;
}


/**** articles tiles ****/
#articles_tiles {
	padding: 0;
}
#articles_tiles .article {
	position: relative;
	overflow: hidden;
}
#articles_tiles .article::before {
	display: block;
	padding-top: 100%;
	content: " ";
}
#articles_tiles .article img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: all 0.5s;
}
#articles_tiles .article a {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
#articles_tiles .article a::after {
	display: block;
	position: absolute;
	right: 20px;
	bottom: 20px;
	background: #fff;
	font-size: 24px;
	font-family: Poppins, sans-serif;
	text-align: center;
	color: #444;
	line-height: 32px;
	width: 32px;
	height: 32px;
	content: ">";
}
#articles_tiles .article a:hover::after {
	color: #f04e5e;
}
#articles_tiles .article:hover img {
	transform: scale(1.1);
}


/**** podcast section ****/
#podcast_section {
	background: #fdc53b;
}
#podcast_section > .container > .row {
	align-items: center;
}
#podcast_section .heading-col .heading {
	padding: 0 10px 0 0;
	font-weight: 800;
	font-size: 70px;
	text-transform: uppercase;
	text-align: right;
}
#podcast_section .heading strong {
	display: block;
	color: #fff;
}
#podcast_section .info-col img {
	width: 280px;
}
.cta {
	margin: 24px 0 0;
}


/**** post roe section ****/
#post_roe {
	background: #f04e5e;
	color: #fff;
}
#post_roe::after {
	background-image: url(images/kristan-post-roe.jpg);
	background-color: #444;
}
#post_roe .heading {
	font-size: 56px;
	text-transform: uppercase;
}
#post_roe .heading em {
	font-style: italic;
}


/**** partners ****/
#partners {
	background: #513175;
	text-align: center;
	color: #fff;
}
#partners .row {
	align-items: center;
}
#partners .partner {
	margin: 0 0 20px;
}
#partners img {
	width: 150px;
}


/**** request kristan ****/
#request_kristan {
	padding-bottom: 0;
}
#request_kristan .container {
	padding-bottom: 60px;
	background: url(https://kristanhawkins.com/wp-content/uploads/2023/01/kristan2023.jpg) 0 0% / 32% no-repeat;
}
#request_kristan .heading {
	text-align: center;
}
#request_kristan .heading img {
	width: 500px;
}
#request_form {
	padding-top: 20px;
}
#request_form label {
	display: block;
	margin: 20px 0 4px;
	font-style: italic;
}
#request_form .cta {
	text-align: center;
}
.text-box {
	padding: 10px 20px;
	border: solid 1px #999;
	border-bottom: solid 2px #333;
	font: inherit;
	color: #444;
        width: 100%;
}
.text-box::placeholder {
	font-style: italic;
	color: #888;
	opacity: 1;
}
.text-box:focus {
	border-color: #333;
}
#request_form .text-box {
	width: 100%;
}

.error .text-box {
	border-color: #ea878a;
	background-color: #fceeee;
}
.error .text-box, 
.error .text-box::placeholder {
	color: #ea878a;
}
form .after-submit {
	display: none;
}

.button.disabled, .button.disabled:hover {
	background: #999;
}


/**** footer ****/
footer {
	padding: 40px 0;
	background: #292929;
	font-size: 12px;
	color: #fff;
}
footer > .container > .row {
	align-items: center;
}
footer .copyright {
	text-transform: uppercase;
}
footer .social {
	text-align: right;
}
footer .social .icon {
	display: inline-block;
	margin: 0 4px;
	border-radius: 50%;
	background: #fff;
	font-size: 18px;
	text-align: center;
	line-height: 28px;
	color: #333;
	width: 28px;
	height: 28px;
	transition: all 0.5s;
}
footer .social .icon:hover {
	color: #796593;
}





@media only screen and (max-width: 991px) {
	.container {
		max-width: 100%;
	}
	h1, h2, h3, h4, h5, .heading {
		font-size: 48px;
	}
	h3, h3.heading, .secondary.heading {
		font-size: 28px;
	}
	h4.heading, h5.heading, h4, h5 {
		font-size: 18px;
	}

	#podcast_section .heading-col .heading {
		font-size: 56px;
	}

	#post_roe .heading {
		font-size: 48px;
	}
}

@media only screen and (max-width: 767px) {
	section {
		padding: 50px 0;
	}
	section.half-background {
		padding-bottom: 340px;
	}
	section.half-background::after {
		top: auto;
		bottom: 0;
		width: 100%;
		height: 300px;
	}

	header .mobile-button {
		display: block;
		position: absolute;
		top: 18px;
		right: 20px;
		padding: 0;
		font-size: 28px;
		line-height: 1;
		width: 30px;
	}
	header nav {
		position: relative;
		overflow: hidden;
	}
	header nav ul {
		position: relative;
		margin-top: -100%;
		transition: all 0.5s;
	}
	header nav.active ul {
		margin-top: 20px;
	}
	header nav li {
		display: block;
		margin: 0 0 10px;
	}

	#the_future {
		text-align: center;
	}
	#the_future .heading {
		margin: 0 0 10px;
	}
	#the_future .cta {
		margin: 20px 0;
	}

	#podcast_section .heading-col .heading {
		font-size: 50px;
		text-align: left;
	}
	#podcast_section .heading-col .heading strong br {
		display: none;
	}

	#request_kristan .container {
		padding-bottom: 330px;
		background-size: auto 300px;
		background-position: 50% 100%;
	}
}

@media only screen and (max-width: 575px) {
	header .logo {
		font-size: 26px;
	}

	#media_logos img {
		height: auto;
	}

	footer, footer .social {
		text-align: center;
	}
	footer .social {
		margin: 10px 0;
	}
}







/**
*	About Page
*/

/**** hero ****/
.about-page #hero .heading {
	max-width: 360px;
}

/**** about kristan ****/
#about_kristan {
	background: #fdc53b;
}
#about_kristan::before {
	background-image: url(images/kristan23.jpg);
}

/**** more about kristan ****/
#about_kristan_more .image {
	margin: 20px 0;
	text-align: center;
}


@media only screen and (max-width: 767px) {
	.about-page section.half-background {
		padding-bottom: 380px;
	}
	.about-page section.half-background::before {
		top: auto;
		bottom: 0;
		width: 100%;
		height: 350px;
	}
}



/**
*	Speaking Tour Page
*/

/**** hero ****/
.speaking-tour-page #hero {
	background-image: url(images/kristan-speakingtour-colorized.jpg); 
}
.speaking-tour-page #hero .heading {
	max-width: 340px;
}

/**** the future ****/
.speaking-tour-page #the_future {
	text-align: center;
}
.speaking-tour-page #the_future .cta {
	margin: 20px 0 30px;
}
.tour-schedule {
	margin: 60px 0 0;
}
#the_future .tour-schedule .heading,
.tour-schedule .heading {
	margin: 10px 0;
	font-size: 22px;
}
.tour-dates {
	list-style: none;
	margin: 20px 0;
	padding: 0;
}
.tour-dates li {
	margin: 20px 0;
	padding: 0;
}
.tour-dates .date {
	font-style: italic;
}
.tour-dates .location {
	display: inline-block;
	margin: 0 0 0 10px;
	font-weight: 600;
}

/**** speaking videos ****/
#speaking_videos .video {
	margin: 0 0 40px;
}
#speaking_videos .video iframe {
	width: 100%;
}

@media only screen and (max-width: 767px) {
	.tour-dates li span {
		display: block;
		margin: 0;
	}
}


/**
*	Media Page
*/

/**** hero ****/
.media-page #hero {
	background-image: url(images/hero-bg-media.jpg); 
}
.media-page #hero .heading {
	max-width: 550px;
}

/**** media list ****/
#media_list {
	background: #f04e5e;
	color: #fff;
}
#media_list a {
	color: #fff;
}
#media_list .heading-col .heading {
	margin: 0;
	font-size: 30px;
	text-align: right;
}
#media_list .content-header {
	margin-bottom: 50px;
}

#media_list .media-nav,
.media-list {
	list-style: none;
	margin-top: 10px;
	margin-bottom: 10px;
	padding: 0;
}
#media_list .media-nav {
	margin: 60px 0 30px;
}
#media_list .media-nav li {
	display: inline-block;
	margin: 0 6% 0 0;
	font-size: 24px;
	font-weight: 500;
	font-family: Poppins, 'Open Sans', sans-serif;
}
#media_list .media-nav .active a,
#media_list .media-nav a:hover {
	border-bottom: solid 2px;
	text-decoration: none;
}

.media-list .media {
	position: relative;
	margin: 0 0 40px;
}
.media-list .media .inner {
	background: #fff;
	color: #444;
	height: 100%;
}
.media-list img {
    height: auto;
}
.media-list .media .info {
	padding: 16px;
}
.media-list .media .title {
	font-size: 16px;
}
.media-list .media .desc {
	font-size: 14px;
}
.media-list .media .link {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.media-list .media cite {
	display: block;
	font-style: italic;
	color: #aaa;
}

/**** podcast logos ****/
#podcast_logos {
	background: #513175;
	text-align: center;
	color: #fff;
}
#podcast_logos .logo {
	display: inline-block;
	margin: 0 16px;
	font-size: 60px;
	color: #fff;
	vertical-align: middle;
}
#podcast_logos .stitcher img {
	width: 110px;
}
#podcast_logos .gettr img {
	width: 110px;
}

@media only screen and (max-width: 767px) {
	#media_list .content-header,
	#media_list .content-header .heading-col .heading {
		text-align: center;
	}
	#media_list .content-header .heading-col .heading {
		margin-bottom: 20px;
	}
}



/**
*	Podcast Page
*/

/**** hero ****/
.podcast-page #hero {
	background-image: url(images/hero-bg-podcast.jpg); 
}
.podcast-page #hero .heading {
	max-width: 600px;
}

/**** spotify section ****/
#spotify_podcast {
	background: #000;
	color: #fff;
}
#spotify_podcast a {
	color: #fff;
}
#spotify_podcast .logo img {
	width: 180px;
}

/**** youtube section ****/
#youtube_podcast {
	background: #fdc53b;
}
#youtube_podcast .logo {
	line-height: 1;
}
#youtube_podcast .logo img {
	width: 180px;
	vertical-align: top;
}
#youtube_podcast .heading-col {
	font-size: 70px;
	text-align: right;
}
#youtube_podcast .info-col a {
	font-weight: 600;
	color: #000;
}

.youtube-videos {
	margin: 40px 0;
	padding: 20px;
	background: #fff;
}
.youtube-videos .row {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: solid 1px #ddd;
}
.youtube-videos .row:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border: none;
}
.youtube-videos .video {
	position: relative;
}
.youtube-videos .video::before {
	display: block;
	padding: 56% 0 0;
	content: " ";
}
.youtube-videos iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


@media only screen and (max-width: 767px) {
	#spotify_podcast .content-header .image img {
		width: 300px;
	}
	#spotify_podcast .content-header .image-col {
		margin: 0 0 20px;
	}

	#youtube_podcast .heading-col {
		margin: 0 0 20px;
		text-align: center;
	}
}

