/* Preloader container (unchanged) */
#custom-preloader {
  position: fixed;
  background: #EFF8FF;
  z-index: 9999;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: transform 0.6s ease, opacity 0.6s ease;
}

#animated-logo{
	transform: scale(1.3)
}
/* Animate logo drawing */
#animated-logo path {
  stroke: #032558;
  stroke-width: 1.5;
  fill: none;
  stroke-dasharray: 400;
  stroke-dashoffset: 400;
  animation: draw 1s ease forwards;
}

#animated-logo path:nth-child(1)  { animation-delay: 0s; }
#animated-logo path:nth-child(2)  { animation-delay: 0.2s; }
#animated-logo path:nth-child(3)  { animation-delay: 0.4s; }
#animated-logo path:nth-child(4)  { animation-delay: 0.6s; }
#animated-logo path:nth-child(5)  { animation-delay: 0.8s; }
#animated-logo path:nth-child(6)  { animation-delay: 1.0s; }
#animated-logo path:nth-child(7)  { animation-delay: 1.2s; }
#animated-logo path:nth-child(8)  { animation-delay: 1.4s; }
#animated-logo path:nth-child(9)  { animation-delay: 1.6s; }
#animated-logo path:nth-child(10) { animation-delay: 1.8s; }
#animated-logo path:nth-child(11) { animation-delay: 2.0s; }
#animated-logo path:nth-child(12) { animation-delay: 2.2s; }
#animated-logo path:nth-child(13) { animation-delay: 2.4s; }
#animated-logo path:nth-child(14) { animation-delay: 2.6s; }
#animated-logo path:nth-child(15) { animation-delay: 2.8s; }
#animated-logo path:nth-child(16) { animation-delay: 3.0s; }
#animated-logo path:nth-child(17) { animation-delay: 3.2s; }
#animated-logo path:nth-child(18) { animation-delay: 3.4s; }

@keyframes draw {
  to {
    stroke-dashoffset: 0;
  }
}

/* Fill after stroke drawing complete */
body.loaded #animated-logo path {
  transition: fill 1s ease;
  fill: #032558;
  stroke: none;
}

/* Final zoom effect on loader and logo */
#custom-preloader.zoom-out {
  animation: zoomOutBg 0.8s ease forwards;
}

#custom-preloader.zoom-out #animated-logo {
  animation: zoomOutLogo 0.8s ease forwards;
}

@keyframes zoomOutBg {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(1.5);
    opacity: 0;
  }
}

@keyframes zoomOutLogo {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.8);
  }
}





.category-shortcode .elementor-shortcode{
    display: flex;
    align-items: center;
    gap: 2rem;
}
.category-shortcode .cat{
    margin: 0;
    color: var( --e-global-color-accent );
    text-transform: capitalize;
    font-size: 24px;
    font-weight: 700;
}
.category-shortcode ul{
    display: flex;
    gap: 3rem;
    padding: 0;
}
.category-shortcode ul li{
    list-style: none;
}
.category-shortcode ul li a{
    color: #fff;
    text-transform: capitalize;
    font-size: 18/px;
}
.category-shortcode ul li.active a{
    color: #FFE78F;
}
.category-shortcode ul li a{
    color: #fff;
    text-transform: capitalize;
    font-size: 18/px;
}
.category-shortcode ul li{
    position: relative;
}
.category-shortcode ul li:before{
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    background: #fff;
    left: -16px;
    top: 0;
    bottom: 0;
    margin: auto;
}
.category-shortcode ul li.active:before{
    background: #FFE78F;
}



/* Main content fade-in */
body.loaded .site-content {
  opacity: 1;
  transition: opacity 1s ease;
}

.site-content {
  opacity: 0;
}

body.loaded #custom-preloader {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  display: none;
}


body{
	background: #070D20 !important;
}
.slideshow .swiper-pagination{
    width: fit-content;
    display: flex;
    left: 4rem;
    position: relative;
    bottom: 2rem !important;
	max-width: 1280px;
    margin: auto;
}
.slideshow .swiper-slide-inner{
	max-width: 1280px;
	margin: auto;
}
.slideshow .elementor-swiper-button-prev, .slideshow .elementor-swiper-button-next{
    position: relative;
    width: 48px;
    height: 20px;
        top: auto !important;
    bottom: 3rem;
	right: 4rem !important;
}
.slideshow .elementor-swiper-button-prev > svg, .slideshow .elementor-swiper-button-next > svg{
    display: none;
}
.slideshow .elementor-swiper-button-prev{
        left: auto !important;
    right: 4rem;
    bottom: 5rem;
}
.slideshow .elementor-swiper-button-prev:before{
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    background: url('data:image/svg+xml,<svg width="49" height="21" viewBox="0 0 49 21" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M19.5417 2.09383C19.5417 1.2304 19.0117 0.455523 18.207 0.14251C17.4023 -0.170502 16.488 0.0425544 15.9045 0.679034L0.550376 17.429C-0.0106865 18.0411 -0.157054 18.9269 0.177282 19.6869C0.511618 20.4469 1.26348 20.9376 2.09379 20.9376H46.7605C47.9168 20.9376 48.8542 20.0002 48.8542 18.8438C48.8542 17.6875 47.9168 16.7501 46.7605 16.7501H19.5417V2.09383Z" fill="%23FFE78F"/></svg>') no-repeat;
    width: 48px;
    height: 20px;
}
.slideshow .elementor-swiper-button-next:before{
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    background: url('data:image/svg+xml,<svg width="49" height="22" viewBox="0 0 49 22" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M29.3125 19.7598L29.3125 5.10352H2.09375C0.937404 5.10352 0 4.16611 0 3.00977C0 1.85342 0.937404 0.916018 2.09375 0.916018L46.7604 0.916016C47.5907 0.916016 48.3426 1.40666 48.6769 2.16669C49.0113 2.92671 48.8649 3.8125 48.3038 4.42456L32.9497 21.1746C32.3662 21.811 31.4519 22.0241 30.6472 21.7111C29.8425 21.3981 29.3125 20.6232 29.3125 19.7598Z" fill="%23FFE78F"/></svg>') no-repeat;
    width: 48px;
    height: 20px;
}
.slideshow .swiper-slide .swiper-slide-inner:before{
    content: "";
    position: absolute;
    width: 30%;
    height: 100%;
    left: -2rem;
	right: 0;
    top: 0;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(1px);
    box-shadow: inset -1px 0px 23px rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    background-image: linear-gradient(140deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
    z-index: 2;
}
.blur-box{
	background: rgb(255 255 255 / 7%);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(1px);
    box-shadow: inset -1px 0px 23px rgb(255 255 255 / 7%);
    background-image: linear-gradient(140deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
}
.slideshow .swiper-slide-contents{
    position: relative;
    z-index: 4;
}

.not-found{
	display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    row-gap: 1rem;
}
.not-found p{
	color: #fff;
    font-size: 24px;
    text-transform: uppercase;
}
.not-found span{
	display: block;
	width: 30%;
	height: 100%;
}
.not-found span img{
	width: 100%;
	height: 100%;
}

body:not(.page-id-25) .home-page{
	display: none;
}

body.page-id-25 .inner-logo{
	display: none;
}
body.page-id-25 .canvas-menu svg path{
	fill: #1C274C;
}

.rank-math-breadcrumb > p{
	display: flex;
	align-items: center;
	gap: 1rem;
}
.rank-math-breadcrumb > p > a:first-child{
	position: relative;
	font-size: 0;
    width: 24px;
    height: 24px;
    display: block;
}
.rank-math-breadcrumb > p > a:first-child:before{
	content: "";
	position: absolute;
	background: url(/wp-content/uploads/2025/07/Frame.svg) no-repeat;
	width: 24px; 
	height: 24px;
	inset: 0;
	margin: auto;
}
.rank-math-breadcrumb > p > span:not(.separator){
	    color: #fff;
    text-transform: uppercase
}
.rank-math-breadcrumb > p > span.separator{
	font-size: 0;
	position: relative;
	width: 6px;
	height: 12px;
	display: block
}
.rank-math-breadcrumb > p > span.separator:before{
	content: "";
	position: absolute;
	inset: 0;
	margin: auto;
	width: 6px;
	height: 12px;
	background: url(/wp-content/uploads/2025/07/Vector-635.svg) no-repeat center;
}


.title{
    position: relative;
}
.title:before{
    content: "";
    position: absolute;
    width: 13px;
    height: 13px;
    background: #fff;
    bottom: 6px;
}
.title .elementor-heading-title{
    padding-left: 1rem;
}

.yellow-title{
    position: relative;
}
.yellow-title:before{
    content: "";
    position: absolute;
    width: 13px;
    height: 13px;
    background: var( --e-global-color-accent );
    bottom: 6px;
}
.yellow-title .elementor-heading-title{
    padding-left: 1rem;
}



.project-row{
    width: 100%;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.project-row-wrapper{
    display: grid;
    grid-column: span 8 / span 8;
}

.projects_wrapper{
    display: flex;
    flex-direction: column;
    width: 100%;
}

.project-cat{
    display: grid;
    grid-column: span 4 / span 4;
}

.project-cat .project-cat_info{
    width: 100%;
    display: flex;
    flex-direction: column;
}
.project-cat .project-cat_info .subtitle{
	position: relative;
	font-family: 'Diodrum Arabic';
    color: #fff;
    text-transform: capitalize;
    font-size: 30px;
	padding-left: 1rem;
}
.project-cat_info .cayegory_title{
	font-size: 24px;
    color: #fff;
    text-transform: capitalize;
    margin: 0;
	position: relative;
	padding-left: 1rem;
}
.project-cat_info .cayegory_title:before{
	content: "";
	position: absolute;
    width: 8px;
    height: 8px;
    background: #fff;
    bottom: 14px;
    left: 0;
}
.project-cat_info ul{
	padding: 0;
	margin: 8px 0;
    display: flex;
    flex-direction: column;
    row-gap: 0.5rem;
}
.project-cat_info ul li{
	list-style: none;
	color: #e0ebff5e;
    font-size: 20px;
    text-transform: capitalize;
	cursor: pointer;
}
.project-cat_info ul li.active{
	color: #fff;
}
.project-cat .project-cat_info .subtitle:before{
	content: "";
    position: absolute;
    width: 13px;
    height: 13px;
    background: #fff;
    bottom: 14px;
    left: 0;
}
.project-cat_info .project-title{
	color: #FFE78F;
    font-size: 50px;
    font-weight: 700;
    text-transform: capitalize;
	line-height: 3.5rem;
}

.project-cat_info{
    direction: ltr;
    position: sticky;
    top: 0;
    height: fit-content;
}

.projects_wrapper .project_box{
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.projects_wrapper .project_box:nth-child(odd) {
  direction: rtl;
}
.projects_wrapper .project_box:nth-child(even) span.wave {
    left: -4rem;
    right: auto !important;
    transform: scaleX(-1);
}
.projects_wrapper .project_box:not(:first-child) {
  margin-top: -40px;
}


.projects_wrapper .project_box .project_box-info{
    display: flex;
    flex-direction: column;
    width: 100%;
	position: relative;
	z-index: 2;
}

.projects_wrapper .project_box .project_box-info .title{
    text-align: left;
    color: #fff;
    margin: 0;
    font-size: 26px;
    text-transform: capitalize;
}
.projects_wrapper .project_box .project_box-info .title:before{
display: none !important;
}

.projects_wrapper .project_box .project_box-info .info{
    width: 100%;
    position: relative;
    transition: all .4s ease;
}

.projects_wrapper .project_box .project_box-info .info .image_box{
    display: block;
    width: 100%;
}

.projects_wrapper .project_box .project_box-info .info .image_box img{
    width: 100%;
    height: 100%;
    object-fit: fill;
    display: block;
}

.projects_wrapper .project_box .project_box-info .info .cover{
    position: absolute;
    z-index: 2;
    bottom: 0;
    right: 0;
    background: #032558;
    width: 96px;
    height: 96px;
    transition: all .5s ease-out;
    display: flex;
    justify-content: center;
    align-items: center;
}

.projects_wrapper .project_box .project_box-info .info .cover .arrow{
    position: absolute;
    bottom: 2rem;
    right: 2rem;
    transition: all .4s ease;
}

.projects_wrapper .project_box .project_box-info .info:hover .cover{
    width: 100%;
    height: 100%;
    background: rgba(3, 37, 88, .8);
    backdrop-filter: blur(4px);
}
.projects_wrapper .project_box .project_box-info .info:hover .arrow{
    transform: rotate(170deg);
}
.project-row-wrapper .view-all{
	width: fit-content;
    margin: 4rem auto;
    background: #032558;
    color: #FFE78F !important;
    padding: .5rem 2rem;
    text-transform: uppercase;
    font-size: 18px;
	height: fit-content;
}

.projects_wrapper .project_box .project_box-info .info .info-project{
    direction: ltr;
    position: absolute;
    padding: 1rem;
    inset: 0;
    margin: auto;
    z-index: 3;
    display: flex;
    flex-direction: column;
    row-gap: 0;
    opacity: 0;
    transition: opacity .5s ease-in;
	text-transform: uppercase;
	width: 70%;
    align-items: flex-start;
    left: 0;
    right: auto;
}

.projects_wrapper .project_box .project_box-info .info:hover .info-project{
    opacity: 1;
}

.info-project .attr{
    display: flex;
    flex-direction: column;
    row-gap: .5rem;
    margin-bottom: .5rem;
}

.projects_wrapper .project_box .project_box-info .info .info-project .info-title{
    color: #FFE78F;
    font-size: 24px;
	margin: 0;
}

.projects_wrapper .project_box .project_box-info .info .info-project .info-description{
    color: #CDD3DE;
    font-size: 20px;
}

.projects_wrapper .project_box .project_box-index{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.projects_wrapper .project_box .project_box-index .index-card{
    display: flex;
    justify-content: center;
    align-items: center;
    background: #032558;
    border-radius: 100%;
    width: 124px;
    height: 124px;
}

.projects_wrapper .project_box .project_box-index .index-card .number{
    margin: 0;
    color: #FFE78F;
    font-size: 40px;
}

.projects_wrapper .project_box .project_box-index .wave{
    position: absolute;
    display: block;
    top: 4rem;
    right: -4rem;
    z-index: -1;
}
.projects_wrapper .project_box:nth-child(odd):not(:first-child) .project_box-info .title{
	padding-left: .5rem;		
}

@media (max-width: 768px){
	.slideshow .swiper-slide .swiper-slide-inner:before{
    width: 45%;
    left: 0.5rem;
}
	 .category-shortcode .elementor-shortcode{
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
    }
    .category-shortcode ul{
        margin-left: 2rem;
        gap: 1rem;
    }
    .category-shortcode .cat{
        font-size: 20px;
    }
    .category-shortcode ul{
        flex-direction: column;
    }
	
	.project-cat, .project-row-wrapper{
		grid-column: span 12 / span 12;
	}
	.project-cat_info .project-title{
		font-size: 32px;
		line-height: 2.5rem;
	}
	.projects_wrapper .project_box:not(:first-child){
		margin-top: -22px;
	}
	.projects_wrapper .project_box .project_box-info .title{
		font-size: 15px;
	}
	.projects_wrapper .project_box .project_box-info .info .cover{
		width: 48px;
		height: 48px;
	}
	.projects_wrapper .project_box .project_box-info .info .cover .arrow{
		    width: 35%; 
		    bottom: .5rem;
    right: .5rem;
	}
	.projects_wrapper .project_box .project_box-info .info:hover .arrow{
		    transform: rotate(170deg) scale(.4);
	}
	.projects_wrapper .project_box .project_box-info .info .info-project .info-title{
		font-size: 12px;
	}
	.projects_wrapper .project_box .project_box-info .info .info-project .info-description{
		font-size: 11px;
		margin: 0;
	}
	.info-project .attr{
		    row-gap: 0;
	}
	.projects_wrapper .project_box .project_box-index .index-card{
		    width: 72px;
    height: 72px;
	}
	.projects_wrapper .project_box .project_box-index .index-card .number{
		font-size: 24px;
	}
	.elementor-25 .elementor-element.elementor-element-6e79b6a:before{
		width: 19%;
	}
	.project-cat .project-cat_info .subtitle{
		font-size: 20px;
	}
	.project-cat .project-cat_info .subtitle:before{
		left: 0;
		width: 8px;
  		height: 8px;
	}
	.projects_wrapper .project_box .project_box-index .wave{
		right: -3rem;
		width: 70%;
	}
	.projects_wrapper .project_box .project_box-info .info .info-project{
		padding: .5rem;
	}
	.info-project .attr{
		margin-bottom: 0.2rem;
	}
	.not-found span{
		width: 70%;
	}
	.slideshow .elementor-swiper-button-prev, .slideshow .elementor-swiper-button-next{
		    right: 1rem !important;
    transform: translateY(2rem) scale(.5) !important;
	}
	.slideshow .swiper-pagination{
		padding: 0 2rem;
	}
	.slideshow .elementor-slide-heading{
		margin-bottom: 6px !important;
	}
	.slideshow .swiper-slide:before{
		left: .5rem;
		    width: 40%;
	}
	.swiper-slide-inner{
		padding: 18px;
	}
}
@media (min-width: 768px){
	.slideshow .swiper-slide-inner{
	padding: 6px !important;
}
	.full-width{
  position: fixed;
  inset: 0;
  margin: auto;
  width: 100%;
  height: 100vh; /* Make sure it covers full viewport height */
  pointer-events: none; /* So it doesn't block clicks */
  z-index: 0;
  max-width: 1280px;
}

body.page-id-25 .full-width::before,
body.page-id-25 .full-width::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 1px;
  background: #EFF8FF26;
}

body.page-id-25 .full-width::before {
    left: 30%;
    transform: translateX(41px);
}

body.page-id-25 .full-width::after {
left: 66%;
    transform: translateX(8px);
}
	.projects_wrapper .project_box:not(:first-child) .project_box-index{
	transform: translateY(2rem);
}
}