/*
Theme Name: Refive Child Theme
Theme URI: https://refive.ch
Description: Refive Child Theme
Author: Refive
Textdomain: qi
Author URI: https://refive.ch
Template: refive
Version: 1.2
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html 
*/


body {
	background-size: 700px !important;
}

/* Header */
#qodef-page-header .qodef-header-logo-link img {
    width: 100% !important;
}
#qodef-page-header .qodef-header-logo-link:focus {
    outline: none !important;
}

html {
  scroll-behavior: smooth;
}

body:not(.home) .menu-anchor-home {
  display: none;
}

.home .menu-anchor-pages {
	display: none;
}

/* Footer */

.footer-bottom-right {
	display: flex;
	gap: 30px;
	justify-content: end;
}

#qodef-page-footer-bottom-area p {
	font-size: 14px;
}

/* Typing */
.typewrite {
	color: #15DFB9;
	display: inline;
}
.typewrite + .wrap {
	border-right: 3px solid #000;
	height: 25px;
	display: inline-block;
	margin: 0 5px 0 2px;
	opacity: 1;
	animation: typing 3.5s steps(40, end), blink-caret .75s step-end infinite;
}
/* The typewriter cursor effect */
@keyframes blink-caret {
  from, to { opacity: 0; }
  50% { opacity: 1; }
}

/* Buttons */

.qodef-qi-button.qodef-layout--outlined {
	border-color: #15DFB9;
	border-radius: 0;
	padding: 5px 20px !important;
}

.qodef-qi-button.qodef-layout--outlined,.qodef-qi-button.qodef-layout--outlined::after {
  padding: 10px 50px;
  font-size: 20px;
	border-width: 1px;
  border-radius: 0px;
  color: #000;
  background-color: transparent;
  position: relative;
}

.qodef-qi-button.qodef-layout--outlined::after {
  --move1: inset(50% 50% 50% 50%);
  --move2: inset(31% 0 40% 0);
  --move3: inset(39% 0 15% 0);
  --move4: inset(45% 0 40% 0);
  --move5: inset(45% 0 6% 0);
  --move6: inset(14% 0 61% 0);
  clip-path: var(--move1);
  content: 'esus';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
}

.qodef-qi-button.qodef-layout--outlined:hover::after {
  animation: glitch_4011 1s;
  text-shadow: 10 10px 10px black;
  animation-timing-function: steps(2, end);
  text-shadow: -3px -3px 0px #15DFB9, 3px 3px 0px #15DFB9;
  background-color: transparent;
  border: 3px solid #15DFB9;
}

.qodef-qi-button.qodef-layout--outlined:hover {
  text-shadow: -1px -1px 0px rgba(21, 223, 185, 0.5), 1px 1px 0px rgba(21, 223, 185, 0.5);
}

.qodef-qi-button.qodef-layout--outlined:hover {
  background-color: transparent;
  border: 1px solid #15DFB9;
  box-shadow: 0px 10px 10px -10px #15DFB9;
}

.header-btn span, .header-btn span::after {
    padding: 12px 20px;
    border: 1px solid #15DFB9;
    background-color: transparent;
    position: relative;
	font-size: 20px;
}
.header-btn span::after {
  --move1: inset(50% 50% 50% 50%);
  --move2: inset(31% 0 40% 0);
  --move3: inset(39% 0 15% 0);
  --move4: inset(45% 0 40% 0);
  --move5: inset(45% 0 6% 0);
  --move6: inset(14% 0 61% 0);
  clip-path: var(--move1);
  content: 'esus';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
}
.header-btn span:hover::after {
    animation: glitch_4011 1s;
    text-shadow: 10 10px 10px black;
    animation-timing-function: steps(2, end);
    text-shadow: -3px -3px 0px #15DFB9, 3px 3px 0px #15DFB9;
    background-color: transparent;
    border: 3px solid rgb(0, 255, 213);
}
.header-btn span:hover {
    text-shadow: -1px -1px 0px #1df2f0, 1px 1px 0px #15DFB9;
    background-color: transparent;
    border: 1px solid rgb(0, 255, 213);
    box-shadow: 0px 10px 10px -10px rgb(0, 255, 213);
}
.header-btn {
    margin-top: 30px !important;
}
.header-btn a:hover,.header-btn a:focus{
	text-decoration: none !important;
}

@keyframes glitch_4011 {
  0% {
    clip-path: var(--move1);
    transform: translate(0px,-10px);
  }

  10% {
    clip-path: var(--move2);
    transform: translate(-10px,10px);
  }

  20% {
    clip-path: var(--move3);
    transform: translate(10px,0px);
  }

  30% {
    clip-path: var(--move4);
    transform: translate(-10px,10px);
  }

  40% {
    clip-path: var(--move5);
    transform: translate(10px,-10px);
  }

  50% {
    clip-path: var(--move6);
    transform: translate(-10px,10px);
  }

  60% {
    clip-path: var(--move1);
    transform: translate(10px,-10px);
  }

  70% {
    clip-path: var(--move3);
    transform: translate(-10px,10px);
  }

  80% {
    clip-path: var(--move2);
    transform: translate(10px,-10px);
  }

  90% {
    clip-path: var(--move4);
    transform: translate(-10px,10px);
  }

  100% {
    clip-path: var(--move1);
    transform: translate(0);
  }
}

.pulse {
  display: block;
  width: 50px !important;
  height: 50px;
  border-radius: 50%;
  background: #15DFB9;
  cursor: pointer;
  box-shadow: 0 0 0 rgba(204,169,44, 0.4);
  animation: pulse 2s infinite;
}
.pulse:hover {
  animation: none;
}

@-webkit-keyframes pulse {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(21,223,185, 0.6);
  }
  70% {
      -webkit-box-shadow: 0 0 0 20px rgba(21,223,185, 0);
  }
  100% {
      -webkit-box-shadow: 0 0 0 0 rgba(21,223,185, 0);
  }
}
@keyframes pulse {
  0% {
    -moz-box-shadow: 0 0 0 0 rgba(21,223,185, 0.4);
    box-shadow: 0 0 0 0 rgba(21,223,185, 0.6);
  }
  70% {
      -moz-box-shadow: 0 0 0 20px rgba(21,223,185, 0);
      box-shadow: 0 0 0 20px rgba(21,223,185, 0);
  }
  100% {
      -moz-box-shadow: 0 0 0 0 rgba(21,223,185, 0);
      box-shadow: 0 0 0 0 rgba(21,223,185, 0);
  }
}

/* General */
#scroll-to-contact {
	cursor: pointer;
}
.jsx-792821586.eacc-actions-confirm.eacc-actions-button {
    justify-content: center;
}
.follow-btn .elementor-button-content-wrapper {
    align-items: center;
}

.elementor-custom-embed-image-overlay img {
    border-radius: 30px !important;
}

span.mainColor::before {
    content: '';
    width: 20px;
    height: 20px;
    display: inline-flex;
    background: #15DFB9;
    border: 1px solid #000;
    position: relative;
    top: -3px;
    margin-right: 5px;
}

.elementor-custom-embed-image-overlay:hover svg {
    transform: scale(1.2);
}

#qodef-back-to-top .qodef-back-to-top-icon {
	background-color: #fff;
	border-color: #fff;
}

/* Gravity Forms */

.gform_heading .gform_required_legend {
	display: none;
}

/* Responsive */

/* Mobile header */

#qodef-page-mobile-header .qodef-mobile-header-logo-link img {
	width: 100% !important;
}

#qodef-fullscreen-area {
	backdrop-filter: blur(15px);
}

@media only screen and (max-width: 1024px) {
	.qodef-fullscreen-menu-opener {
		width: 20px !important;
	}
	
	#qodef-fullscreen-area .qodef-fullscreen-menu-close {
		top: 25px;
		width: 15px;
		right: 30px;
	}
}

@media only screen and (max-width: 480px) {
	section.qodef-elementor-content-grid>.elementor-container, #qodef-page-footer .qodef-content-grid{
    	width: calc(100% - 40px) !important;
	}
	
	#qodef-page-mobile-header-inner {
		padding: 0 20px !important;
	}
	
	#qodef-fullscreen-area .qodef-fullscreen-menu-close {
		right: 20px;
	}
}

@media only screen and (min-width: 481px) and (max-width: 880px) {
	section.qodef-elementor-content-grid>.elementor-container, #qodef-page-footer .qodef-content-grid{
    	width: calc(100% - 60px) !important;
	}
	
	#qodef-page-mobile-header-inner {
		padding: 0 30px !important;
	}
}
@media only screen and (min-width: 1025px) and (max-width: 1440px) {
	.point-grid .elementor-icon svg {
		height: 350px !important;
		width: 100%;
	}
	.typewrite-grid.elementor-element {
    	margin-top: -56px !important;
	}
	.typewrite-grid-right .elementor-element-populated {
    	margin: 0px 25px 0 0 !important;
	}
}