/* Loaded only by /wholesale and product-details.html.
   QuoteModal.tsx / QuoteForm.tsx visual port; existing form contracts stay intact. */
@font-face { font-family: 'TB Quote Inter'; font-style: normal; font-weight: 100 900; font-display: swap; src: url('../../fonts/home-inter-latin.woff2') format('woff2'); }
@font-face { font-family: 'TB Quote Display'; font-style: normal; font-weight: 300 700; font-display: swap; src: url('../../fonts/home-space-grotesk-latin.woff2') format('woff2'); }
#quoteModalOverlay { padding: 0; background: rgba(15,23,42,.7); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }
#quoteModalOverlay .tbq-modal__backdrop { background: transparent; backdrop-filter: none; }
#quoteModalDialog { position: relative; display: block; width: calc(100% - 32px); max-width: 672px; max-height: 92vh; margin: 0; padding: 32px; border: 0; border-radius: 0; background: #fff; color: #0f172a; font: 400 16px/1.5 'TB Quote Inter', Arial, sans-serif; box-shadow: 0 25px 50px -12px rgb(0 0 0 / .25); overflow: auto; transform: none; animation: none; scrollbar-color: #f43f5e #fff; }
#quoteModalDialog *, #quoteModalDialog *::before, #quoteModalDialog *::after { box-sizing: border-box; }
#quoteModalDialog :where(div, p, span, strong, small, label, input, select, textarea, button) { font-family: inherit; }
#quoteModalDialog :where(div, span, strong, small) { color: inherit; }
#quoteModalDialog .quote-modal-header, #quoteModalDialog .tbq-modal__aside { position: static; padding: 0; margin: 0 0 32px; min-height: 0; background: none; color: #0f172a; overflow: visible; text-align: left; }
#quoteModalDialog .quote-modal-header::after, #quoteModalDialog .tbq-modal__aside::after,
#quoteModalDialog .quote-modal-icon, #quoteModalDialog .quote-modal-trust, #quoteModalDialog .tbq-modal__aside ul { display: none; }
#quoteModalDialog .quote-modal-eyebrow, #quoteModalDialog .tbq-modal__eyebrow { display: block; padding: 0; margin: 0 0 8px; color: #f43f5e; font: 700 10px/1.5 'TB Quote Inter', Arial, sans-serif; text-transform: uppercase; letter-spacing: .2em; }
#quoteModalDialog #quoteModalTitle { margin: 0; padding: 0; color: #0f172a; font: 700 30px/36px 'TB Quote Display', Arial, sans-serif; letter-spacing: -.02em; text-transform: uppercase; }
#quoteModalDialog #quoteModalDescription { margin: 8px 0 0; padding: 0; color: #64748b; font: 400 14px/20px 'TB Quote Inter', Arial, sans-serif; }
#quoteModalDialog .quote-modal-close, #quoteModalDialog .tbq-modal__close { position: absolute; top: 16px; right: 16px; width: 36px; height: 36px; padding: 8px; margin: 0; display: grid; place-items: center; border: 0; border-radius: 0; background: transparent; color: #0f172a; box-shadow: none; cursor: pointer; }
#quoteModalDialog .quote-modal-close:hover, #quoteModalDialog .tbq-modal__close:hover { color: #f43f5e; background: transparent; }
#quoteModalDialog .quote-modal-close svg { width: 20px; height: 20px; }
#quoteModalDialog .tbq-modal__close i { display: none; }
#quoteModalDialog .tbq-modal__close::before, #quoteModalDialog .tbq-modal__close::after { content: ''; position: absolute; width: 18px; height: 2px; background: currentColor; transform: rotate(45deg); }
#quoteModalDialog .tbq-modal__close::after { transform: rotate(-45deg); }
#quoteModalDialog .quote-modal-body, #quoteModalDialog .tbq-modal__body { padding: 0; margin: 0; min-width: 0; }
#quoteModalDialog form { padding: 0; margin: 0; display: grid; gap: 24px; }
#quoteModalDialog .quote-form-row, #quoteModalDialog .tbq-form-grid { display: grid; grid-template-columns: minmax(0,1fr); gap: 24px; }
#quoteModalDialog .quote-form-group, #quoteModalDialog .tbq-field, #quoteModalDialog .tbq-field--full { min-width: 0; padding: 0; margin: 0; }
#quoteModalDialog .quote-form-group label, #quoteModalDialog .tbq-field > label:not(.tbq-dropzone) { display: block; margin: 0 0 8px; color: #64748b; font-size: 10px; font-weight: 700; line-height: 15px; letter-spacing: .2em; text-transform: uppercase; }
#quoteModalDialog .quote-req, #quoteModalDialog .tbq-field em { color: #f43f5e; font-style: normal; }
#quoteModalDialog .quote-input-icon, #quoteModalDialog .tbq-control > i { display: none; }
#quoteModalDialog .quote-input-wrap, #quoteModalDialog .tbq-control { margin: 0; padding: 0; }
#quoteModalDialog .quote-form-group input, #quoteModalDialog .quote-form-group textarea,
#quoteModalDialog .tbq-control input, #quoteModalDialog .tbq-control select, #quoteModalDialog .tbq-control textarea { display: block; width: 100%; height: auto; min-height: 0; margin: 0; padding: 8px 0; border: 0; border-bottom: 2px solid #e2e8f0; border-radius: 0; background: transparent; color: #0f172a; font: 400 16px/24px 'TB Quote Inter', Arial, sans-serif; outline: none; box-shadow: none; transition: border-color .2s; }
#quoteModalDialog .quote-form-group textarea, #quoteModalDialog .tbq-control textarea { height: 114px; min-height: 114px; resize: vertical; }
#quoteModalDialog input::placeholder, #quoteModalDialog textarea::placeholder { color: #94a3b8; opacity: 1; }
#quoteModalDialog .quote-form-group input:focus, #quoteModalDialog .quote-form-group textarea:focus,
#quoteModalDialog .tbq-control input:focus, #quoteModalDialog .tbq-control select:focus, #quoteModalDialog .tbq-control textarea:focus { border-bottom-color: #f43f5e; background: transparent; box-shadow: none; }
#quoteModalDialog .tbq-field.is-invalid input, #quoteModalDialog .tbq-field.is-invalid select, #quoteModalDialog .tbq-field.is-invalid textarea { border-bottom-color: #be123c; }
#quoteModalDialog .tbq-error:empty, #quoteModalDialog .tbq-file-list:empty, #quoteModalDialog .tbq-result:not(.is-visible), #quoteModalDialog #quoteFormResult:empty, #quoteModalDialog [data-attribution-fields] { display: none; }
#quoteModalDialog .tbq-error { margin: 6px 0 0; color: #be123c; font-size: 12px; }
#quoteModalDialog .tbq-dropzone { position: relative; display: flex !important; flex-direction: column; align-items: stretch; gap: 8px; padding: 0; min-height: 0; border: 0; border-radius: 0; background: transparent; transform: none; text-align: left; }
#quoteModalDialog .tbq-dropzone .tbq-dropzone__icon { display: none; }
#quoteModalDialog .tbq-dropzone > span:last-child { order: 0; display: block; }
#quoteModalDialog .tbq-dropzone strong, #quoteModalDialog .tbq-dropzone small { color: #64748b; font: 700 10px/15px 'TB Quote Inter', Arial, sans-serif; letter-spacing: .15em; text-transform: uppercase; }
#quoteModalDialog .tbq-dropzone small { display: block; font-weight: 400; letter-spacing: .05em; margin-top: 4px; }
#quoteModalDialog .tbq-dropzone input { order: 1; position: static; display: block; width: 100%; height: auto; opacity: 1; padding: 8px 0; border: 0; border-bottom: 2px solid #e2e8f0; border-radius: 0; color: #0f172a; background: transparent; font: 400 16px/24px 'TB Quote Inter', Arial, sans-serif; }
#quoteModalDialog input::file-selector-button { margin-right: 16px; border: 0; border-radius: 0; padding: 8px 12px; background: #000000; color: white; font: 600 12px/16px 'TB Quote Inter', Arial, sans-serif; cursor: pointer; }
#quoteModalDialog .tbq-consent, #quoteModalDialog .tbq-captcha, #quoteModalDialog .quote-captcha-box { margin: 0; }
#quoteModalDialog .tbq-consent small { color: #64748b; font-size: 10px; line-height: 16px; letter-spacing: .12em; text-transform: uppercase; }
#quoteModalDialog .tbq-consent a { color: inherit; text-underline-offset: 2px; }
#quoteModalDialog .tbq-consent label > span { border-radius: 0; }
#quoteModalDialog .tbq-consent input:checked + span { background: #000000; border-color: #000000; }
#quoteModalDialog .quote-submit-btn, #quoteModalDialog .tbq-submit { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 0; padding: 20px 28px; border: 0; border-radius: 0; background: #0f172a; color: white; font: 700 12px/18px 'TB Quote Inter', Arial, sans-serif; text-transform: uppercase; letter-spacing: .2em; box-shadow: none; transform: none; filter: none; cursor: pointer; }
body:has(.twh-page) #quoteModalDialog .tbq-submit { background: #000000; }
#quoteModalDialog .quote-submit-btn:hover, #quoteModalDialog .tbq-submit:hover { background: #f43f5e; box-shadow: none; transform: none; filter: none; }
#quoteModalDialog .quote-submit-btn:disabled, #quoteModalDialog .tbq-submit:disabled { opacity: .6; cursor: not-allowed; }
#quoteModalDialog .quote-submit-btn .btn-text i, #quoteModalDialog .tbq-submit__idle i { display: none; }
#quoteModalDialog .quote-submit-btn span, #quoteModalDialog .tbq-submit span { font: inherit; color: inherit; letter-spacing: inherit; }
#quoteModalDialog .quote-form-result, #quoteModalDialog .tbq-result { margin: 0; font-size: 14px; }
#quoteModalDialog :is(button,a,input[type=file]):focus-visible { outline: 2px solid #f43f5e; outline-offset: 3px; }
@media (min-width: 768px) {
  #quoteModalDialog { padding: 48px; zoom: .75; max-height: 122.667vh; }
  #quoteModalDialog .quote-form-row, #quoteModalDialog .tbq-form-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (prefers-reduced-motion: reduce) { #quoteModalDialog * { transition: none !important; } }
