/*
 Theme Name:   GP Purity 5 - GeneratePress Child Theme
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      1.0
*/

/* Header */
.site-header {
	box-shadow: 0px 10px 8px rgba(0, 0, 0, 0.03);
}
.inside-header { 
	position:relative; 
	flex-direction: row!important;
	justify-content: space-between;
}
.top_nav { position:absolute; right:0; }
.menu-bar-items { display:none!important; }
.inside-navigation.grid-container { justify-content:center; }
.toggle_button,
.search_button {
    position: absolute;
}
.toggle_button { left:0; }
.search_button { right:0; }

.gb-button .gb-icon svg {
	height: auto!Important;
}
a.search-icon { color:var(--tax-color); }
.very_top .wp-block-social-links.is-style-logos-only .wp-social-link a {
	padding: 0;
	font-size: 14px;
}
.nav-float-right #site-navigation {
	margin-left: 0;
}

/* Social Link */
.wp-block-social-links { margin:0!important; }

/* Breadcrumb */
.rank-math-breadcrumb p { margin-bottom:0; }
.breadcrumb { line-height: 18px; }
.breadcrumb {
	padding: 0!Important;
	display: -webkit-box !important;
	overflow: hidden;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}

/* Main Nav */
.main-navigation { 
    padding: 0; 
    top: 0;
    box-shadow: 0px 10px 8px rgba(0, 0, 0, 0.025);
}
.main-navigation .main-nav > ul {
    display: flex;
    column-gap: 8px;
}
.main-navigation .main-nav ul li:hover a,
.main-navigation .main-nav ul li.current-menu-item a {
    position:relative;
}
.main-navigation ul ul {
    box-shadow: none;
    border-radius: 0;
    border-top: none;
    padding: 5px 0;
}
.main-navigation ul ul li a {
    border-bottom: 1px solid #f1f1f1;
}
.main-navigation ul ul li:last-child a {
    border-bottom: none;
}
.top_toggle {
    position: absolute;
    left: 0;
    margin-top: 10px;
}
ul.slideout-menu ul,
ul.slideout-menu ul li a {
    border: none!important;
}
.main-navigation .inside-navigation {}
.main-navigation, 
.main-navigation ul ul {
	background: none!important;
}
.main-navigation .main-nav ul li:first-child a { margin-left:0;}
.main-navigation ul ul {
	border-radius: 5px;
	background: #fff!important;
	padding: 5px 0px!important;
	border-bottom: 5px solid var(--contrast-2);
	box-shadow: 0px 2px 34px -1px rgba(0,0,0,0.12)!important;
}
.main-navigation ul ul::before {
	content: " ";
	width: 0;
	height: 0;
	display: inline-block;
	border-style: solid;
	border-width: 0 8px 8px 8px;
	border-color: transparent transparent #fff transparent;
	position: absolute;
	top: -7px;
	left: 50px;
}
.main-navigation ul ul.sub-menu li a {
	border-bottom: 1px solid #F1F1F1;
}
.main-navigation ul ul.sub-menu li:last-child a {
	border-bottom: none;
}
.main-navigation {
	box-shadow: none;
}

/* Splide */
.splide__list {
	display:flex!important;
}
.splide__pagination { 
	bottom:25px;
	position: static;
	display: flex;
	gap: 6px;
	margin-top: 15px;
}
.splide__pagination li {
	justify-content: center;
	align-items: center;
	display:flex;
	opacity:1;
	background:none;
	border-radius:50px;
}
.splide__pagination button { 
	margin:0;
	width:8px;
	background:#ccc!Important;
	height:8px;
}
.splide__pagination__page.is-active {
	width:18px;
	margin:0 3px;
	height:6px;
	border-radius:10px;
}
.splide__pagination {
	justify-content:center;
	padding-right:40px;
	padding:0;
}

/* Splide Arrows */
.heropost .splide__arrow {
	background:none;
	width:38px;
	height:38px;
	border:1px solid #fff;
}
.heropost  .splide__arrow svg {
	fill:#fff;
}
.heropost .splide__pagination {
	position:absolute;
}

.imgslider .splide__arrows {
	order: 2;
	display: flex;
	justify-content: flex-end;
	margin-top: 7px;
	margin-bottom: -15px;
	gap: 5px;
	position: absolute;
	top: -70px;
	right: 0;
}
.imgslider .splide__arrow {
	position:static;
	margin-top: 15px;
	background:none;
	width:28px;
	height:28px;
	border:1px solid #ccc;
}
.imgslider  .splide__arrow svg {
	fill: #ccc;
	height: 10px;
	width: 10px;
}
.imgslider img,
.imgheroslider img {
	border-radius:5px;
}

/* Content Area */
.featured-image.grid-container {
	max-width:100%;
}
.featured-image.grid-container img {
	height:250px;
	width: 100%;
	object-fit:cover;
}

.one-container .site-content {
	padding-top:45px;
}
.single.one-container .site-content {
	padding-top:25px;
}
.site-content .content-area {
	padding-right:45px;
}
body.full-width-content .site-content .content-area {
	padding-right:0;
}
.list_stepp {
	border-left:1px dashed var(--accent);
	position:relative;
	margin-left: 5px!important;
}
.list_stepp li {
	list-style:none;
	position:relative;
	padding-left: 20px;
	margin-bottom:10px;
}
.list_stepp li:before {
	content: " ";
	position: absolute;
	width: 23px;
	height: 23px;
	border-radius: 20px;
	left: -12px;
	background: var(--accent);
	border: 6px solid #fff;
	top: 1px;
}
.list_std {
	margin:0!important;
	padding:0;
}
.list_std li {
	list-style:none;
	display:block;
	font-size:14px;
	padding:5px 0;
	border-bottom:1px solid #f1f1f1;
}
.list_std li:last-child {
	margin-bottom:0;
}
body.page ol.wp-block-list,
body.page ul.wp-block-list {
	margin-left:1.5em;
}
ul.wp-block-list.info,
ul.wp-block-list.check,
ul.wp-block-list.line {
	margin-left:0!important;
}
ul.wp-block-list.info li,
ul.wp-block-list.check li,
ul.wp-block-list.line li {
	background-repeat:no-repeat;
	background-position:left 7px;
	background-size: 16px;
	padding-left:23px;
	list-style:none;
	padding-top:3px;
	padding-bottom:3px;
}
ul.wp-block-list.line li { background-image:url(img/arrow.svg);}
ul.wp-block-list.check li { background-image:url(img/check.svg);}
ul.wp-block-list.info li { background-image:url(img/info.svg);}

/* Gallery */
.wp-block-gallery.video figure a {
	position:relative;
	background:#000;
}
.wp-block-gallery.video figure a img {
	opacity:0.75;
}
.wp-block-gallery.video figure a:after {
	content:" ";
	background-image:url(img/play-icon.svg);
	background-repeat:no-repeat;
	background-position:center center;
	background-size: 100px auto;
	position:absolute;
	height:100%;
	width:100%;
	left:0;
	top:0;
}

/* Title Header */
.page-header {
    margin-bottom: 30px;
}
.entry-header,
h1.widget-title,
h1.page-title,
h2.widget-title { 
    position:relative; 
	padding-bottom:15px;
	margin-bottom:35px;
	border-bottom:1px solid #f1f1f1;
}
.entry-header:after,
h1.widget-title:after,
h1.page-title:after,
h2.widget-title:after {
	content: " ";
	position: absolute;
	bottom: -1px;
	width: 100px;
	left:0;
	height: 1px;
	background-color: var(--accent);
}
.search h1.page-title {
    border-bottom: 1px solid #f1f1f1;
    display: block;
    padding-bottom: 15px;
}
.search h1.page-title:after {
    display: none;
}


/* Archive */
.post-categories {
    display: flex;
    gap: 5px;
    padding: 0;
    margin-left: 0;
    flex-wrap: wrap;
    margin-bottom: 5px;
}
.post-categories span,
.post-categories span a {
    padding: 0 10px;
    font-size: 12px;
    line-height: 20px;
    border-radius: 50px;
    background: var(--tax-bg);
    color: var(--tax-color);
    display: inline-block;
    transition: all .3s ease-in-out;
}
.term_list {
    display: flex;
    gap: 8px;
}
.term_list a {
    padding-bottom: 3px;
    border-bottom: 1.5px solid var(--contrast-2);
}
.post-abs {
    position: absolute;
    top: 20px;
    left: 20px;
}
.grid20 {
	margin-right:-20px;
}

.rounded img {
	border-radius:6px;
}

/* masonry-load-more */
.masonry-load-more {
	display: flex;
	justify-content: center;
}
.masonry-load-more a {
	border-radius: 8px;
}

.more-link {
	position: absolute;
	top: 0;
	right: 0;
}

/* Limite Title */
.limit {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}
.limit_three {
     -webkit-line-clamp: 3;
}
.limit_two {
    -webkit-line-clamp: 2;
}

/* Stories Slider */
.stories_slider .owl-stage-outer {
    overflow: visible;
}
img.slide {
    width: inherit!important;
}
    .stories_slider .owl-dots { margin-top:0; }


/* Page Pagination */
.nav-links,
.page-links {
	display: flex;
    justify-content: center;
    gap: 10px;
}
.page-links {
	align-items:center;
	text-align:center;
	margin: 35px 0 0;
}
.paging-navigation {
    margin: 35px 0 0;
    border-top: 1px solid #f1f1f1;
    background: none!important;
    text-align: center;
    padding: 13px 0!important;
}
.page-links span,
.page-links a,
.paging-navigation span,
.paging-navigation a {
    border: 1px solid #f1f1f1;
    color: #333333!important;
    border-radius: 50px;
	padding:0!important;
	width:42px;
	height:42px;
	font-size: 16px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
}
.paging-navigation span.current,
.page-links span.current {
    background: #fff;
    color: var(--color-options)!important;
    background: #fff;
    border: 1px solid var(--color-options);
    font-weight: normal!important;
}

.container.grid-container {
    width: auto;
    padding-left: 0;
    padding-right: 0;
}
a.prev,
a.next,
a.prev span,
a.next span {
    display: none;
}

/* Search Modal */
.search-modal-form {
    background: transparent!important;
}
.gp-modal__container input.search-field {
    margin: 0!important;
    border: none !important;
}
.search-modal-fields {
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}

/* Sidebar */
.inside-right-sidebar {
	height: 100%;
}
.is-right-sidebar {
	position: sticky;
	top: 30px;
	align-self: flex-start;
}

/* Author */
.author .page-header {
    padding: 20px;
    font-size: 15px;
    line-height: 22px;
    border-radius: 8px;
    background: #fff;
    border: 1px solid var(--tax-bg);
}
.author .page-header .page-title:after {
    display: none;
}
.author .page-header .avatar {
    margin-right: 20px;
    border-radius: 50px;
}

/* Popular Post */
.nq_number { display:none; }
.popular_item a {
    color: var(--contrast);
    font-weight: 500;
    padding-bottom: 12px!important;
    margin-bottom: 12px!important;
    display: block;
    border-bottom:1px solid var(--tax-bg);
}
.popular_item a:hover {
    color: var(--contrast-2);
}
.popular_item:last-child a {
    border-bottom: none;
}

/* Single Post Content */
.dynamic-entry-content ul,
.dynamic-entry-content ol {
    margin: 0 0 1.5em 2em;
}
.dynamic-entry-content ul li {}
.also-read {
    background: #f1f1f1;
    padding: 15px;
    border-left: 5px solid var(--accent);
    padding-left: 20px;
    margin: 20px 0;
}
.also-read h2 { margin-bottom:8px; }
.also-read p { margin:0 0 10px; font-size:14px;  line-height:18px; }

.sidebar .widget {
	background-color: #fff;
}

/* Blockquote */
.wp-block-pullquote {
    padding: 0;
}
blockquote {
    border-left: 5px solid #f1f1f1;
    padding: 20px;
    font-size: 18px;
    font-style: italic;
    margin: 0 0 1.5em;
    position: relative;
    text-align: left;
    line-height: 28px;
}
blockquote p {
    margin-bottom: 15px;
}
.wp-block-pullquote cite {
    font-size: 14px;
    font-weight: bold;
}
.dynamic-entry-content .wp-block-image {
	margin-bottom:25px;
}

/* Pre */
pre {
    background: #eee;
    font-family: "Courier 10 Pitch", Courier, monospace;
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 1.6;
    margin-bottom: 1.6em;
    max-width: 100%;
    overflow: auto;
    padding: 1.6em;
}

/* table */
.wp-block-table { margin-bottom:25px; }
.wp-block-table table { margin-bottom:0; }
.wp-block-table .wp-element-caption {
    font-size: 13px;
    margin-top: 5px;
}

/* Featured Image Caption */
.gb-block-image figcaption,
.wp-block-image figcaption {
    font-size: 13px;
    text-align: center;
    margin: 10px 0 0;
    line-height: 19px;
}

/* Tag List */
.taxonomy-post_tag {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
}
.taxonomy-post_tag a {
    color: #fff;
    position: relative;
    background: var(--accent);
    padding: 2px 13px;
    font-size: 14px;
    line-height: 20px;
    border-radius: 50px;
    display: inline-block;
    transition: all .3s ease-in-out;
}
.taxonomy-post_tag a:hover {
    background: var(--contrast-2);
}
.taxonomy-post_tag a:before {
    content: "#";
}
.wp-block-post-terms__separator {
    display: none;
}

/* 404 */
body.error404 .inside-article,
body.search-no-results .inside-article {
    margin: 10px auto 40px;
}

/* Limit */
.limit-title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* TOC */
#ez-toc-container {
    background: #f9f9f9;
    border: 1px solid var(--accent);
    border-radius: 5px;
    box-shadow: none;
    padding: 25px;
    margin-bottom: 25px;
}
div#ez-toc-container p.ez-toc-title {
    font-weight: bold;
}
#ez-toc-container ul {
    margin-top: 10px;
    padding-left: 18px;
}
div#ez-toc-container ul li {
    font-size: 100%;
    list-style: circle;
    overflow: visible;
    padding: 2px 0;
}
#ez-toc-container a {
    color: var(--contrast)!Important;
    box-shadow: none;
    text-decoration: none;
    text-shadow: none;
    display: inline-flex;
    align-items: stretch;
    flex-wrap: nowrap;
    font-weight: bold!important;
}
#ez-toc-container ul.ez-toc-list-level-3 {
    margin-top: 5px;
}
#ez-toc-container ul.ez-toc-list-level-3 {
    margin-left: 0;
}
#ez-toc-container ul.ez-toc-list-level-3 li a {
    font-weight: normal!important;
}
#ez-toc-container label.cssicon {
    border: none;
    margin-top: -5px;
}

/* Timeline */
ul.steps {
	margin: 0 0 0 -10px!Important;
	counter-reset: li;
}
ul.steps li {
	position:relative;
	display: block;
	list-style: none;
	border-left: 1px dashed var(--accent);
	margin-left:31px;
	padding-left: 39px;
	padding-bottom: 26px;
}
ul.steps li:before {
	content: counter(li);
	counter-increment: li;
	position: absolute;
	top: -7px;
	left: -31px;
	box-sizing: border-box;
	margin-right: 8px;
	display: block;
	font-size: 18px;
	font-weight: 700;
	padding: 7px;
	width: 60px;
	border:10px solid #f3f7fc;
	height: 60px;
	text-align: center;
	font-weight: 500;
	background: var(--accent);
	color: #fff;
	border-radius: 999em;
	display: flex;
	align-items: center;
	justify-content: center;
}
ul.steps li:last-child {
	border-left:0;
}
ul.steps li strong {
	font-size:18px;
	color:var(--contrast);
}
ul.steps_white li {
	border-left: 1px solid #fff;
	color:#fff;
}
ul.steps_white li:before {
	border: 9px solid var(--accent);
	background:var(--base-2);
	color:#000;
}
ul.steps li a {
	font-weight:bold;
	text-decoration:underline;
}
.gb-container ul { margin-left:1em;}


/* Tag List */
.taglist {
	display:flex;
	gap:10px;
}
.taglist span a {
	border-bottom:1px solid var(--tax-bg);
	padding-bottom:2px;
}


.wpforms-container .wpforms-field {
	padding: 0;
	position: relative;
}
.wpforms-container .wpforms-field input,
.wpforms-container .wpforms-field textarea {
	border:2px solid #ccc!Important;
}
button.wpforms-submit {
	width:100%;
	font-weight:bold!Important;
	background:var(--accent)!Important;
}
.sticky {
	position: sticky;
	top: 20px;
	align-self: flex-start;
}
.custom_list ul li .eb-feature-list-content-box {
	position:relative;
}
.custom_list ul li .eb-feature-list-content-box::before {
	width: 2px;
	height: 100%;
	position: absolute;
	content: " ";
	border-left: 1px dashed var(--accent);
	left: -40px;
	top: 25px;
}
.custom_list ul li:last-child .eb-feature-list-content-box::before {
	display:none;
}
.eb-progressbar-line {
	border-radius:50px!Important;
	overflow:hidden;
}
.coret {
	text-decoration:line-through;
}
.eb-accordion-title-wrapper {
	gap:25px!Important;
}

/* Not Found Page */
.error404 .search-form input[type="search"],
.search .search-form input[type="search"],
.wp-block-search__inside-wrapper input[type="search"] {
	margin-bottom:0;
	border:none;
	font-size:14px;
}
.wp-block-search__inside-wrapper,
.search .search-form,
.error404 .search-form {
	border: 1px solid #f1f1f1;
	border-radius: 5px;
}
.wp-block-search__button,
.search button.search-submit,
.error404 button.search-submit {
	border-radius: 5px;
	border-radius:0!important;
	background:none!important;
	border-left:1px solid #f1f1f1!important;
}

.error404 .search-form input[type="search"],
.search .search-form input[type="search"] {
	height:45px;
}
.error404 .search-form,
.search .search-form {
	position:relative;
	max-width:500px;
}
.error404 button.search-submit,
.search button.search-submit {
	position:absolute;
	right:0;
	top:0;
}

.addtoany_list a:first-child { padding-left:0;}
.site-footer .gb-grid-wrapper {
	position:relative;
	z-index:99;
}
.eb-icon-wrapper {
	margin-bottom:10px;
}

/* Post Comments */
h2.wp-block-comments-title {
	font-size:22px;
	border-top:1px solid #f1f1f1;
	padding-top:20px;
}
.wp-block-comments ol { margin-left:0;}
.wp-block-comment-author-name {
	font-size: 16px !important;
	font-weight: bold;
}
.wp-block-comment-date {
	line-height:1.4em;
}
.wp-block-comment-content {
	margin-top:10px;
	font-size:14.5px;
}
.wp-block-comment-reply-link a {
	border:1px solid #ccc;
	padding:3px 10px;
	border-radius:5px;
}
.wp-block-post-comments-form h3 {
	font-size:18px;
	margin-bottom:15px!Important;
}
.wp-block-post-comments-form input,
.wp-block-post-comments-form textarea {
	border:1px solid #ccc!Important;
	border-radius:5px!Important;
}
.wp-block-post-comments-form .form-submit input[type="submit"] {
	border:none!important;
	font-weight:bold;
	color:#fff;
}

    @media only screen and (max-width: 1200px) {
		.gb_wrapper,
		.inside-header,
		.site-content,
		.main-navigation.toggled .inside-navigation {
			padding-left:70px!important;
			padding-right:70px!important;
		}
		.site-content { padding: 20px;}
		.home .site-content,
		.full-width-content .site-content {
			padding:0!important;
		}
		
		#site-navigation {
			display: inherit;
		}
		.site-header {
			top: 0;
			z-index: 99;
		}
        .top_toggle { left:20px; }
        #footer {
            padding-right: 20px;
            padding-left: 20px; 
        }
		.mobile-menu-control-wrapper .menu-toggle {
			font-size:22px;
			padding-left:0!important;
			background:none!Important;
		}
		#site-navigation {
			background: #f8f8f8!important;
			position: absolute;
			width: 100%;
			left: 0;
			top: 70px;
			margin: 0!important;
		}
		.main-navigation.toggled .inside-navigation {
			width: 100%;
			padding-top:25px;
			padding-bottom:25px;
		}
		.main-navigation.toggled .main-nav ul ul { 
			box-shadow:none!important;
			background:none!important;
			border-radius: 0;
			padding: 0px 20px 10px 0!important;
		}
		.main-navigation.toggled .main-nav ul ul:before {
			display: none;
		}
		.main-navigation .main-nav ul li a {
			padding-left:0!important;
			padding-right:0!important;
		}
		.main-navigation .main-nav ul ul li a {
			position: relative;
			padding: 10px 0 10px 20px !important;
		}
		.main-navigation .main-nav ul ul li a:before {
			border-style: solid;
			border-width: 1px 1px 0 0;
			content: '';
			display: inline-block;
			height: 6px;
			width: 6px;
			left: 0;
			position: absolute;
			top: 15px;
			transform: rotate(-45deg);
			vertical-align: top;
			transform: rotate(45deg);
		}
		.site-logo {
			position: absolute;
			text-align: center;
			width: 100%;
			left: 0;
		}
		.main-navigation { margin-left: 0;}
		.is-right-sidebar {
			position: static;
		}
		
		.wp-block-gallery.video figure a:after {
			background-size: 50px auto;
		}

    @media only screen and (max-width: 768px) {
        .main-nav { overflow-y: hidden!important;}
		
        .gb-button.slideout-toggle span.gb-button-text { display:none; }
        .toggle_button, .search_button { top:33px; }
        .toggle_button { left:20px; }
        .search_button { right:20px; }

        .main-navigation .main-nav ul#menu-off-canvas-nav li:first-child a,
        .main-navigation .main-nav ul.slideout-menu li:first-child a  { margin-left:0 }
        .main-navigation .main-nav ul.slideout-menu li:last-child a { margin-right:0; }
        .main-navigation .main-nav ul#menu-off-canvas-nav li a { padding-left:20px; padding-right:20px; }

        .inside-right-sidebar { position:static; padding: 0; border: none;}
        .featured-column { margin-bottom:25px; }
        .site-content .content-area { padding-right:0; }
        .is-right-sidebar { margin-top:40px; }

        .grid {
            grid-template-columns: 100px 1fr;
            grid-gap: 20px;
        }
        .featured-column .grid { margin-bottom:0; }

        .comments-area {
            border: none;
            padding: 20px 0!important;
        }

        .owl-nav button { top:30%; }
        .owl-nav button.owl-prev { left: -16px;}
        .owl-nav button.owl-next { right: -16px;}

        .gp-search-modal .gp-modal__overlay {
            padding-left: 30px!important;
            padding-right: 30px!important;
            background: rgba(0, 0, 0, 0.65)!important;
        }
		.sticky {
			position:static;
		}
    }
    @media only screen and (max-width: 767px) {
		.gb_wrapper,
		.inside-header,
		.site-content,
		.main-navigation.toggled .inside-navigation {
			padding-left:20px!important;
			padding-right:20px!important;
		}
		.limit_mob {
			overflow: hidden;
			display: -webkit-box;
			 -webkit-line-clamp: 3;
			-webkit-box-orient: vertical;
		}
		.featured-image.grid-container img {
			height:200px;
			object-fit:cover;
		}

    }