/* Concepteur de devis en ligne (maquette 15b). Fichier autonome : il s'appuie sur
   les jetons Horizon déjà chargés (--horizon-*) et ne touche pas à horizon.css. */
.hz-dv{font-family:var(--horizon-font-sans,'Manrope','Helvetica Neue',Arial,sans-serif);color:var(--horizon-anthracite,#1C201E);padding-bottom:56px}
.hz-dv *{box-sizing:border-box}
.hz-dv__head{padding-top:32px;padding-bottom:8px}
.hz-dv__title{margin:12px 0 0;font-size:clamp(28px,5vw,44px);font-weight:800;letter-spacing:-.04em;line-height:1.08;color:var(--horizon-bleu,#12314A);text-transform:none}
.hz-dv__lead{margin:14px 0 0;max-width:62ch;font-size:17px;line-height:1.6}
.hz-dv__lead--sm{font-size:16px}
.hz-dv__h{margin:0 0 12px;font-size:20px;font-weight:800;letter-spacing:-.03em;color:var(--horizon-bleu,#12314A);text-transform:none}
.hz-dv__h3{margin:26px 0 6px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--horizon-anthracite-soft,#4B5049)}
.hz-dv__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hz-dv__fine{margin:10px 0 0;font-size:13.5px;line-height:1.6;color:var(--horizon-anthracite-soft,#4B5049)}
.hz-dv__note{margin:12px 0 0;padding:12px 14px;border:1px solid var(--horizon-gris-verre-ligne,#E4E5E2);background:var(--horizon-gris-verre,#F1F2F0);font-size:14.5px;line-height:1.55}
.hz-dv__note a{color:var(--horizon-bleu,#12314A);font-weight:700}

.hz-dv__grid{display:grid;gap:24px;grid-template-columns:1fr;padding-top:20px;padding-bottom:12px}
@media (min-width:900px){.hz-dv__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:start}.hz-dv__col--recap{position:sticky;top:96px}}
.hz-dv__block{padding:20px 0;border-top:1px solid var(--horizon-gris-verre-ligne,#E4E5E2)}
.hz-dv__block[hidden]{display:none}

.hz-dv__select{width:100%;min-height:52px;padding:0 14px;border:1px solid var(--horizon-gris-verre-ligne,#E4E5E2);background:#fff;font:inherit;font-size:16px;color:var(--horizon-anthracite,#1C201E);border-radius:0}
.hz-dv__select:focus-visible,.hz-dv__field input:focus-visible,.hz-dv__check input:focus-visible{outline:2px solid var(--horizon-bleu,#12314A);outline-offset:2px}

.hz-dv__checks{display:flex;flex-direction:column}
.hz-dv__check{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;min-height:52px;padding:10px 0;border-top:1px solid var(--horizon-gris-verre-ligne,#E4E5E2);cursor:pointer;font-size:16px}
.hz-dv__check:first-child{border-top:0}
.hz-dv__check input{width:22px;height:22px;accent-color:var(--horizon-bleu,#12314A)}
.hz-dv__check-price{font-weight:700;color:var(--horizon-bleu,#12314A);white-space:nowrap}

.hz-dv__recap{padding:22px 20px;background:var(--horizon-gris-verre,#F1F2F0);border:1px solid var(--horizon-gris-verre-ligne,#E4E5E2)}
.hz-dv__recap-title{margin:10px 0 14px;font-size:24px;font-weight:800;letter-spacing:-.035em;line-height:1.15;color:var(--horizon-bleu,#12314A);text-transform:none}
.hz-dv__lines{display:flex;flex-direction:column}
.hz-dv__line{display:flex;justify-content:space-between;gap:14px;padding:13px 0;border-top:1px solid var(--horizon-gris-verre-ligne,#E4E5E2);font-size:15.5px}
.hz-dv__line strong{color:var(--horizon-bleu,#12314A);white-space:nowrap}
.hz-dv__line--discount{background:rgba(168,135,94,.12);padding-left:10px;padding-right:10px;margin:0 -10px}
.hz-dv__kicker{display:block;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--horizon-anthracite-soft,#4B5049)}
.hz-dv__opt,.hz-dv__sub{font-size:12.5px;color:var(--horizon-anthracite-soft,#4B5049)}
.hz-dv__sub{display:block;margin-top:2px}
.hz-dv__total{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:16px 0 4px;border-top:2px solid var(--horizon-bleu,#12314A)}
.hz-dv__total span{font-size:17px;font-weight:800;color:var(--horizon-bleu,#12314A)}
.hz-dv__total strong{font-size:28px;font-weight:800;letter-spacing:-.03em;color:var(--horizon-bleu,#12314A)}

.hz-dv__refblock{margin-top:24px;padding:26px 0;background:var(--horizon-bleu-deep,#0C2333);color:#E4E5E2}
.hz-dv__ref-label{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#E4E5E2}
.hz-dv__ref-code{margin-top:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:26px;font-weight:700;letter-spacing:.04em;color:#fff}
.hz-dv__ref-code--pending{opacity:.6}
.hz-dv__refblock p{margin:12px 0 0;max-width:62ch;font-size:15.5px;line-height:1.6}
.hz-dv__fine--on-dark{color:#E4E5E2;font-size:13.5px}
.hz-dv__ref-inline{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}

.hz-dv__formblock{padding-top:28px;max-width:720px;margin-left:0}
@media (min-width:900px){.hz-dv__formblock{margin-left:auto;margin-right:auto}}
.hz-dv__fields{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.hz-dv__row{display:grid;grid-template-columns:118px 1fr;gap:10px}
.hz-dv__field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--horizon-anthracite-soft,#4B5049)}
.hz-dv__field input{min-height:52px;padding:0 16px;border:1px solid var(--horizon-gris-verre-ligne,#E4E5E2);background:var(--horizon-gris-verre,#F1F2F0);font:inherit;font-size:16px;font-weight:400;color:var(--horizon-anthracite,#1C201E);border-radius:0}
.hz-dv__err{font-style:normal;font-size:13px;color:#8B1E1E}
.hz-dv__err:empty{display:none}
.hz-dv__consent{display:flex;gap:10px;align-items:flex-start;margin-top:20px;font-size:14px;line-height:1.55}
.hz-dv__consent input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--horizon-bleu,#12314A)}
.hz-dv__error{margin:14px 0 0;padding:10px 14px;border:1px solid #8B1E1E;background:#fbeeee;color:#8B1E1E;font-size:14.5px}
.hz-dv__submit{margin-top:18px;min-height:52px}
.hz-dv__submit:disabled{opacity:.6;cursor:wait}
.hz-dv__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.hz-dv__done{padding:28px 0}
.hz-dv__done[hidden],.hz-dv__error[hidden],.hz-dv__form[hidden]{display:none}
.hz-dv__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}

/* Devis émis */
.hz-dv--issued{max-width:760px;padding-top:28px}
.hz-dv--issued .hz-dv__ref{padding:18px 20px;background:var(--horizon-bleu-deep,#0C2333);color:#fff}
.hz-dv--issued .hz-dv__ref--expired{background:#4B5049}
.hz-dv__ref-state{margin-top:6px;font-size:14px;color:#E4E5E2}
.hz-dv--issued .hz-dv__lines{margin-top:18px}
.hz-dv__who{margin-top:22px;font-size:15px;line-height:1.7}

@media print{
  .hz-dv__noprint,.hz-header,.hz-menu,.hz-bar,.hz-footer{display:none !important}
  .hz-dv--issued{max-width:none;padding:0}
  .hz-dv--issued .hz-dv__ref{background:#fff;color:#000;border:1px solid #000}
  .hz-dv--issued .hz-dv__ref-state,.hz-dv--issued .hz-dv__ref-label{color:#000}
  .hz-dv--issued .hz-dv__ref-code{color:#000}
}
