/**
 * Theme Name: TechFinitive Child
 * Description: A child theme for the development of the Techfinitive website
 * Author: Prystine Web Solutions
 * Template: blocksy
 * Text Domain: prystine
 */


:root {
	--blue-color: #0066ff;
	--teal-color: #009898;
	--pink-color: #d124be;
	--grey-color: #999999;
	--dark-grey-color: #444444;
	--light-grey-color: #E2E2E2;
	--dark-grey: #333333;
  --background-color: #eee;
  --line-height: 1.2;
} 


/*
 * Infinite Article


.infinite-article-header {
	margin: 40px 0 20px 0;
}

.infinite-article-container .entry-meta[data-type*=none] li.meta-author {
	margin-inline-end: 1px;
}

.infinite-article-header h2 {
	font-size: 38px;
	margin: -10px 0 20px !important;
}

.infinite-article-container {
	padding: 0 0 60px 0 !important;
}

.single .entry-meta li.meta-categories {
	float: right;
	position: relative;
	color: white;
	right: 0;
	padding: 0;
	margin: 15px 0 0 0;
	font-size: 0;
}

.single .entry-meta li.meta-categories a {
	font-size: 12px;
	color: white ;
}


.single .entry-meta li.meta-categories a {
	margin: 0 0px 0 10px;
	background: var(--pink-color);
	padding: 4px 10px;
}

@media screen and (max-width: 1000px) {
	
	.single .entry-meta li.meta-categories {
		float: none;
	}
	.single .entry-meta li.meta-categories a {
		margin: 6px 10px 0px 0px;
	}
}

#ajax-posts .entry-card {
	flex-direction: column
}

#ajax-posts {
	margin-top: -40px;
}

#ajax-posts .entry-card a {
	max-width: 100% !important;
	width: 100% !important;
}

#ajax-posts.trending-articles, #ajax-posts.trending-articles .article-wrapper {
	border: none;
}

#ajax-posts.trending-articles .article-wrapper {
	padding: 11px 10px 1px 10px;
}

.trending-articles > div:nth-child(even) a, .trending-articles > div:nth-child(even) time {
	color: white !important;
}

/*
 * END Infinite Article
 */


/*
 * HP Latest Interview & Opinion Sections
 * */
.featured-content-background {
	background-image: url('/wp-content/uploads/2025/07/Techfinitive-Home-Features-Background.gif');
	background-position: right center;
	background-size: cover;
	background-color: #000;
	padding: 40px;
}

.opinion-interview-section {
	margin: 20px 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
}

@media only screen and (max-width: 1000px) { 
	.opinion-interview-section {
		grid-template-columns: 1fr;
	}
	
	.featured-content-background {
		padding: 20px;
	}
	
}

.opinion-interview-section img {
	object-fit: cover;
	object-position: center center;
	min-height: 200px;
	height: 100%;
	width: 100%;
}

.opinion-interview-section h2 {
	font-size: 28px;
	color: grey;
	font-weight: 300;
}

.opinion-interview-section h3 {
	padding-top: 15px;
	line-height: 1.3em !important;
}

.opinion-interview-section h3 a {
	font-size: 28px;
	color: var(--theme-palette-color-1);
}

.opinions-excerpt p {
	color: white;
	font-size: 21px;
	font-family: "Roboto Condensed", sans-serif;
	font-weight: 800 !important;
	line-height: 1.2em;
}

.opinions-author {
	color: grey;
	font-size: 15px;
	margin: 0;
}


/*
 * Category Post Type Showing
 * */

.category-post-type a:hover {
	color: var(--theme-link-hover-color);
}

.category-post-type a {
	text-transform: capitalize;
	color: var(--theme-palette-color-4);
}

.post-type-for-cats {
	top: 0;
	text-transform: capitalize;
	font-weight: 700;
	font-size: 13px;
	color: var(--theme-palette-color-4) !important;
}

/*
 * Meet the team
 * */

.article-loop li {
	margin: 0;
}

.team-member {
	border-bottom: 1px solid var(--blue-color) !important;
	padding-bottom: 20px;
}

.team-member img {
	max-width: 60px;
}

.meet-team-member-title h3 {
	overflow: hidden;
	position: relative;
}

.meet-team-member-title h3:before {
    margin-left: -53%;
    text-align: right;
}

.meet-team-member-title h3:after {
    margin-left: 3%;
    text-align: right;
}

.meet-team-member-title h3:after {
    position: absolute;
    top: 51%;
    overflow: hidden;
    width: 50%;
    height: 1px;
    content: '\a0';
    background-color: var(--blue-color);
}

.resources .entry-date {
	display: none;
}

.archive.category article, .archive.author article, .archive.tag article, #ajax-posts article, .search article {
	padding: 20px 0 !important;
}

.archive:not(.post-type-archive-resources) article .ct-image-container img, #ajax-posts article .ct-image-container img, .search article .ct-image-container img {
	aspect-ratio: auto !important;
	height: auto !important;
	max-height: auto !important;
	width: 100% !important;
	overflow: none;
}

.archive article a.ct-image-container, #ajax-posts article a.ct-image-container, .search article .ct-image-container img {
	align-self: center !important;
}

body.author .entry-card .ct-media-container img {
 	height:auto;
}

/*
 * Single Article Upgrades
 * */

.single .ct-featured-image {
	padding-bottom: 30px !important;
}

.bold {
	font-weight: bold;
}

.wp-block-quote {
	border-radius: 0 !important;
	background: url('/wp-content/uploads/2023/06/TechFinitive-DottyBack-Quote-Author-jpg.webp') !important;	
	background-color: #111;
	background-position: center center;
	background-size: cover !important;
	border-left: 2px solid var(--blue-color) !important;
	position: relative;
	margin: 25px 20px 35px 20px !important;
	color: var(--blue-color);
}

.wp-block-quote:before {
	content: ' ';
	background: url('/wp-content/uploads/2023/04/TechFinitive-Icon-Logo-Blue-round.jpg'); 
	background-size: cover;
	position: absolute;
	top: -15px;
	left: -15px;
	height: 30px;
	border-radius: 100%;
	width: 30px;
}

.wp-block-quote:after {
	content: ' ';
	background: url('/wp-content/uploads/2023/06/TechFinitive-Icon-QuoteB.png'); 
	background-size: cover;
	position: absolute;
	bottom: -15px;
	right: -15px;
	height: 30px;
	width: 30px;
	transform: rotate(180deg);
}

.author-box {
	border-left: 2px solid var(--blue-color) !important;
	margin: -15px 0 0 20px  !important;
	border-right: 30px solid var(--theme-palette-color-9) !important;
	box-shadow: none !important;;
	width: 100% !important;
	left: 10px;
	position: relative;
}

.author-box .ct-media-container {
	position: absolute;
	left: -30px;
	border: 2px solid var(--blue-color) 
}

.author-box .author-box-bio, .author-box .author-box-bio a, .author-box h5 {
	color: var(--blue-color) !important; 
}

.author-box .author-box-bio a {
	text-decoration: underline;
}

.author-box .author-box-bio, .author-box .author-box-name {
	padding-left: 25px;
}

.author-box  {
	background: url('/wp-content/uploads/2023/06/TechFinitive-DottyBack-Quote-Author-jpg.webp') !important;	
	background-position: center center;
	background-size: cover !important;
}

/*
 * Homepage Featured
 * */

.hp-content {
	width: 100% !important;
	max-width: 100% !important;
	margin-top: -30px;
	padding-top: 40px;
	padding-bottom: 40px;
	background: #f9f9f9;
}

.hp-content .content-wrapper {
	background: none;
}


.hp-content .cpt-section {
	padding-top: 30px;
}

.hp-content .cpt-section .content-wrapper, .hp-content .cpt-section .article-wrapper {
	background: #fff;
}

.grid-container {
	display: grid;
	grid-template-columns: 3fr 1fr;
	column-gap: 20px;
	row-gap: 20px;
}

.trending-articles {
	border-top: 1px solid var(--blue-color);
	border-bottom: 1px solid var(--blue-color);
	padding-top: 0 !important;
}

.trending-articles div {
	border-bottom: 1px solid #000;
}

.trending-articles div:last-child {
	border-bottom: 0px solid ;
}

.home .trending-articles h2 {
	margin: 0; 
}

.trending-wrapper-heading {
	padding: 10px 12px;
}

.trending-articles .article-wrapper {
	padding: 0 12px;
	margin: 5px 0;
}

.post-type, .content-wrapper .category a {
	margin: 0 0 7px 0;
}

.post-type a, .content-wrapper .category a {
	color: var(--dark-grey-color);	
	text-transform: uppercase;
	font-weight: bold;	
	font-size: 13px;
}

.featured-article h2 {
	padding-bottom: 8px;
}

.featured-article .article-wrapper img {
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center center;
	width: 100%;
	padding: 0 0 20px 0;
}

.featured-article .article-wrapper .content-wrapper {
	margin: 0;
	padding: 0;
}


/*
 * END Homepage Featured
 * */


/*
 * Article Loop
 * */

.article-loop  {
	list-style-type: none;
	padding: 0px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	column-gap: 20px;
	row-gap: 20px;
}

.hp-content .article-loop > li:nth-child(odd) .content-wrapper, .trending-articles > div:nth-child(even), .hp-content .cpt-section .article-loop > li:nth-child(odd) .article-wrapper, .hp-content .cpt-section .article-loop > li:nth-child(odd) {
	background: #000;
}

.hp-content .cpt-section .article-loop > li:nth-child(even) {
	background: #fff;
}

.hp-content .article-loop li:nth-child(odd) a, .hp-content .article-loop li:nth-child(odd) .entry-meta, .hp-content .trending-articles > div:nth-child(even) .entry-meta, .hp-content .trending-articles > div:nth-child(even) h3 a, .hp-content .trending-articles > div:nth-child(even) .post-type a, .ct-sidebar .trending-articles > div:nth-child(even) h3 a, .ct-sidebar .trending-articles > div:nth-child(even) p a, .ct-sidebar .trending-articles > div:nth-child(even) ul {
	color: white;
}

.content-wrapper .category {
	margin: -9px 0 6px 0;
}

.content-wrapper {
	margin: -40px 20px 0px 20px;
	position: relative;
	padding: 20px 20px 0 20px;
	z-index: 1;
	background: #fff;
}

.article-loop img {
	height: 175px;
	object-fit: cover;
	width: 100%;
}

/*
 * AJAX Load More - related posts
 * */

#ajax-posts .meta-categories a:hover  {
	color: var(--pink-color);
}

#ajax-posts article {
	margin-bottom: 20px;
}

#load-more {
	text-align: center;
	margin: 0 auto;
	display: block;
	background-color: var(--pink-color);
}

.ct-posts-shortcode .next.page-numbers {
	border-color: var(--pink-color);
}

ul.hand-placed {
	margin-top: -10px;
}

.featured-article ul.hand-placed {
	margin-top: -20px;
}

ul.hand-placed li {
	margin: 0px 0 0 0;
	padding: 0 0 10px 0;
}

.hand-placed li  {
	font-size: 12px;
	font-weight: 600;
}

/*
 * Custom Layout for Resource archives
 * */

.resource-cpt-categories article {
	flex-direction: row-reverse;
}

.grid-items {
	display: grid;	
	grid-template-columns: 4fr 1fr 1fr;
}

.grid-items .ct-button-ghost {
	border-color: white;
	color: white;
}

.post-type-archive-events .grid-items {
	grid-template-columns: 3fr 1fr
}

.similar-companies .grid-item .ct-image-container {
	border: 1px solid #eee !important;
	padding: 10px;
	height: 100%;
	width: 100%;
	aspect-ratio: 1 / 1;
}

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

	.resource-cpt-categories article a.ct-image-container {
		max-width: 270px !important;
		min-height: 240px;
		margin: 0 0px 0 20px !important;
	}
	
	.resource-cpt-categories article  {
		padding: 10px 0 !important
	}

}
	
.resource-loop .article-wrapper {
	height: 100%;
	display: flex;
  flex-direction: column;
}


.resource-loop .content-wrapper {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.resource-loop .read-more {
	margin-top: auto !important;
}

.trending-articles div {
	border-bottom: 1px solid #000;
	padding: 10px 0 0;
}

.trending-articles div:last-child {
	border-bottom: 0px solid ;
}

.post-type, .content-wrapper .category a {
	margin: 0 0 7px 0;
}

.post-type a, .content-wrapper .category a {
	color: var(--dark-grey-color);	
	text-transform: uppercase;
	font-weight: bold;	
	font-size: 13px;
}

/*
 * Summary Box
 * */

.article-summary-box {
	background-image: url('/wp-content/uploads/2022/11/TechFinitive-DottyBack-Header.jpg');
	background-size: cover;
	box-shadow: inset 999px 999px 999px #00000050;
	padding: 20px;
}

.article-summary-box, .article-summary-box h2, .article-summary-box a {
	color: white;
}

.article-summary-box ul {
	list-style-type: none;
}

.article-summary-box li {
	margin: 0 0 20px 0;
}

.article-summary-box li:before {
	content: ' ';
	background-image: url('/wp-content/uploads/2023/01/cropped-android-chrome-512x512-1.png');
	background-size: 15px;
	background-repeat: no-repeat;
	background-position: center center;
	background-color: #fff;
	border-radius: 100%;
	width: 20px;
	position: absolute;
	height: 20px;
	margin: 3px 0 0 -34px;
}

.article-summary-box {
	position: relative;
}

.article-summary-box:before {
	content: ' ';
	background-image: url('/wp-content/uploads/2023/01/cropped-android-chrome-512x512-1.png');
	background-size: 31px;
	background-repeat: no-repeat;
	background-position: center center;
	background-color: #fff;
	border-radius: 100%;
	width: 40px;
	position: absolute;
	height: 40px;
	margin: auto;
	left: 50%;
	top: -20px;
}

/*
 * Resources & Tech Directory
 * */

img.company-logo-loop {
	max-width: 100% !important; 
	display: inline !important;
	object-fit:cover;
	height: 100px;
}

.post-type-archive-tech_directory article a.entry-button, .ct-dynamic-data  {
	float: left !important 
}

.similar-companies .card-content {
	display: grid !important;
	grid-template-columns: 1fr 2fr !important;
	column-gap: 10px;
	justify-items: center;
  align-items: center;
}

.similar-companies h2 {
	font-size: 24px;
	padding: 0 0 0px 0;
	margin: 0 0 12px 0;
}

.similar-companies button {
	padding: 0px 7px !important;
	min-height: 30px;
	font-size: 13px;
}

.similar-companies .entries {
	padding: 10px;
	border-radius: 4px;
}

.similar-companies, .similar-companies .grid-wrapper {
	column-gap: 15px;
	row-gap: 15px;
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
}

.tech-directory-loop .content-wrapper {
	margin: 0;
	padding: 0;
}

.tech-directory-loop img {
	aspect-ratio: 1 / 1;
	border: 1px solid #eee;
	margin-bottom: 10px;
	padding: 15px;
	max-width: 251px !important;
}

.tech-directory-loop li h3 {
	padding-top: 10px;
	margin-bottom: 10px !important;
}

.tech-directory-info-box .logo-wrapper, .tech-directory-info-box .button-wrapper {	
	width: 100%;
}

.tech-directory-info-box .logo-wrapper img {
	display: block;
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
	text-align: center;
	border: 1px solid #eee;
	padding: 10px;
	margin-bottom: 20px;
	aspect-ratio: 1 / 1;
}

.tech-directory-info-box .logo-wrapper img {
	padding-bottom: 20px !important;
}

.tech-directory-info-box .button-wrapper button {
	width: 100%;
}

.tech-directory-company-profile {
	margin: 2.3rem 0 0 0 ;
	position: relative;
	background-color: var(--background-color);
	padding: 1rem 1rem;
	border-radius: 5px;
}

.mobile-resources-download {
	display: none !important;
}

.resource-site-search, .tech-directory-site-search {
	text-align: center;
	padding: 30px 10px !important
}

.resource-site-search .search-form-wrapper, .tech-directory-site-search .search-form-wrapper {
	width: 100%;
}

.resource-site-search .search-form-wrapper .ct-button, .tech-directory-site-search .search-form-wrapper .ct-button {
	max-width: 200px;
	float: none;
}

.resource-loop {
	padding: 10px 0
}

.resource-loop ul {
	list-style-type: none;
}

.resource-loop ul {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.resource-cat {
	border-left: 1px solid var(--blue-color);
	padding: 20px 0 20px 20px;
}

.resource-cat ul {
	margin: 0;
	list-style-type: none;
	padding: 10px 0 0 15px;;
}

.trending-topics a {
	text-transform: capitalize;
	font-size: 26px;
	line-height: 1em;
	letter-spacing: -1px;
	font-weight: 700 !important;
	font-family: 'Roboto Condensed', Sans-Serif !important;
}

/*
 * Single
 * */

.single .ct-posts-shortcode .ct-pagination {
	display: none;
}

.add_terms {
	padding: 20px;
	border: 2px solid var(--teal-color);
	margin: 20px 0 0 0;
}

.add_terms p:last-child {
	margin: 0;
}

.product-guide-info-box .button-wrapper, .product-guide-info-box .button-wrapper a button{
	width: 100% !important;
	display: block;
}

.product-guide-info-box  {
	width: 100% !important;
}

.product-guide-info-box .logo-wrapper {
	width: 100% !important;
}

.resources-info-box .resource-logo-wrapper img, .product-guide-info-box img {
	width: 100%;
	max-width: 100% !important;
	max-height: 100% !important;
	height: auto !important;
}

.ct-share-box a span {
	padding: 7px 10px !important;
}

.single .hero-section .entry-meta li.meta-categories {
	float: right;
	position: relative;
	color: white;
	right: 0;
	padding: 0;
	margin: 15px 0 0 0;
	font-size: 0;
}

.entry-meta[data-type*=none] li:not(:last-of-type) {
	margin-inline-end: 3px;	
}

.single .ct-meta-element-author {
	position: relative;
}

.single .ct-meta-element-author:before {
	content: 'Written by ';
}

.single .ct-meta-element-date:before {
	content:' on '; 
}

.ct-meta-element-author, .meta-date {
	font-size: 12px;
	font-weight: normal;
	text-transform: none;
}

.single .hero-section .entry-meta li.meta-categories a {
	font-size: 12px;
	color: white ;
}

/*
 * Product Guide & Resource specific
 * */

.wp-block-quote {
	background: #f7f7f7;
	padding: 15px;
	font-size: 120%;
	border-radius: 0 10px 10px 0;
}

.meta-categories .ct-term-212, .meta-categories .ct-term-13, .meta-categories .ct-term-214, .meta-categories .ct-term-329, .meta-categories .ct-term-684, .meta-categories .ct-term-213, .meta-categories .ct-term-552, .meta-categories .ct-term-916  {
	display: none !important;
}

.single .resources .hero-section .entry-meta li.meta-categories {
	float: none !important;
	position: relative;
	top: 0px;
	padding-bottom: 17px;
}

.single .resources .hero-section .entry-meta li.meta-categories a {
	margin: 0 10px 0 0px;
}

.single .resources .entry-meta li.meta-date {
	left: 0px;
	padding-top: 14px;
	position: relative;
}

/*.hp-secondary-slot .hand-placed,*/ .ct-sidebar .hand-placed {
		display: none;
}

/*
 * End Product Guide & Resource 
 * */

.single .hero-section .entry-meta li.meta-categories a {
	margin: 0 0px 0 10px;
	background: var(--pink-color);
	padding: 4px 10px;
}

.single .entry-meta li.meta-categories a:hover {
	color: white;
}

.single .ct-posts-shortcode .entry-meta li.meta-categories a:hover {
	color: var(--pink-color);
}

.single .author-box-bio p:last-child {
	margin-bottom: 0;
}

.author-box-social {
	justify-content: center;
}

.author-box-socials a {
	background: var(--linkHoverColor) !important;
}

.single .info-box {
	border: 2px solid var(--teal-color);
	display: inline-block;
	width: 100%;
	padding: 20px;
	margin-bottom: 15px;
}

.single .info-box img {
	max-width: 100px;
	max-height: 30px;
	height: auto;
	text-align: left;
}

.single .info-box .logo-wrapper {
	text-align: left;
	width: 50%;
	display: inline-block;
}

.single .info-box .button-wrapper {
	text-align: right;
	display: inline-block;
}

.single span[class="0-item"] {
	text-transform: capitalize;
}

/*
 * Single Reviews
 * */

.pros-cons-double-fist-col, .pros-cons-double-second-col {
	border: 2px solid #eee;
	padding: 15px;
}

.review-single-pros {
	border: 2px solid green;
	padding: 15px;
}


.review-single-pros h2 {
	color: green;
	font-size: 24px;
	margin: 0;
}

.review-single-cons h2 {
	color: red;
	font-size: 24px;
	margin: 0;
}

.pros-list, .cons-list {
	list-style: none;
	margin: 0 0 0 20px;
	padding: 0;
}

.pros-list li, .cons-list li {
	padding-left: 10px;
}

.cons-list li:before {
	content: '-';
	padding: 0 7px 1px; 
	line-height: 1em;
	color: white;
	height: 20px !important;
	width: 20px !important;	
	background: red;
	border-radius: 100%;
	margin-right: 5px;
	margin-left: -25px;
	top: -1px;
	position: relative;
}

.pros-list li:before {
	content: '+';
	padding: 0 5px 1px; 
	line-height: 1em;
	color: white;
	height: 20px !important;
	width: 20px !important;	
	background: green;
	border-radius: 100%;
	margin-right: 5px;
	margin-left: -25px;
	top: -1px;
	position: relative;
}

.review-single-cons {
	border: 2px solid red;
	padding: 15px;
}

/*
 * Section titles 
 * */

a {
	text-decoration: none;
}

h2 a, h3 a, h4 a  {
	color: #000;
}

.featured-article h2, .trending-articles h2 {
	margin: 0 !important;
}

.home .trending-articles h2 {
	color: var(--blue-color) !important;
		text-transform: uppercase;

}

.trending-title, .content-wrapper h3 {
	font-size: 22px;
	line-height: 1em;
	margin: 0 0 20px 0 !important;
}

.post-type a, .category a {
	text-decoration: none;
}

/*
 * Archive
 *

@media screen and (min-width: 824px) {
	
	.archive:not(.resource-cpt-categories, .post-type-archive) [data-archive=default] .entry-card:first-child, .blog [data-archive=default] .entry-card:first-child {
		display: block;
		padding: 0;
	}


	.archive:not(.resource-cpt-categories, .post-type-archive)  [data-archive=default] .entry-card:first-child a, .blog [data-archive=default] .entry-card:first-child a  {
		width: 100%;
		margin: 0;
		max-width: 100%;
	}

	.archive:not(.resource-cpt-categories) .ct-container article:first-child .ct-image-container.boundless-image img, .blog .ct-container article:first-child .ct-image-container.boundless-image img {
		width: 100% !important;
	}

}

/*
 * General
 * */

.ct-breadcrumbs {
	padding: 0 0 20px 0;
}

.section-title-category-wrapper {
	display: grid;
	grid-template-columns: 1fr 110px;
	padding-top: 10px;
	position: relative;
}

.section-title-category-wrapper h2 {
	color: var(--theme-palette-color-1);
	margin: 0px 0 10px 0;
	font-size: 30px;
	overflow: hidden;
	width: 100%;
	position: relative;
	
}
	
.section-title-category:after {
    margin-left: 2%;
    text-align: right;
}

.section-title-category:after {
    position: absolute;
    top: 51%;
    overflow: hidden;
    width: 100%;
    height: 1px;
    content: ' ';
    background-color: #eeeeee;
}

.section-title-category-wrapper a {
	text-align: right;
	margin-top: 6px;
	font-size: 12px;
}

.section-title {
	text-transform: uppercase !important;
	margin: 55px auto !important;
	overflow: hidden;
	color: var(--blue-color);
	text-align: center;
	text-transform: capitalize;
	position: relative;
}

.section-title:before, .section-title:before {
    margin-left: -53%;
    text-align: right;
}

.section-title:after, 
.section-title:after {
    margin-left: 3%;
    text-align: right;
}

.section-title:before, .section-title:after {
    position: absolute;
    top: 51%;
    overflow: hidden;
    width: 50%;
    height: 1px;
    content: '\a0';
    background-color: var(--blue-color);
}

/*
 * Adverts
 * */

.g.g-1 {
	width: 100%;
	max-width: 950px !important;
}

.g.g-1, .g.g-2 {
	margin: 30px auto 0;
}

/*
 * Site Search
 * */

.site-search {
	margin: 30px auto 0;
	background-image: url('/wp-content/uploads/2022/11/TechFinitive-DottyBack-Header.jpg');
	padding: 15px;
	background-size: cover;
	background-position: center center;
}

.site-search .search-form-wrapper {
	display: inline-block;
}

.site-search input {
	width: calc(70% - 10px);
}

.site-search .ct-button {
	width: 30%;
	float: right;
}

.site-search h3, .site-search h2, .site-search p {
	color: white;
}


/*
 * Newsletter Signup
 * */

.newsletter-signup {
	background-color: #000;
	padding: 25px;
	background-size: cover;
	background-position: center center;
}

.newsletter-signup h3, .newsletter-signup p {
	color: white;
}

.newsletter-signup p {
	margin-bottom: 0 !important;
}

.newsletter-signup .fluentform {
	padding-top: 20px;
}

.fluentform form.fluent_form_2 .wpf_has_custom_css.ff-btn-submit {
	text-transform: capitalize;
	background: var(--blue-color);
	border: 1px solid var(--blue-color);
	color: white;
}

.newsletter-signup {
	display: grid;
	align-items:center;
	column-gap: 20px;
	row-gap: 20px;
	grid-template-columns: 1fr 1fr ;
}

#sidebar .newsletter-signup {
	grid-template-columns: 1fr ;
}

#sidebar .frm-fluent-form .ff-t-container {
	display: grid !important; 
	grid-template-columns: 1fr;
	row-gap: 0 !important;
}

#sidebar #side-bar-job-multiple, #sidebar  .w-title {
	padding-left: 0;
	padding-right: 0;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/*
 * Header
 * */

#offcanvas h2.wp-block-post-title {
	text-transform: capitalize !important;
	font-size: 26px;
	line-height: 1em;
	margin-bottom: 15px;
}

#offcanvas .ct-panel-content, #offcanvas  .ct-panel-actions {
	max-width: 1300px;
	width: 100%;
	margin: 0 auto;
}

.ct-panel-content hr {
	max-width: 100% !important;
	height: 1px !important;
}

#offcanvas div[data-id="widget-area-1"] {
	width: 100%;
	color: white;
}

#offcanvas div[data-id="widget-area-1"] h2, #offcanvas div[data-id="widget-area-1"] h3, #offcanvas div[data-id="widget-area-1"] p,  #offcanvas div[data-id="widget-area-1"] a {
	color: white;
}

nav.off-canvas-contact  {
	align-content: space-between !important;
	padding: 20px 0;
	border-top: 1px solid #eee;
	font-weight: bold;
}

nav.off-canvas-contact  li {
	padding: 0 20px;
}


div[data-device="desktop"] #header-menu-1  {
	padding-top: 3px;
}

@media screen and (min-width: 1000px) {
	
	.ct-share-box {
		margin-left: -8px !important;
	}
	
	.ct-container-full .ct-share-box {
		margin-left: 0px !important;
	}

	.ct-panel-actions button {
		margin-left: 0;
	}
	
	div[data-sticky="yes:shrink"] #header-menu-1 {
		opacity: 0;
		transition: 0.2s;
	}
	
}


/*
 * Mobile & Tablet Responsive
 * */

@media screen and (max-width: 1000px) {
	
	.grid-container {
		grid-template-columns: 1fr;
	}
	
	.single .hero-section .entry-meta li.meta-categories a {
		margin: 0 10px 0 0px;
	}
		
	.resource-loop ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.single .g.g-1, .single .g.g-2 {
		margin: 30px 20px -20px;
	}
	
	.archive .g.g-1, .archive .g.g-2 {
		margin: 30px 20px -20px;
	}
	
	.single .hero-section .entry-meta li.meta-categories {
		float: none;
		top: 0px;
		padding: 0 0 10px 0;
	}
	
	.width-70, .width-30, .width-50 {
		width: 100% !important;
	}
	
	.article-loop {
		grid-template-columns: 1fr 1fr;
	}
	
	.hp-content {
		margin-top: -50px;
		padding-top: 40px;
	}
	
	.home .featured-article {
		margin: -10px 0 0 0;
	}

	.grid-items {
		display: block;	
	}
	
	.custom-form input {
		border: 2px solid #fff
	}
	
	.grid-items a button {
		font-size: 12px;
		padding: 10px;
		width: 100%;
	}
	
	.grid-items a { 
		width: calc(50% - 7px);
		float: left;
	}
		
	.grid-items a:nth-child(2) { 
		margin: 12px 5px 0 2px;
	}
	
	.grid-items a:nth-child(3) { 
		margin: 12px 0 2px 5px ;
	}
	
	.single .hero-section .entry-meta li.meta-categories a  {
		display: inline-block;
		margin-top: 6px;
	}

	.single .hero-section .entry-meta li.meta-categories {
		padding-top: 0px;
	}
	
	.single-resources .hero-section .entry-meta li.meta-categories a, .single-product-guides .hero-section .entry-meta li.meta-categories a {
  	margin-top: 6px !important
	}
	
	.mobile-resources-download {
		display: block !important;
	}

	.single-resources .ct-sidebar {
		display: none !important;
	}

}

@media screen and (max-width: 600px) {
	
	div.authors-directory {
		grid-template-columns: 1fr !important
	}
	
	.newsletter-signup {
		grid-template-columns: 1fr ;
	}

	.article-loop {
		grid-template-columns: 1fr;
	}

	.article-summary-box .wp-block-columns {
		row-gap: 3px !important
	}

	.resource-loop ul {
		display: grid;
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	
	.single article .wp-block-image {
		width: 100%;
		margin-left: 0 !important;

	}
	
}

/*
 * Table of contents
 * */
.table-of-contents {
  margin: 1rem 0;
  position: relative;
  background-color: var(--background-color);
  padding: .5rem 1rem;
  border-left: 5px solid var(--blue-color);
  border-radius: 5px;
}
.table-of-contents .toc-headline {
  font-size: 18px;
  color: var(--dark-grey);
  font-weight: 600;
  display: block;
  cursor: pointer;
  margin-top: .5rem;
}
.table-of-contents .toggle-toc {
  position: absolute;
  top: 1rem;
  right: 1rem;
  font-size: 20px;
  cursor: pointer;
  font-weight: 800;
  color: #FFF;
  width: 1.5rem;
  height: 1.5rem;
	padding: 8px 10px 10px 10px !important;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  line-height: 10px;
  background-color: var(--blue-color);
}

.toc-ul {
  padding: 0;
}

.table-of-contents li {
  position: relative;
  list-style: none;
  line-height: var(--line-height);
  font-weight: 400;
  margin: .3rem 0;
  transition: .2s ease all;
}
.table-of-contents li a {
  color: var(--blue-color);
}
.table-of-contents li>ul {
  padding-left: 1rem;
}

.table-of-contents ul {
	padding-bottom: 0;
	margin-bottom: 0;
}

.table-of-contents li a {
	font-size: 14px;
	line-height: 16px;
}

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

	body:not(.tech_directory-template-default) .table-of-contents {
		display: none;
		position: fixed;
		top: 100px;
		margin-left: -270px;
		width: 240px;
	}

}

/*
 * Spanish edition — per-article translation disclaimer
 */
.tf-translation-notice {
	margin: 28px 0;
	padding: 14px 18px;
	border-left: 4px solid var(--blue-color, #0a66c2);
	background: color-mix(in srgb, var(--blue-color, #0a66c2) 7%, transparent);
	border-radius: 4px;
	font-size: 0.95em;
	line-height: 1.5;
}
.tf-translation-notice p {
	margin: 0;
}
.tf-translation-notice a {
	text-decoration: underline;
}

/*
 * Language switcher (en | es) — pushed to the right of the primary nav, beside Resources.
 * The layout rules that touch shared header elements (.header-menu-1, .ct-header-cta) are
 * gated behind the Polylang language body class (tf-lang-*), so they only apply where the
 * switcher actually exists. On the non-Polylang production site the header is untouched.
 */
.tf-lang-en .header-menu-1,
.tf-lang-es .header-menu-1 {
	flex-grow: 1;
}
.tf-lang-en .header-menu-1 > ul.menu,
.tf-lang-es .header-menu-1 > ul.menu {
	width: 100%;
}
.lang-item-first {
	margin-inline-start: auto;
}
li.lang-item + li.lang-item::before {
	content: "|";
	color: rgba(255, 255, 255, 0.35);
	margin: 0 6px;
}
/* Non-selected language is greyed; the current (selected) language is bright */
.lang-item .ct-menu-link {
	text-transform: uppercase;
	font-weight: 600;
}
.lang-item:not(.current-lang) .ct-menu-link {
	color: rgba(255, 255, 255, 0.5) !important;
}
.lang-item:not(.current-lang) .ct-menu-link:hover {
	color: #fff !important;
}
.lang-item.current-lang .ct-menu-link {
	color: #fff !important;
}
/* Sit the switcher next to the Resources CTA (closes the header-column gap).
   Gated to the Polylang language body class so production's header is unaffected. */
@media (min-width: 1000px) {
	.tf-lang-en .ct-header-cta,
	.tf-lang-es .ct-header-cta {
		margin-inline-start: -105px !important;
	}
}

/*
 * Spanish edition — hide the secondary nav bar (whole bottom header row) + social links.
 *
 * Scope the row to the header. Blocksy uses data-row="bottom" in the footer as
 * well, so the unscoped selector also hid the footer's bottom row, taking the
 * affiliate disclaimer and the copyright line with it. Both are translated and
 * belong on the Spanish site.
 */
.tf-lang-es .ct-header [data-row="bottom"],
.tf-lang-es [data-id="mobile-menu-secondary"],
.tf-lang-es [data-id="socials"] {
	display: none !important;
}

/*
 * Blocksy 2.1.55 regression — card links picked up the content-link underline.
 *
 * 2.1.47 scoped the underline to lists written directly in article body copy:
 *     [data-link="type-2"] :where(.entry-content>:where(ul,ol) a, ...)
 * 2.1.55 dropped the child combinator:
 *     [data-link="type-2"] :where(.entry-content :where(ul,ol) a, ...)
 *
 * Every nested list inside .entry-content now matches, including the homepage
 * card grids -- which are <ul class="wp-block-latest-posts__list"> -- so those
 * links pick up --theme-text-decoration: underline.
 *
 * We reset the variable rather than forcing text-decoration, to stay consistent
 * with how Blocksy drives link styling, and keep the :not(:hover) parity so the
 * hover state is untouched. Scoped to the card/loop wrappers, so genuine
 * in-article list links keep their underline.
 *
 * Remove once Blocksy restore the child combinator upstream.
 */
.entry-content
	:where(
		.wp-block-latest-posts__list,
		.article-loop,
		.article-wrapper,
		.latest-features-list
	)
	a:not(:hover) {
	--theme-text-decoration: none;
}


/* Spanish edition byline.
   The English labels are pseudo-elements (see .single .ct-meta-element-author
   above), so they cannot go through the .po like normal strings. The body
   carries a tf-lang-<code> class, so the Spanish wording is scoped to that.
   Wording from Rossana, 29 Sep 2026; "el" is lower case because it sits
   mid-sentence after the author's name. */
.single.tf-lang-es .ct-meta-element-author:before {
	content: 'Escrito por ';
}

.single.tf-lang-es .ct-meta-element-date:before {
	content: ' el ';
}


/*
 * Adverts
 * */

/* Content Ignite leaderboard, which sits directly below the trending bar.
 * Gives it the same 30px of breathing room that .ct-container already leaves
 * underneath it, so the advert is evenly spaced rather than butted against
 * the bar. `:has(iframe)` means the space only exists once an advert has
 * actually rendered, so an unfilled slot, or a reader running an ad blocker,
 * gets no empty gap. Spacing only: nothing here alters Content Ignite's
 * markup, scripts or targeting. */
header.ct-header + .ci-ad:has(iframe) {
	margin-top: 30px;
}
