.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .24s ease}.modal[aria-hidden=false]{display:flex;opacity:1}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#1a1a1a99;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);cursor:pointer}.modal-dialog{position:relative;background:#fff;border-radius:8px;width:100%;max-width:620px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 30px 80px #0000004d;transform:translateY(20px);transition:transform .24s ease}.modal-dialog-compact{max-width:520px}.modal[aria-hidden=false] .modal-dialog{transform:translateY(0)}.modal-close{position:absolute;top:16px;right:16px;width:36px;height:36px;background:transparent;border:1px solid rgba(26,26,26,.1);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink-2);transition:all .15s;z-index:2}.modal-close:hover{border-color:var(--ink);color:var(--ink)}.modal-progress{padding:20px 44px 0;display:flex;align-items:center;gap:12px}.modal-progress-track{flex:1;height:4px;background:#f0ece3;border-radius:2px;overflow:hidden}.modal-progress-fill{height:100%;background:var(--blue);border-radius:2px;width:25%;transition:width .35s cubic-bezier(.4,0,.2,1)}.modal-progress-label{font-family:var(--font-mono);font-size:11px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.modal-form{flex:1;overflow-y:auto;display:flex;flex-direction:column}.modal-step{display:none;padding:32px 44px;animation:modalStepFade .3s ease}.modal-step.is-active{display:block}@keyframes modalStepFade{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.modal-step-eyebrow{font-family:var(--font-mono);font-size:11px;color:var(--blue);font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.modal-step-title{font-family:var(--font-display);font-weight:500;font-size:26px;line-height:1.15;letter-spacing:-.02em;color:var(--ink);margin:0 0 10px}.modal-step-desc{color:var(--ink-3);font-size:14px;line-height:1.55;margin:0 0 28px}.modal-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal-option{cursor:pointer;display:block}.modal-option input{position:absolute;opacity:0;pointer-events:none}.modal-option-box{display:flex;flex-direction:column;gap:4px;padding:16px 18px;background:#fff;border:1px solid #ede8da;border-radius:4px;transition:all .15s;position:relative}.modal-option:hover .modal-option-box{border-color:var(--ink)}.modal-option input:checked+.modal-option-box{border-color:var(--blue);background:#f5f5ff;box-shadow:inset 0 0 0 1px var(--blue)}.modal-option input:checked+.modal-option-box:after{content:"";position:absolute;top:14px;right:14px;width:16px;height:16px;background-color:var(--blue);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");background-size:11px 11px;background-repeat:no-repeat;background-position:center;border-radius:50%}.modal-option-title{font-family:var(--font-display);font-weight:500;font-size:15px;color:var(--ink);letter-spacing:-.01em}.modal-option-sub{font-size:12.5px;color:var(--ink-3);line-height:1.3}.modal-fields{display:flex;flex-direction:column;gap:14px}.modal-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-field{display:flex;flex-direction:column;gap:6px}.modal-field label{font-family:var(--font-body);font-size:12.5px;color:var(--ink-2);font-weight:500}.modal-field input,.modal-field textarea{padding:11px 14px;border:1px solid #ede8da;border-radius:var(--radius);font-family:var(--font-body);font-size:14px;background:#fff;color:var(--ink);transition:border-color .15s;width:100%}.modal-field input:focus,.modal-field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #0500ff14}.modal-field textarea{resize:vertical;min-height:60px;font-family:var(--font-body)}.optional-label{color:#8a8a8a;font-weight:400;font-size:11px;letter-spacing:0;text-transform:none;margin-left:4px}.modal-field-phone{position:relative}.phone-group{display:flex;align-items:stretch;gap:0;position:relative}.phone-country{flex:0 0 auto;width:92px;padding:10px 22px 10px 8px;font-size:13px;font-family:var(--font-body);border:1px solid #d8d4c8;border-right:none;border-radius:2px 0 0 2px;background-color:#faf9f5;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3e%3cpath d='M1 1l4 4 4-4' stroke='%231a1a1a' stroke-width='1.5' stroke-linecap='square'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:8px 5px;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;color:#1a1a1a;line-height:1.4;transition:border-color .15s ease,background-color .15s ease}.phone-country:hover{background-color:#f4f1e6}.phone-country:focus{outline:none;border-color:#1a1a1a;background-color:#fff;z-index:2;position:relative}.phone-group input[data-phone-input]{flex:1 1 auto;border-radius:0 2px 2px 0;padding-right:36px;min-width:0}.phone-group input[data-phone-input]:focus{z-index:2;position:relative}.phone-valid-indicator{position:absolute;right:10px;top:50%;transform:translateY(-50%) scale(.6);opacity:0;transition:opacity .2s ease,transform .2s cubic-bezier(.34,1.56,.64,1);pointer-events:none;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#e6f7ed;z-index:3}.modal-field-phone[data-phone-state=valid] .phone-valid-indicator{opacity:1;transform:translateY(-50%) scale(1)}.modal-field-phone[data-phone-state=valid] .phone-group input[data-phone-input]{border-color:#0d9c5e}@media(max-width:480px){.phone-country{width:84px;padding:10px 20px 10px 6px;font-size:12px}}.modal-success{text-align:center;padding:16px 0}.modal-success-icon{width:64px;height:64px;background:#ffc700;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.modal-success-actions{display:flex;gap:10px;justify-content:center;margin-top:24px;flex-wrap:wrap}.modal-nav{display:flex;gap:10px;padding:20px 44px 32px;border-top:1px solid #ede8da;background:#faf9f5}.modal-nav[data-hidden]{display:none}.modal-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border-radius:var(--radius);font-family:var(--font-body);font-size:13.5px;font-weight:500;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:all .15s;background:transparent}.modal-btn-primary{background:var(--blue);color:#fff;border-color:var(--blue);margin-left:auto}.modal-btn-full{width:100%;margin-left:0;padding:13px 20px;font-size:14px}.modal-btn-primary:hover:not(:disabled){background:var(--blue-dark);border-color:var(--blue-dark)}.modal-btn-primary:disabled{opacity:.4;cursor:not-allowed}.modal-btn-secondary{background:var(--ink);color:#fff;border-color:var(--ink)}.modal-btn-secondary:hover{background:#000}.modal-btn-tertiary{background:transparent;color:var(--ink-2);border:1px solid rgba(26,26,26,.2)}.modal-btn-tertiary:hover{color:var(--ink);border-color:var(--ink)}[data-step-back][data-hidden],[data-step-next][data-hidden],[data-step-submit][data-hidden]{display:none}body.modal-open{overflow:hidden}.modal-shortcut{padding:16px 44px 20px;display:flex;flex-direction:column;gap:10px;background:#fff;border-top:1px solid #ede8da}.modal-shortcut-trust{display:flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:11.5px;color:var(--ink-3);line-height:1.3}.modal-shortcut-trust svg{flex-shrink:0;color:var(--ink-3)}.modal-shortcut-link{background:transparent;border:none;padding:0;font-family:var(--font-body);font-size:13px;font-weight:500;color:var(--blue);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#0500ff4d;display:inline-flex;align-items:center;gap:6px;align-self:flex-start;transition:text-decoration-color .15s}.modal-shortcut-link:hover{text-decoration-color:var(--blue)}.modal-shortcut[data-hidden]{display:none}.modal-quick{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;z-index:3;display:flex;flex-direction:column;padding:60px 44px 44px;overflow-y:auto;animation:modalQuickSlide .3s ease}@keyframes modalQuickSlide{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.modal-quick[hidden]{display:none}.modal-quick-back{position:absolute;top:16px;left:16px;background:transparent;border:none;padding:8px 12px;font-family:var(--font-body);font-size:13px;color:var(--ink-2);cursor:pointer;display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius);transition:all .15s}.modal-quick-back:hover{color:var(--ink);background:#f5f5f5}.modal-quick-inner{flex:1;display:flex;flex-direction:column}.modal-quick-form{display:flex;flex-direction:column;gap:14px;margin-top:12px}@media(max-width:640px){.modal{padding:0;align-items:flex-end}.modal-dialog{max-height:95vh;border-radius:12px 12px 0 0;max-width:100%}.modal-step{padding:24px}.modal-nav{padding:16px 24px 20px}.modal-progress{padding:20px 24px 0}.modal-options,.modal-field-row{grid-template-columns:1fr}.modal-shortcut{padding:14px 24px 18px}.modal-quick{padding:56px 24px 32px}}.mobile-sticky-cta{display:none;position:fixed;bottom:0;left:0;right:0;z-index:80;background:#fffffff5;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid #ede8da;padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:8px}.mobile-sticky-cta a,.mobile-sticky-cta button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px 14px;border-radius:var(--radius);font-family:var(--font-body);font-size:13.5px;font-weight:500;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:all .15s;flex:1;white-space:nowrap}.mobile-sticky-cta-phone{background:var(--ink);color:#fff;border-color:var(--ink)}.mobile-sticky-cta-devis{background:var(--blue);color:#fff;border-color:var(--blue)}body.modal-open .mobile-sticky-cta{display:none!important}@media(max-width:768px){.mobile-sticky-cta{display:flex}}@keyframes modalShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.modal-step.shake{animation:modalShake .35s ease}
/*# sourceMappingURL=/cdn/shop/t/16/assets/rack-modal-devis.css.map */
