/*
Theme Name: Divi Child Theme
Theme URI: http://yourwebsite.com
Description: Child Theme For Divi
Author: Your Name
Author URI: http://yourwebsite.com
Version: 1.0.0
Template: Divi
*/
@font-face{
    font-family:"HelveticaNeueLTStd-Bd";
    font-display:swap;
    src:url("https://designandco.net/wp-content/uploads/et-fonts/HelveticaNeueLTStd-Bd.otf") format("opentype")
}
@font-face{
    font-family:"HelveticaNeueLTStd-UltLt";
    font-display:swap;
    src:url("https://designandco.net/wp-content/uploads/et-fonts/HelveticaNeueLTStd-UltLt.otf") format("opentype")
}
@font-face{
    font-family:"HelveticaNeueLTStd-Th";
    font-display:swap;
    src:url("https://designandco.net/wp-content/uploads/et-fonts/HelveticaNeueLTStd-Th.otf") format("opentype")
}
@font-face{
    font-family:"HelveticaNeueLTStd-Lt";
    font-display:swap;
    src:url("https://designandco.net/wp-content/uploads/et-fonts/HelveticaNeueLTStd-Lt.otf") format("opentype")
}
@font-face{
    font-family:"HelveticaNeueLTStd-Roman";
    font-display:swap;
    src:url("https://designandco.net/wp-content/uploads/et-fonts/HelveticaNeueLTStd-Roman.otf") format("opentype")
}
@font-face{
    font-family:"HelveticaNeueLTStd-Md";
    font-display:swap;
    src:url("https://designandco.net/wp-content/uploads/et-fonts/HelveticaNeueLTStd-Md.otf") format("opentype")
}
@font-face{
    font-family:"HelveticaNeueLTStd-Hv";
    font-display:swap;
    src:url("https://designandco.net/wp-content/uploads/et-fonts/HelveticaNeueLTStd-Hv.otf") format("opentype")
}

body {
  min-height: 100vh;
  /* mobile viewport bug fix */
  min-height: -webkit-fill-available;
}



html {
  height: -webkit-fill-available;
}

.mb-30{
	margin-bottom:30px;
}

.next-slide {
    width: 40px;
    height: 40px;
    margin-left: -20px;
    bottom: 30px;
    margin-top: -20px;
    box-shadow: inset 0 0 0 1px #fff;
    border-radius: 100%;
    position: absolute;
    left: 50%;
    border: none;
    outline: none;
    cursor: pointer;
    background: transparent;
    z-index: 99999;
}
.next-slide:before {
    content: '';
    width: 15px;
    height: 15px;
    margin-left: -8px;
    top: 12px;
	position: absolute;
    left: 50%;
    border-radius: 0;
    animation-duration: 1.5s;
    animation-iteration-count: infinite;
    animation-name: scrollArrow;
    background: url(https://s2.designcostaging.com/clients/designandco/wp-content/uploads/2024/12/down-arrow-icon.svg) no-repeat;
    transform: translateY(-50%);
}
@keyframes scrollArrow {
    0% {
        opacity: 1
    }
    100% {
        opacity: 0;
        transform: translateY(20px)
    }
}
.height120 {
    height: 120px;
}
.singlePage .hero-title{
/* 	text-transform:uppercase;	 */
}
.singlePage .hero-title,
.singlePage .hero-subtitle{
	color:#fff;
}
.singlePage .sortData h1,
.singlePage .sortData h2{
	font-size: 36px;
	line-height: 40px;
	font-family:"HelveticaNeueLTStd-Bd";
	color: #808080;
/* 	font-weight: 700; */
}
.singlePage .sortData p{
	font-family:"HelveticaNeueLTStd-Roman";
	font-weight:500;
	color:#808080;
	font-size: 20px;
	margin-bottom: 10px;
	line-height: 30px;
}
.singlePage .sortData .simpleData a.link{
	font-family:"HelveticaNeueLTStd-Bd";
	color: rgba(0,0,0,0.3);
	font-weight: 700;
}
.singlePage .sortData .simpleData a.link::before {
    background: rgba(0,0,0,0.3);
}
.singlePage #project-nav .next-project-wrap a.main-title {
    color: rgba(0,0,0,.3);
	font-family: 'HelveticaNeueLTStd-UltLt', Helvetica, Arial, Lucida, sans-serif;
	font-weight: 200;
	letter-spacing: 1.5px;
/* 	text-transform:uppercase; */
	text-decoration:none !important;
}
.singlePage #project-nav .next-project-wrap .main-title span {
    color: rgba(0,0,0,.3);
/*     -webkit-text-stroke: 1px rgba(0,0,0,.3); */
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
	font-family: 'HelveticaNeueLTStd-UltLt', Helvetica, Arial, Lucida, sans-serif;
	font-weight: 200;
}
.singlePage #project-nav .next-project-wrap .main-title:hover,
.singlePage #project-nav .next-project-wrap .main-title:hover span {
    color: #0d82c4;
    -webkit-text-stroke: 1px transparent;
}
/* .full .one_third img {
    width: auto;
} */
.singlePage .full .one_third img{
	aspect-ratio: 3 / 4;
}
.wp-block-separator {
    border-top: 1px solid rgba(0, 0, 0, .2);
    border-bottom: 1px solid rgba(0, 0, 0, .2);
    height: 25px;
    width: 100% !important;
    float: none;
    margin: 0;
    display: inline-block;
}
.mb-20{
	margin-bottom:20px !important;
}
/* Start Header Transparent */
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul{
	margin-right:0px;
}
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li {
    padding: 0px;
    margin-left: 40px;
}
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a {
    padding: 0;
    align-items: flex-start;
}
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:after{
	content: '';
	position: absolute;
	right: 0px;
	top: 26px !important;
	transform: unset;
	height: 2px;
	width: 0%;
	background: currentColor;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:hover,
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:focus,
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li.current_page_item>a:after{
	opacity:1;
}
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li.current_page_item>a:after,
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:hover:after,
#header-transparent .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:focus::after{
	width: 100%;
	left: 0;
}
/* End Header Transparent */

/* Start Footer */
#main-footer{
	display:none;
}
/* End Footer */

/* Start Studio Page */
.customIMGText .et_pb_blurb_container {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    left: 50%;
    pointer-events: none;
}
.studio .customIMGText .et_pb_blurb_content {
    height: 100%;
}
.studio .customIMGText .et_pb_main_blurb_image {
    margin: 0;
    height: 100%;
	position:relative;
	transition:all 0.3s ease;
	overflow: hidden;
}
.studio .customIMGText .et_pb_blurb_content span.et_pb_image_wrap {
    height: 100%;
}
/* .studio .customIMGText .et_pb_main_blurb_image:before {
    position: absolute;
    bottom: -154px;
    right: 30px;
    color: rgba(225,226,227,0.8);
    content: '&';
    z-index: 1;
    font-size: 260px;
    line-height: 1;
    font-family: ui-sans-serif;
} */
.studio .customIMGText .et_pb_main_blurb_image:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgb(13 130 196 / 0%);
	transition:background 0.3s ease;
}
.studio .customIMGText:hover .et_pb_main_blurb_image:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgb(13 130 196 / 63%);
	transition:background 0.3s ease;
}
.studio .customIMGText .et_pb_main_blurb_image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/* End Studio Page */

.smooth-scroll .et_builder_inner_content,
.smooth-scroll .et_builder_inner_content .et_pb_column{
	position: unset;
	z-index: 0;	
}

.et_right_sidebar .singlePage #main-content .container:before{
	display:none;
}
.gap-60 {
    height: 60px;
}

.preloader-wrap .siteLogo svg {
    width: 250px;
	height:135px;
}
.show-loader #ball{
    background: transparent;
}
/* .singlePageAjax #ball,
.single-portfolio #ball{
    display:none;
} */

.neon-dude figure.has-parallax {
	max-height: 90vh;
}
.bottomMenu{
	padding-top:14.7vh;
		
}
.bottomMenu .et_pb_row {
    padding: 0;
}

.bottomMenu .et_pb_row .menu-container .customMenu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
	padding:0px;
}

.bottomMenu .et_pb_row .et_pb_column {
    width: 100%;
}

.bottomMenu .et_pb_row .menu-container .customMenu a {
    font-family: 'HelveticaNeueLTStd-Bd', Helvetica, Arial, Lucida, sans-serif;
/*     font-weight: 700; */
    font-size: 18px;
    color: rgba(0, 0, 0, 0.25) !important;
    line-height: inherit;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    position: relative;
	text-decoration:none !important;
    display: inline-block;
}

.bottomMenu .et_pb_row .menu-container .customMenu a:after {
    content: '';
    position: absolute;
    right: 0px;
	bottom: -6px;
    height: 2px;
    width: 0%;
    background: currentColor;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}
.bottomMenu .et_pb_row .menu-container .customMenu a:hover{
	color:#0D82C4 !important;
}
.bottomMenu .et_pb_row .menu-container .customMenu a:hover::after {
    width: 100%;
    left: 0;
	background:#0D82C4;
}

.bottomMenu .et_pb_row .menu-container .customMenu .menu-item {
    line-height: 2em;
	list-style:none;
}

#footer-container {
	padding: 60px 50px 0;
	margin: 20px auto;
	text-transform: uppercase;
	color: rgba(0, 0, 0, .3);
	font-size: 14px;
	letter-spacing: 1px;
	font-family: 'HelveticaNeueLTStd-Lt', Helvetica, Arial, Lucida, sans-serif;
	font-weight: 300;
/* 	display:inline-block;
	transition: all 0.3s ease-in-out; */
}
.ajaxPage .scroll-content #footer-container{
	display:inline-block;
	transition: all 0.3s ease-in-out;
}
/* .page-id-28 #footer-container {
    padding-top: 0;
} */
.singlePage .sortData p sup {
    bottom: 5px;
}
@media(max-width:980px){
	.studio .et_pb_module_heading br {
		display: none;
	}
	.studio .et_pb_column.et-last-child {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-column-gap: 50px;
	}
	.studio .et_pb_column.et-last-child .et_pb_blurb {
		width: 100%;
	}
}
@media(max-width:767px){
	.studio .et_pb_column.et-last-child {
		display: grid;
		grid-template-columns: 1fr;
		grid-column-gap: 0px;
	}
}
.test iframe {
    width: 600px;
    height: 250px;
}


#page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: white;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

body.loading {
    overflow: hidden;
}


/* Fullscreen stage (height fixed via JS to handle iOS Safari) */
 .hs-stage {
	 position: fixed;                  /* pin to viewport */
	 top: 0; left: 0; right: 0; bottom: 0; /* initial; JS will set exact height */
	 width: 100%;
	 height: 100%;                     /* fallback; JS overrides with px */
	 background: #000;
	 z-index: 1;                       /* adjust if you have headers */
	 padding-top: env(safe-area-inset-top);
	 padding-bottom: env(safe-area-inset-bottom);
	 padding-left: env(safe-area-inset-left);
	 padding-right: env(safe-area-inset-right);
}

/* Slick container fills stage */
.hs-slider {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	background: #000;
}

/* Each slide fills screen */
.hs-slide {
	position: absolute;               /* slick fade stacks slides */
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Media covers */
.hs-slide img,
.hs-slide video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Avoid pointer capture by video */
.hs-slide video { pointer-events: none; }

/* Remove any focus outlines/gaps Slick may show */
.slick-slide { outline: none !important; }
.slick-list, .slick-track { height: 100% !important; }


/* Ensure slides always paint a background while media decodes */
.hs-stage, .hs-slider, .hs-slide {
  background-color: #000; /* or your preferred background */
}

/* Prevent layout jumps and ensure content covers */
.hs-slide img,
.hs-slide video {
  display: block;
  width: 100%;
  height: 100vh;         /* matches hsSetStageHeight */
  object-fit: cover;
  background-color: #000; /* fallback while first frame is not ready */
}

/* Make the fade overlap smoother for Safari */
.slick-slide {
  opacity: 0;
  transition: opacity 0.6s ease;
  -webkit-transform: translateZ(0); /* Safari GPU nudge */
  will-change: opacity;
}
.slick-current {
  opacity: 1;
}

/* Also help the track paint smoothly on Safari */
.slick-track, .slick-list {
  -webkit-transform: translateZ(0);
  will-change: transform;
}


.newsList {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 50px;
}
.newsList .newsListBox {
    width: calc(100% - 100px);
}
.newsList .newsListBox .newsThumb {
    margin-bottom: 15px;
}
.newsList .newsListBox .newsThumb img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    margin: 0;
    display: block;
}
.newsList .newsListBox .newsThumb{
	display:none;
}
.newsList .newsListBox .newsListBoxDate {
    display: block;
    color: #0d82c4;
	font-family: 'HelveticaNeueLTStd-Lt', Helvetica, Arial, Lucida, sans-serif;
	font-weight:700;
	margin-bottom:5px;
	font-size: 16px;
}
.newsList .newsListBox .newsListBoxDescription {
    font-size: 18px;
	line-height:1.4em;
	font-family: 'HelveticaNeueLTStd-Lt', Helvetica, Arial, Lucida, sans-serif;
	font-weight: 300;
    color: rgba(0, 0, 0, .5);
}

.liveSiteURL a svg {
    width: 21px;
    height: 21px;
}

.liveSiteURL {
    display: flex;
    align-items: center;
    justify-content: center;
	margin-top: 100px;
	margin-bottom: 20px;
}
.liveSiteURL a {
	display: flex;
	gap: 15px;
	align-items: center;
	font-size: 18px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-family: 'HelveticaNeueLTStd-Lt', Helvetica, Arial, Lucida, sans-serif;
	font-weight: 300;
	color: rgba(0, 0, 0, .27);
	transition: all 0.3s ease;
}
.liveSiteURL a:hover {
    color: #0d82c4;
}
.liveSiteURL a svg{
	transition: all 0.3s ease;
	fill: rgba(0, 0, 0, .27);
}
.liveSiteURL a:hover svg {
	fill: #0d82c4;
}
.galleryCustom .one_half,
.galleryCustom .one_half img,
.galleryCustom img{
    margin-bottom: 0 !important;
}
#ball.over-movie{
	background:transparent !important;
}
#ball.over-movie i {
    font-size: 36px !important;
}
.video-wrapper .video-cover:before{
    content: '\f04b';
    position: absolute;
    left: 50%;
    top: 50%;
    font-size: 60px;
    color: #fff;
    transform: translate(-50%, -50%);
    z-index: 1;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}
/* .video-wrapper.play:before{
	content: '\f04c';
    position: absolute;
    left: 50%;
    top: 50%;
    font-size: 60px;
    color: #fff;
    transform: translate(-50%, -50%);
    z-index: 1;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
} */
.singlePage .sortData h1 a,
.singlePage .sortData h2 a{
    display: inline-block;
    position: relative;
    margin-right: 12px;
	line-height: 40px;
	height: 40px;
}
.singlePage .sortData h1 a span,
.singlePage .sortData h2 a span{
	margin-right:0px;
}
.singlePage .sortData h1 a:after,
.singlePage .sortData h2 a:after {
    content: '';
    position: absolute;
    bottom: -5px;
    width: 100%;
    height: 2px;
    background: currentColor;
    left: 0;
}
.singlePage .sortData h1 a:hover,
.singlePage .sortData h2 a:hover{
	color:#0D82C4 !important;
}
.singlePage .sortData h1 a span:last-child,
.singlePage .sortData h2 a span:last-child {
    margin: 0;
}
#footer-container .btTop{
    transition: all 0.3s ease-in-out;
}
#footer-container:hover .parallax-element i,
#footer-container:hover .btTop{
    color: #0D82C4;
}

#showcase-carousel .swiper-wrapper,
.swiper-scrollbar-drag{
  transition-duration: 1000ms !important;
}


.logoGrid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-column-gap: 40px;
	grid-row-gap: 40px;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.logoGrid img {
	max-width: 100%;
}

.logoGrid {
	height: 100vh;
	position: relative;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none; /* Hide scrollbar in FF */
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.horizontalMarquees .et_pb_code_inner{
	display: flex;
	gap:60px;
}
.horizontalMarquees .horizontalGrid {
    display: flex;
    gap: 60px;
	max-width: max-content;
    width: max-content;
/*     animation: ticker 60s linear infinite; */
	animation: ticker 78s linear infinite;
}
.horizontalMarquees .horizontalGrid .logoLink{
	width: auto;
	height: auto;
	display: flex;
	align-items: center;
	justify-content: center;
}
.horizontalMarquees .horizontalGrid .logoLink img {
    max-height: 85px;
    max-width: 190px;
    object-fit: contain;
    margin: 0;
}
.horizontalMarquees:hover .horizontalGrid {
    animation-play-state: paused;
}
@keyframes ticker {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(calc(-100% - 60px));
    }
}

footer.et-l.et-l--footer .et_pb_row .et_pb_column {
    display: flex;
    align-items: flex-end;
    gap: 30px;
}
footer.et-l.et-l--footer .et_pb_row .et_pb_column img {
    margin-bottom: 0;
}
footer.et-l.et-l--footer .et_pb_row .et_pb_column a {
    text-decoration: none;
}
footer.et-l.et-l--footer .et_pb_row .et_pb_column .et_pb_module.teamLinks {
    margin-left: auto !important;
}
@media(max-width: 980px){
	.newsList {
		flex-wrap:wrap;
		gap: 30px;
	}
	.newsList .newsListBox {
		width: calc(100% - 30px);
	}
}
@media(max-width: 767px){
	.newsList {
		flex-wrap:wrap;
		gap: 30px;
	}
	.newsList .newsListBox {
		width: 100%;
	}
	footer.et-l.et-l--footer .et_pb_row .et_pb_column{
		flex-wrap: wrap;
	}
	footer.et-l.et-l--footer .et_pb_row .et_pb_column .et_pb_module.teamLinks {
		margin-left: 0 !important;
	}
}