Twig Error: Unexpected token "name" of value "Months" ("end of print statement" expected) in "__string_template__139e90f7f3575fbcab455d1e3f7f9e83" at line 2503 column 119. Check in Debugger

{# /onboarding/ — blocco SEO. Vedi le Notes dello stack. #} {% set agency = cms.collection.object("agency", "agency") %} {% set lang = getData.lang in ['es','it'] ? getData.lang : 'en' %} {% set locale = {'en':'en_US','es':'es_MX','it':'it_IT'}[lang] %} {% set meta = { 'title': {en: 'Client Onboarding | Holaloro Studio', es: 'Onboarding de clientes | Holaloro Studio', it: 'Onboarding clienti | Holaloro Studio'}, 'desc': {en: 'Tell us about your project so we can prepare a sharper proposal.', es: 'Cuéntanos sobre tu proyecto para preparar una propuesta más precisa.', it: 'Raccontaci del tuo progetto per preparare una proposta più mirata.'}, 'crumb': {en: 'Onboarding', es: 'Onboarding', it: 'Onboarding'} } %} {% set siteUrl = "https://holalorostudio.com/"|trim('/') %} {% set path = "/onboarding/" %} {% set selfUrl = siteUrl ~ path ~ (lang == 'en' ? '' : '?lang=' ~ lang) %} {% set seoTitle = meta.title[lang] %} {% set seoDesc = meta.desc[lang] %} {% set ogImage = siteUrl ~ cms.media.imagePath(agency, {w:'1200', h:'630', fit:'crop', fm:'jpg'}, {collection:'agency', property:'logo'}) %} {{ seoTitle }} {% for alt in ['en_US','es_MX','it_IT']|filter(a => a != locale) %} {% endfor %} Onboarding
{% set stackspublish = false %}
{# ============================================================ _navbar.twig — Holaloro Studio SERVER-SIDE LANGUAGE (rev. 2026-08-18) Prima: emetteva tutte e tre le lingue e ne nascondeva due via CSS. Adesso: emette SOLO la lingua richiesta. Un terzo dell'HTML, e Google legge una lingua sola. ⚠ Non rimettere l'attributo lang="es"/lang="it" sugli span: finché la regola globale `[lang="es"],[lang="it"]{display:none}` è viva nelle pagine, marcare uno span come "es" lo fa sparire. La lingua ora la dichiara , che è il posto giusto. Usage: {% include '_navbar.twig' %} ============================================================ #} {# ── Lingua. Fonte: getData.lang. ⚠ NON è il parametro grezzo dell'URL. Il sito monta lo stack Agent Lang di Joe Workman su ogni pagina, configurato ['default'=>'en','supported'=>'en,es,it','key'=>'lang','session'=>true]. Il suo costruttore chiama setupEnv(), che fa: $_GET['lang'] = $this->lang; $_SESSION['agent-lang'] = $this->lang; cioè RISCRIVE $_GET con la lingua già risolta nell'ordine ?lang= → sessione → default, validata contro `supported` (su ?lang=fr scrive 'en'). TCMS valuta il Twig sul buffer a fine pagina, quindi DOPO quella riscrittura: getData.lang qui dentro è la lingua risolta da Agent Lang, sessione inclusa. Verificato dal vivo: con la sessione a 'es', /services/ SENZA parametro rende il titolo spagnolo. Da NON usare: sessionData['agent-lang'] — è la stessa informazione un gradino più in basso e senza la validazione. ── #} {% set lang = getData.lang in ['es','it'] ? getData.lang : 'en' %} {% set locale = {'en':'en_US','es':'es_MX','it':'it_IT'}[lang] %} {# ── Link interni con la lingua esplicita. Per un visitatore umano è ridondante: la sessione di Agent Lang porta già avanti la lingua sui link nudi. Serve per i CRAWLER, che sessione non ne hanno: ogni fetch di Googlebot è una sessione vergine, quindi getData.lang vale 'en' sempre. Senza il parametro nei link, un crawler entrato da ?lang=es e uscito su un link nudo riceve inglese — la versione ES muore dopo una pagina e le URL dichiarate in hreflang non sono raggiungibili navigando. Su 'en' langQS è stringa vuota, così le URL inglesi restano pulite e coincidono con il canonical. ⚠ Sui link con àncora la query va PRIMA del '#', non dopo: /services/{{ langQS }}#svc-cat-… → /services/?lang=es#svc-cat-… I link dello switch lingua qui sotto NON lo usano: costruiscono il proprio ?lang= per definizione. ── #} {% set langQS = lang == 'en' ? '' : '?lang=' ~ lang %} {# ── Stringhe d'interfaccia. Tutte qui, in un posto solo, invece di sparse in 40 tripletti di span. ── #} {% set t = { 'services': {en:'Services', es:'Servicios', it:'Servizi'}, 'industries': {en:'Industries', es:'Industrias', it:'Settori'}, 'work': {en:'Work', es:'Trabajo', it:'Lavori'}, 'about': {en:'About', es:'Nosotros', it:'Chi siamo'}, 'insights': {en:'Insights', es:'Perspectivas', it:'Approfondimenti'}, 'contact': {en:'Get in touch',es:'Contáctanos', it:'Contattaci'}, 'allInd': {en:'All industries →', es:'Todas las industrias →', it:'Tutti i settori →'}, 'navLabel': {en:'Main navigation', es:'Navegación principal', it:'Navigazione principale'}, 'svcMenu': {en:'Services menu', es:'Menú de servicios', it:'Menu servizi'}, 'indMenu': {en:'Industries menu', es:'Menú de industrias', it:'Menu settori'}, 'openMenu': {en:'Open menu', es:'Abrir menú', it:'Apri menu'} } %} {# Agency settings #} {% set agency = cms.collection.object('agency', 'agency') %} {# Megamenu column definitions — label/cta annidati per lingua, così il markup fa {{ group.label[lang] }} invece di tre span. #} {% set menuGroups = [ { key: 'web-design', label: {en:'Web Design', es:'Diseño Web', it:'Web Design'}, cta: {en:'All web services', es:'Todos los servicios web', it:'Tutti i servizi web'} }, { key: 'ai-solutions', label: {en:'AI Solutions', es:'Soluciones de IA', it:'Soluzioni IA'}, cta: {en:'All AI services', es:'Todos los servicios de IA', it:'Tutti i servizi IA'} }, { key: 'business-apps', label: {en:'Business Apps', es:'Apps de Negocio', it:'App Aziendali'}, cta: {en:'All business apps', es:'Todas las apps', it:'Tutte le app'} }, { key: 'branding-design', label: {en:'Branding & Design', es:'Branding & Diseño', it:'Branding & Design'}, cta: {en:'All branding services', es:'Todos los servicios', it:'Tutti i servizi'} }, { key: 'marketing', label: {en:'Marketing', es:'Marketing', it:'Marketing'}, cta: {en:'All marketing services', es:'Todos los servicios', it:'Tutti i servizi'} } ] %} {# Services — stessa Data View cachata di _services.twig (dataview-services-grid). Riusata qui perché questo partial gira su OGNI pagina, non solo in home. ⚠ REINSTATED (2026-07-22), poi REVERTED (2026-07-24): la view aveva brevemente bakato thumbnailSmUrl; per decisione esplicita è revertito (storia completa nel doc comment di quel file). Questo ramo risolve thumbnailSm live con cms.collection.object() + cms.media.imagePath(), gated dal flag cachato hasThumb. NOVITÀ: `title` esce da qui come STRINGA già nella lingua giusta, non più come dict {en,es,it}. I due rami producono la stessa forma, quindi il markup sotto non deve sapere da quale ramo arriva — e il ramo di fallback fa 1 chiamata cms.locale.text() per servizio invece di 3. #} {% set dv = cms.view.get('dataview-services-grid') %} {% set usingView = dv is not empty and dv.groups is defined %} {% if usingView %} {% set serviceGroups = {} %} {% for group in menuGroups %} {% set slides = [] %} {% for s in dv.groups[group.key]|default([]) %} {% set sObj = s.hasThumb ? cms.collection.object('services', s.id) : null %} {% set slides = slides|merge([{ "id": s.id, "title": s.title[lang]|default(''), "thumbnailSm": sObj ? cms.media.imagePath(sObj, {w: 160, h: 160, fm: 'webp', fit: 'cover'}, {collection: 'services', property: 'thumbnail'}) : '', "hasThumb": s.hasThumb }]) %} {% endfor %} {% set serviceGroups = serviceGroups|merge({ (group.key): slides }) %} {% endfor %} {% else %} {% set allServices = cms.collection.objects('services') %} {% set serviceGroups = {} %} {% for group in menuGroups %} {% set slides = [] %} {% for s in allServices %} {% if s.category == group.key %} {% set hasThumb = s.thumbnail and s.thumbnail.name %} {% set slides = slides|merge([{ "id": s.id, "title": cms.locale.text(s.title, locale)|default(''), "thumbnailSm": hasThumb ? cms.media.imagePath(s, {w: 160, h: 160, fm: 'webp', fit: 'cover'}, {collection: 'services', property: 'thumbnail'}) : '', "hasThumb": hasThumb }]) %} {% endif %} {% endfor %} {% set serviceGroups = serviceGroups|merge({ (group.key): slides }) %} {% endfor %} {% endif %} {# Industries — Data View cachata (dataview-industries), stesso schema di sopra. Anche qui title/tagline escono come stringhe già risolte. ⚠ REINSTATED (2026-07-22), poi REVERTED (2026-07-24): thumbUrl/ logoUrl non sono più bakati nella view; si risolvono live gated dai flag hasThumb/hasLogo. #} {% set industriesDv = cms.view.get('dataview-industries') %} {% set usingIndustriesView = industriesDv is not empty and industriesDv.items is defined %} {% if usingIndustriesView %} {% set navIndustries = [] %} {% for it in industriesDv.items %} {% set itObj = (it.hasThumb or it.hasLogo) ? cms.collection.object('industries', it.id) : null %} {% set navIndustries = navIndustries|merge([{ "id": it.id, "title": it.title[lang]|default(''), "tagline": it.tagline[lang]|default(''), "acronym": it.acronym, "thumb": it.hasThumb ? cms.media.imagePath(itObj, {w: 1000, h: 800, fm: 'webp', fit: 'cover'}, {collection: 'industries', property: 'thumbnail'}) : '', "logo": it.hasLogo ? cms.media.imagePath(itObj, {h: 64, fm: 'webp', fit: 'contain'}, {collection: 'industries', property: 'logo'}) : '' }]) %} {% endfor %} {% else %} {% set navIndustries = [] %} {% for i in cms.collection.objects('industries') %} {% set f = cms.collection.object('industries', i.id) %} {% if f.active %} {% set hasThumb = f.thumbnail and f.thumbnail.name %} {% set hasLogo = f.logo and f.logo.name %} {% set navIndustries = navIndustries|merge([{ "id": f.id, "title": cms.locale.text(f.title, locale)|default(''), "tagline": cms.locale.text(f.tagline, locale)|default(''), "acronym": f.product_acronym|default(''), "thumb": hasThumb ? cms.media.imagePath(f, {w: 1000, h: 800, fm: 'webp', fit: 'cover'}, {collection: 'industries', property: 'thumbnail'}) : '', "logo": hasLogo ? cms.media.imagePath(f, {h: 64, fm: 'webp', fit: 'contain'}, {collection: 'industries', property: 'logo'}) : '' }]) %} {% endif %} {% endfor %} {% endif %} {# ---- Nav ---- #} {# Logo: h:64 (buffer retina 2x sui 32px CSS) + webp preserva il ratio originale 975:305 senza crop. 102×32 sono width/height per riservare lo spazio in layout (anti-CLS). #} {% set hlLogoSrc = cms.media.imagePath(agency, {h: 64, fm: 'webp'}, {collection: 'agency', property: 'logo_white'}) %} {# Logo — FUORI da .hl-nav di proposito. .hl-nav prende un translateY per lo scroll-hide, e un transform sull'antenato ri-ancora qualsiasi position:fixed DISCENDENTE alla box dell'antenato invece che al viewport (ha già morso megamenu/drawer una volta — vedi la nota JS su "Hide navbar on scroll"). Tenendo il logo sempre visibile come fratello e non come figlio, non deve combattere quella cosa. La copia dentro .hl-nav__inner è solo layout: invisibile, riserva lo spazio flex perché i link non slittino a sinistra. #} {# ── Scrim + blur in cima — due elementi separati per due lavori separati, divisi dopo che la prima versione è costata performance vere (dettagli nei commenti CSS): 1) .hl-nav__top-scrim — gradiente puro, niente backdrop-filter. Sempre renderizzato (i gradienti sono ~gratis), fisso in cima, dietro .hl-nav. È quello che dà uno sfondo leggibile al logo pinnato quando .hl-nav si nasconde nello scroll-down — stato che persiste durante lo scroll continuo, quindi dev'essere economico. 2) .hl-nav__top-blur — il vero blur a 5 livelli (stessa ricetta di .hl-bottom-blur in _footer.twig, specchiata). Montato (display:none → block) SOLO da fermi in cima alla pagina, mai durante lo scroll attivo: è l'unico stato in cui il costo di backdrop-filter è accettabile. ── #} {# Main landmark — aperto qui (chiuso in cima a _footer.twig) così avvolge ogni sezione di contenuto senza toccare i singoli partial. Fixa "Document does not have a main landmark" (audit a11y, 2026-07-22). #}
{# ============================================================ CSS ============================================================ #} {# ── Il CSS della navbar è uscito da questo file il 2026-07-22 — vive in navbar-styles-snippet.html, incollato nel partial degli stili globali così carica prima che arrivi l'HTML di questo file (prima gli correva contro, da cui il flash di menu impilato senza stile). Se la navbar torna senza stile, controlla che quello snippet ci sia ancora. ⚠ In quello stesso snippet vanno TOLTE le regole lingua: [lang="es"], [lang="it"] { display: none; } [data-lang="es"] [lang="en"] { display: none; } [data-lang="es"] [lang="es"] { display: inline; } [data-lang="it"] [lang="en"] { display: none; } [data-lang="it"] [lang="it"] { display: inline; } Non servono più — e la prima nasconderebbe lo switcher, che è l'unico posto dove lang="es"/lang="it" resta legittimo. ── #} {# ============================================================ JS ============================================================ #}
{# _onboarding — modulo di onboarding cliente. Vedi le Notes dello stack. #} {% set lang = getData.lang in ['es','it'] ? getData.lang : 'en' %} {% set locale = {'en':'en_US','es':'es_MX','it':'it_IT'}[lang] %} {% set langQS = lang == 'en' ? '' : '?lang=' ~ lang %} {% set t = { 'onboarding': {en: 'Onboarding', es: 'Onboarding', it: 'Onboarding'}, 'tellUsAboutYour': {en: 'Tell us about your project', es: 'Cuéntanos sobre tu proyecto', it: 'Raccontaci del tuo progetto'}, 'aFewFocusedQuestions': {en: 'A few focused questions so we can understand your business before we start. You don\'t have to fill in every field — but the more you tell us, the sharper our proposal will be.', es: 'Unas pocas preguntas para entender tu negocio antes de empezar. No hace falta rellenar todos los campos, pero cuanto más nos cuentes, más precisa será nuestra propuesta.', it: 'Poche domande mirate per capire la tua attività prima di iniziare. Non devi compilare ogni campo, ma più ci racconti, più sarà precisa la nostra proposta.'}, 'weRestoredYourPrevious': {en: 'We restored your previous answers.', es: 'Hemos restaurado tus respuestas anteriores.', it: 'Abbiamo ripristinato le tue risposte precedenti.'}, 'startOver': {en: 'Start over', es: 'Empezar de nuevo', it: 'Ricomincia'}, 'contact': {en: 'Contact', es: 'Contacto', it: 'Contatto'}, 'project': {en: 'Project', es: 'Proyecto', it: 'Progetto'}, 'scope': {en: 'Scope', es: 'Alcance', it: 'Tempi'}, 'design': {en: 'Design', es: 'Diseño', it: 'Design'}, 'audience': {en: 'Audience', es: 'Audiencia', it: 'Pubblico'}, 'competitors': {en: 'Competitors', es: 'Competencia', it: 'Concorrenti'}, 'pages': {en: 'Pages', es: 'Páginas', it: 'Pagine'}, 'lastStep': {en: 'Last step', es: 'Último paso', it: 'Ultimo passo'}, 'contactInformation': {en: 'Contact information', es: 'Información de contacto', it: 'Informazioni di contatto'}, 'yourDetailsAndThe': {en: 'Your details, and the address of your existing website if you have one.', es: 'Tus datos y la dirección de tu web actual si tienes una.', it: 'I tuoi dati e l\'indirizzo del tuo sito attuale, se ne hai uno.'}, 'firstName': {en: 'First name', es: 'Nombre', it: 'Nome'}, 'lastName': {en: 'Last name', es: 'Apellido', it: 'Cognome'}, 'company': {en: 'Company', es: 'Empresa', it: 'Azienda'}, 'role': {en: 'Role', es: 'Cargo', it: 'Ruolo'}, 'email': {en: 'Email', es: 'Correo electrónico', it: 'Email'}, 'phone': {en: 'Phone', es: 'Teléfono', it: 'Telefono'}, 'websiteUrl': {en: 'Website URL', es: 'URL del sitio web', it: 'URL del sito web'}, 'whatDoYouDo': {en: 'What do you do?', es: '¿A qué te dedicas?', it: 'Di cosa ti occupi?'}, 'theProject': {en: 'The project', es: 'El proyecto', it: 'Il progetto'}, 'justAFewTaps': {en: 'Just a few taps — this tells us which questions are actually worth asking you.', es: 'Solo unos toques — esto nos dice qué preguntas merece la pena hacerte.', it: 'Bastano pochi tap — così sappiamo quali domande ha senso farti davvero.'}, 'whatDoYouNeed': {en: 'What do you need?', es: '¿Qué necesitas?', it: 'Di cosa hai bisogno?'}, 'selectEverythingThatApplies': {en: 'Select everything that applies — most projects combine more than one.', es: 'Selecciona todo lo que necesites — la mayoría de proyectos combinan varias cosas.', it: 'Seleziona tutto quello che ti serve — la maggior parte dei progetti ne combina più di uno.'}, 'aNewWebsite': {en: 'A new website', es: 'Un sitio web nuevo', it: 'Un sito nuovo'}, 'redesignOfMySite': {en: 'Redesign of my site', es: 'Rediseño de mi sitio', it: 'Restyling del mio sito'}, 'anOnlineShop': {en: 'An online shop', es: 'Una tienda online', it: 'Un e-commerce'}, 'aWebAppOr': {en: 'A web app or platform', es: 'Una web app o plataforma', it: 'Una web app o piattaforma'}, 'aiSolutionsAmpAutomation': {en: 'AI solutions & automation', es: 'Soluciones de IA y automatización', it: 'Soluzioni AI e automazioni'}, 'marketing': {en: 'Marketing', es: 'Marketing', it: 'Marketing'}, 'branding': {en: 'Branding', es: 'Branding', it: 'Branding'}, 'whatIsYourCurrent': {en: 'What is your current site built on?', es: '¿Con qué está hecho tu sitio actual?', it: 'Con cosa è fatto il tuo sito attuale?'}, 'yourSector': {en: 'Your sector', es: 'Tu sector', it: 'Il tuo settore'}, 'pickTheClosestOne': {en: 'Pick the closest one — we work across every industry.', es: 'Elige el más cercano — trabajamos en todos los sectores.', it: 'Scegli il più vicino — lavoriamo con ogni settore.'}, 'restaurantsAmpFood': {en: 'Restaurants & food', es: 'Restauración', it: 'Ristorazione'}, 'dealershipsAmpAutomotive': {en: 'Dealerships & automotive', es: 'Concesionarios', it: 'Concessionarie'}, 'educationAmpTraining': {en: 'Education & training', es: 'Educación', it: 'Formazione'}, 'retailAmpEcommerce': {en: 'Retail & e-commerce', es: 'Retail y e-commerce', it: 'Retail ed e-commerce'}, 'realEstate': {en: 'Real estate', es: 'Inmobiliaria', it: 'Immobiliare'}, 'construction': {en: 'Construction', es: 'Construcción', it: 'Edilizia e costruzioni'}, 'healthAmpWellness': {en: 'Health & wellness', es: 'Salud y bienestar', it: 'Salute e benessere'}, 'tourismAmpHospitality': {en: 'Tourism & hospitality', es: 'Turismo y hostelería', it: 'Turismo e ospitalità'}, 'professionalServices': {en: 'Professional services', es: 'Servicios profesionales', it: 'Servizi professionali'}, 'industryAmpB2b': {en: 'Industry & B2B', es: 'Industria y B2B', it: 'Industria e B2B'}, 'other': {en: 'Other', es: 'Otro', it: 'Altro'}, 'howManyLanguagesShould': {en: 'How many languages should the site have?', es: '¿Cuántos idiomas debe tener el sitio?', it: 'In quante lingue deve essere il sito?'}, 'justOne': {en: 'Just one', es: 'Solo uno', it: 'Solo una'}, 'two': {en: 'Two', es: 'Dos', it: 'Due'}, 'three': {en: 'Three', es: 'Tres', it: 'Tre'}, 'fourOrMore': {en: 'Four or more', es: 'Cuatro o más', it: 'Quattro o più'}, 'timingAmpScope': {en: 'Timing & scope', es: 'Plazos y alcance', it: 'Tempi e portata'}, 'whenDoYouNeed': {en: 'When do you need it live?', es: '¿Cuándo lo necesitas publicado?', it: 'Quando ti serve online?'}, 'asSoonAsPossible': {en: 'As soon as possible', es: 'Lo antes posible', it: 'Il prima possibile'}, '13Months': {en: '1–3 months', es: '1–3 meses', it: '1–3 mesi'}, '36Months': {en: '3–6 months', es: '3–6 meses', it: '3–6 mesi'}, '612Months': {en: '6–12 months', es: '6–12 meses', it: '6–12 mesi'}, 'moreThan12Months': {en: 'More than 12 months', es: 'Más de 12 meses', it: 'Oltre 12 mesi'}, 'justExploring': {en: 'Just exploring', es: 'Solo estoy explorando', it: 'Sto solo esplorando'}, 'indicativeBudget': {en: 'Indicative budget', es: 'Presupuesto orientativo', it: 'Budget indicativo'}, 'itHelpsUsScope': {en: 'It helps us scope realistically. No commitment.', es: 'Nos ayuda a dimensionar. Sin compromiso.', it: 'Ci aiuta a dimensionare. Senza impegno.'}, 'notSureYet': {en: 'Not sure yet', es: 'Aún no lo sé', it: 'Da definire'}, 'areYourContentsReady': {en: 'Are your contents ready?', es: '¿Tienes los contenidos listos?', it: 'I contenuti sono pronti?'}, 'textsPhotosLogoBrand': {en: 'Texts, photos, logo, brand assets.', es: 'Textos, fotos, logo, materiales de marca.', it: 'Testi, foto, logo, materiali di brand.'}, 'readyToGo': {en: 'Ready to go', es: 'Listos', it: 'Pronti'}, 'partlyReady': {en: 'Partly ready', es: 'En parte', it: 'In parte'}, 'weNeedHelpCreating': {en: 'We need help creating them', es: 'Necesitamos ayuda para crearlos', it: 'Ci serve aiuto per crearli'}, 'whoDecidesOnThis': {en: 'Who decides on this project?', es: '¿Quién decide en este proyecto?', it: 'Chi decide su questo progetto?'}, 'iDecide': {en: 'I decide', es: 'Decido yo', it: 'Decido io'}, 'iDecideWithOthers': {en: 'I decide with others', es: 'Decido con otros', it: 'Decido con altri'}, 'imGatheringInformation': {en: 'I\'m gathering information', es: 'Estoy recopilando información', it: 'Sto raccogliendo informazioni'}, 'designDirection': {en: 'Design direction', es: 'Dirección de diseño', it: 'Direzione di design'}, 'anyReferenceIsUseful': {en: 'Any reference is useful. Paste URLs of sites that caught your eye — competitors or not — and tell us what you like and dislike about each.', es: 'Cualquier referencia es útil. Pega URLs de sitios que te hayan llamado la atención — de la competencia o no — y dinos qué te gusta y qué no de cada uno.', it: 'Ogni riferimento è utile. Incolla URL di siti che ti hanno colpito — concorrenti o meno — e dicci cosa ti piace e cosa no di ciascuno.'}, 'designSuggestions': {en: 'Design suggestions', es: 'Sugerencias de diseño', it: 'Suggerimenti di design'}, 'doYouNeedA': {en: 'Do you need a logo design or re-design?', es: '¿Necesitas diseño o rediseño de logo?', it: 'Hai bisogno di un logo nuovo o di un restyling?'}, 'yesPlease': {en: 'Yes please!', es: '¡Sí, por favor!', it: 'Sì, grazie!'}, 'noThanks': {en: 'No thanks', es: 'No, gracias', it: 'No, grazie'}, 'yourAudience': {en: 'Your audience', es: 'Tu audiencia', it: 'Il tuo pubblico'}, 'keywords': {en: 'Keywords', es: 'Palabras clave', it: 'Parole chiave'}, 'phrasesYoudLikeYour': {en: 'Phrases you\'d like your audience to find you with on Google.', es: 'Frases con las que te gustaría que tu audiencia te encuentre en Google.', it: 'Frasi con cui vorresti che il tuo pubblico ti trovasse su Google.'}, 'targetAudience': {en: 'Target audience', es: 'Público objetivo', it: 'Pubblico di riferimento'}, 'whoIsYourIdeal': {en: 'Who is your ideal client?', es: '¿Quién es tu cliente ideal?', it: 'Chi è il tuo cliente ideale?'}, 'howDoPeopleFind': {en: 'How do people find you today?', es: '¿Cómo te encuentran hoy?', it: 'Come ti trovano oggi?'}, 'whyIsYourWebsite': {en: 'Why is your website important?', es: '¿Por qué es importante tu web?', it: 'Perché il tuo sito è importante?'}, 'competitors2': {en: 'Competitors', es: 'Competencia', it: 'Concorrenti'}, 'listOfCompetitors': {en: 'List of competitors', es: 'Lista de competidores', it: 'Elenco dei concorrenti'}, 'whatWorksForThem': {en: 'What works for them', es: 'Qué les funciona', it: 'Cosa funziona per loro'}, 'whatDoesnt': {en: 'What doesn\'t', es: 'Qué no', it: 'Cosa no'}, 'whatSetsYouApart': {en: 'What sets you apart?', es: '¿Qué te diferencia?', it: 'Cosa ti distingue?'}, 'aCompanyYouAdmire': {en: 'A company you admire', es: 'Una empresa que admiras', it: 'Un\'azienda che ammiri'}, 'itCanBeFrom': {en: 'It can be from any industry or country — tell us what you like and dislike about them.', es: 'Puede ser de cualquier sector o país — dinos qué te gusta y qué no de ella.', it: 'Può essere di qualsiasi settore o paese — dicci cosa ti piace e cosa no.'}, 'pagesAmpFeatures': {en: 'Pages & features', es: 'Páginas y funcionalidades', it: 'Pagine e funzionalità'}, 'selectThePagesYour': {en: 'Select the pages your website will need', es: 'Selecciona las páginas que necesitará tu web', it: 'Seleziona le pagine che servirà al tuo sito'}, 'homePage': {en: 'Home Page', es: 'Inicio', it: 'Home'}, 'aboutUs': {en: 'About Us', es: 'Quiénes somos', it: 'Chi siamo'}, 'services': {en: 'Services', es: 'Servicios', it: 'Servizi'}, 'contacts': {en: 'Contacts', es: 'Contacto', it: 'Contatti'}, 'catalogue': {en: 'Catalogue', es: 'Catálogo', it: 'Catalogo'}, 'products': {en: 'Products', es: 'Productos', it: 'Prodotti'}, 'testimonials': {en: 'Testimonials', es: 'Testimonios', it: 'Testimonianze'}, 'mediaGallery': {en: 'Media gallery', es: 'Galería', it: 'Galleria'}, 'calendar': {en: 'Calendar', es: 'Calendario', it: 'Calendario'}, 'selectTheFeaturesYou': {en: 'Select the features you want to integrate', es: 'Selecciona las funcionalidades que quieres integrar', it: 'Seleziona le funzionalità che vuoi integrare'}, 'payments': {en: 'Payments', es: 'Pagos', it: 'Pagamenti'}, 'adminArea': {en: 'Admin Area', es: 'Área de administración', it: 'Area amministrativa'}, 'multilanguage': {en: 'Multi-language', es: 'Multi-idioma', it: 'Multilingua'}, 'proForms': {en: 'Pro Forms', es: 'Formularios Pro', it: 'Form Pro'}, 'membership': {en: 'Membership', es: 'Membresía', it: 'Area riservata'}, 'booking': {en: 'Booking', es: 'Reservas', it: 'Prenotazioni'}, 'eventManager': {en: 'Event Manager', es: 'Gestor de eventos', it: 'Gestione eventi'}, 'aiAgent': {en: 'AI Agent', es: 'Agente IA', it: 'Agente AI'}, 'anythingElse': {en: 'Anything else?', es: '¿Algo más?', it: 'Altro?'}, 'almostDone': {en: 'Almost done', es: 'Casi listo', it: 'Ci siamo quasi'}, 'areYouAlreadyUsing': {en: 'Are you already using social media to promote your business?', es: '¿Ya usas redes sociales para promocionar tu negocio?', it: 'Usi già i social per promuovere la tua attività?'}, 'yesIAm': {en: 'Yes, I am', es: 'Sí', it: 'Sì'}, 'notYet': {en: 'Not yet', es: 'Todavía no', it: 'Non ancora'}, 'beyondSocialHaveYou': {en: 'Beyond social, have you run any other marketing? (email, Google or Meta Ads…)', es: 'Aparte de redes, ¿has hecho otras acciones de marketing? (email, Google o Meta Ads…)', it: 'Oltre ai social, hai fatto altre azioni di marketing? (email, Google o Meta Ads…)'}, 'yesIHave': {en: 'Yes, I have', es: 'Sí', it: 'Sì'}, 'noIHavent': {en: 'No, I haven\'t', es: 'No', it: 'No'}, 'doYouAlreadyHave': {en: 'Do you already have a database of clients or prospects?', es: '¿Ya tienes una base de datos de clientes o prospectos?', it: 'Hai già un database di clienti o potenziali clienti?'}, 'yesIHave2': {en: 'Yes, I have', es: 'Sí', it: 'Sì'}, 'noIHavent2': {en: 'No, I haven\'t', es: 'No', it: 'No'}, 'howDidYouHear': {en: 'How did you hear about us?', es: '¿Cómo nos conociste?', it: 'Come ci hai conosciuto?'}, 'wordOfMouth': {en: 'Word of mouth', es: 'Boca a boca', it: 'Passaparola'}, 'socialMedia': {en: 'Social media', es: 'Redes sociales', it: 'Social'}, 'anEvent': {en: 'An event', es: 'Un evento', it: 'Un evento'}, 'anExistingClient': {en: 'An existing client', es: 'Un cliente actual', it: 'Un cliente esistente'}, 'other2': {en: 'Other', es: 'Otro', it: 'Altro'}, 'anythingElseWeShould': {en: 'Anything else we should know?', es: '¿Algo más que debamos saber?', it: 'Altro che dovremmo sapere?'}, 'iAgreeToThe': {en: 'I agree to the Privacy Policy and the Terms of Service.', es: 'Acepto la Política de Privacidad y los Términos del Servicio.', it: 'Accetto la Privacy Policy e i Termini di Servizio.'}, 'back': {en: 'Back', es: 'Atrás', it: 'Indietro'}, 'continue': {en: 'Continue', es: 'Continuar', it: 'Continua'}, 'send': {en: 'Send', es: 'Enviar', it: 'Invia'}, 'thankYouWeveGot': {en: 'Thank you — we\'ve got everything.', es: 'Gracias — lo tenemos todo.', it: 'Grazie — abbiamo tutto.'}, 'wellReviewYourAnswers': {en: 'We\'ll review your answers and get back to you shortly with next steps.', es: 'Revisaremos tus respuestas y te contactaremos en breve con los siguientes pasos.', it: 'Esamineremo le tue risposte e ti ricontatteremo a breve con i prossimi passi.'}, 'sendingYourBrief': {en: 'Sending your brief…', es: 'Enviando tu brief…', it: 'Invio del tuo brief…'}, 'sentThankYou': {en: 'Sent — thank you!', es: '¡Enviado — gracias!', it: 'Inviato — grazie!'} } %}
{{ t.onboarding[lang] }}

{{ t.tellUsAboutYour[lang] }}

{{ t.aFewFocusedQuestions[lang] }}

  1. 1{{ t.contact[lang] }}
  2. 2{{ t.project[lang] }}
  3. 3{{ t.scope[lang] }}
  4. 4{{ t.design[lang] }}
  5. 5{{ t.audience[lang] }}
  6. 6{{ t.competitors[lang] }}
  7. 7{{ t.pages[lang] }}
  8. 8{{ t.lastStep[lang] }}
{{ t.contactInformation[lang] }}

{{ t.yourDetailsAndThe[lang] }}

{{ t.theProject[lang] }}

{{ t.justAFewTaps[lang] }}

{{ t.whatDoYouNeed[lang] }} *

{{ t.selectEverythingThatApplies[lang] }}

{{ t.yourSector[lang] }}

{{ t.pickTheClosestOne[lang] }}

{{ t.howManyLanguagesShould[lang] }}
{{ t.timingAmpScope[lang] }}
{{ t.whenDoYouNeed[lang] }} *
{{ t.indicativeBudget[lang] }}

{{ t.itHelpsUsScope[lang] }}

{{ t.areYourContentsReady[lang] }}

{{ t.textsPhotosLogoBrand[lang] }}

{{ t.whoDecidesOnThis[lang] }}
{{ t.designDirection[lang] }}

{{ t.anyReferenceIsUseful[lang] }}

{{ t.doYouNeedA[lang] }}
{{ t.yourAudience[lang] }}

{{ t.phrasesYoudLikeYour[lang] }}

{{ t.whoIsYourIdeal[lang] }}

{{ t.competitors2[lang] }}

{{ t.itCanBeFrom[lang] }}

{{ t.pagesAmpFeatures[lang] }}
{{ t.selectThePagesYour[lang] }}
{{ t.selectTheFeaturesYou[lang] }}
{{ t.almostDone[lang] }}
{{ t.areYouAlreadyUsing[lang] }}
{{ t.beyondSocialHaveYou[lang] }}
{{ t.doYouAlreadyHave[lang] }}
{{ t.howDidYouHear[lang] }}
1 / 8
{{ cms.assetsBody() }}