/*
Theme Name: Hello Elementor Child Custom Styles 2
Description: Additional styles for the Hello Elementor child theme.
*/

body .foot-gradient-cont {
	position: relative !important;
	isolation: isolate;
}

body .foot-gradient-cont::before,
body .foot-gradient-cont::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	z-index: 10;
	display: block;
	width: 100%;
	height: 1px;
	pointer-events: none;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(0, 0, 0, 0.2) 50%,
		transparent 100%
	);
}

body .foot-gradient-cont::before {
	top: 0 !important;
}

body .foot-gradient-cont::after {
	bottom: 0 !important;
}

/* Infinite marquee text */
.marq-wrap {
	overflow: visible;
	clip-path: inset(-40px 0 -40px 0);
	width: 100%;
	padding: 0;
}

.marq-track {
	display: flex;
	align-items: flex-start;
	width: max-content;
	animation: marq-scroll 18s linear infinite;
	will-change: transform;
}

.marq-text {
	flex: 0 0 auto;
	padding-right: 56px;
	font-family: 'League Spartan', sans-serif;
	font-style: normal;
	font-weight: 900;
	font-size: 136px;
	line-height: 1;
	letter-spacing: -0.01em;
	text-transform: uppercase;
	white-space: nowrap;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.07) 0%, rgba(0, 0, 0, 0.07) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	text-fill-color: transparent;
}

@keyframes marq-scroll {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(-50%);
	}
}
/*Home page step form */
.step-form p.join-pdcst-head {
    font-family: 'League Spartan';
    font-style: normal;
    font-weight: 600;
    font-size: 32px;
	line-height: 1.3em;
    letter-spacing: -0.01em;
    color: #000000;
}
.step-form input[type="text"],
.step-form input[type="email"],
.step-form textarea {
    border: none;
    border-bottom: 2px solid #000;
    border-radius: 0;
    padding-bottom: 15px !important;
	outline: none;
	padding-left: 0 !important;
}
.step-form textarea{
	resize: none;

}
.step-form input[type="text"]::placeholder,
.step-form input[type="email"]::placeholder,
.step-form input[type="text"],
.step-form input[type="email"],
.step-form .gfield_checkbox  .gchoice label,
.step-form .ginput_container_radio .gchoice label{
font-family: 'Open Sans';
font-style: normal;
font-weight: 700;
font-size: 18px !important;
line-height: 28px;
color: #1A1A17;
}
.step-form .gfield_checkbox  .gchoice,
.step-form .ginput_container_radio .gchoice {
    border: 1px solid #000;
    border-radius: 5px;
    padding-left: 15px;
    margin-bottom: 15px;
    width: 100%;
	transition: 0.3s ease-in-out;
}
.step-form .gfield_checkbox  .gchoice:hover,
.step-form .ginput_container_radio .gchoice:hover {
    transform: scale(1.02);
    background-color: #000;
}
.step-form .gfield_checkbox  .gchoice:has(input:checked),
.step-form .ginput_container_radio .gchoice:has(input:checked){
	background-color: #000;
}
.step-form .gfield_checkbox  .gchoice:hover label,
.step-form .gfield_checkbox  .gchoice:has(input:checked) label,
.step-form .gfield_checkbox  .gchoice input:checked + label,
.step-form .ginput_container_radio .gchoice:hover label,
.step-form .ginput_container_radio .gchoice:has(input:checked) label,
.step-form .ginput_container_radio .gchoice input:checked + label{
	color: #fff;
}
.step-form .gfield_checkbox  .gchoice label,
.step-form .ginput_container_radio .gchoice label{
	    width: 100%;
		padding: 11px;
}
.step-form .gfield_checkbox  .gchoice:last-child,
.step-form .ginput_container_radio .gchoice:last-child{
	margin-bottom: 0;
}
 .step-form .gfield_checkbox,
 .step-form .ginput_container_radio {
	accent-color: #000000;
}
.step-form .gform_next_button,
input#gform_submit_button_1{
	float: right;
}
.step-form .gform_previous_button {
    background-color: #000 !important;
    color: #fff !important;
}
.step-form .gform_previous_button:hover {
    background-color: #fff !important;
    color: #000 !important;
}


/* Gravity Forms multi-step numbers + connectors */
.step-form .gf_page_steps {
    display: flex;
    align-items: center;
    gap: 0;
    border-bottom: none !important;
    padding-bottom: 26px;
    padding-left: 70px;
}

.step-form .gf_page_steps .gf_step {
    position: relative;
    display: flex;
    align-items: center;
    flex: 1;
    margin: 0 !important;
    opacity: 1;
}

/* Connector line */
.step-form .gf_page_steps .gf_step:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 42px;
    right: 2px;
    height: 4px;
    background-color: #D9D9D9;
    transform: translateY(-50%);
    z-index: 0;
    transition: background-color 0.3s ease-in-out;
    border-radius: 50px;
}

/* Active connector after completed step */
.step-form .gf_page_steps .gf_step.gf_step_completed:not(:last-child)::after {
    background-color: #000;
}

/* Step circle */
.step-form .gf_page_steps .gf_step_number {
    position: relative;
    z-index: 1;
    width: 40px;
    height: 40px;
    border: 2px solid #cfd5db;
    border-radius: 50%;
    background-color: #fff;
    color: #5c6b78;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
}

/* Hide Gravity Forms checkmark icon */
.step-form .gf_page_steps .gf_step_completed .gf_step_number::after {
    content: none !important;
    display: none !important;
}

/* Keep completed step number visible */
.step-form .gf_page_steps .gf_step_completed .gf_step_number {
    background-color: #000;
    border-color: #000;
    color: #fff;
}

/* Current active step */
.step-form .gf_page_steps .gf_step_active .gf_step_number {
    background-color: #000000 !important;
    border-color: #000000;
    color: #ffffff !important;
}

/* Incomplete future steps */
.step-form .gf_page_steps .gf_step_pending .gf_step_number {
    background-color: #EEEEEE;
    border-color: #EEEEEE;
    font-family: 'League Spartan';
    font-style: normal;
    font-weight: 500;
    font-size: 20px;
    text-align: center;
    letter-spacing: 0.02em;
    color: #000000;
}

/* Optional: hide empty labels if you only want numbers */
.step-form .gf_page_steps .gf_step_label {
    display: none;
}
.step-form .gform_wrapper.gravity-theme .gf_step_completed .gf_step_number::before {
    background-color: transparent !important;
    border-color: transparent !important;
}

.step-form .gform_validation_errors {
    display: none;
}

.step-form .gfield {
    position: relative;
}
.step-form .validation_message {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    z-index: 1;
    width: 30px !important;
    min-height: 25px !important;
    border-radius: 50px;
    padding: 5px 35px 5px 10px !important;
    overflow: hidden;
    font-size: 0 !important;
    background: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.00001 0C8.85666 0 10.6373 0.737551 11.9501 2.0504C13.263 3.36325 14.0005 5.14385 14.0005 7.0005C14.0005 8.85715 13.263 10.6378 11.9501 11.9506C10.6373 13.2634 8.85666 14.001 7.00001 14.001C5.14336 14.001 3.36276 13.2634 2.04991 11.9506C0.737062 10.6378 -0.000488281 8.85715 -0.000488281 7.0005C-0.000488281 5.14385 0.737062 3.36325 2.04991 2.0504C3.36276 0.737551 5.14336 0 7.00001 0ZM8.05001 4.298C8.57001 4.298 8.99201 3.937 8.99201 3.402C8.99201 2.867 8.56901 2.506 8.05001 2.506C7.53001 2.506 7.11001 2.867 7.11001 3.402C7.11001 3.937 7.53001 4.298 8.05001 4.298ZM8.23301 9.925C8.23301 9.818 8.27001 9.54 8.24901 9.382L7.42701 10.328C7.25701 10.507 7.04401 10.631 6.94401 10.598C6.89864 10.5813 6.86072 10.549 6.83707 10.5068C6.81342 10.4646 6.8056 10.4154 6.81501 10.368L8.18501 6.04C8.29701 5.491 7.98901 4.99 7.33601 4.926C6.64701 4.926 5.63301 5.625 5.01601 6.512C5.01601 6.618 4.99601 6.882 5.01701 7.04L5.83801 6.093C6.00801 5.916 6.20601 5.791 6.30601 5.825C6.35528 5.84268 6.39565 5.87898 6.41846 5.92609C6.44127 5.97321 6.4447 6.02739 6.42801 6.077L5.07001 10.384C4.91301 10.888 5.21001 11.382 5.93001 11.494C6.99001 11.494 7.61601 10.812 8.23401 9.925H8.23301Z' fill='%23FF0000'/%3E%3C/svg%3E") right center no-repeat !important;
    background-size: 25px !important;
    margin: 0 !important;
    border: 1px solid transparent !important;
}
.validation_message:hover {
	font-size: 10px !important;
	max-width: calc(100% - 20px) !important;
	width: auto !important;
	border: 1px solid #c02b0a !important;
	transition: all 0.3s ease-in-out;
	background-color: #fff !important;
}
.step-form .gform_wrapper.gravity-theme .gfield_error [aria-invalid=true]{
	border: none !important;
	border-bottom: 1px solid #c02b0a !important;
}
.step-form .gform_next_button{
background-image: url("data:image/svg+xml,%3Csvg width='18' height='17' viewBox='0 0 18 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.000686462 9.47531L0.000686209 7.49541H13.5771L7.49602 1.41429L8.91023 7.55191e-05L17.3955 8.48536L8.91023 16.9706L7.49602 15.5564L13.5771 9.47531L0.000686462 9.47531Z' fill='white'/%3E%3C/svg%3E%0A");
}
.step-form .gform_next_button:hover{
background-image: url("data:image/svg+xml,%3Csvg width='18' height='17' viewBox='0 0 18 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.000686356 9.47531L0.000686356 7.49541H13.5771L7.49602 1.41429L8.91023 7.55296e-05L17.3955 8.48536L8.91023 16.9706L7.49602 15.5564L13.5771 9.47531H0.000686356Z' fill='black'/%3E%3C/svg%3E%0A");
}
.step-form .gform_next_button {
    padding-right: 50px !important;
    background-repeat: no-repeat;
    background-position: center right 1em;
}
.step-form .gform_previous_button{
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='17' viewBox='0 0 18 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.3978 7.4954L17.3978 9.4753H3.8213L9.90242 15.5564L8.48821 16.9706L0.0029245 8.48535L8.48821 6.51479e-05L9.90242 1.41428L3.8213 7.4954L17.3978 7.4954Z' fill='white'/%3E%3C/svg%3E%0A");
}
.step-form .gform_previous_button:hover{
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='17' viewBox='0 0 18 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.3978 9.47531V7.49541H3.8213L9.90242 1.41429L8.48821 7.55296e-05L0.00292436 8.48536L8.48821 16.9706L9.90242 15.5564L3.8213 9.47531H17.3978Z' fill='black'/%3E%3C/svg%3E%0A");
}
.step-form .gform_previous_button{
	    padding-left: 50px !important;
    background-repeat: no-repeat;
    background-position: center left 1em;
}
/*Category filter */
.cat-filter search.e-filter button.e-filter-item{
    position: relative;
    width: 100%;
    justify-content: flex-start;
    overflow: visible;
}
.cat-filter search.e-filter button.e-filter-item::before{
    content: "";
    position: absolute;
    height: 1px;
    background-color: rgba(92, 92, 92, 0.15);
    width: 100%;
    left: 0;
    bottom: -30px;
}
.cat-filter search.e-filter button.e-filter-item:last-child:before{
    display: none;
}

/*Carousel dark pagination*/
.event-carousel {
  position: relative;
}

.event-carousel .elementor-swiper-button.elementor-swiper-button-prev {
  left: max(16px, calc(50% - 860px + 61px)) !important;
  right: auto !important;
}

.event-carousel .elementor-swiper-button.elementor-swiper-button-next {
  left: max(76px, calc(50% - 860px + 80px)) !important;
  right: auto !important;
}
.event-carousel .swiper-pagination.swiper-pagination-progressbar.swiper-pagination-horizontal {
top: calc(100% + 55px) !important;
  left: max(222px, calc(50% - 860px + 222px)) !important;
  right: max(16px, calc(50% - 860px + 16px)) !important;
  width: auto !important;
  transform: none !important;
}
.event-carousel .swiper-pagination-progressbar{
    background-color: rgba(255, 255, 255, 0.08) !important;
}
.event-carousel .elementor-swiper-button.elementor-swiper-button-prev:hover svg,
.event-carousel .elementor-swiper-button.elementor-swiper-button-next:hover svg,
.event-carousel .elementor-swiper-button.elementor-swiper-button-prev:focus svg,
.event-carousel .elementor-swiper-button.elementor-swiper-button-next:focus svg {
    filter: invert(1);
}
/*Post details*/
.podcst-postcontent p a {
    font-family: inherit;
    font-style: inherit;
    font-weight: 700;
    font-size: inherit;
    letter-spacing: inherit;
    text-decoration: underline;
    color: #5C5C5C;
}
.podcst-postcontent p a:hover{
    color: #000;
}
.podcst-postcontent ul {
    margin-bottom: 20px;
}
@media only screen and (max-width:1600px){
.event-carousel .elementor-swiper-button.elementor-swiper-button-next {
    left: max(36px, calc(50% - 860px + 80px)) !important;
    right: auto !important;
}
}

@media only screen and (max-width:1366px){
    .marq-text{
        font-size: 110px;
		
    }
	.step-form .gf_page_steps{
		padding-left: 24px;
	}
	.step-form p.join-pdcst-head{
		font-size: 27px;
		margin-bottom: 0;
	}
    .cat-filter search.e-filter button.e-filter-item::before{
        bottom: -18px;
    }
    .event-carousel .swiper-pagination.swiper-pagination-progressbar.swiper-pagination-horizontal {
    top: calc(100% + 58px) !important;
    left: max(160px, calc(50% - 860px + 222px)) !important;
}
}
@media only screen and (max-width:1024px){
    .marq-text{
        font-size: 80px;
    }
	.step-form .gf_page_steps .gf_step_pending .gf_step_number{
		font-size: 16px;
	}
	    .step-form p.join-pdcst-head {
        font-size: 24px;
        margin-bottom: 0;
    }
.step-form input[type="text"]::placeholder, .step-form input[type="email"]::placeholder, .step-form input[type="text"], .step-form input[type="email"], .step-form .gfield_checkbox  .gchoice label, .step-form .ginput_container_radio .gchoice label {
    font-size: 16px !important;
}
.event-carousel .swiper-pagination.swiper-pagination-progressbar.swiper-pagination-horizontal {
    top: calc(100% + 54px) !important;
    left: max(140px, calc(50% - 860px + 222px)) !important;
}
}
@media only screen and (max-width:767px){
    .marq-text{
        font-size: 50px;
    }
	    .step-form .gf_page_steps {
        padding-left: 0;
    }
	.step-form .gf_page_steps .gf_step_number {
    width: 28px !important;
    height: 28px !important;
    font-size: 14px !important;
}
.step-form .gf_page_steps .gf_step:not(:last-child)::after{
	left: 30px;
    right: 2px;
}
.step-form p.join-pdcst-head {
        font-size: 20px;
        margin-bottom: 0;
    }
    .event-carousel .elementor-swiper-button.elementor-swiper-button-prev {
    left: max(0px, calc(50% - 860px + 61px)) !important;
}
.event-carousel .elementor-swiper-button.elementor-swiper-button-next {
    left: max(14px, calc(50% - 860px + 80px)) !important;
}
.event-carousel .swiper-pagination.swiper-pagination-progressbar.swiper-pagination-horizontal {
    left: max(110px, calc(50% - 860px + 222px)) !important;
}
}
