/*
	Theme Name: Hello Elementor
	Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
	Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
	Author: Elementor Team
	Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
	Version: 3.4.6
	Stable tag: 3.4.6
	Requires at least: 6.0
	Tested up to: 6.8
	Requires PHP: 7.4
	License: GNU General Public License v3 or later.
	License URI: https://www.gnu.org/licenses/gpl-3.0.html
	Text Domain: hello-elementor
	Tags: accessibility-ready, flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready,
*/
/*animation CTA effet smooth*/
@keyframes pump {0%, 100% {transform: scale(1);}50% {transform: scale(1.05)}}
.pump-animation {animation: pump 0.6s ease-in-out 2;box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2)}
#startQuizBtn {transition: transform 0.3s ease, box-shadow 0.3s ease;}

/*welcome sreen*/
#welcomeScreen h3, #welcomeScreen p {text-align:center}
#welcomeScreen h3 {margin-bottom:2rem;color: #740F18;text-transform: uppercase;font-weight: bold;font-size: 22px}
#welcomeScreen p {margin-bottom:0;color: #740F18}
#welcomeScreen p.private span {font-size: 2rem}
/**/
.cta-button,.wpcf7 input[type=submit] {background:linear-gradient(135deg,#740F18 60%,#000 100%)}
.welcome-screen, .quiz-container.active {display:flex;flex-direction:column;justify-content:center;align-items:center; margin:-7rem auto 0;padding:50px 20px;animation:.5s fadeIn;background-color:white;border-radius:20px;box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.3)}
.welcome-screen.hidden {display:none}
.quiz-container.active form>div {margin-bottom:0}
.subtitle{font-size:18px;color:#666;margin-bottom:30px;line-height:1.6}
.benefits{list-style:none!important;margin: 30px auto 40px!important;min-width: 40%;text-align: center}
.benefits li {padding:5px 0 0 20px;position:relative;font-size:16px;line-height:1.5}
.cta-button,.wpcf7 input[type=submit]{color:#fff;border:none;padding:18px 40px;font-size:18px;font-weight:700;border-radius:50px;cursor:pointer;transition:.3s;width:100%;box-shadow:none!important;max-width:400px}
.cta-button:hover,.wpcf7 input[type=submit]:hover{transform:translateY(-2px)}
.cta-button:active{transform:translateY(0)}
.quiz-container{display:none}
.quiz-container.active {animation:none}
p.private {margin-top:2rem;margin-bottom:0; text-align:center}
.cf7mls_next.action-button {background-color:#740F18; border-radius:30px}
.cf7mls_back.action-button {border-radius:30px}
#quizContainer .wpcf7-form-control {display: flex;justify-content: center;flex-direction: column}
#quizContainer .wpcf7-list-item {margin-bottom: 1rem;font-weight: normal!important;margin-left: 0}
#quizContainer .wpcf7-list-item label {font-weight: normal!important}	

/*contact form*/
.wpcf7,.wpcf7-form{margin:0}
.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=text],.wpcf7 select,.wpcf7 textarea{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:border-color .3s}
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus{outline:0;border-color:#667eea}
.wpcf7-form-control-wrap{display:block;margin-bottom:20px}
.wpcf7-not-valid-tip{color:#e74c3c;font-size:14px;margin-top:5px}
body.page-id-26359 form h2 {margin:4rem auto 3rem;font-size:2rem;text-align:center}
body.page-id-26359 form p {text-align:center;font-size:16px}
.score .wpcf7-list-item {margin:1rem}

/*last step contact form */
.success-message{text-align:center;padding:20px;border-radius:12px}
.checkmark{font-size:48px;display:block;margin-bottom:15px;animation:.5s popIn}
@keyframes popIn{0%{transform:scale(0)}50%{transform:scale(1.2)}100%{transform:scale(1)}}
.success-message h3{font-size:24px;margin-bottom:10px;font-weight:700}
.intro-text{font-size:16px;color:#666;line-height:1.6;margin:0}
.form-fields,.form-group,.form-row{margin-bottom:20px}
.form-row{display:flex;gap:15px}
.form-group.half{flex:1;margin-bottom:0}
.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:600;font-size:14px}
.wpcf7-form-control-wrap{display:block;width:100%}
.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=text]{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:10px;font-size:16px;transition:.3s;font-family:inherit}
.wpcf7 input[type=email]:focus,.wpcf7 input[type=tel]:focus,.wpcf7 input[type=text]:focus{outline:0;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1)}
.wpcf7 input::placeholder{color:#aaa}
.cta-submit{background:linear-gradient(135deg,#740F18 60%,#000 100%)!important;color:#fff!important;border:none!important;padding:18px 40px!important;font-size:18px!important;font-weight:700!important;border-radius:50px!important;cursor:pointer!important;transition:.3s!important;width:100%!important;box-shadow:0 10px 30px rgba(102,126,234,.4)!important;margin-top:10px!important}
.cta-submit:hover{transform:translateY(-2px)!important;box-shadow:0 15px 40px rgba(102,126,234,.5)!important}
.cta-submit:active{transform:translateY(0)!important}
.wpcf7-not-valid-tip{color:#e74c3c;font-size:13px;margin-top:5px;display:block}
.wpcf7-response-output{margin:20px 0 0;padding:15px;border-radius:8px;text-align:center}
.wpcf7-validation-errors{border:2px solid #f39c12;background:#fff8e1;color:#f39c12}
.wpcf7-mail-sent-ok{border:2px solid #00c851;background:#e8f5e9;color:#00c851}
.success-message h3{font-size:20px;color:#740F18;line-height: 28px}
ul.resume.benefits {margin-bottom:20px}
ul.resume.benefits li p {margin-bottom:0}
.intro-text {font-size:15px}
p.spinner {display:flex;flex-direction:column;justify-content:center;align-items:center;margin:1rem 0 0}
#quizContainer input.cta-submit {font-size:16px!important;padding:16px 30px!important;min-width:300px;margin:0 auto}

/*quiz progress bar*/
.quiz-progress-bar{width:100%;height:8px;background:#f0f0f0;border-radius:10px;overflow:hidden;margin-bottom:30px;position:relative;box-shadow:inset 0 2px 4px rgb(0 0 0 / .1)}
.quiz-progress-fill{height:100%;background:linear-gradient(135deg, #740F18 60%, #000 100%);border-radius:10px;transition:width 0.8s ease;position:relative;box-shadow:0 2px 8px rgb(239 15 124 / .4)}
.quiz-progress-fill::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / .4),transparent);animation:shine 2s infinite}
@keyframes shine{to{left:100%}}
.quiz-step-counter{text-align:center;text-transform:uppercase;margin-bottom:15px;font-size:14px;color:#666;font-weight:600}
.quiz-step-counter .current-step{color:#740F18;font-size:18px;font-weight:700}
@keyframes pumpButton{0%,100%{transform:scale(1)}25%{transform:scale(1.05)}50%{transform:scale(.95)}75%{transform:scale(1.03)}}
}
.pump-animation {animation: pumpButton 0.6s ease-out;box-shadow: 0 15px 40px rgba(102, 126, 234, 0.6) !important;}

/*fake loading*/
#fake-loader-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgb(255 255 255 / .97);display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(3px)}
.loader-container{text-align:center;padding:40px}
.loader-spinner{border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;width:60px;height:60px;animation:spin 1s linear infinite;margin:0 auto 25px}
@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}
#loader-text{font-size:18px;font-weight:600;color:#333;transition:opacity 0.5s ease;opacity:1;max-width:400px;margin:0 auto;line-height:1.4}

@media only screen and (max-width: 1100px) {
  #bloc-quiz .vc_col-sm-8 {width: 100%;max-width: 100%!important}
  #bloc-quiz .vc_col-sm-8 .container {padding-left: 0px!important;padding-right: 0px!important}
}