// Servizio detail page — UC-A2 conversion screen for a service listing // Hero: provider info + sample work · Packages: 3-tier pricing · Tabs: Cosa include / Specs / Recensioni / FAQ const SD_Icons = window.SonaraIcons; const { useState: useStateSD, useMemo: useMemoSD } = React; const PICK_SVC = () => (window.ALL_SERVIZI && window.ALL_SERVIZI[0]) || null; function ServizioDetailPage() { const src = PICK_SVC(); // Build a normalized service object — fall back to mock if catalog has unexpected shape const svc = useMemoSD(() => ({ title: (src && src.title) || "Mix + Master per singolo · trap moderno", category: (src && src.category) || "Mix + Master", cover: (src && (src.art || src.cover)) || "art-b", provider: { name: (src && (src.providerName || (src.provider && src.provider.name))) || "Marco Vitale", init: "MV", verified: true, art: "art-a", rating: 4.9, reviews: 142, completedProjects: 87, responseTime: "1h", location: "Roma", since: "2023", }, rating: 4.9, reviews: 142, orders: 87, delivery: "5 giorni", revisions: 2, description: "Trasformo i tuoi stems in una traccia pronta per Spotify e radio. Mix con dinamica e profondità, master coeso e loud al punto giusto. Esperienza con 200+ release indie italiane.", packages: [ { id: "base", name: "Base", price: 60, delivery: "5gg", revisions: 1, tagline: "Mix mono-strumentale + master streaming", features: [ "Fino a 12 tracce stems", "Mix dinamico stereo", "Master per streaming (LUFS -14)", "1 round di revisione", "Consegna WAV 24-bit + MP3 320", ], }, { id: "standard", name: "Standard", price: 110, popular: true, delivery: "4gg", revisions: 2, tagline: "Aggiunge tuning vocale + 808 design", features: [ "Fino a 24 tracce stems", "Tuning vocale (Auto-tune o Melodyne)", "808 design + sub-bass enhancement", "Master streaming + radio (LUFS -9)", "2 round di revisione", "Consegna WAV 24-bit + MP3 320 + stems mixati", ], }, { id: "pro", name: "Pro", price: 180, delivery: "3gg", revisions: 3, tagline: "Express + Atmos + sessione di confronto", features: [ "Tracce illimitate", "Mixing analogico + Atmos master", "Sessione di confronto via call (45min)", "3 round di revisione + revisioni minor illimitate", "Consegna WAV + MP3 + stems mixati + .ptx ProTools", "Priority delivery (3gg garantiti)", ], }, ], }), [src]); const [pkg, setPkg] = useStateSD("standard"); const sel = svc.packages.find(p => p.id === pkg); return (
{/* breadcrumb */}
{/* LEFT */}
{/* Hero */} {/* Tabs */} {/* Provider card */} {/* Sample work */}
{/* RIGHT — packages */}
); } // ---------- Tabs ---------- function SvcTabs({ svc }) { const [tab, setTab] = useStateSD("include"); return (
{tab === "include" && } {tab === "how" && } {tab === "specs" && } {tab === "faq" && } {tab === "reviews" && }
); } function SvcIncludeTab() { const groups = [ { title: "Mixing", items: [ "Bilanciamento e gain staging", "Equalizzazione strumenti e voci", "Compressione dinamica", "Saturazione armonica analogica", "Spazializzazione e profondità (reverb, delay)", "Sub-bass enhancement", ], }, { title: "Mastering", items: [ "Coerenza tonale tra le tracce", "Limiting e loudness ottimizzato per piattaforma", "Master per streaming (-14 LUFS) o radio (-9 LUFS)", "Stereo enhancement", "Versione MP3 320 + WAV 24-bit", ], }, { title: "Extra inclusi", items: [ "Tuning vocale (Auto-tune naturale o Melodyne dettagliato)", "Pulizia plosive, breath, click", "808 design + glide + sub layering", ], }, ]; return (
{groups.map((g, gi) => (

{g.title}

))}
); } function SvcHowTab() { const steps = [ { n: 1, t: "Brief & stems", s: "Ricevo il tuo brief e gli stems via Sonara. Ti chiedo riferimenti sonori e indicazioni specifiche entro 12h." }, { n: 2, t: "Mix v1 in 2 giorni", s: "Lavoro al mix entro 2 giorni dalla consegna stems. Ti mando la prima versione con note vocali sui passaggi chiave." }, { n: 3, t: "Revisioni mirate", s: "Hai 2 round di revisione in cui puoi commentare con timestamp precisi sulla traccia. Rispondo entro 24h." }, { n: 4, t: "Master finale", s: "Una volta approvato il mix, master coeso e ottimizzato per la piattaforma di destinazione. Consegna in 24h." }, { n: 5, t: "Consegna & follow-up", s: "Ricevi tutti i file via wallet Sonara. Resto disponibile 30 giorni per minor revisioni gratuite." }, ]; return (
{steps.map((s, i) => (
{s.n}
{s.t}
{s.s}
))}
); } function SvcSpecsTab() { return (
{[ ["Stems richiesti", "WAV 24-bit / 48kHz"], ["Headroom", "-6 dB peak"], ["Naming", "01_kick.wav, 02_snare.wav…"], ["Effetti consigliati", "Stems dry o con FX bus separato"], ["Numero tracce", "Fino a 24 (Standard)"], ["Reference", "Spotify link o file MP3"], ["Software", "ProTools 2024 + UAD plugins"], ["Monitor", "ATC SCM45 + Yamaha NS10"], ["Acustica studio", "Trattata + room correction"], ["Consegna stems mixati", "Solo Standard e Pro"], ["Sessione ProTools", "Solo Pro"], ["Revisioni extra", "€15 cad. dopo le incluse"], ].map(([k, v]) => (
{k} {v}
))}
); } function SvcFaqTab() { const [open, setOpen] = useStateSD(0); const faq = [ { q: "Posso mandarti un demo prima di acquistare?", a: "Certo. Mandami un MP3 con un riferimento e una nota su cosa vuoi ottenere via Sonara — ti rispondo entro 1h con un'idea del piano migliore." }, { q: "Cosa succede se non sono soddisfatto del mix?", a: "Hai revisioni incluse nel pacchetto (1, 2 o 3) per chiedere modifiche con timestamp precisi. Se davvero non riusciamo a trovare la quadra, puoi richiedere il rimborso entro 24h dalla consegna finale tramite il sistema di mediazione Sonara." }, { q: "Lavori solo sul tuo studio o anche con stems da altri studi?", a: "Lavoro solo sui tuoi stems. L'unica condizione è che siano puliti, in WAV 24-bit, con -6dB di headroom e nominati correttamente — trovi il template nella sezione Specs." }, { q: "Posso pagare in più rate?", a: "Pacchetto Pro è dilazionabile in 3 rate via Sonara Wallet. Base e Standard sono in pagamento unico al momento dell'ordine, escrow rilasciato all'approvazione." }, { q: "Fai anche solo master?", a: "Sì, ma con prezzo e timing differenti. Apri una conversazione e ti mando offerta custom." }, ]; return (
{faq.map((f, i) => ( ))}
); } function SvcReviewsTab({ svc }) { return (
{svc.rating}
{[1,2,3,4,5].map(i => )}
{svc.reviews} recensioni · {svc.orders} progetti
{[ [5, 128], [4, 12], [3, 2], [2, 0], [1, 0], ].map(([s, c]) => (
{s}★ {c}
))}
{[ { who: "Sara R.", whoInit: "SR", time: "3gg fa", stars: 5, pkg: "Standard", text: "Marco è uno dei pochi mix engineer che ascolta DAVVERO il brief. Ha capito al primo giro cosa volevo e ha consegnato in anticipo. Comunicazione 10/10." }, { who: "Diego K.", whoInit: "DK", time: "1 sett", stars: 5, pkg: "Pro", text: "La sessione di confronto via call vale i €180. Mi ha spiegato perché certe scelte non funzionavano e la traccia finale è un altro pianeta." }, { who: "Vale F.", whoInit: "VF", time: "2 sett", stars: 5, pkg: "Standard", text: "Tuning vocale perfetto, naturale ma stabile. Il master ha dato peso al low-end senza cuocere gli alti. Tornerò sicuramente." }, { who: "Luca M.", whoInit: "LM", time: "3 sett", stars: 4, pkg: "Base", text: "Buon lavoro, mi sarebbe piaciuto un round di revisione in più. Forse passerò allo Standard." }, ].map((r, i) => (
{r.whoInit}
{r.who} {[1,2,3,4,5].map(x => )} Pacchetto {r.pkg} {r.time}

{r.text}

))}
); } // ---------- Provider card ---------- function SvcProviderCard({ prov }) { return (
{prov.init}
{prov.name} {prov.verified && }
{prov.location} {prov.rating} · {prov.reviews} recensioni Su Sonara dal {prov.since} {prov.completedProjects} progetti
Mix + Master Vocal prod Trap · R&B
Contatta Vedi profilo
); } // ---------- Sample work ---------- function SvcSamples() { const samples = [ { t: "Notte Lunga · trap", who: "Sara R.", art: "art-a", duration: "2:48" }, { t: "Codice nero · drill", who: "Diego K.", art: "art-b", duration: "3:12" }, { t: "Mare scuro · R&B", who: "Vale F.", art: "art-c", duration: "3:54" }, { t: "Skyline · trap", who: "DK", art: "art-d", duration: "2:36" }, ]; return (
Ascolta lavori recenti Tutti i lavori
{samples.map((s, i) => (
{s.t}
cliente: {s.who}
{s.duration} Mix + Master
))}
); } window.ServizioDetailPage = ServizioDetailPage;