/* Stylcover Devis — styles scopés sous .scd-devis-wrap pour ne pas impacter le thème */
.scd-devis-wrap{
	--scd-primary:#074259;
	--scd-primary-deep:#052f3f;
	--scd-secondary:#F28D35;
	--scd-secondary-dark:#d9741f;
	--scd-tertiary:#F2622E;
	--scd-neutral:#E4EAF2;
	--scd-neutral-soft:#eef1f6;
	--scd-neutral-line:#dde4ee;
	--scd-ink:#1c2b32;
	--scd-grey:#5c6a70;
	--scd-radius:14px;
	--scd-radius-sm:8px;
	--scd-shadow:0 24px 60px rgba(7,66,89,.14);
	--scd-ff-head:'Noto Serif',Georgia,serif;
	--scd-ff-body:'Manrope',Arial,Helvetica,sans-serif;

	font-family:var(--scd-ff-body);
	color:var(--scd-ink);
	max-width:760px;
	margin:0 auto;
	box-sizing:border-box;
}
.scd-devis-wrap *,
.scd-devis-wrap *::before,
.scd-devis-wrap *::after{ box-sizing:border-box; }

.scd-devis-wrap h2{
	font-family:var(--scd-ff-head);
	font-weight:900;
	color:var(--scd-primary);
	font-size:26px;
	margin:0 0 8px;
	line-height:1.2;
}
.scd-devis-wrap .scd-hint{ color:var(--scd-grey); font-size:15px; margin:0 0 28px; }
.scd-devis-wrap .scd-noscript{ background:#fff3cd; color:#664d03; padding:14px 18px; border-radius:var(--scd-radius-sm); margin-bottom:20px; }

/* Boutons */
.scd-devis-wrap .scd-btn{
	display:inline-flex; align-items:center; justify-content:center; gap:10px;
	font-family:var(--scd-ff-body); font-size:15.5px; font-weight:700;
	padding:15px 30px; border-radius:100px; cursor:pointer; border:none;
	transition:all .25s ease; letter-spacing:.01em;
}
.scd-devis-wrap .scd-btn svg{ transition:transform .25s ease; flex:none; }
.scd-devis-wrap .scd-btn:hover svg{ transform:translateX(4px); }
.scd-devis-wrap .scd-btn-primary{ background:var(--scd-secondary); color:#fff; box-shadow:0 12px 28px rgba(242,141,53,.32); }
.scd-devis-wrap .scd-btn-primary:hover{ background:var(--scd-secondary-dark); transform:translateY(-2px); }
.scd-devis-wrap .scd-btn-primary:disabled{ opacity:.5; cursor:not-allowed; transform:none; }
.scd-devis-wrap .scd-btn-outline{ background:transparent; color:var(--scd-primary); border:1.5px solid rgba(7,66,89,.25); }
.scd-devis-wrap .scd-btn-outline:hover{ border-color:var(--scd-primary); }

/* Stepper */
.scd-devis-wrap .scd-stepper-wrap{ margin:0 auto 40px; padding:0 10px; }
.scd-devis-wrap .scd-stepper{ display:flex; align-items:flex-start; justify-content:space-between; position:relative; }
.scd-devis-wrap .scd-stepper::before{
	content:""; position:absolute; top:22px; left:44px; right:44px; height:2px;
	background:var(--scd-neutral-line); z-index:0;
}
.scd-devis-wrap .scd-progress-line{
	position:absolute; top:22px; left:44px; height:2px; background:var(--scd-secondary);
	z-index:1; transition:width .35s ease; width:0%;
}
.scd-devis-wrap .scd-step-dot{ position:relative; z-index:2; display:flex; flex-direction:column; align-items:center; gap:10px; flex:1; }
.scd-devis-wrap .scd-circle{
	width:44px; height:44px; border-radius:50%; background:var(--scd-neutral-line);
	color:var(--scd-primary); display:flex; align-items:center; justify-content:center;
	font-family:var(--scd-ff-head); font-weight:900; font-size:16px;
	transition:all .3s ease; border:2px solid var(--scd-neutral-line);
}
.scd-devis-wrap .scd-step-dot.scd-active .scd-circle{ background:var(--scd-secondary); color:#fff; border-color:var(--scd-secondary); }
.scd-devis-wrap .scd-step-dot.scd-done .scd-circle{ background:var(--scd-primary); color:#fff; border-color:var(--scd-primary); }
.scd-devis-wrap .scd-step-label{ font-size:11.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--scd-grey); }
.scd-devis-wrap .scd-step-dot.scd-active .scd-step-label{ color:var(--scd-primary); }

/* Carte du formulaire */
.scd-devis-wrap .scd-form-card{
	background:#fff; border-radius:20px; box-shadow:var(--scd-shadow); padding:44px;
}
.scd-devis-wrap .scd-form-error{
	background:#fdecea; color:#b3261e; border-radius:var(--scd-radius-sm);
	padding:14px 16px; margin-bottom:22px; font-size:14.5px; font-weight:600;
}
.scd-devis-wrap .scd-step-panel{ display:none; }
.scd-devis-wrap .scd-step-panel.scd-active{ display:block; animation:scd-fade-up .35s ease; }
@keyframes scd-fade-up{ from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }

/* Choix objet */
.scd-devis-wrap .scd-choice-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.scd-devis-wrap .scd-choice-card{
	border:2px solid var(--scd-neutral-line); border-radius:var(--scd-radius-sm);
	padding:22px 12px; text-align:center; cursor:pointer; transition:all .2s ease; background:#fbfcfe;
}
.scd-devis-wrap .scd-choice-card:hover{ border-color:var(--scd-secondary); }
.scd-devis-wrap .scd-choice-card.scd-selected{ border-color:var(--scd-secondary); background:rgba(242,141,53,.08); }
.scd-devis-wrap .scd-choice-card svg{ margin:0 auto 12px; display:block; color:var(--scd-primary); }
.scd-devis-wrap .scd-choice-card.scd-selected svg{ color:var(--scd-secondary); }
.scd-devis-wrap .scd-choice-label{ font-size:14.5px; font-weight:700; color:var(--scd-ink); }

/* Budget */
.scd-devis-wrap .scd-budget-display{ text-align:center; margin-bottom:30px; }
.scd-devis-wrap .scd-budget-display strong{ font-family:var(--scd-ff-head); font-size:48px; color:var(--scd-secondary); display:block; }
.scd-devis-wrap .scd-budget-display span{ color:var(--scd-grey); font-size:14.5px; letter-spacing:.04em; text-transform:uppercase; }
.scd-devis-wrap input[type=range]{ width:100%; height:6px; border-radius:100px; background:var(--scd-neutral-line); appearance:none; -webkit-appearance:none; outline:none; }
.scd-devis-wrap input[type=range]::-webkit-slider-thumb{ -webkit-appearance:none; width:26px; height:26px; border-radius:50%; background:var(--scd-secondary); border:4px solid #fff; box-shadow:0 4px 12px rgba(0,0,0,.25); cursor:pointer; }
.scd-devis-wrap input[type=range]::-moz-range-thumb{ width:26px; height:26px; border-radius:50%; background:var(--scd-secondary); border:4px solid #fff; box-shadow:0 4px 12px rgba(0,0,0,.25); cursor:pointer; }
.scd-devis-wrap .scd-range-labels{ display:flex; justify-content:space-between; margin-top:10px; font-size:13px; color:var(--scd-grey); }

/* Dropzone photos */
.scd-devis-wrap .scd-dropzone{
	display:block; border:2px dashed var(--scd-neutral-line); border-radius:var(--scd-radius-sm);
	padding:44px 20px; text-align:center; background:#fbfcfe; cursor:pointer; transition:all .2s ease;
}
.scd-devis-wrap .scd-dropzone:hover{ border-color:var(--scd-secondary); }
.scd-devis-wrap .scd-dropzone svg{ margin:0 auto 14px; color:var(--scd-primary); }
.scd-devis-wrap .scd-dropzone-title{ font-weight:700; font-size:15px; margin-bottom:4px; }
.scd-devis-wrap .scd-dropzone-hint{ font-size:13.5px; color:var(--scd-grey); }
.scd-devis-wrap .scd-dropzone input{ display:none; }
.scd-devis-wrap .scd-file-list{ margin-top:14px; display:flex; flex-wrap:wrap; gap:8px; }
.scd-devis-wrap .scd-file-list span{ background:var(--scd-neutral-line); color:var(--scd-primary); font-size:13px; font-weight:600; padding:6px 12px; border-radius:100px; }

/* Champs */
.scd-devis-wrap .scd-field{ margin-top:24px; }
.scd-devis-wrap .scd-field label{ display:block; font-size:14px; font-weight:700; margin-bottom:8px; color:var(--scd-primary); }
.scd-devis-wrap textarea,
.scd-devis-wrap input[type=text],
.scd-devis-wrap input[type=tel],
.scd-devis-wrap input[type=email]{
	width:100%; border:1.5px solid var(--scd-neutral-line); border-radius:var(--scd-radius-sm);
	padding:14px 16px; font-family:var(--scd-ff-body); font-size:15.5px; color:var(--scd-ink);
	background:#fbfcfe; transition:border-color .2s ease;
}
.scd-devis-wrap textarea:focus,
.scd-devis-wrap input:focus{ outline:none; border-color:var(--scd-secondary); }
.scd-devis-wrap textarea{ min-height:110px; resize:vertical; }
.scd-devis-wrap .scd-field-error{ display:block; color:#b3261e; font-size:13px; font-weight:600; margin-top:6px; min-height:16px; }
.scd-devis-wrap input.scd-invalid{ border-color:#b3261e; }

/* Contact */
.scd-devis-wrap .scd-contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.scd-devis-wrap .scd-col-full{ grid-column:1/-1; }
.scd-devis-wrap .scd-required{ color:var(--scd-secondary); }

/* Actions / récap */
.scd-devis-wrap .scd-step-actions{ display:flex; justify-content:space-between; align-items:center; margin-top:38px; gap:14px; }
.scd-devis-wrap .scd-step-actions.scd-justify-end{ justify-content:flex-end; }
.scd-devis-wrap .scd-recap{ background:var(--scd-neutral-soft); border-radius:var(--scd-radius-sm); padding:20px; margin-top:26px; font-size:14.5px; color:var(--scd-grey); }
.scd-devis-wrap .scd-recap strong{ color:var(--scd-primary); }

/* Succès */
.scd-devis-wrap .scd-success-panel{ text-align:center; padding:20px 0; }
.scd-devis-wrap .scd-success-check{
	width:72px; height:72px; border-radius:50%; background:var(--scd-primary); color:#fff;
	display:flex; align-items:center; justify-content:center; margin:0 auto 22px;
}
.scd-devis-wrap .scd-success-panel h2{ margin-bottom:10px; }
.scd-devis-wrap .scd-success-panel p{ color:var(--scd-grey); max-width:440px; margin:0 auto; }

@media(max-width:600px){
	.scd-devis-wrap .scd-form-card{ padding:28px 20px; }
	.scd-devis-wrap .scd-choice-grid{ grid-template-columns:repeat(2,1fr); }
	.scd-devis-wrap .scd-contact-grid{ grid-template-columns:1fr; }
	.scd-devis-wrap .scd-step-label{ display:none; }
}
