/*
	Theme Name: CheckPoint Blog V3.1
	Theme URI: https://blog.checkpoint.com
	Description: CheckPoint Blog WordPress Theme
	Version: 3.1
	Author: Brendan Ferriter (@blferriter)
	Author URI: https://brendanferriter.com
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
@font-face {
	font-family: "din";
	src: local("din"), url("fonts/din.woff") format("woff");
}                            
@font-face {
	font-family: "din-light";
	src: local("din-light"), url("fonts/din-light.woff") format("woff");
}
.fa {
	font-family: "fontawesome";
}
body {
	/* font:300 16px/1.4 'Helvetica Neue', Helvetica, Arial, sans-serif; */
	color:#444;
	font-family: 'din', Helvetica, Arial, Sans-serif;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
body a {
	color:#444;
	text-decoration:none;
}
body a:hover { 
	color:#e45684;
	text-decoration: none;
}
body a:focus {
	outline:0;
}
body a:hover,
body a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* container */
.container {
	clear: both;
}
/* header */
.cp-container {
	width: 100%;
	overflow: hidden;
}
#top .container {
	position: relative;
}
#top {
	width: 100%;
	height: 300px;
	background-color: #e5e5e5;
	background-image: url('img/blog-bg.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	display: block;
	position: relative;
	/**
	display: flex;
    justify-content: center;
    flex-flow: column;
    align-items: center;
	**/
}
#top .col-md-12 {
	height: 300px;
	width: 100%;
}
#top .overlay {
	width: 100%;
	height: 300px;
	background-color: #fff;
	opacity: 0.;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
#top nav#breadcrumbs {
	height: 50px;
	line-height: 50px;
	margin-bottom: -50px;
	position: absolute;
	z-index: 20;
	top: 20px;
	left: 15px;
}
#top nav#breadcrumbs ul {
	margin: 0;
	padding: 0;
}
#top nav#breadcrumbs li {
	float: left;
	list-style: none;
	font-size: 12px;
	color: #666;
	margin: 0px 12px 0px 0px;
	padding: 0;
}
#top nav#breadcrumbs li.disabled a {
	color: #999;
}
#top h1 {
	width: 100%;
	text-align: center;
	margin: 0;
	padding: 0;
	z-index: 10;
	color: #333 !important;
	position: relative;
	line-height: 1.4em !important;
}
#share-rss {
	position: absolute;
	right: 0;
	top: 90px;
	height: 109px;
	width: 54px;
	z-index: 2;
	margin: 0;
	padding: 0;
}
#share-rss li {
	width: 54px;
	height: 54px;
	float: left;
	clear: both;
	display: block;
	text-indent: -9999px;
	background-position: center;
	background-repeat: no-repeat;;
}
#share-rss li:first-child {
	background-color: #e45684;
	background-image: url('img/rss.png');
}
#share-rss li:last-child {
	background-color: #111;
	background-image: url('img/share.png');
}


nav#post-type {
	float: left;
	margin: 33px 0px;
	padding: 0px 0px 0px 0px;
}
nav#post-type ul { 
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}
nav#post-type li {
	float: left;
	font-family: 'DIN-light';
	font-weight: bold;
	list-style: none;
	color: #333;
	margin: 0;
	padding: 0;
}
nav#post-type li a {
	font-size: 20px;
	line-height: 20px;
}
nav#post-type li.current a {
	padding-bottom: 5px;
	border-bottom: 4px solid #e45684;
}
nav#post-type li:first-child {
	margin-right: 33px;
}
nav#post-type li:nth-child(2) {
	margin-right: 33px;
}
nav#post-type li:last-child {
	padding-left: 33px;
	border-left: 1px solid #333;
}




/* Post */
div.post hr {
	margin-top: 45px;
	margin-bottom: 45px;
	width: 100%;
	background-color: #e5e5e5;
	float: left;
	display: block;
	clear: both;
	margin-left: 15px;
	margin-right: 15px;
}
a.read-more {
	clear: both;
	color: #e45684;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 16px;
	line-height: 27px;
	padding-left: 30px;
	margin: 0;
	position: relative;
	display: block;
}
a.read-more:before {
	content: "+";
	float: left;
	font-size: 24px;
	line-height: 24px;
	margin-left: -30px;
}
div.meta-post h2 {
	font-size: 27px;
	line-height: 38px;
	font-weight: bold;
	font-family: 'din-light';
	margin-top: 0px;
	padding-top: 0px;
}
div.meta-image {
	margin-top: 5px;
	overflow: hidden;
}
div.meta-image a {
	width: 100%;
	overflow: hidden;
	display: block;
	opacity: 0.85;
}
.row.archives .post .row a:hover > .row.archives .post .row div.meta-image a {
	opacity: 1;
} 
div.meta-image a img {
	height: 262px;
	width: auto;
	max-width: inherit;
	margin: 0 auto;
	display: block;
}
div.meta-post p,
#content p
{
	font-size: 16px;
	line-height: 26px;
}
body #content a {
	color: #e45684;
}
body.single #content p {
	font-size: 18px;
	line-height: 29px;
}
body.single #content ul {
	margin: 20px 0px 20px 30px;
	padding: 0;
}
body.single #content ul li {
	font-size: 18px;
	line-height: 29px;
	margin: 0px 0px 15px 0px;
	padding: 0px 0px 0px 0px;
}
body.single #content p:empty {
	display: none;
}
div.meta {
	/** position: absolute;
	bottom: 0;
	left: 15px; **/
	float: left;
	margin: 33px 0px 0px 0px;
	padding: 0;
	clear: both;
	display: block;
}
div.meta span {
	float: left;
	font-size: 12px;
	color: #333;
	margin: 0px 12px 0px 0px;
	padding: 0px 0px 0px 0px;
}
div.meta span.meta-cat {
	font-weight: bold;
}
div.meta span.meta-cat ul {
	margin: 0;
	padding: 0;
}
div.meta span.meta-cat ul li {
	margin: 0;
	float: left;
	padding: 0;
	list-style: none;
}

/* Sidebar */
#sidebar img {
	margin-bottom: 33px;
}

/* Footer */
#follow-container {
	float: right;
	width: auto;
}
#cp-fb,
#cp-twitter,
#cp-linkedin,
#cp-yt {
	background-image:url('img/social.png');
	background-repeat: no-repeat;
	display: block;
	width: 30px;
	height: 30px;
	float: left;
}
#cp-fb {
	background-position: 0px 0px;
}
#cp-twitter {
	background-position: -56px 0px;
}
#cp-linkedin {
	background-position: -112px 0px;
}
#cp-yt {
		background-position: -171px 0px;
}
/*------------------------------------*\
    PAGES
\*------------------------------------*/
div#main {
	padding-top: 50px;
	padding-bottom: 50px;
}

/** Pagination **/
nav#pagination {
	margin: 0 auto;
	display: block;
	width: 315px;
	font-size: 18px;
	margin-bottom: 45px;
}
.page-item .page-link {
    color: #333;
}
.page-item.disabled .page-link {
    color: #6c757d;
}
.page-item .page-link:hover {
    color: #e45684;
}
.pagination {
	padding-bottom: 45px;
}
.pagination span.current,
.pagination a.page-numbers
{
	text-align: center;
	font-size: 14px;
	margin-right: 5px;
	border-radius: 5px;
	padding: 10px 16px;
}
.pagination span.current { 
	background-color: #e45684;
	color: #fff;
}
.pagination a.page-numbers {
	background-color: #fff;
	border: 1px solid #f0f0f0;
	color: #222;
}
.pagination .dots {
	font-weight: bold;
	margin: 0px 25px;
}
.pagination a.next,
.pagination a.prev
{
	background-color: #fff;
	border: none;
	color: #222;
	width: auto;
	margin-left: 10px;
}
.pagination a.prev {
	margin-left: 0;
	margin-right: 10px;
}
/** End Pagination **/
/** Filter **/
.btn-group.filter {
	float: right;
}
.btn-group.filter .btn-secondary {
	border-radius: 0;
	background-color: transparent;
	border: 1px solid #e5e5e5;
	color: #444;
}
.btn-group.filter .dropdown-menu {
	border-radius: 0;
}
.btn-group.filter.show {
	border: none;
	outline: none;
}
.btn-group.filter.show .btn-secondary {
    color: #fff;
    background-color: #e85a8c;
    border-color: #e85a8c;
    outline: none;
}
/** End Filter **/
/** Related **/
#related {
	width: 100%;
	float: left;
	height: auto;
	padding: 50px 0px;
	margin: 0;
}
body.single .carousel-cell {
  width: 28%;
  height: 180px;
  margin-right: 10px;
  /** background: #e5e5e5; **/
}
body.single #related .carousel {
	width: 100%;
	float: left;
	display: block;
}
body.single .carousel-cell img {
	clear: both;
	margin-bottom: 5px;
	width: 100%;
	max-width: 75px;
	overflow: hidden;
	margin: 0 auto;
	display: block;
}
body.single .carousel-cell h3 {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
body.single .carousel {
	padding-left: 60px;
	padding-right: 60px;
	padding-top: 33px;
}
/** End Related **/
/** Caption **/
.wp-caption-text {
	font-size: 15px !important;
	line-height: 24px !important;
	margin-top: 18px !important;
}
.wp-caption {
	padding: 33px;
	width: 100% !important;
	background-image: url('//blog.checkpoint.com/wp-content/uploads/2018/06/caption.png');
	background-size: cover;
	background-position: bottom right;
}

/** End Caption **/
/*------------------------------------*\
    HEADER
\*------------------------------------*/



/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

@font-face {
	font-family:'Font-Name';
	src:url('fonts/font-name.eot');
	src:url('fonts/font-name.eot?#iefix') format('embedded-opentype'),
		url('fonts/font-name.woff') format('woff'),
		url('fonts/font-name.ttf') format('truetype'),
		url('fonts/font-name.svg#font-name') format('svg');
    font-weight:normal;
    font-style:normal;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (min-width:320px) {

}
@media only screen and (max-width:480px) {

}
@media only screen and (max-width:768px) {
	.flickity-viewport {
	    min-height: auto !important;
	}
	body.single .carousel-cell {
		width: 100%;
	}
}
@media only screen and (max-width:1024px) {
	nav#post-type li.current a {
		border: none;
	}
	#top nav#breadcrumbs {
		display: none;
	}
	#top,
	#top .col-md-12
	{
		height: auto;
	}
	#top h1 {
		font-size: 24px;
		line-height: 30px;
		padding: 50px 0px;
		margin-top: 0 !important;
	}
	#sidebar {
		clear: both;
		display: block;
	}
	nav#post-type {
		width: 100%;
	}
	nav#post-type ul {
		margin: 0 auto;
		display: block;
		max-width: 200px;
	}
	nav#post-type li {
		margin: 0 0 1rem 0 !important;
		text-align: center;
		width: 100%;
		float: left;
		clear: both;
		border-left: none !important;
		padding: 0px 0px 0px 0px !important;
	}
	nav#post-type li.current {
		padding-bottom: 5px !important;
	}
	div.post div.col-sm-4 img {
		margin-bottom: 0.5rem;
	}
	div.post h2 {
		font-size: 21px;
		line-height: 28px;
	}
	div.post hr {
		margin-top: 20px;
		margin-bottom: 20px;
	}
	div#sidebar img {
		display: block;
		margin: 0 auto;
		margin-bottom: 33px;
	}
	nav#pagination {
		margin-bottom: 20px;
	}
	#share-rss {
		display: none;
	}
	.flickity-viewport {
		min-height: 250px;
	}
}
@media only screen and (max-width:1140px) {
	div.post div.meta {
		position: relative;
		bottom: auto;
		left: auto;
		float: left;
		margin-top: 0.5rem;
		clear: both;
	}
	div.post p {
		margin-bottom: 0.5rem;
	}
}
@media only screen and (min-width:1280px) {

}
@media only screen and (-webkit-min-device-pixel-ratio:1.5),
	   only screen and (min-resolution:144dpi) {

}
@media (min-width: 565px) and (max-width: 768px) {

}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

#particles-js {
	width: 100%;
 	height: 100%;
	background-color: transparent;
	position: absolute;
	top: 0;
	z-index: 3;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:12px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}