/*
Theme Name: Donatello Electric
Version: 6.0
Theme URI: https://cyberoptik.net/
Description: Customizable responsive Wordpress theme created by CyberOptik
Author: CyberOptik
Author URI: https://cyberoptik.net/
Template: optik-theme
*/





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

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



/* Add font imports here */

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

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

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

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



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



/***  UNIVERSAL STYLES  ***/

html {
	font-size: 16px;
}

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



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

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

.btt-button:hover .fa {
	background-color: var(--wp--custom--primary--light);
	color: white;
}





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



/***  TEXT & LINKS  ***/

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

a:hover {
	color: var(--wp--custom--secondary--dark);
}



/***  HEADINGS  ***/

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

h1 {
	font-size: 3.2em;
}

h2 {
	font-size: 2.8em;
}

h3 {
	font-size: 1.75em;
}

h4 {
	font-size: 1.5em;
}

h5 {
	font-size: 1em;
}

h6 {
	font-size: 0.85em;
}



/***  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: 1.5em 2.25em;
	border-color: white;
	background-color: white;
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.1);
	border-radius:var(--wp--custom--radius--xl);
	color: var(--wp--custom--dark--1);
	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--secondary--main);
	background-color: var(--wp--custom--secondary--main);
	color: white;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
}

.button i, 
.wp-block-button__link i, 
.button:hover i, 
.wp-block-button__link:hover i {
	color: inherit !important;
}

/* Outlined Button */

.button-outline, 
.is-style-outline .wp-block-button__link {
	border:0;
	background: none;
	color:white;
	padding:0;
	box-shadow:none;
}

.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);
	box-shadow:none;
}

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

.button-outline:hover i,
.is-style-outline .wp-block-button__link:hover i {
	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 {
	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"] {
	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 {
	border-color: var(--wp--custom--primary--dark);
	background-color: var(--wp--custom--primary--dark);
	color: white;
}

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

/* Ninja Forms */

.nf-form-fields-required {display: none;}





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



/***  SCROLL BAR  ***/

.scroll-bar {
	background-color: var(--wp--custom--primary--dark);
}

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



/***  TOP BAR  ***/

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



/***  HEADER  ***/

.header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
}

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

/* Menu Button */

.header .menu-button .fa, 
.header .menu-button:hover .fa {
	background-color: var(--wp--custom--primary--main);
	color:white;
}

.header .menu-button.active .fa {
	background-color: var(--wp--custom--primary--dark);
	color: white;
}



/***  NAVBAR  ***/

.navbar {
}



/***  NAV MENUS  ***/

.nav-menu > li > a, 
.nav-menu > li > span {
  padding: 18px;
	color: white;
	font-weight: 500;
	font-size: 1em;
}

.single-service .nav-menu > li.services-link > a, 
.single-service .nav-menu > li.services-link > span, 
.single-product .nav-menu > li.products-link > a, 
.single-product .nav-menu > li.products-link > span, 
.single-member .nav-menu > li.members-link > a, 
.single-member .nav-menu > li.members-link > span, 
.single-post .nav-menu > li.posts-link > a, 
.single-post .nav-menu > li.posts-link > span, 
.category .nav-menu > li.posts-link > a, 
.category .nav-menu > li.posts-link > span, 
.nav-menu > li.current-menu-ancestor > a, 
.nav-menu > li.current-menu-ancestor > span, 
.nav-menu > li.current-page-ancestor > a, 
.nav-menu > li.current-page-ancestor > span, 
.nav-menu > li.current-menu-item > a, 
.nav-menu > li.current-menu-item > span {
	color: var(--wp--custom--primary--light);
	
}

.nav-menu > li:hover > a, 
.nav-menu > li:hover > span {
	color: var(--wp--custom--primary--light);
}

@media screen and (max-width: 1400px) {
.nav-menu > li > a, 
.nav-menu > li > span {
	padding-left: 10px;
	padding-right: 10px;
}
}

/* Nav Button */

.nav-menu > li.nav-button > a > span {
	padding: 0.75em 1.5em;
	margin-top: -0.75em;
	margin-bottom: -0.75em;
	background-color: var(--wp--custom--secondary--main);
	border-radius: var(--wp--custom--radius--xl);
	color: white;
	font-weight:600;
}

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

.nav-menu{
	font-size: 15px;
}


/***  DROPDOWN MENUS  ***/

.nav-menu li ul {
	background-color: white;
	width: 250px;
}

.nav-menu li ul li:first-child {
	padding-top: 15px;
}

.nav-menu li ul li:last-child {
	padding-bottom: 15px;
}

.nav-menu li ul li > a, 
.nav-menu li ul li > span {
	padding-left: 20px;
	padding-right: 20px;
	color: var(--wp--custom--dark--1);
}

.nav-menu li ul li > span {
	padding: 0;
}

.nav-menu li ul li span [class*="fa-"], 
.nav-menu li ul li a [class*="fa-"] {
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

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

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

/* Nested Dropdowns */

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



/***  MOBILE NAV  ***/

.hidden-nav {
	background-color: white;
}

.hidden-menu li > a, 
.hidden-menu li > span, 
.hidden-menu li a + [class*="fa-"], 
.hidden-menu li span + [class*="fa-"] {
	color: var(--wp--custom--dark--1);
}

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

.hidden-nav::-webkit-scrollbar {
	width: 10px;
	background-color: var(--wp--custom--primary--main);
}

.hidden-nav::-webkit-scrollbar-thumb {
	border: 0;
	background-color: var(--wp--custom--primary--main);
}

/* Sub Menu */

.hidden-menu li ul {
	background-color: rgba(0,0,0,0.15);
}

.hidden-menu > li > ul {
	font-size: 0.9em;
}

.hidden-menu .nopad .menu-item-inner { padding: 0; }

.hidden-menu .nopad .menu-item-inner ul { background-color: transparent; }



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


/***  BANNER  ***/

.banner {
	background-color: var(--wp--custom--primary--dark);
}

.banner:before {
	opacity: 0.3!important;
}

.banner-inner {
	min-height: 320px;
	padding-top: var(--wp--custom--spacer--xxl);
	padding-bottom: var(--wp--custom--spacer--xl);
	text-align: left;
}

.banner-tall .banner-inner {
	min-height: 450px;
}

.banner-short {
	padding-top:var(--wp--custom--spacer--md);
}

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

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

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


.banner .headline { color: white!important; }

.banner .button {
	color: black;
}


.banner .button:hover {
	color: black;
}

/***  HEADLINE BAR  ***/

.headline-bar {
	padding-top: var(--wp--custom--spacer--sm);
}



/***  ENTRY NAVBAR  ***/

.entry-menu > li > a {
	color: var(--wp--custom--dark--1);
	font-weight: bold;
}

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



/***  MAIN  ***/

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

.spaced-xs, 
.spaced-xs-top {
	padding-top: var(--wp--custom--spacer--xs);
}

.spaced-xs, 
.spaced-xs-btm {
	padding-bottom: var(--wp--custom--spacer--xs);
}

.spaced-sm, 
.spaced-sm-top {
	padding-top: var(--wp--custom--spacer--sm);
}

.spaced-sm, 
.spaced-sm-btm {
	padding-bottom: var(--wp--custom--spacer--sm);
}

.spaced, 
.spaced-top, 
.spaced-md, 
.spaced-md-top {
	padding-top: var(--wp--custom--spacer--md);
}

.spaced, 
.spaced-btm, 
.spaced-md, 
.spaced-md-btm {
	padding-bottom: var(--wp--custom--spacer--md);
}

.spaced-lg, 
.spaced-lg-top {
	padding-top: var(--wp--custom--spacer--lg);
}

.spaced-lg, 
.spaced-lg-btm {
	padding-bottom: var(--wp--custom--spacer--lg);
}

.spaced-xl, 
.spaced-xl-top {
	padding-top: var(--wp--custom--spacer--xl);
}

.spaced-xl, 
.spaced-xl-btm {
	padding-bottom: var(--wp--custom--spacer--xl);
}



/***  ARCHIVE  ***/

/* Entry Cols */

.entry-cols .entry-thumb { width: 100%; }

.entry-cols .entry-link {
	background-color: white;
	overflow: hidden;
	color: var(--wp--custom--dark--1);
	border-radius:var(--wp--custom--radius--lg);
	box-shadow: 0px 32px 120px -25px rgba(0, 0, 0, 0.08);
}

.entry-cols .entry-link:hover {transform: translateY(-3px);}

.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--secondary--main);}

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

@media screen and (min-width: 601px) and (max-width: 1200px) {
	.entry-cols .entry-title { font-size: 1.5em; }
}

/* 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 .fa, 
.archive-pagination a:hover .fa {
	color: inherit !important;
	transition: all 0ms ease-in-out;
}



/***  SINGLE  ***/





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



/***  CTA BAR  ***/

.cta-bar {
	padding-top: var(--wp--custom--spacer--xxl);
	padding-bottom: var(--wp--custom--spacer--xxl);
	background-color: var(--wp--custom--primary--main);
	color: white;
}

.cta-bar h1, 
.cta-bar h2, 
.cta-bar h3, 
.cta-bar h4, 
.cta-bar h5, 
.cta-bar h6 {color: white!important;} 




/***  FOOTER  ***/

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

.footer a {
	color: white;
}

.footer a:hover {
	text-decoration: none;
	color: var(--wp--custom--primary--light);
}

.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5,
.footer h6 {
	color: var(--wp--custom--primary--light)!important;
}


/***  6.3 BOTTOM BAR  ***/

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

.bottom-bar a {
	color: white;
}

/* Menus */

.bottom-bar .menu a {
	color: white;
}

.bottom-bar .menu a:hover {
	text-decoration: none;
	color: var(--wp--custom--primary--light);
}





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

/* Add custom theme styles here */


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

.hp-banner .wp-block-button a {
	color: var(--wp--custom--dark--1);
}

.hp-banner .wp-block-button a:hover {
	color: white;
}

.testimonial-box {
  background-color: transparent;
  background-image: linear-gradient(20deg, white -20%, var(--wp--custom--light--3) 100%);
  padding:80px 50px 80px 50px;
}

.no-grbox {
	padding:0 50px 0 50px;
}

.img-style img {
	padding: 5px;
	background: linear-gradient(to right, var(--wp--custom--primary--main), var(--wp--custom--primary--light));
}

/***  BOX COLS  ***/

.box-cols .wp-block-column,
.box-col.wp-block-column {
  display:block;
  position:relative;
  padding: 30px !important;
  background-color: white;
  box-shadow: 0px 32px 120px -25px rgba(0, 0, 0, 0.08);
  border-radius: var(--wp--custom--radius--md);
  min-height:220px;
}

/***  LOGO COLS  ***/

.logo-cols .wp-block-column img {
  -webkit-transition: all 400ms ease-in-out;
  transition: all 400ms ease-in-out;
}

.logo-cols .wp-block-column a img:hover { transform: scale(1.025); }


/** Full Width Block **/

.services-block .wp-block-column {
 -webkit-transition: all 400ms ease-in-out;
  transition: all 400ms ease-in-out;
}

.services-block .wp-block-column a:hover {
  text-decoration:none!important;
}

.services-block .wp-block-column:hover .wp-block-cover__background.has-black-background-color.has-background-dim{
    opacity: 0.85; /* Adjust opacity on hover */
    transition: background-color 0.3s, opacity 0.3s;
}

@media screen and (max-width: 900px) {
	.services-block { gap: 0 !important; }
	
	.services-block .services { margin: 0; }
	
	.services-columns { 
		margin-top: 0 !important; 
		margin-bottom: 0 !important; 
	}
}

/***  TEAM  ***/
.member-cols .member-box{
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.member-cols .member.active .member-box, 
.member-cols .member-box:hover {transform: translateY(-3px) scale(1.05); transition-duration: 500ms;}

.member-cols .member-portrait {
	border-radius: var(--wp--custom--radius--xs);
	width: 100%;
}

.member-cols .member-title {
	color: var(--wp--custom--secondary--dark);
}

.member-cols .member-box:hover .member-title {color: var(--wp--custom--secondary--main);}

.member-cols .member-position {
	font-weight: 600;
	color: var(--wp--custom--primary--dark);
}

/** Media Queries

/* Tablets (Portrait) */
@media screen and (min-width: 1024px) and (max-width: 1366px) and (orientation: portrait) {
	.wp-block-column.about-blank.is-layout-flow.wp-block-column-is-layout-flow {
    flex-basis: 19%	!important;
	}

}


/* iPad Mini & iPad Air (Portrait) */
@media screen and (min-width: 768px) and (max-width: 834px) and (orientation: portrait) {
	.section-reverse { flex-direction: column-reverse;}
	 .services-block.wp-block-columns.is-layout-flex {flex-wrap: nowrap !important; }
	.badges img {
    width: 40%;
    height: auto;
	}
	.review-title {
    margin-top: 80px !important;
	}
	body.page-id-68 .wp-block-columns {
  flex-wrap: nowrap !important;
	}
	.button, .wp-block-button__link, .button-outline, .is-style-outline .wp-block-button__link {
    padding: 1em 2em;
	
	}
	.wp-block-buttons.is-content-justification-right {
    justify-content: center;
	}
	/** Logo Header**/
	.header-logo {
    max-height: 120px;
	}
}

/* Mobile */

@media screen and (max-width: 600px) {
  .section-reverse {
    flex-direction: column-reverse;
  }
h1 {
    font-size: 2.4em;
}
.about-us .wp-block-columns > .wp-block-column:nth-of-type(1) {
    margin-left: 15px !important;
}
.services-block.wp-block-columns.is-layout-flex {
    flex-wrap: wrap !important;
    gap: 0 !important;
    row-gap: 0 !important;
    column-gap: 0 !important;
  }

  .services-block.wp-block-columns > .wp-block-column {
    margin: 0 !important;
    padding: 0 !important;
  }

  .services-block.wp-block-columns > .wp-block-column > * {
    margin-bottom: 0 !important;
  }
	.wp-block-cover, .wp-block-cover-image {
		position: relative;
		margin-top: 0px;
	}
		.header-logo {
		max-height: 90px;
	}
}
/** More Services**/
.section.page-nav-bar-inner.service-nav-bar-inner {
    width: 70%;
    padding-bottom: 80px;
}
/* .entry-cols .entry-link .entry-title:after {
    content: '';
    display: block;
    width: 30px;
    margin: 10px auto;
    height: 2px;
    background-color: currentColor;
}
h3.entry-title.service-title {
    text-align: center;
} */

/* Review Section */

@media screen and (max-width: 1200px) {
	.review-sec--responsive .ndrsl-live-row { 
		flex-direction: column; 
		gap: 16px;
	}
}

@media screen and (min-width: 1201px) and (max-width: 1300px) {
	.review-sec--responsive h3 { font-size: 1.4em; }
}

@media screen and (min-width: 769px) and (max-width: 900px) {
	.review-sec--responsive h3 { font-size: 1.4em; }
}

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

/* Single Posts */
.banner .post-cat-link { 
	color: white; 
	border-bottom: 1px dashed white;
}

.banner .post-cat-link:hover { 
	text-decoration: none;
	border-bottom-style: solid; 
}

