/**
 * Theme Name: Neoxica
 * Description: Child theme
 * Author: Lembu
 * Template: blocksy
 * Text Domain: blocksy
 */
/* Custom CSS starts here */

/*if using webfont,make sure add this to customizer css
 * :root { --theme-font-family: 'Geist';}
 */

body .elementor-heading-title,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
.elementor-button-text,
nav[class*=menu] .ct-menu-link,
a.ct-button{
    line-height: var(--theme-line-height);
}

.pretitle,
.pretitle p,
p.pretitle{
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 500;
	margin:0;
}
/* Home Recent Blog Posts*/
.wpcap-grid-container .wpcap-post .post-grid-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.post-grid-text-wrap {
	display: flex;
  flex-direction: column;
  flex-grow: 1;
	gap: 20px
}
.post-grid-text-wrap .read-more-btn {
	margin-top: auto;
	border-top: 2px solid #fff;
	padding: 15px 0;
}

header.entry-header.ct-container {
    border: 2px solid;
    border-right: 0;
    border-left: 0;
}
.elementor :is(.is-layout-flow,.is-layout-constrained) :where(h1,h2,h3,h4,h5,h6) {
    margin-block-end:0
}
[data-pagination=simple]>div .page-numbers{
	border-radius: 50%;
	background: transparent;
	border: 2px solid;
	color: #fff;
	
}
[data-pagination=simple] .page-numbers.current, [data-pagination=next_prev] .page-numbers.current{
	background:transparent;
	border-color: red;
}

h2.widgettitle {
    font-size: 30px;
    border-bottom: 2px solid;
    padding-bottom: 20px;
}
ul#menu-categories {
    padding: 0 10px;
}
ul#menu-categories li{
    padding-bottom:10px;
}

/* Related posts card container */
.ct-related-posts-items .related-entry-title {
    padding: 0 20px;
}
.ct-related-posts-items article > div {
    display: flex;
    flex-direction: column;
    height: 100%;
	border: 2px solid;
}
/* Wrapper for divider + button */
.related-divider-button-wrapper {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0px;
	padding-top: 20px;
	
}
/* Divider */
.related-divider {
    width: 100%;
    height: 2px;
    background: #fff;
}
/* Button */
.related-read-more {
    display:block;
    text-decoration: none;
    transition: all 0.3s ease;
	padding:20px;
}
.related-read-more {
    display: inline-flex;         
    align-items: center;
    gap: 10px;
}
.related-read-more .e-font-icon-svg {
    width: 1em;
    height: 1em;
	fill: currentcolor;
}
/* Author box container */
.ct-author-box {
    display: flex;
    align-items: center;
	gap: 20px;
}
/* Single Post Author */
/* Avatar */
.ct-author-avatar img {
    width: 60px;                 
    height: 60px;
    border-radius: 50%;           
    object-fit: cover;
}
/* Content */
.ct-author-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
/* Name */
.ct-author-name {
    font-size: 18px;
    margin-bottom: 5px;
}
/* Bio */
.ct-author-bio p {
    font-size: 14px;
    margin: 0;
    line-height: 1.5;
}
@media (min-width:961px)  {
	[data-id="menu"] .menu-button a.ct-menu-link{
	height:unset;
	}
	#header .menu-button a{
		background: var(--theme-palette-color-2);
		color: var(--theme-palette-color-8);
		padding: 8px 25px !important;
		margin-left: 10px;
	}
	#header .menu-button a.ct-menu-link:hover{
		background:var(--theme-palette-color-8);
		color:var(--theme-palette-color-1);
	}
	.goldframe:after{
		border-radius: 50px 0 50px;
	}
}
/*
 * Make Elementor width follow BLocksy
 */
.e-con.e-flex>.e-con-inner{
	width:var(--theme-block-width, var(--theme-container-width));
}
/************************************************************************************************
 * make Elementor button follows Customizer
************************************************************************************************/
body .elementor-button-content-wrapper {
    align-items: center;
}
body .elementor .elementor-button{
	background: var(--theme-button-background-initial-color);
    display: inline-flex;
    align-items: center;
	color: var(--theme-button-text-initial-color);
	fill: var(--theme-button-text-initial-color);
    justify-content: center;
    min-height: var(--theme-button-min-height);
    padding: var(--theme-button-padding);
    border: none;
    appearance: none;
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
    text-align: center;
    border-radius: var(--theme-button-border-radius, 3px);
    transition: all .12s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    --has-link-decoration: var(--false);
    font-family: var(--theme-button-font-family, var(--theme-font-family));
    font-size: var(--theme-button-font-size);
    font-weight: var(--theme-button-font-weight);
    font-style: var(--theme-button-font-style);
    line-height: var(--theme-button-line-height);
    letter-spacing: var(--theme-button-letter-spacing);
    text-transform: var(--theme-button-text-transform);
    text-decoration: var(--theme-button-text-decoration);
}
body .elementor-button:hover{
	background:var(--theme-button-background-hover-color);
	color: var(--theme-button-text-hover-color);
	fill: var(--theme-button-text-hover-color);
	transform:var(--theme-button-transform, translate3d(0, -3px, 0));
}
/*************************************************
 * CONTACT FORM 7 STYLING
 *************************************************/
.cf-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
    margin-bottom: 25px;
}
body .wpcf7 label:not(.wpcf7-form-control-wrap) {
    font-size: 14px;
    font-weight: 400;
}
/*
 * ERROR MESSAGE 
 */
.wpcf7 .wpcf7-form-control.wpcf7-text.wpcf7-not-valid,
.wpcf7 .wpcf7-not-valid {
	border: 1px solid #ff0000;
}
.wpcf7 .wpcf7-not-valid-tip {
	display: none;
}
.wpcf7 .wpcf7-validation-errors {
	background: #ff0000;
	border: 1px solid #ff0000;
	color: #ffffff;
	text-align: center;
}
.wpcf7 .wpcf7-response-output {
	margin: 2em 0;
	padding: 15px;
	border-radius: 0px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
    text-align: center;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border: none;
    background: red;
    color: #fff;
    border-radius: 0;
    font-style: normal;
    margin: 20px 0;
}
.wpcf7 .wpcf7-spam-blocked {
	background: #e2e2e2;
	border: 1px solid #ff0000;
	color: #383838;
}
.wpcf7 .wpcf7-mail-sent-ng {
	background: #fcf8e3;
	border: 3px solid #ac9163 ;
	color: #8a6d3b;
}
.wpcf7 .wpcf7-mail-sent-ok {
	background: #dff0d8;
	border: 3px solid #3c763d;
	color: #3c763d;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.center {
    margin: 0 auto;
    display: block;
    float: none;
	width: 100%;
}
.wpcf7-turnstile.cf-turnstile {
    text-align: center;
}
div.wpcf7 .wpcf7-spinner {
    display: block;
    vertical-align: middle;
    float: none; /* Ensures spinner doesn't pull button left */
    margin: 10px auto; /* Adjusts spacing to button */
}
/**********************************************
 *************FOR MOBILE VIEW******************
 *********************************************/
@media only screen and (max-width: 767px) {
	.cf-grid{
    grid-template-columns: 1fr;
  }
	#header [data-column=start]{
		border: none;
	}
	.pretitle,
	.pretitle p,
	p.pretitle{
		letter-spacing: 0.1em;
	}
}