/*
 Theme Name:     by ftzstudio.co
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         ftzstudio.ch
 Author URI:     https://ftzstudio.co
 Template:       Divi
 Version:        2025
*/
 
 
/* =Theme customization starts here
------------------------------------------------------- */

* Global Colors */

:root {
	--gray1: #1F2933;
	--gray2: #323F4B;
	--gray3: #3E4C59;
	--gray4: #52606D;
	--gray5: #616E7C;
	--gray6: #7B8794;
	--gray7: #9AA5B1;
	--gray8: #CBD2D9;
	--gray9: #E4E7EB;
	--gray10: #F5F7FA;
}

/* Text Module */

.ftz-text h1,
.ftz-text h2,
.ftz-text h3,
.ftz-text h4,
.ftz-text h5,
.ftz-text h6 {
    padding-bottom: .75em;
}

.ftz-text h1:not(:first-child),
.ftz-text h2:not(:first-child),
.ftz-text h3:not(:first-child),
.ftz-text h4:not(:first-child),
.ftz-text h5:not(:first-child),
.ftz-text h6:not(:first-child) {
    padding-top:1.25em;
}

.ftz-text ul li,
.ftz-text ol li {
    padding-bottom: .5em;
}

.ftz-text p:last-of-type {
    padding-bottom: 1em;
}
.ftz-text p:last-child {
    padding-bottom: 0;
}
.ftz-text blockquote p:last-of-type {
	padding-bottom:0;
}

.ftz-text blockquote {
    background: var(--gray10);
    padding: 25px 35px;
}
.ftz-text blockquote {
    position:relative;
}

.ftz-text blockquote:before {
    content: '“';
    position: absolute;
    font-size: 5em;
    top: .15em;
    left: 0;
    color:var(--gray1);
}
.ftz-text blockquote:after {
    content: '”';
    position: absolute;
    font-size: 5em;
    bottom: -0.45em;
    right: 0.25em;
    color:var(--gray1);
}


/* Buttons */
/*.ftz-btn.et_pb_button {
    line-height: 1!important;
}
*/

/*
______________________
   
   Header
______________________

*/
   
/* Column alignment */   
#ftz-header .et_pb_row {
    align-items: baseline;
}
#ftz-header .et_pb_row .et_pb_column:first-child {
    align-self: flex-end;
}

/* Hide CTA for small phones */
@media (max-width:430px) {
    #ftz-header .et_pb_column:nth-child(3) {
        display:none;
    }
}

/* Sticky Section background 
#ftz-header {
    backdrop-filter: blur(7px)
} */

/* Main Menu Module */
#ftz-header .et_pb_menu .et-menu>li {
    padding:10px 20px;
}

#ftz-header .et_pb_menu .et-menu>li a:hover {
    opacity:1;
}

/* Top Level Menu Hover Effect */
#ftz-header .et_pb_menu .et-menu > li a {
    position:relative;
}


#ftz-header .et_pb_menu .et-menu > li > a:hover:before {
	opacity:1;
	bottom:-10px;
}

/* Submenu */
#ftz-header .sub-menu {
    border:none;
    border-radius:0px;
    padding:20px;
    width:215px;
    transition:all .3s ease-in-out;
    top:calc(100% + 9px);
}

#ftz-header .sub-menu li {
    width:100%;
    padding:0;
}

#ftz-header .sub-menu li a {
    padding:0 0 10px;
    font-family:"Raleway", sans-serif;
    font-wieght:700;
    font-size:16px;
    text-transform:none;
    letter-spacing:0;
    background:none;
    transition:all .3s ease-in-out;
}

#ftz-header .sub-menu li:last-child a {
    padding:0;
}

#ftz-header .sub-menu li a:hover {
    padding-left:5px;
}

#ftz-header .nav li:hover > ul, #ftz-header .nav li.et-touch-hover > ul {
    top:calc(100% - 1px)
}  
  

/* Mobile Header Structure & Menu */
@media (max-width:980px) {

    #ftz-header .et_pb_row {
        display: flex;
        align-items:center;
    }
    #ftz-header .et_pb_column {
        margin-bottom:0;
    }
    #ftz-header .et_pb_column:nth-child(1) {
        order:1;
    }
    #ftz-header .et_pb_column:nth-child(2) {
        order:3;
    }
    #ftz-header .et_pb_column:nth-child(3) {
        order:2;
    }

    #ftz-header .et_pb_menu__wrap {
        justify-content:flex-end;
    }
    
    /* Mobile Menu */

    #ftz-header .mobile_menu_bar:before {
        font-size: 40px;
    }

    #ftz-header .opened .mobile_menu_bar:before {
        content:'\4d';
    }

    #ftz-header .et_mobile_menu {
        position: fixed;
        display: block!important;
        margin: 0!important;
        height: 100%!important;
        min-height: 100vh;
        padding: 100px 0 0!important;
        max-width: 300px;
        left: auto;
        right: -300px;
        top: 0;
        z-index: 39;
        transition: all 1s ease-in-out;
    }

    #ftz-header .opened .et_mobile_menu {
        right: 0;
    }

    #ftz-header .mobile_menu_bar {
        z-index: 40;
    }
	
	/* Position "Fixed" inside the Sticky Section fix */
    #ftz-header.et_pb_sticky * {
        transform:none!important;
    }
	
	/* Mobile Sub-menu */
    #ftz-header .sub-menu {
        width:auto;
        padding:0;
    }
    #ftz-header .sub-menu li a,
    #ftz-header .sub-menu li a:hover,
    #ftz-header .sub-menu li:last-child a {
        padding:10px 25px 10px 35px;
    }

}


/*
______________________
   
   Footer
______________________

*/


#ftz-footer .et-menu {
	display: block;
}

#ftz-footer .et_pb_menu {
	display: inline-block;
	min-width: 200px;
}
  

 #ftz-footer .et_pb_menu .et-menu > li a {
	position:relative;
	transition:all .3s ease-in-out;
	margin-bottom:10px;
}

/* animation
#ftz-footer .et_pb_menu .et-menu > li > a:before {
	content:'';
	display:block;
	position:absolute;
	bottom:10px;
	left:-60px;
	right:auto;
	height:10px;
	width:40px;
	background:url(img/zigzag.svg) repeat-x;
	animation: zigzagPlay 3s infinite linear;
	opacity:0;
	transition:all .3s ease-in-out;
} 
*/
#ftz-footer .et_pb_menu .et-menu > li > a:hover:before {
	opacity: 0.5;
	left: -40px;
}  
  
#ftz-footer .et_pb_menu .et-menu > li > a:hover {
	padding-left:10px;
}

  
/* Footer CTA Button */
/* animation
a.zigzag-footer-link {
	position:relative;
}

#page-container #et-boc #ftz-footer a.zigzag-footer-link:before {
	content: '';
	display: block!important;
	opacity: 1;
	position: absolute;
	bottom: -40px;
	left: auto;
	width: 120%;
	right: -35%;
	height: 30px;
	background: url(img/zig-big.svg) repeat-x;
	animation: zigzagPlay 1s infinite linear;
	transition: all .3s ease-in-out;
	animation-play-state: paused;
}

#page-container #et-boc #ftz-footer a.zigzag-footer-link:hover:before {
	animation-play-state:running;
}
*/   
  
/* Footer Mobile Menu */
@media (max-width:980px) {
	
	#ftz-footer .et_mobile_nav_menu {
		display: none;
	}
	
	#ftz-footer .et_pb_menu__menu,
	#ftz-footer .et_pb_menu__wrap {
		display: block;
	}
	
}

@media(max-width:320px) {
	#ftz-footer .et_pb_text {
		padding:0!important;
		background:none;
	}
	#ftz-footer .et_pb_button {
		transform:scale(0.75);
		margin-bottom:50px;
	}
}

