Domande Frequenti

Trova risposta alle domande più comuni sulla produzione di abbigliamento con Crusher Agency

Produzione

Dove producete i capi di abbigliamento?

Crusher Agency lavora con una rete produttiva internazionale selezionata che garantisce qualità e certificazioni:

  • Italia: Produzione Made in Italy di alta qualità
  • Turchia: Qualità europea e costi competitivi
  • Pakistan: Specializzazione in denim e cotone
  • Bangladesh: Grandi volumi e competitività
  • Cina: Tecnologia avanzata e scalabilità

Tutti i nostri partner produttivi possiedono certificazioni internazionali che garantiscono sicurezza, sostenibilità e tracciabilità della filiera.

Quali tipologie di capi potete produrre?

Possiamo produrre qualsiasi tipologia di abbigliamento:

  • T-shirt, felpe, polo
  • Camicie, giacche, cappotti
  • Pantaloni, jeans, shorts
  • Abbigliamento sportivo e athleisure
  • Intimo e beachwear
  • Accessori (borse, cappelli, sciarpe)

Dal capo basic al luxury, dalla street fashion al brand premium: la nostra esperienza copre tutte le categorie.

Offrite servizio di prototipazione?

Sì, offriamo prototipazione rapida!

Realizziamo prototipi e campioni per permetterti di:

  • Valutare fit, tessuti e finiture prima della produzione
  • Testare il prodotto sul mercato
  • Presentare collezioni a buyer e clienti
Tempi prototipazione: 15-20 giorni lavorativi in media

Posso vedere i laboratori dove si produce?

Assolutamente sì! La trasparenza è uno dei nostri valori fondamentali.

Offriamo la possibilità di:

  • Visitare il nostro showroom a Milano
  • Organizzare visite ai laboratori partner (su richiesta)
  • Ricevere reportistica fotografica delle fasi produttive
  • Tracciabilità completa della filiera produttiva

Ordini & MOQ

Qual è il MOQ (Quantità Minima d'Ordine)?

Il MOQ varia in base alla tipologia di prodotto e alla complessità:

Range produttivo: da 100 pezzi fino a 10.000 capi per articolo
  • Capi basic (es. t-shirt): MOQ 100-300 pezzi
  • Capi strutturati (es. giacche): MOQ 200-500 pezzi
  • Collezioni complete: MOQ personalizzabile

Siamo flessibili e valutiamo ogni progetto singolarmente. Richiedi un preventivo personalizzato.

Posso ordinare quantità inferiori al MOQ?

Per quantità inferiori al MOQ standard, valutiamo caso per caso:

  • Brand emergenti e startup possono beneficiare di condizioni speciali
  • Test di mercato con piccole quantità (con costo unitario maggiorato)
  • Ordini campionari per collezioni pilota

Contattaci per discutere le tue esigenze specifiche!

Come funziona il processo di ordine?

Il nostro processo è strutturato in fasi chiare:

  1. Brief iniziale: discussione del progetto e delle esigenze
  2. Preventivo: proposta commerciale dettagliata
  3. Prototipazione: sviluppo campioni (se richiesto)
  4. Approvazione: conferma specifiche tecniche e materiali
  5. Ordine: conferma d'ordine con acconto 50%
  6. Produzione: realizzazione con controllo qualità
  7. Consegna: saldo e spedizione

Posso fare modifiche dopo aver confermato l'ordine?

Le modifiche sono possibili ma dipendono dalla fase produttiva:

  • Prima dell'avvio produzione: modifiche gratuite
  • Produzione avviata: modifiche limitate con eventuali costi aggiuntivi
  • Produzione completata: modifiche non possibili

Per questo è fondamentale l'approvazione dettagliata del prototipo prima della produzione!

Tempi & Consegne

Quali sono i tempi di produzione?

I tempi variano in base a quantità, complessità e destinazione produttiva:

  • Produzione Italia: 30-45 giorni
  • Produzione Turchia: 40-60 giorni
  • Produzione Asia: 60-90 giorni

I tempi includono produzione + controllo qualità. Spedizione esclusa.

Per ordini urgenti valutiamo fast-track con supplemento.

Offrite servizio di spedizione?

Sì! Gestiamo la logistica per te:

  • Spedizione via mare (economica, tempi più lunghi)
  • Spedizione via aerea (rapida, costi maggiori)
  • Spedizione terrestre (per produzioni EU)

Oppure puoi utilizzare il tuo corriere/spedizioniere di fiducia.

Posso ritirare la merce presso di voi?

Assolutamente sì!

La merce può essere ritirata presso:

  • Nostro showroom Milano: Via Toffetti 9
  • Magazzino logistico (per grandi volumi)

Contattaci per organizzare il ritiro con appuntamento:

Come posso monitorare lo stato del mio ordine?

Manteniamo costante comunicazione durante tutte le fasi:

  • Aggiornamenti settimanali via email
  • Report fotografici delle fasi produttive
  • Pre-alert spedizione con documenti di trasporto
  • Tracking number per seguire la spedizione

Trasparenza totale dalla conferma ordine alla consegna!

Prezzi & Pagamenti

Come vengono calcolati i prezzi?

Il prezzo finale dipende da diversi fattori:

  • Tipologia prodotto: complessità del capo
  • Tessuti: qualità e provenienza materiali
  • Quantità: maggiori volumi = prezzo unitario inferiore
  • Lavorazioni: stampe, ricami, finishing speciali
  • Paese produzione: Made in Italy vs produzione Asia

Richiedi un preventivo gratuito per avere un prezzo preciso!

Quali metodi di pagamento accettate?

Accettiamo diverse modalità di pagamento:

  • Bonifico bancario (metodo standard)
  • RiBa / RID per clienti ricorrenti
  • Carta di credito (per piccoli importi)
Termini standard:
• 50% acconto alla conferma ordine
• 50% saldo prima della spedizione

Per clienti con storico consolidato valutiamo condizioni dilazionate.

Il preventivo include IVA e spedizione?

Tutti i preventivi sono intesi IVA esclusa.

La spedizione può essere:

  • Inclusa nel preventivo se specificato
  • Quotata a parte in base a destinazione e modalità
  • A carico cliente con ritiro presso nostro magazzino

Offrite sconti per ordini grandi o ricorrenti?

Sì! Premiamo la continuità e i grandi volumi:

  • Volume discount: sconti progressivi su quantità
  • Cliente ricorrente: condizioni preferenziali
  • Ordini annuali: pricing dedicato

Contattaci per discutere un accordo commerciale personalizzato!

Servizi

Offrite servizio di sourcing tessuti?

Assolutamente sì! Il sourcing tessuti è uno dei nostri punti di forza.

Ti aiutiamo a trovare:

  • Tessuti tecnici e performanti
  • Materiali eco-sostenibili certificati
  • Tessuti luxury e premium
  • Soluzioni custom (stampe esclusive, tinte speciali)

Collaboriamo con fornitori italiani, europei e internazionali per offrirti la massima scelta qualità/prezzo.

Potete aiutarmi a sviluppare la collezione?

Sì! Offriamo consulenza strategica per lo sviluppo collezione:

  • Analisi trend di mercato
  • Sviluppo concept creativo
  • Selezione prodotti e materiali
  • Definizione pricing e margini
  • Coordinamento con designer/stilisti

Non solo produzione: ti affianchiamo dalla creatività alla commercializzazione!

Cos'è Photo Unit e come funziona?

Photo Unit è il nostro servizio fotografico professionale dedicato al fashion.

Realizziamo:

  • Shooting collezioni e lookbook
  • Fotografia e-commerce (sfondo bianco, dettagli)
  • Campaign e advertising
  • Servizi editoriali per riviste e cataloghi
Bundle Produci + Fotografa: sconto 10-15% sul pacchetto completo

Scopri Photo Unit →

Offrite servizi di branding e packaging?

Sì! Possiamo realizzare:

  • Etichette personalizzate: tessute, stampate, in pelle
  • Packaging custom: shopper, scatole, buste
  • Hang tag e cartellini
  • Branding capo: etichette interne, size label

Curiamo l'identità visiva del tuo brand in ogni dettaglio!

Posso venire a visitare lo showroom?

Certamente! Siamo felici di accoglierti nel nostro showroom.

Crusher Agency Showroom
Via Toffetti 9, Milano
Lun-Ven: 9:00-18:00 (su appuntamento)

Contattaci per fissare un appuntamento:

  • Email: [email protected]
  • Fabrizio: +39 393 013 3405
  • Stefano: +39 392 467 8958
  • Daniele: +39 339 781 1697
  • Office: +39 02 8945 7882

Facilmente raggiungibile in Metro, Alta Velocità e Aeroporto!

Non Hai Trovato Risposta?

Il nostro team è pronto ad aiutarti con qualsiasi domanda

in your HTML before main.js // Track Photo Unit clicks from Navigation const navPhotoUnitLink = document.querySelector('.nav-photo-unit'); if (navPhotoUnitLink) { navPhotoUnitLink.addEventListener('click', () => { trackPhotoUnitClick('navigation_menu'); }); } // Track Photo Unit clicks from Hero CTA const heroPhotoUnitCTA = document.getElementById('heroPhotoUnitCTA'); if (heroPhotoUnitCTA) { heroPhotoUnitCTA.addEventListener('click', () => { trackPhotoUnitClick('hero_secondary_cta'); }); } // Track Photo Unit clicks from Services Card const servicesPhotoUnitCTA = document.getElementById('servicesPhotoUnitCTA'); if (servicesPhotoUnitCTA) { servicesPhotoUnitCTA.addEventListener('click', () => { trackPhotoUnitClick('services_grid_card'); }); } // Track Photo Unit clicks from Dedicated Section const sectionPhotoUnitCTA = document.getElementById('sectionPhotoUnitCTA'); if (sectionPhotoUnitCTA) { sectionPhotoUnitCTA.addEventListener('click', () => { trackPhotoUnitClick('dedicated_section'); }); } // Track Photo Unit clicks from Footer const footerPhotoUnitCTA = document.getElementById('footerPhotoUnitCTA'); if (footerPhotoUnitCTA) { footerPhotoUnitCTA.addEventListener('click', () => { trackPhotoUnitClick('footer_menu'); }); } // Generic tracking function function trackPhotoUnitClick(location) { console.log(`Photo Unit Click Tracked: ${location}`); // Try to use GA4 helper function first (from ga4-config.js) if (window.GA4 && typeof window.GA4.trackPhotoUnitClick === 'function') { window.GA4.trackPhotoUnitClick(location); return; } // Fallback to direct gtag call if (typeof gtag !== 'undefined') { gtag('event', `click_photo_unit_${location}`, { 'event_category': 'cross_promotion', 'event_label': location, 'value': 1 }); } // Alternative: Send to custom analytics endpoint // fetch('/api/analytics', { // method: 'POST', // headers: { 'Content-Type': 'application/json' }, // body: JSON.stringify({ // event: 'photo_unit_click', // location: location, // timestamp: Date.now() // }) // }); } // ========================================================================== // CONTACT FORM HANDLING // ========================================================================== const contactForm = document.getElementById('contactForm'); if (contactForm) { contactForm.addEventListener('submit', async (e) => { e.preventDefault(); const submitBtn = contactForm.querySelector('button[type="submit"]'); const originalBtnText = submitBtn.textContent; // Show loading state submitBtn.innerHTML = ' Invio in corso...'; submitBtn.disabled = true; // Get form data const formData = new FormData(contactForm); try { // Send to Web3Forms API const response = await fetch('https://api.web3forms.com/submit', { method: 'POST', body: formData }); const result = await response.json(); if (result.success) { // Success message showNotification('✅ Richiesta inviata con successo! Ti contatteremo entro 24 ore.', 'success'); // Reset form contactForm.reset(); // Track conversion in GA4 if (window.GA4 && typeof window.GA4.trackFormSubmission === 'function') { window.GA4.trackFormSubmission('contatti'); } else if (typeof gtag !== 'undefined') { gtag('event', 'form_submission', { 'event_category': 'contact', 'event_label': 'contact_form_web3forms', 'value': 1 }); } // Log success console.log('✅ Form contatti inviato con successo via Web3Forms'); } else { throw new Error(result.message || 'Errore durante l\'invio'); } } catch (error) { console.error('❌ Errore invio form contatti:', error); showNotification('❌ Si è verificato un errore. Riprova più tardi o contattaci direttamente.', 'error'); } finally { submitBtn.innerHTML = originalBtnText; submitBtn.disabled = false; } }); } // ========================================================================== // NOTIFICATION SYSTEM // ========================================================================== function showNotification(message, type = 'success') { // Create notification element const notification = document.createElement('div'); notification.className = `notification notification-${type}`; notification.textContent = message; // Add styles Object.assign(notification.style, { position: 'fixed', top: '100px', right: '32px', padding: '16px 24px', background: type === 'success' ? '#10b981' : '#ef4444', color: '#fff', borderRadius: '8px', boxShadow: '0 8px 32px rgba(0,0,0,0.2)', zIndex: '10000', fontWeight: '500', maxWidth: '400px', animation: 'slideInRight 0.3s ease-out', fontFamily: 'var(--font-primary)' }); // Add to DOM document.body.appendChild(notification); // Remove after 5 seconds setTimeout(() => { notification.style.animation = 'slideOutRight 0.3s ease-out'; setTimeout(() => { notification.remove(); }, 300); }, 5000); } // ========================================================================== // PORTFOLIO LIGHTBOX // ========================================================================== // Create lightbox HTML const lightboxHTML = ` `; // Initialize lightbox on DOM ready document.addEventListener('DOMContentLoaded', () => { // Lazy loading for portfolio images const portfolioImages = document.querySelectorAll('.portfolio-image img'); if ('IntersectionObserver' in window) { const imageObserver = new IntersectionObserver((entries, observer) => { entries.forEach(entry => { if (entry.isIntersecting) { const img = entry.target; const container = img.closest('.portfolio-image'); container.classList.add('loading'); img.src = img.src; // Trigger load img.onload = () => { img.classList.add('loaded'); container.classList.remove('loading'); observer.unobserve(img); }; img.onerror = () => { container.classList.remove('loading'); observer.unobserve(img); }; } }); }, { rootMargin: '50px' // Start loading 50px before entering viewport }); portfolioImages.forEach(img => { imageObserver.observe(img); }); } // Add lightbox to DOM document.body.insertAdjacentHTML('beforeend', lightboxHTML); const lightbox = document.getElementById('portfolioLightbox'); if (!lightbox) return; const lightboxImage = lightbox.querySelector('.lightbox-image'); const lightboxCategory = lightbox.querySelector('.lightbox-category'); const lightboxTitle = lightbox.querySelector('.lightbox-title'); const lightboxCounter = lightbox.querySelector('.lightbox-counter'); const closeBtn = lightbox.querySelector('.lightbox-close'); const prevBtn = lightbox.querySelector('.lightbox-prev'); const nextBtn = lightbox.querySelector('.lightbox-next'); const overlay = lightbox.querySelector('.lightbox-overlay'); // Get all portfolio items const portfolioItems = document.querySelectorAll('.portfolio-item'); if (portfolioItems.length === 0) return; let currentIndex = 0; // Open lightbox function openLightbox(index) { currentIndex = index; const item = portfolioItems[index]; const img = item.querySelector('.portfolio-image img'); const category = item.querySelector('.portfolio-category').textContent; const title = item.querySelector('.portfolio-title').textContent; lightboxImage.src = img.src; lightboxImage.alt = img.alt; lightboxCategory.textContent = category; lightboxTitle.textContent = title; lightboxCounter.textContent = `${index + 1} / ${portfolioItems.length}`; lightbox.classList.add('active'); document.body.style.overflow = 'hidden'; } // Close lightbox function closeLightbox() { lightbox.classList.remove('active'); document.body.style.overflow = ''; } // Navigate previous function showPrevious() { currentIndex = (currentIndex - 1 + portfolioItems.length) % portfolioItems.length; openLightbox(currentIndex); } // Navigate next function showNext() { currentIndex = (currentIndex + 1) % portfolioItems.length; openLightbox(currentIndex); } // Add click events portfolioItems.forEach((item, index) => { item.addEventListener('click', () => openLightbox(index)); }); // Close events closeBtn.addEventListener('click', closeLightbox); overlay.addEventListener('click', closeLightbox); // Navigation events prevBtn.addEventListener('click', (e) => { e.stopPropagation(); showPrevious(); }); nextBtn.addEventListener('click', (e) => { e.stopPropagation(); showNext(); }); // Keyboard navigation document.addEventListener('keydown', (e) => { if (!lightbox.classList.contains('active')) return; if (e.key === 'Escape') closeLightbox(); if (e.key === 'ArrowLeft') showPrevious(); if (e.key === 'ArrowRight') showNext(); }); }); // Add notification animations const style = document.createElement('style'); style.textContent = ` @keyframes slideInRight { from { transform: translateX(400px); opacity: 0; } to { transform: translateX(0); opacity: 1; } } @keyframes slideOutRight { from { transform: translateX(0); opacity: 1; } to { transform: translateX(400px); opacity: 0; } } `; document.head.appendChild(style); // ========================================================================== // SMOOTH SCROLL FOR ANCHOR LINKS // ========================================================================== document.querySelectorAll('a[href^="#"]').forEach(anchor => { anchor.addEventListener('click', function (e) { const href = this.getAttribute('href'); // Skip if href is just "#" if (href === '#') return; e.preventDefault(); const target = document.querySelector(href); if (target) { const headerOffset = 80; const elementPosition = target.getBoundingClientRect().top; const offsetPosition = elementPosition + window.pageYOffset - headerOffset; window.scrollTo({ top: offsetPosition, behavior: 'smooth' }); } }); }); // ========================================================================== // ACTIVE NAV LINK HIGHLIGHTING // ========================================================================== function updateActiveNavLink() { const sections = document.querySelectorAll('section[id]'); const navLinks = document.querySelectorAll('.nav-link'); let current = ''; const scrollPosition = window.scrollY + 100; sections.forEach(section => { const sectionTop = section.offsetTop; const sectionHeight = section.clientHeight; if (scrollPosition >= sectionTop && scrollPosition < sectionTop + sectionHeight) { current = section.getAttribute('id'); } }); navLinks.forEach(link => { link.classList.remove('active'); if (link.getAttribute('href') === `#${current}`) { link.classList.add('active'); } }); } window.addEventListener('scroll', updateActiveNavLink); // ========================================================================== // HERO VIDEO OPTIMIZATION // ========================================================================== const heroVideo = document.querySelector('.hero-video'); if (heroVideo) { // Ensure video plays on load (some browsers block autoplay) heroVideo.play().catch(error => { console.log('Video autoplay prevented:', error); }); // Pause video when not in viewport to save resources const videoObserver = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { heroVideo.play(); } else { heroVideo.pause(); } }); }, { threshold: 0.25 }); videoObserver.observe(heroVideo); } // ========================================================================== // INITIALIZE ON LOAD // ========================================================================== document.addEventListener('DOMContentLoaded', () => { console.log('Crusher Agency - Website Loaded'); // initGA4(); // Uncomment when GA4 is configured updateActiveNavLink(); }); // ========================================================================== // PERFORMANCE OPTIMIZATION - Lazy Loading Images // ========================================================================== if ('IntersectionObserver' in window) { const imageObserver = new IntersectionObserver((entries, observer) => { entries.forEach(entry => { if (entry.isIntersecting) { const img = entry.target; if (img.dataset.src) { img.src = img.dataset.src; img.removeAttribute('data-src'); } observer.unobserve(img); } }); }); // Observe all images with data-src attribute document.querySelectorAll('img[data-src]').forEach(img => { imageObserver.observe(img); }); } // ========================================================================== // EXPORT FUNCTIONS (for use in other scripts) // ========================================================================== window.CrusherAgency = { trackPhotoUnitClick, showNotification };