.lf-book{display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;border:0;text-decoration:none;
  background:var(--lf-orange,#DB5D20);color:#fff!important;padding:15px 22px;border-radius:4px;
  font:700 16px/1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;transition:background .15s}
.lf-book:hover,.lf-book:focus-visible{background:var(--lf-orange-d,#BF4E17)}
.lf-book--lg{width:100%;padding:18px;font-size:18px}
.lf-book--sm{padding:12px 10px;font-size:15px}
.lfr-scrim{position:fixed;inset:0;background:rgba(15,16,20,.55);z-index:9998;opacity:0;transition:opacity .25s}
.lfr-drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100%);background:#fff;z-index:9999;transform:translateX(102%);
  transition:transform .32s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;visibility:hidden;color:#252525;
  font-family:"Barlow",Helvetica,Arial,sans-serif}
body.lfr-open .lfr-scrim{opacity:1}
body.lfr-open .lfr-drawer{transform:none;visibility:visible}
body.lfr-open{overflow:hidden}
.lfr-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 18px;border-bottom:1px solid #DADCE2}
.lfr-eyebrow{margin:0;font:600 13px/1 "Barlow",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#DB5D20}
.lfr-head h2{margin:8px 0 0;font:800 34px/1 "Barlow Condensed","Arial Narrow",sans-serif;text-transform:uppercase;color:#2D303A}
.lfr-x{background:#F2F3F5;border:0;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:22px;line-height:1;flex:none;color:#2D303A;padding:0}
.lfr-form{display:flex;flex-direction:column;flex:1;min-height:0;margin:0}
.lfr-body{padding:20px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:14px;flex:1}
.lfr-prod{display:flex;gap:14px;align-items:center;background:#F2F3F5;border-radius:6px;padding:12px}
.lfr-prod img{width:78px;height:60px;object-fit:contain;mix-blend-mode:multiply}
.lfr-prod b{display:block;font:800 21px/1.05 "Barlow Condensed",sans-serif;text-transform:uppercase;color:#2D303A}
.lfr-prod span{font:500 12.5px/1.6 "IBM Plex Mono",ui-monospace,monospace;color:#565969}
.lfr-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lfr-fld{display:flex;flex-direction:column;gap:6px}
.lfr-fld label,.lfr-lbl{font-size:13px;font-weight:600;color:#2D303A}
.lfr-fld input,.lfr-fld textarea{border:1px solid #C9CCD4;border-radius:4px;padding:12px;background:#fff;color:#252525;width:100%;font:inherit;font-size:16px}
.lfr-fld input:focus,.lfr-fld textarea:focus{outline:none;border-color:#DB5D20;box-shadow:0 0 0 3px #FCEEE6}
.lfr-fld input[aria-invalid="true"]{border-color:#B3261E}
.lfr-seg{display:grid;grid-template-columns:1fr 1fr;border:1px solid #C9CCD4;border-radius:4px;overflow:hidden}
.lfr-seg input{position:absolute;opacity:0;pointer-events:none}
.lfr-seg label{padding:12px;text-align:center;cursor:pointer;font-weight:600;font-size:15px;margin:0}
.lfr-seg input:checked+label{background:#2D303A;color:#fff}
.lfr-seg input:focus-visible+label{outline:3px solid #DB5D20;outline-offset:-3px}
.lfr-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lfr-err{color:#B3261E;font-size:14px;margin:0}
.lfr-foot{padding:16px 24px calc(24px + env(safe-area-inset-bottom,0px));border-top:1px solid #DADCE2}
.lfr-foot .lf-book{width:100%;padding:18px;font-size:18px}
.lfr-foot .lf-book[disabled]{opacity:.6;cursor:wait}
.lfr-foot small{display:block;text-align:center;margin-top:10px;color:#565969;font-size:13px}
.lfr-ok{padding:40px 24px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.lfr-ic{width:56px;height:56px;border-radius:50%;background:#DB5D20;color:#fff;display:grid;place-items:center}
.lfr-ok h3{margin:0;font:800 40px/1 "Barlow Condensed",sans-serif;text-transform:uppercase;color:#2D303A}
.lfr-ok p{margin:0;color:#565969}
.lfr-dark{background:#2D303A}
.lfr-dark:hover{background:#1C1E25}
@media (max-width:480px){.lfr-row{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.lfr-drawer,.lfr-scrim{transition:none}}
/* Formulaires Contact / Emploi */
.lff{display:flex;flex-direction:column;gap:16px;font-family:"Barlow",Helvetica,Arial,sans-serif}
.lff__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lff__grid[hidden]{display:none}
.lff__wide{grid-column:1/-1}
.lff select{border:1px solid #C9CCD4;border-radius:4px;padding:12px;background:#fff;width:100%;font:inherit;font-size:16px}
.lff input[type=file]{padding:10px;background:#F2F3F5;border-style:dashed}
.lff .lfr-fld [aria-invalid="true"]{border-color:#B3261E}
.lff__submit{align-self:flex-start}
.lff__ok{background:#F2F3F5;border-left:4px solid #DB5D20;padding:18px 20px;border-radius:4px;font-weight:600;color:#2D303A}
@media (max-width:560px){.lff__grid{grid-template-columns:1fr}.lff__submit{align-self:stretch}}
.lff__file small{color:#8A8D9C;font-size:12.5px}
.lff__legal{margin:0;font-size:13px;color:#8A8D9C}
/* Liste de la demande (plusieurs équipements) */
.lfr-list{display:flex;flex-direction:column;gap:8px}
.lfr-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.lfr-item{display:grid;grid-template-columns:56px minmax(0,1fr) auto 32px;gap:10px;align-items:center;background:#F2F3F5;border-radius:6px;padding:8px 10px;transition:box-shadow .4s}
.lfr-item.is-new{box-shadow:0 0 0 2px #DB5D20}
.lfr-item img,.lfr-noimg{width:56px;height:44px;object-fit:contain;mix-blend-mode:multiply;display:block}
.lfr-item__txt{min-width:0}
.lfr-item__txt b{display:block;font:800 17px/1.1 "Barlow Condensed",sans-serif;text-transform:uppercase;color:#2D303A;overflow-wrap:anywhere}
.lfr-item__txt span{font:500 11.5px/1.5 "IBM Plex Mono",ui-monospace,monospace;color:#565969}
.lfr-qty{display:flex;align-items:center;border:1px solid #C9CCD4;border-radius:4px;background:#fff}
.lfr-qty button{width:30px;height:32px;border:0;background:none;cursor:pointer;font-size:18px;line-height:1;color:#2D303A;padding:0}
.lfr-qty button:hover{color:#DB5D20}
.lfr-qty output{min-width:22px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.lfr-del{width:32px;height:32px;border:0;border-radius:50%;background:none;cursor:pointer;font-size:20px;color:#8A8D9C;padding:0}
.lfr-del:hover{background:#fff;color:#B3261E}
.lfr-more{align-self:flex-start;border:0;background:none;padding:6px 0;font:600 15px/1 "Barlow",sans-serif;color:#DB5D20;cursor:pointer}
.lfr-more:hover{text-decoration:underline}
.lfr-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;margin-left:8px;border-radius:99px;background:#fff;color:#DB5D20;font:700 13px/1 "Barlow",sans-serif;letter-spacing:0}
.lfr-count[hidden]{display:none}
.lfr-dark .lfr-count{color:#2D303A}
@media (max-width:480px){.lfr-item{grid-template-columns:44px minmax(0,1fr) 32px;grid-template-areas:"img txt del" "img qty del"}.lfr-item img,.lfr-noimg{grid-area:img;width:44px}.lfr-item__txt{grid-area:txt}.lfr-qty{grid-area:qty;justify-self:start}.lfr-del{grid-area:del}}
/* Neutralise le style de bouton par défaut du thème (fond orange) dans la liste */
.lfr-drawer .lfr-qty button,.lfr-drawer .lfr-del,.lfr-drawer .lfr-more{background:transparent!important;border:0!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;border-radius:0}
.lfr-drawer .lfr-qty button{color:#2D303A!important;width:32px;height:32px;padding:0!important;font:600 18px/1 "Barlow",sans-serif!important}
.lfr-drawer .lfr-qty button:hover,.lfr-drawer .lfr-qty button:focus{color:#DB5D20!important;background:transparent!important}
.lfr-drawer .lfr-del{color:#8A8D9C!important;border-radius:50%!important;padding:0!important;font:400 22px/1 "Barlow",sans-serif!important}
.lfr-drawer .lfr-del:hover,.lfr-drawer .lfr-del:focus{color:#B3261E!important;background:#fff!important}
.lfr-drawer .lfr-more{color:#DB5D20!important;padding:6px 0!important;font:600 15px/1 "Barlow",sans-serif!important}
.lfr-drawer .lfr-more:hover,.lfr-drawer .lfr-more:focus{background:transparent!important;text-decoration:underline}
/* Loi 25 : avis de collecte et consentement */
.lfr-foot .lfr-legal{margin-top:6px;font-size:12px;color:#8A8D9C}
.lfr-legal a,.lff__legal a{color:inherit;text-decoration:underline}
.lff__consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45;color:#565969;cursor:pointer;grid-column:1/-1}
.lff__consent input{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:#DB5D20}
.lff__consent.is-err span{color:#B42318}
