/* Fenêtre de devis SublimX : styles isolés du site existant. */
dialog.sx-quote{--sx-white:#f2f2f2;--sx-gray:#b6b6b6;--sx-line:#343434;box-sizing:border-box;background:#101010!important;background-image:none!important;color:var(--sx-white)!important;width:min(760px,calc(100% - 28px));max-width:760px;max-height:94svh;border:1px solid #3a3a3a;padding:0;border-radius:3px;box-shadow:0 30px 140px #000b;font:14px/1.7 Montserrat,'Segoe UI',sans-serif;overflow:auto;text-align:left}
.sx-quote::backdrop{background:#000d;backdrop-filter:blur(7px)}.sx-quote *{box-sizing:border-box;text-shadow:none;-webkit-text-stroke:0}.sx-quote-trigger,.sx-quote-trigger *{text-shadow:none;-webkit-text-stroke:0}.sx-quote [hidden]{display:none!important}.sx-quote button,.sx-quote input,.sx-quote select,.sx-quote textarea{font:inherit}.sx-quote button{cursor:pointer}.sx-quote button:disabled{cursor:wait;opacity:.65}.sx-quote a{color:#ddd;text-decoration:underline}.sx-quote a:hover{color:#fff}.sx-quote :focus-visible{outline:2px solid #fff;outline-offset:4px}.sx-quote .sx-inner{position:relative;padding:42px 46px 27px;background:#101010;color:#f2f2f2}.sx-quote .sx-close{position:absolute;right:17px;top:12px;background:none;border:0;color:#d4d4d4;font:300 30px/1.2 'Segoe UI',sans-serif;padding:7px 10px;box-shadow:none;min-width:44px;min-height:44px}.sx-quote .sx-eyebrow{font:600 10px/1.6 Montserrat,sans-serif;letter-spacing:2.2px;color:#aaa;margin:0 25px 23px 0;text-shadow:none}.sx-eyebrow>span{padding:0 9px;color:#6f6f6f}.sx-quote h2#sx-title{font:500 37px/1.2 Montserrat,'Segoe UI',sans-serif!important;letter-spacing:-1.5px;margin:0 0 29px;color:#fff!important;text-align:left;text-shadow:none;-webkit-text-stroke:0;filter:none;text-transform:none}.sx-quote h2#sx-title>em{font:500 italic 1em/1.2 Georgia,serif;color:#bdbdbd!important;text-shadow:none;-webkit-text-stroke:0;filter:none}
.sx-quote .sx-progress{display:flex;justify-content:space-between;gap:10px;padding-bottom:18px;margin-bottom:26px;border-bottom:1px solid var(--sx-line);font-size:10px;color:#999}.sx-progress b{font-weight:500;margin-left:6px}.sx-quote .sx-progress>.sx-active{color:#f2f2f2}.sx-quote form{margin:0;display:block}.sx-quote fieldset{margin:0;padding:0;border:0;min-width:0}.sx-quote legend{font:500 17px/1.6 Montserrat,sans-serif;letter-spacing:-.35px;padding:0;margin:0 0 6px;color:#f2f2f2}.sx-quote legend:focus{outline:0}.sx-quote .sx-help{font:400 11px/1.8 Montserrat,sans-serif;color:#a7a7a7;margin:7px 0 19px;text-shadow:none}.sx-quote .sx-options{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:21px}.sx-quote .sx-options>label{position:relative;display:block;cursor:pointer;margin:0}.sx-options input{position:absolute;left:0;top:0;opacity:0;width:1px;height:1px}.sx-quote .sx-options label>span{display:flex;flex-direction:column;position:relative;min-height:132px;padding:19px 17px;background:#171717;border:1px solid #3a3a3a;transition:background .15s,border-color .15s;color:#ddd;box-shadow:none}.sx-options strong{font-size:11px;font-weight:600;line-height:1.5;letter-spacing:0}.sx-options small{font-size:9px;line-height:1.65;font-weight:400;color:#a8a8a8;margin-top:5px;display:block}.sx-quote .sx-options label i{font-size:22px;line-height:1;width:26px;margin-bottom:14px;color:#aaa}.sx-options label b{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:18px;height:18px;border:1px solid #626262;border-radius:50%;font-size:10px;color:transparent;font-style:normal;font-weight:400}.sx-quote .sx-options input:checked+span{border-color:#ccc;background:#242424}.sx-options input:checked+span b{background:#eee;border-color:#eee;color:#151515}.sx-options input:focus-visible+span{outline:2px solid #fff;outline-offset:3px}.sx-quote .sx-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:21px}.sx-quote .sx-grid label,.sx-quote .sx-field{font-size:11px;font-weight:500;display:block;color:#e3e3e3;line-height:1.7;margin:0}.sx-quote .sx-field{margin-top:17px}.sx-field small{font-size:10px;font-weight:400;color:#999}.sx-grid label>span,.sx-field>span{color:#bbb}.sx-quote input:not([type=checkbox]),.sx-quote textarea,.sx-quote select{width:100%;display:block;color:#f0f0f0;background:#1b1b1b;background-image:none;border:1px solid #454545;border-radius:0;padding:12px;margin-top:7px;min-height:45px;font-size:13px;line-height:1.6;box-shadow:none}.sx-quote input::placeholder,.sx-quote textarea::placeholder{color:#858585;opacity:1}.sx-quote select{color-scheme:dark;padding-right:25px;max-width:100%}.sx-quote textarea{min-height:110px;max-height:240px;resize:vertical}.sx-quote .sx-summary{background:#1c1c1c;border-left:2px solid #aaa;padding:14px 17px;margin-top:21px}.sx-summary>span{font-size:9px;color:#999;letter-spacing:1.6px}.sx-quote .sx-summary>p{font-size:11px;color:#e6e6e6;line-height:1.8;margin:6px 0 0}.sx-quote .sx-summary>p:last-child{color:#aaa;font-size:10px}.sx-quote .sx-trap{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.sx-quote .sx-consent{display:flex;gap:11px;align-items:flex-start;font-size:10px;line-height:1.8;color:#b9b9b9;margin:20px 0 14px;font-weight:400}.sx-quote .sx-consent>input{width:17px;height:17px;flex-shrink:0;accent-color:#ddd;margin:3px 0 0}.sx-quote .sx-privacy-toggle{display:inline;background:none;border:0;padding:0;font-size:10px;color:#e0e0e0;text-decoration:underline;min-height:0;box-shadow:none}.sx-quote .sx-privacy{padding:12px 15px;border:1px solid #414141;margin-bottom:15px}.sx-quote .sx-privacy>p{font-size:10px;line-height:1.9;color:#b9b9b9;margin:0}.sx-quote .sx-error{font-size:11px;color:#fff;line-height:1.8;border-left:2px solid #aaa;padding:8px 13px;background:#262626;margin:19px 0 0}.sx-quote .sx-error:empty{display:none}.sx-quote .sx-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--sx-line);padding-top:22px;margin-top:23px}.sx-quote .sx-actions>#sx-assurance{font-size:9px;line-height:1.7;color:#a7a7a7;margin-right:auto}.sx-quote .sx-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 22px;background:#eeeeee;background-image:none;border:1px solid #eee;border-radius:0;color:#111;font:600 11px/1.6 Montserrat,sans-serif;min-height:52px;box-shadow:none;letter-spacing:0;text-transform:none}.sx-quote .sx-button:hover{background:#d3d3d3;border-color:#d3d3d3;transform:none;color:#000}.sx-button>span{font-size:20px;line-height:1;font-weight:400}.sx-quote .sx-back{border:0;background:none;color:#c7c7c7;padding:12px 0;font-size:10px;font-weight:500;box-shadow:none}.sx-quote .sx-contact{border-top:0;font-size:10px;color:#909090;text-align:center;margin:25px 0 0;line-height:2}.sx-contact>a{white-space:nowrap}.sx-contact>span{padding:0 10px}.sx-quote .sx-success{text-align:center;padding:24px 5px 20px}.sx-success-icon{width:54px;height:54px;border:1px solid #888;display:grid;place-items:center;font-size:24px;border-radius:50%;margin:0 auto 25px;color:#fff}.sx-quote .sx-success h3{font:500 26px/1.4 Montserrat,sans-serif;color:#eee;letter-spacing:-.7px;margin:0 0 15px}.sx-quote .sx-success p{font-size:12px;line-height:1.9;color:#b4b4b4;max-width:430px;margin:0 auto 20px}.sx-quote #sx-reference{font-size:11px;color:#eee}.sx-quote .sx-success .sx-button{margin-top:10px}.sx-quote-trigger{display:flex!important;justify-content:space-between;align-items:center;gap:20px;border:1px solid #8b8b8b;background:#131313e8;color:#fff!important;border-radius:2px;padding:12px 16px;margin-top:22px;font:600 11px/1.6 Montserrat,sans-serif!important;text-decoration:none!important;position:relative;z-index:2;min-height:45px}.sx-quote-trigger:hover{background:#2b2b2b;border-color:#ddd}.sx-quote-trigger>span{font-size:19px;font-weight:400}.sx-contact-request{display:flex;align-items:center;justify-content:center;gap:25px;flex-wrap:wrap;margin:15px 0 35px;color:#ddd}.sx-contact-request>.sx-quote-trigger{margin:0;min-width:240px}.sx-contact-request>p{font-size:12px;margin:0}
@media(max-width:600px){dialog.sx-quote{width:calc(100% - 16px);max-height:96svh}.sx-quote .sx-inner{padding:37px 22px 23px}.sx-quote .sx-close{top:7px;right:7px}.sx-quote .sx-eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:22px}.sx-eyebrow>span{padding:0 5px}.sx-quote h2#sx-title{font-size:31px!important;letter-spacing:-1px;margin-bottom:25px}.sx-quote .sx-progress{font-size:8px;gap:6px;padding-bottom:17px;margin-bottom:23px}.sx-progress b{margin-left:4px}.sx-quote legend{font-size:15px;letter-spacing:-.2px}.sx-quote .sx-help{font-size:10px;line-height:1.85;margin-block:7px 17px}.sx-quote .sx-options{gap:9px;margin-top:18px}.sx-quote .sx-options label>span{padding:16px 11px;min-height:135px}.sx-options strong{font-size:10px}.sx-options small{font-size:8.5px;line-height:1.7}.sx-quote .sx-options label i{font-size:20px;margin-bottom:15px}.sx-options label b{top:11px;right:10px;width:16px;height:16px;font-size:9px}.sx-quote .sx-grid{grid-template-columns:1fr;gap:14px;margin-top:18px}.sx-quote .sx-grid label,.sx-quote .sx-field{font-size:10px}.sx-quote input:not([type=checkbox]),.sx-quote textarea,.sx-quote select{font-size:16px;line-height:1.5;padding:11px;min-height:45px}.sx-quote textarea{font-size:14px}.sx-quote .sx-field{margin-top:15px}.sx-quote .sx-summary{padding:13px 14px;margin-top:19px}.sx-quote .sx-summary>p{font-size:10px}.sx-quote .sx-consent{font-size:9px;margin-block:17px 13px}.sx-quote .sx-privacy-toggle{font-size:9px}.sx-quote .sx-actions{gap:13px;margin-top:19px;padding-top:19px;flex-wrap:wrap}.sx-quote .sx-button{padding:14px 17px;min-height:49px;font-size:10px;gap:17px}.sx-quote .sx-actions>#sx-assurance{font-size:8px}.sx-quote .sx-back{font-size:9px}.sx-quote .sx-error{font-size:10px}.sx-quote .sx-contact{font-size:8px;margin-top:23px}.sx-contact>span{padding:0 6px}.sx-quote .sx-success h3{font-size:23px}.sx-quote .sx-success p{font-size:11px}.sx-contact-request{gap:13px;margin-bottom:25px}.sx-contact-request>p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.sx-quote *{transition:none!important}}

/* Accents SublimX : repères, choix actifs et actions. */
.sx-quote{--sx-red:#bd1721;--sx-red-strong:var(--sx-red)}
.sx-quote .sx-eyebrow,.sx-quote .sx-progress>.sx-active{color:var(--sx-red)}
.sx-quote h2#sx-title>em{color:var(--sx-red)!important}
.sx-quote .sx-options input:checked+span{border-color:var(--sx-red);background:#241719}
.sx-quote .sx-options input:checked+span strong,.sx-quote .sx-options input:checked+span i{color:var(--sx-red)}
.sx-quote .sx-options input:checked+span b{background:var(--sx-red-strong);border-color:var(--sx-red-strong);color:#fff}
.sx-quote :focus-visible,.sx-quote .sx-options input:focus-visible+span{outline-color:var(--sx-red)}
.sx-quote .sx-grid label>span,.sx-quote .sx-field>span{color:var(--sx-red)}
.sx-quote .sx-summary{border-left-color:var(--sx-red)}
.sx-quote .sx-summary>span{color:var(--sx-red)}
.sx-quote .sx-consent>input{accent-color:var(--sx-red-strong)}
.sx-quote .sx-button{color:var(--sx-red-strong)}
.sx-quote .sx-button:hover{color:var(--sx-red)}
.sx-quote .sx-contact a[href^="mailto:"]{color:var(--sx-red);font-weight:500}
.sx-quote .sx-error{color:var(--sx-red);border-left-color:var(--sx-red);background:#2a1517}
.sx-quote-trigger>span{color:#bd1721}
.sx-quote #sx-next{background:var(--sx-red-strong);border-color:var(--sx-red-strong);color:#fff}
.sx-quote #sx-next:hover{background:#a40f19;border-color:#a40f19;color:#fff}

/* Écritures agrandies et renforcées sur chaque étape du formulaire. */
dialog.sx-quote{font-size:16px;font-weight:600}
.sx-quote .sx-eyebrow{font-size:13px;font-weight:700;line-height:1.8}
.sx-quote h2#sx-title{font-size:42px!important;font-weight:700!important;line-height:1.25!important}
.sx-quote h2#sx-title>em{font-weight:700}
.sx-quote .sx-progress{font-size:13px;font-weight:700}
.sx-quote .sx-progress b{font-weight:700}
.sx-quote legend{font-size:20px;font-weight:700;line-height:1.6}
.sx-quote .sx-help{font-size:14px;font-weight:600;line-height:1.8}
.sx-quote .sx-options label>span{min-height:164px;height:100%}
.sx-quote .sx-options strong{font-size:16px;font-weight:700;line-height:1.5}
.sx-quote .sx-options small{font-size:13px;font-weight:600;line-height:1.7}
.sx-quote .sx-options label b{font-size:12px;font-weight:700}
.sx-quote .sx-grid label,.sx-quote .sx-field{font-size:14px;font-weight:700;line-height:1.8}
.sx-quote .sx-field small{font-size:13px;font-weight:600}
.sx-quote input:not([type=checkbox]),.sx-quote textarea,.sx-quote select{font-size:16px;font-weight:600;line-height:1.65}
.sx-quote .sx-summary>span{font-size:13px;font-weight:700}
.sx-quote .sx-summary>p{font-size:14px;font-weight:600}
.sx-quote .sx-summary>p:last-child{font-size:13px;font-weight:600}
.sx-quote .sx-consent{font-size:13px;font-weight:600;line-height:1.9}
.sx-quote .sx-privacy-toggle{font-size:13px;font-weight:700}
.sx-quote .sx-privacy>p{font-size:13px;font-weight:600}
.sx-quote .sx-error{font-size:14px;font-weight:700}
.sx-quote .sx-button{font-size:14px;font-weight:700;min-height:56px}
.sx-quote .sx-button>span{font-size:22px;font-weight:600}
.sx-quote .sx-back{font-size:13px;font-weight:700}
.sx-quote .sx-actions>#sx-assurance{font-size:12px;font-weight:600}
.sx-quote .sx-contact{font-size:14px;font-weight:600}
.sx-quote .sx-contact a,.sx-quote .sx-contact a[href^="mailto:"]{font-weight:700}
.sx-quote .sx-success h3{font-size:30px;font-weight:700}
.sx-quote .sx-success p{font-size:15px;font-weight:600}
.sx-quote #sx-reference{font-size:14px;font-weight:700}
.sx-quote .sx-success-icon{font-size:28px;font-weight:700}
.sx-quote .sx-close{font-size:34px;font-weight:600}
.sx-quote-trigger{font-size:14px!important;font-weight:700!important;line-height:1.7!important}
@media(max-width:600px){
  .sx-quote .sx-eyebrow{font-size:11px;letter-spacing:1.4px}
  .sx-quote h2#sx-title{font-size:34px!important}
  .sx-quote .sx-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;font-size:12px;line-height:1.7}
  .sx-quote .sx-progress>span{min-width:0}
  .sx-quote .sx-progress b{display:block;margin-left:0;font-size:11px;overflow-wrap:break-word}
  .sx-quote legend{font-size:18px}
  .sx-quote .sx-help{font-size:13px}
  .sx-quote .sx-options label>span{min-height:170px}
  .sx-quote .sx-options strong{font-size:15px;overflow-wrap:break-word}
  .sx-quote .sx-options small{font-size:12px;overflow-wrap:break-word}
  .sx-quote .sx-grid label,.sx-quote .sx-field{font-size:14px}
  .sx-quote .sx-field small{font-size:12px}
  .sx-quote .sx-actions .sx-button{width:100%;justify-content:space-between}
  .sx-quote .sx-contact{font-size:12px}
  .sx-quote .sx-success h3{font-size:26px}
  .sx-quote .sx-success p{font-size:14px}
}

/* Le formulaire d’avis reprend les couleurs et la typographie du devis. */
@media screen{
  .review-form-card{--sx-form-red:#bd1721;background:#101010;border-color:#343434;color:#f2f2f2;font:600 14px/1.8 Montserrat,'Segoe UI',sans-serif}
  .review-form-card,.review-form-card *{text-shadow:none;-webkit-text-stroke:0}
  .review-form-card .eyebrow{color:var(--sx-form-red);font:700 13px/1.8 Montserrat,sans-serif;letter-spacing:1.6px}
  .review-form-card h2{font:700 34px/1.25 Montserrat,sans-serif;color:#f2f2f2;letter-spacing:-1px;text-transform:none}
  .review-form-card h2 em{color:var(--sx-form-red);font-weight:700}
  #review-form{gap:18px}
  #review-form label{font-size:14px;font-weight:700;line-height:1.8;color:#e3e3e3;text-transform:none}
  #review-form input,#review-form select,#review-form textarea{min-width:0;font:600 16px/1.65 Montserrat,sans-serif;background:#1b1b1b;color:#f2f2f2;border:1px solid #454545;padding:12px;min-height:48px;color-scheme:dark}
  #review-form input::placeholder,#review-form textarea::placeholder{color:#a7a7a7;opacity:1}
  #review-form :is(input,select,textarea):focus{border-color:var(--sx-form-red);box-shadow:none}
  #review-form :focus-visible{outline:2px solid var(--sx-form-red);outline-offset:3px}
  #review-form .btn-primary{min-height:56px;padding:16px 22px;font:700 14px/1.7 Montserrat,sans-serif;background:var(--sx-form-red);background-image:none;border-color:var(--sx-form-red);color:#fff;box-shadow:none;text-transform:none}
  #review-form .btn-primary:hover{background:#a40f19;border-color:#a40f19;filter:none}
  #review-form .review-feedback{font-size:14px;font-weight:600;line-height:1.8;color:#ddd}
}
@media screen and (max-width:600px){
  .review-form-card .eyebrow{font-size:11px;letter-spacing:1.4px}
  .review-form-card h2{font-size:30px}
  #review-form .btn-primary{width:100%;white-space:normal}
}


/* Icônes photographiques des prestations : objets complets, transparence conservée. */
.sx-quote .sx-options img.sx-realistic-icon{display:block;width:76px;height:76px;max-width:100%;object-fit:contain;object-position:center;border:0;border-radius:0;background:none;box-shadow:none;filter:none;margin:0 0 12px;padding:0;flex-shrink:0}
@media(max-width:600px){.sx-quote .sx-options img.sx-realistic-icon{width:66px;height:66px}}

/* Rouge commun a tous les formulaires, toutes tailles ecran */
dialog.sx-quote #sx-submit,dialog.sx-quote button.sx-done{background:#bd1721!important;background-image:none!important;border-color:#bd1721!important;color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:none!important}
dialog.sx-quote #sx-submit:hover,dialog.sx-quote button.sx-done:hover{background:#a40f19!important;border-color:#a40f19!important}
dialog.sx-quote #sx-submit:focus-visible,dialog.sx-quote button.sx-done:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* Conserver le theme sombre lors du remplissage automatique. */
.sx-quote input,.sx-quote textarea,.sx-quote select{color-scheme:dark}
.sx-quote input:-webkit-autofill,
.sx-quote input:-webkit-autofill:hover,
.sx-quote input:-webkit-autofill:focus,
.sx-quote input:-webkit-autofill:active,
.sx-quote textarea:-webkit-autofill,
.sx-quote textarea:-webkit-autofill:hover,
.sx-quote textarea:-webkit-autofill:focus,
.sx-quote select:-webkit-autofill{
 -webkit-box-shadow:0 0 0 1000px #1b1b1b inset!important;
 box-shadow:0 0 0 1000px #1b1b1b inset!important;
 -webkit-text-fill-color:#f0f0f0!important;
 caret-color:#f0f0f0!important;
 background-color:#1b1b1b!important;
 color:#f0f0f0!important;
}
.sx-quote input:autofill,.sx-quote textarea:autofill,.sx-quote select:autofill{
 box-shadow:0 0 0 1000px #1b1b1b inset!important;
 -webkit-text-fill-color:#f0f0f0!important;
 caret-color:#f0f0f0!important;
 color:#f0f0f0!important;
}