/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

header {
	z-index: 99999999;
}

footer {
	overflow-x: hidden;
}

.menu-toggle.main-header-menu-toggle {
	outline: none !important;
    border: none !important;
}

#ast-mobile-header .ast-primary-header-bar {
	background: transparent;
	border: none;
}
@media screen and (width <= 980px) {
	header {
		mix-blend-mode: normal !important;
	}
	.ast-builder-menu-mobile .main-navigation .menu-item:hover > .menu-link {
		background: #000 !important;
	}
	body.ast-main-header-nav-open header {
		background: #000 !important;
	}
}

.row-force-ratio {
	aspect-ratio: 1600/773;
}

h1, h2, h3, h4, h5, h6, p, a, li {
	font-family: 'TWKLausanne', sans-serif !important;
}

.font-kalice {
	font-family: 'Kalice-Trial', sans-serif !important;
}

.fs-italic {
	font-style: italic;
}

.navigation.post-navigation {
	display: none !important;
}

body, a {
	cursor: none !important;
}
.ast-single-post-featured-section.post-thumb.ast-article-image-container--wide {
	display: none;
}


header {
	position: fixed !important;
	inset: 0 !important;
	height: fit-content !important;
	mix-blend-mode: difference;
}

a, button {
	outline: none !important;
}

a:not(:has(>img), .spectra-container-link-overlay) {
	text-decoration: none !important;
	background: linear-gradient(to right, #fff, #fff);
	background-position: bottom right;
	background-repeat: no-repeat;
	background-size: 0% 1px;
	transition: background 300ms, background-position 0ms !important;
	
	&:hover {
		background-position: bottom left;
		background-size: 100% 1px;
	}
}
.base-underline a {
	text-decoration: none !important;
	background: linear-gradient(to right, #fff, #fff);
	background-position: bottom left;
	background-repeat: no-repeat;
	background-size: 100% 1px;
	transition: background 300ms, background-position 0ms !important;
	
	&:hover {
		background-position: bottom right;
		background-size: 0% 1px;
	}
}



.arrow-down a::after {
	content: '';
	background: center no-repeat url('data:image/svg+xml,<svg width="9" height="8" viewBox="0 0 9 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.5791 7.91992H2.08496V6.7168H6.53516L0.881836 1.06348L1.73633 0.208984L7.38965 5.87598V1.42578H8.59277L8.5791 7.91992Z" fill="%23F5F5F5"/></svg>');
	background-size: contain;
	height: 12px;
	width: 12px;
	display: inline-block;
	margin-left: 5px;
	margin-bottom: 2px;
	transition: rotate 300ms;
}
.arrow-down a:hover::after {
	rotate: -45deg
}
.arrow-up a::after {
	content: '';
	background: center no-repeat url('data:image/svg+xml,<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.9531 0.140625L13.9766 11.4258H11.6211V4.17188L2.1875 13.6523L0.488281 11.9531L9.94531 2.49609H2.62109V0.140625H13.9531Z" fill="%23F5F5F5"/></svg>');
	background-size: contain;
	height: 12px;
	width: 12px;
	display: inline-block;
	margin-left: 5px;
	margin-bottom: 2px;
	transition: rotate 300ms;
}
.arrow-up a:hover::after {
	rotate: 45deg
}



::selection {
	background: #F5D2D8;
	color: #000;
}

.selected-text {
	background: #F5D2D8;
	color: #000;
}

.fullwidth-img,
.fullwidth-img > figure,
.fullwidth-img img {
	width: 100% !important;
	object-fit: cover;
}

.fullheight-img,
.fullheight-img > figure,
.fullheight-img img {
	height: 100% !important;
	object-fit: cover;
}

.fullheight-video > video {
	height: 100%;
	object-fit: cover;
}


.arrow-down.wp-block-button .uagb-button__link::after {
	content: '';
	background: url('data:image/svg+xml,<svg width="9" height="8" viewBox="0 0 9 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.5791 7.91992H2.08496V6.7168H6.53516L0.881836 1.06348L1.73633 0.208984L7.38965 5.87598V1.42578H8.59277L8.5791 7.91992Z" fill="%23F5F5F5"/></svg>');
	width: 9px;
	height: 8px;
	display: inline-block;
	margin-left: 8px;
	transition: 200ms;
}
.arrow-down.wp-block-button:hover .uagb-button__link::after {
	rotate: -45deg;
}


body #content {
	
	
	& .ast-container {
		max-width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	
	& #primary {
		margin: 0 !important;
	}
	
	& article {
		margin: 0 !important;
		padding: 0 !important;
		
		& header {
			display: none;
		}
		
		& .entry-content > div {
			margin: 0 !important;
		}
	}
}




header .ast-above-header-bar {
	border: none;
}

header .ast-container {
	max-width: 1600px;
	padding: 0 !important;
	
	& .ast-builder-grid-row.ast-grid-center-col-layout {
		grid-template-columns: .6fr auto 1fr;
	}
}

#header-time {
	font-family: 'TWKLausanne', sans-serif;
	color: #F5F5F5;
	font-weight: 350;
	font-size: 20px;
	line-height: 1.3em;
	letter-spacing: -0.03em;
}


#ast-hf-menu-1 li {
	font-size: 20px;
	font-weight: 450;
	line-height: 1.5em;
	letter-spacing: -0.03em;
	outline: none !important;
	
	&:not(:last-child) {
		margin-right: 50px;
	}

	& a {
		outline: none !important;
		color: #F5F5F5;
		padding: 0;
	}
}

li#menu-item-62::after {
    content: attr(data-projects);
}
li#menu-item-61::after {
    content: attr(data-gallery);
}
li#menu-item-62::after,
li#menu-item-61::after {
    position: absolute;
    top: 0;
    right: -2.5ch;
    color: #F5F5F5;
    font-size: 15px;
    font-weight: 250;
    line-height: 1em;
    min-width: 2ch;
}


.cursor {
	--trs-easing: cubic-bezier(0.13, 0.75, 0.44, 0.99);
	--trs-duration: 200ms;
	--size: 20px;
	--size-hover: 100px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-width: var(--size);
	max-height: var(--size);
	border-radius: 50%;
	background: white;
	pointer-events: none;
	transform: translate(-50%, -50%);
	transition: max-width var(--trs-duration) var(--trs-easing),
				max-height var(--trs-duration) var(--trs-easing),
				background var(--trs-duration) var(--trs-easing);
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'TWKLausanne', sans-serif;
	font-weight: 350;
	color: #000;
	font-size: 20px;
	line-height: 1.1em;
	letter-spacing: -.03em;
	text-transform: uppercase;
	text-align: center;
	mix-blend-mode: difference;
}

.cursor.active {
	max-width: var(--size-hover);
	max-height: var(--size-hover);
	mix-blend-mode: normal;
	background: #F5D2D8;
	
	&.bigger {
		font-size: 18px;
		--size-hover: 110px;
	}
}

.cursor-trail {
	position: absolute;
	height: 100vh;
	inset: 0;
	pointer-events: none;
	overflow: hidden;
	z-index: 9999;
}

.cursor-trail .trail-img {
	position: absolute;
	width: 250px;
	height: auto;
	transform: translate(-50%, -50%) scale(1);
	opacity: 1;
	transition: transform 1.2s ease, opacity 1.2s ease;
}

.cursor-trail .trail-img {
	animation: fadeOutTrail 2.5s forwards;
}

@keyframes fadeOutTrail {
	0% {
		opacity: 1;
		transform: translate(-50%, -50%) scale(1);
	}
	100% {
		opacity: 0;
		transform: translate(-50%, -50%) scale(0.5);
	}
}









.presentation-img img {
	aspect-ratio: 685 / 878 !important;
    height: auto !important;
}

.services-img img {
  opacity: 0;
  transition: opacity 0.4s ease;
}

.services-img img.active {
  opacity: 1;
}


#page footer .marquee-row {
	max-width: none !important;
    width: fit-content !important;
		flex-wrap: nowrap;
	
	
	& > div {
		max-width: none !important;
		width: max-content !important;
		
		& p {
			margin-inline: .15ch;
		}
	}
	
	& > div:first-child {
		animation: marquee 80s linear infinite;
	}
	
	& > div:last-child {
		animation: marquee2 80s linear infinite -40s;
	}
}

@keyframes marquee {
	0% { transform: translatex(100%) }
	100% { transform: translatex(-100%)	}
}
@keyframes marquee2 {
	0% { transform: translatex(0%) }
	100% { transform: translatex(-200%)	}
}


@media screen and (width <= 767px) {
	.jade-in-text {
		height: 20px;
		width: 20px;
	}
	.cursor {
		display: none;
	}
	#content h1 {
		font-size: 45px !important;
	}
	#content h2 {
		font-size: 40px !important;
	}
	p {
		font-size: 16px !important;
	}
	.mobile-22 {
		font-size: 22px !important;
	}
	.mobile-25 {
		font-size: 25px !important;
	}
	
	.alignLeftMobile {
		text-align: left !important;
	}
	
	#page footer .marquee-row {
		
		& > div:first-child {
			animation: marquee 40s linear infinite;
		}

		& > div:last-child {
			animation: marquee2 40s linear infinite -20s;
		}
		
		& p {
			font-size: 60px !important;
		}
	}
}

