.team-quote{margin-block:20px}
.team-quote__trigger{width:fit-content;max-width:100%;border-color:#c97b64;background:darksalmon;color:#242a2b;text-wrap:balance}
.team-quote__trigger:hover{background:#f0a88f}
.team-quote__trigger:disabled{opacity:.58;cursor:wait}
.team-quote__dialog{width:min(820px,calc(100% - 48px));max-width:none;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);margin:auto;padding:0;border:1px solid #68726e;border-radius:12px;background:#fff;color:var(--ink,#242a2b);overflow:hidden;box-shadow:0 24px 80px #0005}
.team-quote__dialog[open]{display:flex;flex-direction:column}
.team-quote__dialog::backdrop{background:#101819b8}
.team-quote__dialog [hidden]{display:none!important}
.team-quote__dialog :focus-visible{outline:3px solid #506c14;outline-offset:3px}
.team-quote__header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;border-bottom:1px solid var(--line,#dfe3df);flex:none}
.team-quote__header #team-quote-title,.team-quote__title{margin:0;font-size:clamp(1.2rem,2.2vw,1.6rem);line-height:1.3;letter-spacing:-.025em}.team-quote__title strong{font-weight:800}
.team-quote__close{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex:none;min-height:44px;padding:8px 12px;border:1px solid #68726e;border-radius:6px;background:white;color:inherit;font-weight:700}
.team-quote__close span{font-size:1.5rem;line-height:1}
.team-quote__dialog form{display:flex;flex-direction:column;min-height:0;margin:0;overflow:hidden}
.team-quote__body{padding:24px;overflow:auto;overscroll-behavior:contain;min-height:0;scroll-padding-block:20px}
.team-quote__body h3{font-size:1.2rem;line-height:1.35;margin-bottom:12px;letter-spacing:-.02em}
.team-quote__steps{display:flex;gap:16px;list-style:none;padding:0;margin:20px 0 24px;font-size:.875rem;color:#596163}
.team-quote__steps li{flex:1;border-top:3px solid #dfe3df;padding-top:8px}
.team-quote__steps [aria-current="step"]{color:#263600;border-color:#506c14;font-weight:800}
.team-quote__hint{font-size:.84rem;line-height:1.5;color:#596163;margin:6px 0}
.team-quote__variants{border:1px solid var(--line,#dfe3df);border-radius:8px;overflow:hidden}
.team-quote__variant{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;padding:16px;border-bottom:1px solid var(--line,#dfe3df)}
.team-quote__variant:last-child{border-bottom:0}
.team-quote__variant-copy{flex:1;min-width:0;overflow-wrap:anywhere}
.team-quote__variant label{font-weight:750;line-height:1.4;display:block;cursor:pointer}
.team-quote__sku{display:block;font-size:.78rem;font-weight:500;color:#596163;margin-top:3px}
.team-quote__price{font-size:.84rem;line-height:1.5;font-weight:650;margin:6px 0 0}
.team-quote__quantity{width:92px;min-height:48px;flex:none;padding:10px 8px;border:1px solid #7e8983;border-radius:6px;background:white;color:inherit;font-size:1rem;text-align:center}
.team-quote__quantity:disabled{background:#f1f3f0;color:#596163;opacity:1;cursor:not-allowed}
.team-quote__contacts{display:flex;flex-wrap:wrap;gap:0 16px}
.team-quote__contacts>.field{flex:1 1 calc(50% - 8px);min-width:0}
.team-quote__dialog .field input,.team-quote__dialog .field textarea{font-size:1rem;min-height:48px}
.team-quote__dialog [aria-invalid="true"]{border-color:#a32320}
.team-quote__field-error{flex-basis:100%;color:#a32320;font-size:.84rem;line-height:1.5;margin:4px 0 0;overflow-wrap:anywhere}
.team-quote__summary{margin-top:20px;padding:16px;background:#f3f6ed;border:1px solid #dce4cc;border-radius:8px;line-height:1.55;white-space:pre-line;overflow-wrap:anywhere;font-size:.9rem}
.team-quote__b2b{margin-top:16px;padding:16px;border:1px solid #a6b298;border-radius:8px}
.team-quote__b2b p{margin-bottom:8px}
.team-quote__error{background:#fff1ef;color:#8f1e1c;border-left:3px solid #a32320;padding:12px;margin:16px 0 0;white-space:pre-line;overflow-wrap:anywhere;font-size:.9rem}
.team-quote__footer{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end;padding:16px 24px;border-top:1px solid var(--line,#dfe3df);background:#fff;flex:none}
.team-quote__footer>.button{flex:1 1 200px}
.team-quote__status{flex-basis:100%;margin:0;font-size:.84rem;line-height:1.5}
.team-quote__status:empty{display:none}
.team-quote__success{padding-block:32px}
.team-quote__success>.button{margin-bottom:16px}
@media(max-width:760px){
  .team-quote__dialog{width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;margin:0;border:0;border-radius:0}
  .team-quote__dialog form{flex:1}
  .team-quote__header{padding:calc(12px + env(safe-area-inset-top,0px)) 16px 12px}
  .team-quote__body{padding:20px 16px;flex:1}
  .team-quote__footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px))}
  .team-quote__steps{gap:12px;font-size:.81rem}
  .team-quote__variant{padding:12px;gap:8px 12px}
  .team-quote__quantity{width:80px}
  .team-quote__contacts>.field{flex-basis:100%}
  .team-quote__footer>.button{flex-basis:100%}
  .team-quote__success>.button{width:100%}
}
