/*
Theme Name: Ron Johnson
Version: 6.1
Description: Customizable responsive accessible Wordpress child theme created by CyberOptik
Author: CyberOptik
Author URI: https://www.cyberoptik.net/
Template: optik-theme-6
*/





/******************************************************************************
 * * *  IMPORTS & VARIABLES  * * * * * * * * * * * * * * * * * * * * * * * * *
******************************************************************************/

@import url("../optik-theme-6/style.css");



/* Add font imports here */

/***  MONTSERRAT  ***/

/* Normal */
@font-face {
  font-family: 'Montserrat';
  font-weight: normal;
  src: url('fonts/Montserrat/Montserrat-Regular.ttf');
}

/* Italic */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: normal;
  src: url('fonts/Montserrat/Montserrat-Italic.ttf');
}

/* Semi Bold */
@font-face {
  font-family: 'Montserrat';
  font-weight: 600;
  src: url('fonts/Montserrat/Montserrat-SemiBold.ttf');
}

/* Bold */
@font-face {
  font-family: 'Montserrat';
  font-weight: bold;
  src: url('fonts/Montserrat/Montserrat-Bold.ttf');
}


/***  Playfair Display  ***/

/* Normal */
@font-face {
  font-family: 'Playfair Display';
  font-weight: normal;
  src: url('fonts/Playfair_Display/PlayfairDisplay-Regular.ttf');
}

/* Semi Bold */
@font-face {
  font-family: 'Playfair Display';
  font-weight: 600;
  src: url('fonts/Playfair_Display/PlayfairDisplay-SemiBold.ttf');
}

/* Bold */
@font-face {
  font-family: 'Playfair Display';
  font-weight: bold;
  src: url('fonts/Playfair_Display/PlayfairDisplay-Bold.ttf');
}


/***  Oswald  ***/

/* Normal */
@font-face {
  font-family: 'Oswald';
  font-weight: normal;
  src: url('fonts/Oswald/Oswald-Regular.ttf');
}

/* Semi Bold */
@font-face {
  font-family: 'Oswald';
  font-weight: 600;
  src: url('fonts/Oswald/Oswald-SemiBold.ttf');
}

/* Bold */
@font-face {
  font-family: 'Oswald';
  font-weight: bold;
  src: url('fonts/Oswald/Oswald-Bold.ttf');
}

/***  Outfit  ***/

/* Normal */
@font-face {
  font-family: 'Outfit';
  font-weight: normal;
  src: url('fonts/Outfit/Outfit-Regular.ttf');
}

/* Semi Bold */
@font-face {
  font-family: 'Outfit';
  font-weight: 600;
  src: url('fonts/Outfit/Outfit-SemiBold.ttf');
}

/* Bold */
@font-face {
  font-family: 'Outfit';
  font-weight: bold;
  src: url('fonts/Outfit/Outfit-Bold.ttf');
}

/* Bold */
@font-face {
  font-family: 'Outfit';
  font-weight: 900;
  src: url('fonts/Outfit/Outfit-Black.ttf');
}

/******************************************************************************
 * * *  STRUCTURAL ELEMENTS  * * * * * * * * * * * * * * * * * * * * * * * * * 
******************************************************************************/



/***  UNIVERSAL STYLES  ***/

html {
  scroll-padding: 150px;
	font-size: 16px;
}

body {
	line-height: 1.6em;
	font-family: var(--wp--custom--font--1);
	color: var(--wp--custom--dark--2);
	font-weight:500;
}



/***  BACK TO TOP BUTTON  ***/

.btt-button [class*="fa"] {
	border-radius: var(--wp--custom--radius--full);
	background-color: var(--wp--custom--primary--main);
	font-weight: 300;
	color: white;
}

.btt-button:hover [class*="fa"] {
	background-color: var(--wp--custom--primary--light);
	color: white;
}





/******************************************************************************
 * * *  CONTENT STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * * *
******************************************************************************/



/***  TEXT & LINKS  ***/

a {
	color: var(--wp--custom--primary--main);
}

a:hover {
	color: var(--wp--custom--primary--light);
}



/***  HEADINGS  ***/

h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
	color: var(--wp--custom--secondary--main)!important;
	font-family: var(--wp--custom--font--2);
}

h1 {
	font-size: 3em;
}

h2 {
	font-size: 2.25em;
}

h3 {
	font-size: 1.75em;
}

h4 {
	font-size: 1.25em;
}

h5 {
	font-size: 1em;
}

h6 {
	font-size: 0.85em;
}


/**Mobile & Tablet**/
@media screen and (min-width: 601px) and (max-width: 1024px) {
  h1 { font-size: 2.2em; }
  h2 { font-size: 2em; }
  h3 { font-size: 1.8em; }
  h4 { font-size: 1.5em; }
  h5 { font-size: 1.125em; }
  h6 { font-size: 1em; }
}

@media screen and (max-width: 600px){
h1 {font-size: 1.75em;}
h2 {font-size: 1.5em; }
h3 {font-size: 1.25em;  }
h4 {font-size: 1.125em;}
h5 {font-size: 1em;}
h6 {font-size: 0.875em;}
}


/***  BORDERS & DIVIDERS  ***/

hr, .divider {
	display: block;
	width: 100%;
	height: 1px;
	border: 0;
	border-top: 1px solid #e2e2e2;
	margin: 2.5em auto;
	padding: 0;
}



/***  BUTTONS  ***/

.button, 
.wp-block-button__link, 
.button-outline, 
.is-style-outline .wp-block-button__link {
	padding: 0.75em 1.5em;
	border-color: var(--wp--custom--primary--main);
	border-radius: var(--wp--custom--radius--sm);
	background-color: var(--wp--custom--primary--main);
	color: white;
	box-shadow: 0 5px 5px 0 #333d5938;
	text-transform:uppercase;
	font-family:var(--wp--custom--font--2);
	font-weight:600;
	letter-spacing:1px;
}

.button:hover, 
.wp-block-button__link:hover, 
.button-outline:hover,
.is-style-outline .wp-block-button__link:hover {
	border-color: var(--wp--custom--primary--dark);
	background-color: var(--wp--custom--primary--dark);
	color: white;
	transform: translateY(-2px);
}

.button [class*="fa"], 
.wp-block-button__link [class*="fa"], 
.button:hover [class*="fa"], 
.wp-block-button__link:hover [class*="fa"] {
	color: inherit !important;
}

/* Outlined Button */

.button-outline, 
.is-style-outline .wp-block-button__link {
	background: none;
	color: var(--wp--custom--primary--main);
}

.button-outline:hover,
.is-style-outline .wp-block-button__link:hover {
	border-color: var(--wp--custom--secondary--main);
	background: none;
	color: var(--wp--custom--secondary--main);
}



/***  ICONS  ***/

.fa {
	font-weight: 300;
}

/* Icon Colors */

.fa, .fas, .far, .fal, .fab {
	color: var(--wp--custom--primary--main);
}

a .fa, a .fas, a .far, a .fal, a .fab {
	color: var(--wp--custom--primary--main);
}

a:hover .fa, a:hover .fas, a:hover .far, a:hover .fal, a:hover .fab {
	color: var(--wp--custom--secondary--main);
}

/* Icon Backgrounds */

.fa-bg {
	background-color: var(--wp--custom--primary--main);
	color: white;
}

a .fa-bg {
	background-color: var(--wp--custom--primary--main);
	color: white;
}

a:hover .fa-bg {
	background-color: var(--wp--custom--secondary--main);
	color: white;
}

/* Icon Borders */

.fa-br {
	border-color: var(--wp--custom--primary--main);
}

a .fa-br {
	border-color: var(--wp--custom--primary--main);
}

a:hover .fa-br {
	border-color: var(--wp--custom--secondary--main);
}



/***  LISTS  ***/

.arrow-list li:before, 
.check-list li:before, 
.check-circle-list li:before, 
.icon-list li:before, 
.contact-list li:before, 
.arrow-list li [class*="fa"], 
.check-list li [class*="fa"], 
.check-circle-list li [class*="fa"], 
.icon-list li [class*="fa"], 
.contact-list li [class*="fa"] {
	color: var(--wp--custom--primary--main);
}



/***  FORMS  ***/

/* Inputs */

input[type="text"], input[type="email"], input[type="number"], 
input[type="password"], input[type="search"], input[type="tel"], 
input[type="url"], input[type="date"], input[type="datetime-local"], 
input[type="month"], input[type="time"], input[type="week"], 
textarea, select, .filter-reset {
	border-radius: var(--wp--custom--radius--xs);
}

input[type="text"]:focus, input[type="email"]:focus, input[type="number"]:focus, 
input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, 
input[type="url"]:focus, input[type="date"]:focus, input[type="datetime-local"]:focus, 
input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, 
textarea:focus, select:focus {
	border-color: var(--wp--custom--primary--main);
}

/* Buttons */

input[type="submit"], 
input[type="reset"], 
input[type="button"], 
form button {
	border-color: var(--wp--custom--primary--main);
	background-color: var(--wp--custom--primary--main);
	border-radius: var(--wp--custom--radius--xs);
	color: white;
}

input[type="Submit"]:hover, 
input[type="reset"]:hover, 
input[type="button"]:hover, 
form button:hover {
	border-color: var(--wp--custom--primary--light);
	background-color: var(--wp--custom--primary--light);
	color: white;
}

input[type="Submit"]:active, 
input[type="reset"]:active, 
input[type="button"]:active, 
form button:active {
	border-color:  var(--wp--custom--primary--dark);
	background-color:  var(--wp--custom--primary--dark);
	color: white;
}





/******************************************************************************
 * * *  HEADER STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
******************************************************************************/



/***  SCROLL BAR  ***/

.scroll-bar {
	background-color: white;
	border-bottom: 1px solid var(--wp--custom--light--1);
}

.scroll-logo {
	max-height: 50px;
}



/***  TOP BAR  ***/

.top-bar {
	background-color: var(--wp--custom--light--2);
}



/***  HEADER  ***/

.header {
	border-bottom: 1px solid var(--wp--custom--light--1);
}

.header-logo {
	max-height: 60px;
}

/* Menu Button */

.header .menu-button [class*="fa"], 
.header .menu-button:hover [class*="fa"] {
	color: var(--wp--custom--dark--1);
}

.header .menu-button.active [class*="fa"] {
	background-color: var(--wp--custom--primary--main);
	color: white;
}



/***  NAVBAR  ***/

.navbar {
}



/***  NAV MENUS  ***/

.nav-menu > li > a, 
.nav-menu > li > span, 
.nav-menu > li > button {
	color: var(--wp--custom--dark--3);
	font-family:var(--wp--custom--font--2);
	text-transform:uppercase;
	font-weight:600;
	letter-spacing:1px;
}

@media screen and (min-width:1025px) and (max-width: 1080px) {
	.nav-menu > li > a, 
	.nav-menu > li > span, 
	.nav-menu > li > button {
		font-size: 0.8em;
		padding-left:3px;
		padding-right:3px;
	}
	
	.nav-menu > li {
		padding:0 5px;
	}
}

@media screen and (min-width:1081px) and (max-width: 1185px) {
	.nav-menu > li > a, 
	.nav-menu > li > span, 
	.nav-menu > li > button {
		font-size: 0.83em;
		padding-left:5px;
		padding-right:5px;
	}
	
	.nav-menu > li {
		padding:0 5px;
	}
}

.single-post .nav-menu > li.posts-link > a, 
.category .nav-menu > li.posts-link > a, 
.single-service .nav-menu > li.services-link > a, 
.single-career .nav-menu > li.careers-link > a, 
.single-resource .nav-menu > li.resources-link > a, 
.nav-menu > li.current-menu-ancestor > a, 
.nav-menu > li.current-menu-ancestor > span, 
.nav-menu > li.current-menu-ancestor > button, 
.nav-menu > li.current-menu-item > a, 
.nav-menu > li.current-menu-item > span, 
.nav-menu > li.current-menu-item > button, 
.nav-menu > li:hover > a, 
.nav-menu > li:hover > span, 
.nav-menu > li:hover > button {
	color: var(--wp--custom--primary--main);
}

/* Nav Button */

.nav-menu > li.nav-button {
	background-color: transparent !important;
}

.nav-menu > li.nav-button > a {
	margin-left: 10px;
	margin-right: 10px;
	background-color: var(--wp--custom--primary--main);
	border-radius: var(--wp--custom--radius--sm);
	color: white;
}

.nav-menu > li.nav-button > a:hover {
	background-color: var(--wp--custom--primary--dark);
}

/* Dropdowns */

.nav-menu li ul li:first-child {
	padding-top: 8px;
}
.nav-menu li ul li:last-child {
	padding-bottom: 8px;
}

.nav-menu li ul > li > a, 
.nav-menu li ul > li > span, 
.nav-menu li ul > li > button {
	color: var(--wp--custom--dark--3);
}

.single-careers .nav-menu li ul li.careers-link > a, 
.nav-menu li ul li.current-menu-item > a, 
.nav-menu li ul li.current-menu-item > span, 
.nav-menu li ul li.current-menu-item > button, 
.nav-menu li ul li:hover > a, 
.nav-menu li ul li:hover > span, 
.nav-menu li ul li:hover > button {
	color: var(--wp--custom--primary--main);
}

/* Nested Dropdowns */

.nav-menu li ul li ul {
	top: -8px;
}



/***  HIDDEN NAV  ***/

.hidden-menu li a {
	color: var(--wp--custom--dark--3);
}

.hidden-menu li.current-menu-item > a {
	color: var(--wp--custom--primary--main);
}





/******************************************************************************
 * * *  BODY STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
******************************************************************************/



/***  BANNER  ***/

.banner {
	background-color: var(--wp--custom--dark--1)!important;
	text-align: center;
}

.banner-inner {
	padding-top: var(--wp--custom--spacer--xl);
	padding-bottom: var(--wp--custom--spacer--xl);
	/* min-height: 400px; */
}

.banner-tall .banner-inner {
	padding-top: 400px;
	padding-bottom: 400px;
}

.banner-viewheight .banner-inner {
	padding-top: calc(var(--wp--custom--spacer--lg) + 140px);
	padding-bottom: var(--wp--custom--spacer--lg);
}

.banner a {
	color: var(--wp--custom--primary--light);
}

.banner a:hover {
	color: white;
}

.banner .headline {
	text-shadow: 0 0 10px var(--wp--custom--dark--2);
	color:white!important;
}

/***  HEADLINE BAR  ***/

.headline-bar {
}

/* .headline-wrap {
	width: 700px!important; 
}
 */

@media screen and (min-width:320px) and (max-width: 800px) {
	.headline-wrap {
		width: auto!important;
	}
}

/***  ENTRY NAVBAR  ***/

.entry-menu > li > a {
	color: var(--wp--custom--dark--3);
}

.entry-menu > li.current-menu-item > a, 
.entry-menu > li:hover > a {
	color: var(--wp--custom--primary--main);
}



/***  MAIN  ***/

.main {
	padding-top:  var(--wp--custom--spacer--xxl);
	padding-bottom:  var(--wp--custom--spacer--xxl);
}



/***  ARCHIVE  ***/

/* Entry Cols */

.entry-cols .entry-link {
	border-radius: var(--wp--custom--radius--sm);
	border:1px solid var(--wp--custom--light--1);
	background-color:var(--wp--custom--light--3);
	overflow: hidden;
	color: var(--wp--custom--dark--2);
}

.entry-cols .entry-link:hover {
	transform: translateY(-3px);
	border:1px solid var(--wp--custom--dark--3);
}

.entry-cols .entry-icon-wrap:first-child {
	padding: 30px 30px 0;
}

.entry-cols .entry-icon svg {
	width: 60px;
	fill: var(--wp--custom--primary--main);
}

.entry-cols .entry-text-wrap {
	padding: 30px;
}

.includes-link-text .entry:not(.col-full) .entry-text-wrap {
	padding-bottom: 80px;
}

.entry-cols .entry:not(.col-full) .entry-link-text-wrap {
	left: 30px;
	bottom: 30px;
}

.entry-cols .entry-link .entry-link-text {
	color: var(--wp--custom--primary--main);
}

.entry-cols .entry-link:hover .entry-link-text {
	color: var(--wp--custom--primary--dark);
}

/* Archive Pagination */

.archive-pagination a {
	border-radius: var(--wp--custom--radius--xl);
	border-color: var(--wp--custom--light--1);
	color: var(--wp--custom--primary--main);
}

.archive-pagination a:hover {
	border-color: var(--wp--custom--primary--light);
	color: var(--wp--custom--primary--light);
}

.archive-pagination a [class*="fa"], 
.archive-pagination a:hover [class*="fa"] {
	color: inherit !important;
	transition: all 0ms ease-in-out;
}



/***  SINGLE  ***/





/******************************************************************************
 * * *  FOOTER STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
******************************************************************************/



/***  CTA BAR  ***/

.cta-bar {
	padding: 0;
}

.cta-bar > .container {
  max-width: none;
  padding: 0;
}



/***  FOOTER  ***/

.footer {
	padding-top: var(--wp--custom--spacer--lg);
	padding-bottom: var(--wp--custom--spacer--lg);
	background-color: var(--wp--custom--dark--1);
	font-size: 0.9em;
  overflow: hidden;
}

.footer a {
	color: var(--wp--custom--dark--3);
}

.footer a:hover {
	color: var(--wp--custom--primary--main);
}



/***  6.3 BOTTOM BAR  ***/

.bottom-bar {
	border-top:1px solid var(--wp--custom--dark--2);
	background-color: var(--wp--custom--dark--1);
	font-size: 0.9em;
	color: var(--wp--custom--light--2);
}

/* Menus */

.bottom-bar .menu a {
	color: var(--wp--custom--light--1);
}

.bottom-bar .menu a:hover {
	color: var(--wp--custom--primary--main);
}





/******************************************************************************
 * * *  7 CUSTOM STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * * 
******************************************************************************/

/* Add custom theme styles here */

@media screen and (max-width: 900px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 100% !important; }
}

/* Position */
.position-relative { position: relative; }

/* Adjust Image Size */
@media screen and (max-width: 900px) {
  .wp-block-image { 
    max-width: 75%;
    margin-left: auto;
    margin-right: auto;
   }
}

@media screen and (min-width: 601px) and (max-width: 900px) {
  .wp-block-image.reduced-width { max-width: 50%; }
}

/* Size Contraints */

@media screen and (max-width: 900px) {
  .tablet-w-600 { 
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }

  .tablet-w-600-center {
    text-align: center;
  }

  .tablet-w-600-center .wp-block-outermost-icon-block { justify-content: center; }
}

/* LG 1024 */
@media screen and (max-width: 1024px) {
  .stack-section-lg { flex-direction: column; }

  .stack-section-lg.reverse-section { flex-direction: column-reverse; }
}

@media screen and (min-width: 901px) and (max-width: 1024px) {
  .stack-section-lg .wp-block-image {
    max-width: 65%;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Smaller Button Text Size */
@media screen and (max-width: 600px) {
  .button-small.wp-block-button, 
  .button-small .wp-block-button { font-size: 0.9em; }
}

/***  ICON CARDS  ***/

.icon-cards {
	text-align: center;

}

.icon-cards .wp-block-buttons { margin-top: auto; }

@media (max-width: 768px) {
  .icon-cards .wp-block-button {
    position: static;
    transform: none;
    margin-top: 20px;
  }
}

.icon-cards .wp-block-column {
	display:block;
	display: flex;
   flex-direction: column;
  	position: relative;
	background-color: rgba(0, 0, 0, 0.9);
	padding: var(--wp--custom--spacer--md) var(--wp--custom--spacer--sm);
	transition: all 350ms ease-in-out;
	align-items: stretch;
}


.icon-cards .wp-block-column:hover {
	background-color: rgba(0, 0, 0, 0.8);
	color: white;
}

.icon-cards .wp-block-column .wp-block-heading, 
.icon-cards .wp-block-column .wp-block-heading a {
	color: var(--wp--custom--primary--main);
	border-bottom: none;
	transition: all 350ms ease-in-out;
}

.icon-cards .wp-block-column:hover .wp-block-heading, 
.icon-cards .wp-block-column:hover .wp-block-heading a, 
.icon-cards .wp-block-column:hover .wp-block-heading a:hover {
	color: white;
}

.icon-cards .wp-block-outermost-icon-block {
	justify-content: center;
}


.icon-cards .wp-block-column .heading-abs {
  display: block!important;       
  width: 100%!important;          
  text-align: center!important;   
  margin-bottom: 1.25rem;
  padding: 0;      
}

.icon-cards .wp-block-column .heading-abs::before,
.icon-cards .wp-block-column .heading-abs::after{
  width: calc(50% - 4rem);
}

.font-2 {
	font-family: var(--wp--custom--font--2);
}

.box-shadow {
	box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

/* Img card  */
.image-card {
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
    border-radius: 8px;
    overflow: hidden;
}


.border-img img {
	margin: 0 0 20px;
    padding: 10px;
    border-style: solid;
    border-width: 2px;
    border-color: var(--wp--custom--primary--main);
    border-radius: 4px;
}

/* Photo frame */

.photo-frame {
  position: relative;
  display: inline-block;
}

.photo-frame::before {
  content: "";
  position: absolute;
  top: -30px;
  left: -30px;
  width: 100%;
  height: 100%;
  background-color: var(--wp--custom--secondary--main);
  z-index: 0;
}

.photo-frame img {
  display: block;
  position: relative;
  z-index: 1;
  max-width: 100%;
}

/** outside border **/

.border-out {
  aspect-ratio: 1;
  border-radius: 50%;
  border: 10px solid #e5e5e5;
  overflow: hidden;    
}


/***  BOX COLS  ***/

.box-cards {
	text-align: center;
	cursor:pointer;

}

.box-cards .wp-block-buttons { margin-top: auto; }

.box-cards .wp-block-column {
	display: flex;
  flex-direction: column;
	position: relative;
	background-color:var(--wp--custom--light--1);
	padding: var(--wp--custom--spacer--sm) var(--wp--custom--spacer--sm);
	transition: all 350ms ease-in-out;
}

.box-cards .wp-block-column:hover {
	background-color: var(--wp--custom--light--2);
}

.box-cards .wp-block-column .wp-block-heading, 
.box-cards .wp-block-column .wp-block-heading a {
	color: var(--wp--custom--primary--main);
	border-bottom: none;
	transition: all 350ms ease-in-out;
}

.box-cards .wp-block-column:hover .wp-block-heading, 
.box-cards .wp-block-column:hover .wp-block-heading a, 
.box-cards .wp-block-column:hover .wp-block-heading a:hover {
	color: white;
}

.box-cards .wp-block-outermost-icon-block {
	justify-content: center;
}

/** CTA Customization **/
/* Connect on LinkedIn label */
.wp-block-column .linkedin-connect {
    position: relative;
    display: inline-block;
    margin: 2.25rem auto 1.25rem;
    padding: 0 1.25rem;
    font-size: 0.95rem;
    letter-spacing: 0.02em;
    color: rgba(255, 255, 255, 0.75);
}

/* Abstract divider lines */
.wp-block-column .linkedin-connect::before,
.wp-block-column .linkedin-connect::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 90px;
    height: 1px;
    background: linear-gradient(
        to right,
        rgba(255,255,255,0),
        rgba(255,255,255,0.35),
        rgba(255,255,255,0)
    );
    transform: translateY(-50%);
}

.wp-block-column .linkedin-connect::before {
    right: 100%;
    margin-right: 1rem;
}

.wp-block-column .linkedin-connect::after {
    left: 100%;
    margin-left: 1rem;
}

/* Social icon spacing & polish */
.wp-block-column .wp-block-social-links {
    margin-top: 0.5rem;
}



/** Heading Modification line abstract**/

.heading-abs {
    position: relative;
    display: inline-block;
    font-size: 3rem;
    font-weight: 700;
    color: #3b82f6; 
    padding: 0 3.5rem;
    margin-bottom: 1.25rem;
}


.heading-abs::before,
.heading-abs::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 48px;
    height: 2px;
    transform: translateY(-50%);
    border-radius: 2px;
}


.heading-abs::before {
    left: 0;
    background: linear-gradient(
        90deg,
        rgba(59,130,246,0),
        rgba(59,130,246,0.5),
        rgba(59,130,246,1)
    );
}
.heading-abs::after {
    right: 0;
    background: linear-gradient(
        90deg,
        rgba(59,130,246,1),
        rgba(59,130,246,0.5),
        rgba(59,130,246,0)
    );
}


.section-heading {
    position: relative;
    text-align: center; /* or left */
    padding-bottom: 1.25rem;
    margin-bottom: 2rem;
}

/* Abstract line */
.section-heading::after {
    content: "";
    display: block;
    width: clamp(80px, 12vw, 160px);
    height: 3px;
    margin: 1rem auto 0; /* centers under heading */
    border-radius: 3px;
    background: linear-gradient(
        90deg,
        rgba(59,130,246,0),
        rgba(59,130,246,0.45),
        rgba(59,130,246,1),
        rgba(59,130,246,0.45),
        rgba(59,130,246,0)
    );
}


/* PRESENTATION BG CARDS */
 
.presentation-bg-card{
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(0,0,0,.10);
  transition: box-shadow .35s ease;
}
.presentation-bg-card:hover {
  box-shadow: 0 18px 42px rgba(0,0,0,.16);
}

.presentation-bg-link {
  position: relative;
  isolation: isolate;                 
  display: flex;
  flex-direction: column;
  padding: 20px;
  min-height: 360px;    
  height: 100%;   
  background-size: cover;
  background-position: center;
  color: white;
  border-radius: 2px;
  overflow: hidden;
  text-decoration: none;
  transition: transform .4s ease, border-color .4s ease;
  box-sizing: border-box;
}

@media screen and (max-width: 600px) {
  .presentation-bg-link { min-height: auto; }
}

.presentation-bg-card:hover .presentation-bg-link,
.presentation-bg-link:hover{
  transform: translateY(-6px);
  border-color: rgba(0,0,0,.14);
}


.presentation-bg-link::before,
.presentation-bg-link::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;                         
  pointer-events:none;
}


.presentation-bg-link::before{
  background: linear-gradient(
    to top,
    rgba(0,0,0,.70),
    rgba(0,0,0,.20)
  );
}

.presentation-bg-link::after{
  background: linear-gradient(
    to top,
    rgba(0, 120, 60, 0.92),
    rgba(22, 194, 107, 0.75)
  );
  opacity: 0;
  transition: opacity .35s ease;
}

.presentation-bg-card:hover .presentation-bg-link::after,
.presentation-bg-link:hover::after{
  opacity: 1;
}

.presentation-content{
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
}

.presentation-content,
.presentation-content *{
  color: white !important;
}


.presentation-date-bg {
  font-size: 14px;
  opacity: .85;
  margin-bottom: 8px;
  display: block;
  color: white;
}


.presentation-title-bg {
  margin: 0 0 12px 0 !important;
  color: white !important;
}
.presentation-title-bg a {
  color: white !important;
  text-decoration: none;
}


.presentation-excerpt-bg {
  color: white;
}

.presentation-content-bg {
  height: inherit;
  display: flex;
  flex-direction: column;
}

.presentation-bottom { margin-top: auto; }

.presentation-btn {
  display: inline-block;
  background: var(--wp--custom--primary--main);
  color: white!important;
  padding: 12px 26px;
  border-radius: 8px;
  font-weight: 600;
  text-decoration: none;
  transition: transform .25s ease;
}

.presentation-bg-card:hover .presentation-btn,
.presentation-bg-link:hover .presentation-btn{
  transform: translateY(-1px);
}

.presentation-bg-link:hover a.presentation-excerpt-bg {
	color:white!important;
}

/* Reverse Section */
@media screen and (max-width: 900px){
	.reverse-section {
    flex-direction: column-reverse;
	}
}
/* Media Queries*/
/* iPad Mini & iPad Air (Contact Page) */
@media screen and (max-width: 820px) {
	.contact-two {
		flex-wrap: nowrap!important;
	}
}
/* Mobile */
@media screen and (max-width: 600px){
	.contact-two {
		flex-wrap: wrap!important;
	}
}



.contact-row .wp-block-outermost-icon-block:hover {
  transform: translateY(-1px);
}

/** BORDER BOX **/

.border-box {
	border-top: 2px solid var(--wp--custom--light--2);
}

/** Filter wisdom **/
.presentation-library {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 3rem;
    max-width: 1200px;
    margin: 0 auto;
}

.presentation-sidebar {
    border-right: 1px solid #e5e7eb;
    padding-right: 1.5rem;
}

.presentation-filters {
    list-style: none;
    padding: 0;
}

.presentation-filters li {
    margin-bottom: 0.75rem;
}

.presentation-filters label {
    cursor: pointer;
    font-size: 1rem;
	font-family:var(--wp--custom--font--2);
}

.presentation-filters .count {
    color: #6b7280;
    font-size: 0.85rem;
}

.presentation-list {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

.presentation-item {
    display: grid;
    grid-template-columns: 1fr 180px;
    gap: 2rem;
    padding-bottom: 2.5rem;
    border-bottom: 1px solid var(--wp--custom--light--1);
	transform: translateY(0);
    transition: transform 250ms ease, box-shadow 250ms ease;
}

.presentation-meta {
    font-size: 0.75rem;
    color: var(--wp--custom--dark--3);
}

.presentation-title {
    font-size: 1.5rem;
    margin: 0.5rem 0;
}

.presentation-title a {
    text-decoration: none;
    color: var(--wp--custom--secondary--main);
}

.presentation-excerpt {
    color: var(--wp--custom--dark--2);
}

.presentation-thumb img {
    width: 100%;
    border-radius: 4px;
}

.presentation-btn {
    display: inline-block;
    margin-top: 0.75rem;
	font-size:0.95em;
    text-decoration: none;
	text-transform:uppercase;
	background-color: var(--wp--custom--primary--main);
	font-family:var(--wp--custom--font--2);
}

.presentation-btn::after {
    content: "  →";
    margin-left: 3px;
}

.presentation-item:hover .presentation-btn {
   background-color: var(--wp--custom--primary--dark);
}

.presentation-library .presentation-item:hover {
  transform: translateY(-5px);
  cursor:pointer;
}


@media (max-width: 900px) {
    .presentation-library {
        grid-template-columns: 1fr;
    }

    .presentation-item {
        grid-template-columns: 1fr;
    }
}

/* Archive Filter */
.archive-navbar .filter-form > * { margin-bottom: 6px; }