/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.italic-font{
	font-family:"Libre Baskerville" !important;
	font-weight:400 !important;
	color:rgba(255,255,255,0.85) !important;
}
.hero-bg{position:relative;}
.hero-bg:before{
	background-image:radial-gradient(ellipse 80% 60% at 60% 40%, rgba(2,34,109,0.55) 0%, transparent 65%),
		radial-gradient(ellipse 50% 80% at 10% 80%, rgba(2,34,109,0.25) 0%, transparent 60%),
		linear-gradient(175deg, #000 0%, #010d2e 50%, #000 100%) !important
}
.hero-scan-line{
	position:absolute;top:0;left:0;right:0;
	height:2px;
	background:linear-gradient(90deg, transparent, rgba(2,34,109,0.8), transparent);
	animation:scan 4s ease-in-out infinite;
}
@keyframes scan{
	0%{top:0;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:676px;opacity:0}
}
.ticker-bar{overflow:hidden;}
.ticker-track{
	display:flex;gap:0;
	animation:ticker 40s linear infinite;
	width:max-content;
}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ticker-item{
	display:inline-flex;align-items:center;gap:1rem;
	padding:0 2rem;
	font-size:12px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;
	color:rgba(255,255,255,0.7);
	white-space:nowrap;
}
.ticker-sep{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,0.3)}


/* Header */
.nav-cta a{
	background: #02226d;
	color: #fff !important;
	padding: 9px 22px !important;
	border-radius: 5px;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	font-size: 13px !important;
	border: 1px solid rgba(255, 255, 255, 0.15);
	transition: background 0.2s !important;
}

.nav-cta a:hover {
	background: #032a85!important;
}

.current-menu-parent .current-menu-item a {
	color: #fff !important;
}

.current-menu-parent a .sub-arrow svg path {
	fill: #fff;
}

/* Slidere logo */
.logo-slider .elementor-widget-image-carousel .swiper .swiper-slide figure {
	line-height: 1;
}

/* Home: About */
#about {
	background: linear-gradient(180deg, #000 0%, #020c22 50%, #000 100%) !important;
}
#community,
#partners {
	background: linear-gradient(180deg, #000, #010c23, #000) !important;
}

#impact {
	background: linear-gradient(135deg, #010c23 0%, #000 40%, #020a1d 100%) !important;
	overflow: hidden;
}

/* Slider logos */
#slider-logos .swiper-slide img {
	background: #fff !important;
	border-radius: 10px !important;
	padding: 10px !important;
	width: 100% !important;
	height: 45px !important;
	object-fit: contain !important;
}

#slider-logos .swiper-slide figure {
	line-height: 1 !important;
}

/* Home: Stats */
.gradiant-text {
	background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0.7) 100%);	
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.gradiant-text .elementor-heading-title {
	background: linear-gradient(135deg, #fff, rgba(255, 255, 255, 0.6));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* Podcast Section */
#pod-sec .e-n-tabs-heading {
	max-width: 750px;
	margin-right: 0;
	align-self: end;
	top: -50px;
	position: relative;
	border-radius: 6px;
}


/* Newsletter Form */
.join-form{

	max-width:480px;
	margin:0 auto;
}

.join-form p {
	display:flex;
	gap:10px;
	justify-content: center;
}

.join-form .join-input{
	flex:1;
	padding:14px 20px !important;
	background:rgba(255,255,255,0.05);
	border:1px solid rgba(255,255,255,0.1) !important;
	border-radius:5px !important;
	color:#fff;
	font-family:'Outfit',sans-serif;
	font-size:14.5px;
	outline:none;
	transition:border-color 0.2s !important;
}

.join-form .join-input::placeholder{color:rgba(255,255,255,0.3)}
.join-form .join-input:focus{border-color:rgba(2,34,109,0.6);background:rgba(2,34,109,0.1)}


.join-form .btn-primary{
	background:#02226D;
	color:#fff;
	padding:14px 30px;
	border-radius:5px;
	font-weight:600;font-size:14.5px;letter-spacing:0.04em;
	border:1px solid rgba(255,255,255,0.15);
	transition:all 0.25s;
	display:inline-flex;align-items:center;gap:8px;
	cursor:pointer;
}

.join-form .btn-primary:hover{background:#032a85;transform:translateY(-1px)}

.footer-legal {
	font-size: 12.5px;
	color: rgba(255, 255, 255, 0.25);
}

.footer-legal a {
	color: rgba(255, 255, 255, 0.35);
	transition: color 0.2s;
}

.footer-legal a:hover {
	color: rgba(255, 255, 255, 0.6);
}

/* ULA Network */
#channels {
	background: linear-gradient(180deg,#000 0%,#020a20 60%,#000 100%);
}

.app-card {
	border-left: 3px solid #02226d !important;
}

#showcase {
	background: linear-gradient(180deg,#000 0%,#010d2e 50%,#000 100%) !important;
}

.bg-grid {
	background-image: linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px) !important;
	background-size: 60px 60px !important;
	inset: 0
}

/* Service page */

/* Card */
.eco-node-block {
	position: relative;	
}

.eco-node-block:hover .eco-icon-wrap {
	background: #02226d !important;
	border: 1px solid #02226d !important;
}

.eco-node-block:not(:last-child)::after {
	content: '→';
	position: absolute;
	right: -12px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 18px;
	color: #8a99bb;
	z-index: 2;
	font-family: 'Libre Baskerville', serif;
}

/* Services page: List item */
.benefit-list {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 0.9rem;
	margin: 0;
	padding: 0;
}

.benefit-item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.75);
}

.benefit-check {
	width: 20px;
	height: 20px;
	border-radius: 4px;
	flex-shrink: 0;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 10px;
	margin-top: 2px;
}

/* CTA */
.cta-lines {
	background-color: #000 !important;
	position: relative !important;
}

.cta-lines:before {
	content : '';
	width: 100%;
	height: 100%;
	background: radial-gradient(ellipse 80% 70% at 50% 50%, rgba(2, 34, 109, 0.5), transparent) !important;
	position: absolute;
	top: 0;
	left: 0;
}

/* Featured Cards */
.text-opacity {
	opacity: .2;
}

/* Page: Supporters ULA Network */
.pillar-card {
	position: relative !important;
	/* 	overflow: hidden;  */
}

.pillar-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--navy), var(--navy-mid)) !important;
	transform: scaleX(0) !important;
	transform-origin: left;
	transition: transform .35s ease;
}

/* Events: form */
.submit-right{
	background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
	border-radius:12px;padding:2.6rem;backdrop-filter:blur(8px);
}
.submit-form-label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:1.6rem}
.form-group{margin-bottom:1.2rem}
.form-input{
	width:100%;padding:13px 16px !important;background:rgba(255,255,255,.07);
	border:1px solid rgba(255,255,255,.15) !important;border-radius:6px !important;
	color:#fff;font-family:"Outfit",sans-serif;font-size:14px;outline:none;
	transition:border-color .2s !important;
}
.form-input::placeholder{color:rgba(255,255,255,.3) !important;}
.form-input:focus{border-color:rgba(255,255,255,.4) !important;background:rgba(255,255,255,.1) !important;}
.submit-btn{
	width:100%;background:#fff;color:var(--navy);padding:14px !important;border-radius:6px;
	font-weight:700;font-size:14.5px;letter-spacing:.04em;text-align:center;
	cursor:pointer;transition:all .2s;margin-top:.5rem;
	border: 0 !important;
}
.submit-btn:hover{background:rgba(255,255,255,.9) !important;color:var(--navy); !important; transform:translateY(-1px) !important;}


/* Page: About */
#founder {
	background: linear-gradient(180deg, #000 0%, #010a1a 50%, #011548 100%);	
}

#timeline .timeline-dot {
	position: relative;
	z-index: 8;
	margin-top: 8px;

}

#timeline .timeline-dot:after {
	content: '';
	width: 1px;
	height: calc(100% + 8px);
	background: #d1d4db;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;	
}

#about-cta,
#cta-bg{
	background: linear-gradient(135deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.4) 50%, rgba(2, 34, 109, 0.3) 100%), radial-gradient(ellipse 80% 60% at 50% 50%, rgba(2, 34, 109, 0.15) 0%, transparent 70%), linear-gradient(160deg, #000814 0%, #010d2e 50%, #000 100%);
}

/* Page: Mission */
#sep,
#whoweserve,
#voices {
	background: linear-gradient(180deg, #000 0%, #010a1a 50%, #011548 100%);
}

/* Page: Media */
.eapps-instagram-feed-posts-grid-load-more {
	padding: inherit !important;
}

#find-us .find-card:hover .icon {
	opacity: 0.9;
	background: rgba(255, 255, 255, 0.12);
}

#find-us .find-card:hover .elementor-heading-title,
#find-us .find-card:hover .elementor-widget-text-editor p,
#find-us .find-card:hover .elementor-button {
	color: #fff;
}

#media-cta {
	background: linear-gradient(135deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.4) 50%, rgba(2, 34, 109, 0.3) 100%), radial-gradient(ellipse 80% 60% at 50% 50%, rgba(2, 34, 109, 0.15) 0%, transparent 70%), linear-gradient(160deg, #000814 0%, #010d2e 50%, #000 100%);
}

#cta-bg-2 {
	background: radial-gradient(ellipse 70% 60% at 50% 40%, rgba(29, 79, 216, .16) 0%, transparent 70%), linear-gradient(160deg, #03050c 0%, #050c22 60%, #000 100%);
}


/* Page: Blog */
#recent-posts .elementor-post__card .elementor-post__meta-data {
	padding-bottom: 24px !important;
}


/* Page: Leadership */
.elementor #our-team img {
	height: inherit !important;	
}

#our-team .eapp-team-showcase-member-card-info-job {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

/* Page: opportunities */
.journey,
.unq-bg-clr {
	background: linear-gradient(180deg, #000 0%, #020a20 60%, #000 100%);
}

/* Page: Apprenticeship Resources */
#sticky-nav.elementor-sticky--effects {
	z-index: 500;
	background: rgba(0, 0, 0, 0.85);
	backdrop-filter: blur(16px);
	border-bottom: 1px solid rgba(255,255,255,0.08);
	border-top: 1px solid rgba(255,255,255,0.08);
}


/* Footer */
.ula-footer .social-links img {
	display: block;
}

.ula-footer .foot-links ul li a {
	position: relative !important;
	display: inline-flex !important;
}

.ula-footer .foot-links ul li a:hover {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.ula-footer .foot-links ul li a::before {
	content: '';
	width: 12px;
	height: 1px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #fff !important;
}

.ula-footer .foot-links ul li a::after {
	content: '→';
	position: absolute;
	top: 50%;
	transform: translateY(-50%) !important;
	right: 0;
	left: initial;
	background: none;
	width: auto;
	height: 18px;
}

.join-form {
	max-width: 100%;
}

.ula-footer .join-form p {
	display: block;
}

.ula-footer .join-form p input {
	width: 100%;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 8px;
	padding: 14px 16px;
	color: #fff;
	font-size: 14px;
	outline: none;
	transition: all 0.3s ease;
}

.ula-footer .join-form p  .btn-primary {
	width: 100%;
	background: #fff;
	color: #000;
	border: none;
	border-radius: 8px;
	padding: 14px 24px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	cursor: pointer;
	transition: all 0.25s ease;
	position: relative;
	overflow: hidden;
	margin-top: 10px;
	text-align: center;
	display: block;
}

/* Media */
@media(min-width:1101px){

	/* Journey */
	.journey .jy-step {
		flex: 1 !important;
		text-align: center;
		min-width: 100px;
		position: relative;
		cursor: pointer;
	}

	.journey .jy-step:not(:last-child)::after{
		content:'' !important;
		position:absolute !important;
		top:18px;
		left:55%;
		right:-45%;
		height:1px;
		background:rgba(255,255,255,0.1);
		z-index:0;
	}


	.journey .jy-step .jy-num  {
		transition: .0s;
	}

	.journey .jy-step:hover .jy-num  {
		background: #02226D !important;
		border-color:#02226D !important;
	}


	.journey .jy-step:hover .jy-num .elementor-heading-title {
		color: #fff !important;
	}
}
@media(max-width:1100px){
	/* Page: Apprenticeship Resources */
	#sticky-nav .e-con-inner {
		display: block !important;
		white-space: nowrap;
		overflow: scroll auto;
		-webkit-overflow-scrolling: touch;
		-ms-overflow-style: -ms-autohiding-scrollbar;
		-webkit-user-select: none;
		-ms-user-select: none;
		user-select: none;
	}


	#sticky-nav .elementor-widget-button{ 
		display: inline-block;
		width: fit-content;
	}

	/* Journey */
	.journey .wrap {
		display: block;
		max-width: 470px;
		margin: 0 auto;
	}

	.journey .jy-step {
		display: flex;
		flex-direction: row;
		gap: 20px;
		align-content: center;
		flex-wrap: nowrap;
		margin-bottom: 20px;
	}

	.journey .jy-num {
		margin-bottom: 0;
	}

	.journey .jy-con {
		display: flex;
		flex-direction: row;
		gap: 20px;
	}
}

@media(max-width:1024px){

	/* Header */
	.nav-cta {
		margin: 20px 20px 30px !important;
	}
	.nav-cta a{
		display: inline-block;
	}

	.nav-cta a:hover {
		background: #032a85!important;
	}
}

@media(max-width:768px){

	/* Podcast Section */
	#pod-sec .e-n-tabs-heading {
		top: 0px;
	}

	.join-form p{flex-direction:column}

	/* Service page */

	/* Card */
	.eco-node-block:not(:last-child)::after {
		display: none;
	}

	/* Events: form */
	.submit-right {
		padding: 30px 20px !important;
	}

	.form-input{
		padding:11px 16px !important;
	}

	.submit-btn{
		padding:14px !important;
	}

	/* Page: Blog */
	#recent-posts .elementor-post__card .elementor-post__meta-data {
		padding-bottom: 20px !important;
	}

	/* Footer */
	.ula-footer .footer-menu ul {
		justify-content: flex-start;
		margin-left: 0;
	}

	.ula-footer .footer-menu ul li:not(:last-child) {
		margin-right: 20px;
	}

	.ula-footer .footer-menu ul li a {
		padding: 0 !important;
	}
}
}

@media(max-width:470px){

	/* Journey */	
	.journey .jy-con {
		display: block;
	}





	@media(max-width:400px){
		/* Page: About */
		#timeline .timeline-dot {
			margin-top: 6px;

		}

		#timeline .timeline-dot:after {
			height: calc(100% + 6px);
		}
	}
