PageSourceSearch

https://app-khaki-theta-75.vercel.app/

html app-khaki-theta-75.vercel.app collected 2026-10-03 06:06:39 UTC 20,929 bytes, 1 lines download raw bytes

1<!DOCTYPE html><html lang="en" data-city="porto" class="geist_deef94d5-module__Sms4YG__variable geist_mono_1bf8cbf6-module__FlyLvG__variable h-full antialiased"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/><link rel="preload" href="/_next/static/immutable/media/797e433ab948586e-s.p.1v5bejj26fx9h.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/immutable/media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/immutable/chunks/2nlcdgg3coduj.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/immutable/chunks/2o5k3yg2_l47m.js"/>
1<script src="/_next/static/immutable/chunks/3juwi63q3jsbh.js" async=""></script>
1<script src="/_next/static/immutable/chunks/15gebhqccm6x-.js" async=""></script>
1<script src="/_next/static/immutable/chunks/331jcoi1a_7d2.js" async=""></script>
1<script src="/_next/static/immutable/chunks/turbopack-1p1_jt01hpmxo.js" async=""></script>
1<script src="/_next/static/immutable/chunks/3zrywvj-2phha.js" async="" crossorigin=""></script>
1<script src="/_next/static/immutable/chunks/0qyqnssvyr_f2.js" async="" crossorigin=""></script>
1<script src="/_next/static/immutable/chunks/400dtedga88o9.js" async="" crossorigin=""></script>
1<script src="/_next/static/immutable/chunks/0tur6q72ht08p.js" async="" crossorigin=""></script>
1<script src="/_next/static/immutable/chunks/3c-j6kkrp3_a9.js" async="" crossorigin=""></script>
1<script src="/_next/static/immutable/chunks/0uod14uvb_8tu.js" async="" crossorigin=""></script>
1<script src="/_next/static/immutable/chunks/1loptwtdl4mpt.js" async="" crossorigin=""></script>
1<script src="/_next/static/immutable/chunks/3gnookaqsox-z.js" async="" crossorigin=""></script>
1<script src="/_next/static/immutable/chunks/3bfeg21-l_fun.js" async="" crossorigin=""></script>
1<link rel="preload" href="/design/malha-porto-light.svg" as="image"/><link rel="preload" href="/design/pin-porto-light.png" as="image"/><link rel="preload" href="/design/malha-porto-dark.svg" as="image"/><link rel="preload" href="/design/pin-porto-dark.png" as="image"/><meta name="theme-color" content="#ffffff"/><meta name="color-scheme" content="light dark"/><title>Impress Me Porto</title><meta name="description" content="One tap and Porto builds one walk around you, right now, and tells you what to notice."/><meta name="application-name" content="Impress Me"/><link rel="manifest" href="/manifest.webmanifest"/><meta name="robots" content="index, follow"/><meta name="mobile-web-app-capable" content="yes"/><link rel="canonical" href="https://impress-me-porto.vercel.app"/><meta name="format-detection" content="telephone=no, date=no, address=no"/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="Impress Me"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta property="og:title" content="Impress Me Porto"/><meta property="og:description" content="One tap. One walk through Porto, built for right now."/><meta property="og:url" content="https://impress-me-porto.vercel.app"/><meta property="og:site_name" content="Impress Me"/><meta property="og:locale" content="en_GB"/><meta property="og:image" content="https://impress-me-porto.vercel.app/opengraph-image.png?opengraph-image.2p306tyod03m-.png"/><meta property="og:image:type" content="image/png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Impress Me — Porto. Let Porto surprise you: one tap, one place or event near you right now."/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Impress Me Porto"/><meta name="twitter:description" content="One tap. One walk through Porto, built for right now."/><meta name="twitter:image" content="https://impress-me-porto.vercel.app/opengraph-image.png?opengraph-image.2p306tyod03m-.png"/><meta name="twitter:image:alt" content="Impress Me — Porto. Let Porto surprise you: one tap, one place or event near you right now."/><meta name="twitter:image:type" content="image/png"/><meta name="twitter:image:width" content="1200"/><meta name="twitter:image:height" content="630"/><link rel="icon" href="/favicon.ico?favicon.2cm9tyq14v92k.ico" sizes="48x48" type="image/x-icon"/><link rel="icon" href="/icon.svg?icon.1j80xcao581fj.svg" sizes="any" type="image/svg+xml"/><link rel="apple-touch-icon" href="/apple-icon.png?apple-icon.1xjkkvvngc6eu.png" sizes="180x180" type="image/png"/><meta name="next-size-adjust" content=""/><link rel="preload" as="image" href="/design/malha-porto-light.svg"/><link rel="preload" as="image" href="/design/pin-porto-light.png"/><link rel="preload" as="image" href="/design/malha-porto-dark.svg"/><link rel="preload" as="image" href="/design/pin-porto-dark.png"/>
1<script>(()=>{try{const r=document.documentElement,l=localStorage.getItem('impressme.lang');if(l==='en'||l==='pt')r.lang=l;let p=localStorage.getItem('impress-me:theme')||localStorage.getItem('impress-me:mode');if(p!=='light'&&p!=='dark'&&p!=='auto')p='auto';const a=()=>{try{const c=JSON.parse(localStorage.getItem('impress-me:auto-theme')||'null');if(c&&(c.mode==='light'||c.mode==='dark')&&typeof c.at==='number'&&Date.now()-c.at>=0&&Date.now()-c.at<18e5)return c.mode;const f=new Intl.DateTimeFormat('en-GB',{timeZone:'Europe/Lisbon',month:'numeric',hour:'2-digit',minute:'2-digit',hour12:false}).formatToParts(new Date()),v=t=>Number(f.find(x=>x.type===t)?.value),n=v('month'),h=(v('hour')===24?0:v('hour'))+v('minute')/60,s=[8,8,7,7,6,6,6,7,7,8,8,8][n-1],e=[17.5,18,19,20.5,21,21,21,20.5,19.5,19,17.5,17][n-1];if(Number.isFinite(h)&&s!==undefined&&e!==undefined)return h>=s&&h<e?'light':'dark'}catch{}return matchMedia('(prefers-color-scheme: dark)').matches?'dark':'light'},m=p==='auto'?a():p;r.dataset.theme=m;r.style.colorScheme=m;}catch{}})()</script>
1<script src="/_next/static/immutable/chunks/0c0hxoamwjsbw.js" noModule=""></script>
1</head><body class="flex min-h-dvh flex-col"><div hidden=""><!--$--><!--/$--></div><main class="screen-pad flex flex-1 flex-col items-center idle-screen gap-5 justify-center" style="padding-bottom:max(3.5rem, calc(env(safe-area-inset-bottom) + 2.75rem))"><div class="top-bar"><div role="group" aria-label="Language" class="inline-flex h-11 shrink-0 touch-manipulation items-stretch border-2 border-[var(--ink)] bg-[var(--bg)] text-[var(--ink)] select-none transition-colors duration-[260ms] ease-out-soft motion-reduce:transition-none "><button type="button" aria-expanded="false" aria-pressed="true" aria-label="English" title="English" style="width:3.25rem" class="relative flex h-full shrink-0 cursor-pointer items-center justify-center gap-1 transition-colors after:absolute after:-inset-1 after:content-[&#x27;&#x27;] duration-[260ms] ease-out-soft motion-reduce:transition-none text-[0.8125rem] leading-none font-bold tracking-[0.06em] ps-[0.06em] whitespace-nowrap bg-transparent hover:bg-[var(--surface-sunk)]">EN<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="h-3 w-3 transition-transform duration-[260ms] ease-out-soft motion-reduce:transition-none "><path d="m4 6 4 4 4-4"></path></svg></button><button type="button" inert="" tabindex="-1" aria-pressed="false" aria-label="Português" title="Português" style="width:0rem" class="h-full shrink-0 cursor-pointer overflow-hidden bg-transparent transition-[width] hover:bg-[var(--surface-sunk)] duration-[260ms] ease-out-soft motion-reduce:transition-none"><span style="width:3.25rem;transform:translateX(-100%)" class="flex h-full items-center justify-center border-l-2 border-[var(--ink)] transition-transform duration-[260ms] ease-out-soft motion-reduce:transition-none text-[0.8125rem] leading-none font-bold tracking-[0.06em] ps-[0.06em] whitespace-nowrap">PT</span></button></div><button type="button" aria-label="Auto: follows the sun (light now). Tap for Day mode" title="Auto: follows the sun (light now)" class="icon-btn touch-manipulation"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.9" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="h-5 w-5"><circle cx="12" cy="12" r="8.4"></circle>
1<path d="M12 3.6a8.4 8.4 0 0 1 0 16.8Z" fill="currentColor" stroke="none"></path></svg></button></div><div class="rise" style="--i:0"><header class="flex flex-col items-center gap-3.5 text-center"><p class="label-micro">Right now</p><div><p class="lede">Not sure what to do?</p><h1 class="display mt-2">Let Porto surprise you.</h1></div></header></div><div class="rise" style="--i:2"><button type="button" aria-busy="false" class="btn-hero touch-manipulation select-none">Impress me</button></div><nav aria-label="Legal" class="fixed bottom-[max(0.5rem,env(safe-area-inset-bottom))] left-1/2 z-10 flex -translate-x-1/2 gap-4 text-[11px] font-semibold text-[var(--ink-3)]"><a class="inline-flex min-h-11 items-center px-2 underline-offset-2 hover:underline" href="/privacy">Privacy</a><a class="inline-flex min-h-11 items-center px-2 underline-offset-2 hover:underline" href="/terms">Terms</a></nav></main><!--$--><!--/$-->
1<script src="/_next/static/immutable/chunks/2o5k3yg2_l47m.js" id="_R_" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n3:I[39756,[\"/_next/static/immutable/chunks/3zrywvj-2phha.js\"],\"default\"]\n4:I[8821,[\"/_next/static/immutable/chunks/0qyqnssvyr_f2.js\",\"/_next/static/immutable/chunks/400dtedga88o9.js\",\"/_next/static/immutable/chunks/0tur6q72ht08p.js\"],\"default\"]\n5:I[37457,[\"/_next/static/immutable/chunks/3zrywvj-2phha.js\"],\"default\"]\n6:I[22016,[\"/_next/static/immutable/chunks/0qyqnssvyr_f2.js\",\"/_next/static/immutable/chunks/400dtedga88o9.js\"],\"\"]\n7:I[19014,[\"/_next/static/immutable/chunks/0qyqnssvyr_f2.js\",\"/_next/static/immutable/chunks/400dtedga88o9.js\"],\"Telemetry\"]\n8:I[47257,[\"/_next/static/immutable/chunks/3zrywvj-2phha.js\"],\"ClientPageRoot\"]\n9:I[31713,[\"/_next/static/immutable/chunks/0qyqnssvyr_f2.js\",\"/_next/static/immutable/chunks/400dtedga88o9.js\",\"/_next/static/immutable/chunks/3c-j6kkrp3_a9.js\",\"/_next/static/immutable/chunks/0uod14uvb_8tu.js\",\"/_next/static/immutable/chunks/1loptwtdl4mpt.js\",\"/_next/static/immutable/chunks/3gnookaqsox-z.js\"],\"default\"]\nc:I[97367,[\"/_next/static/immutable/chunks/3zrywvj-2phha.js\"],\"OutletBoundary\"]\nd:\"$Sreact.suspense\"\nf:I[97367,[\"/_next/static/immutable/chunks/3zrywvj-2phha.js\"],\"ViewportBoundary\"]\n11:I[97367,[\"/_next/static/immutable/chunks/3zrywvj-2phha.js\"],\"MetadataBoundary\"]\n13:I[53348,[\"/_next/static/immutable/chunks/0qyqnssvyr_f2.js\",\"/_next/static/immutable/chunks/400dtedga88o9.js\",\"/_next/static/immutable/chunks/3bfeg21-l_fun.js\"],\"default\"]\n:HL[\"/_next/static/immutable/chunks/2nlcdgg3coduj.css\",\"style\"]\n:HL[\"/_next/static/immutable/media/797e433ab948586e-s.p.1v5bejj26fx9h.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/design/malha-porto-light.svg\",\"image\"]\n:HL[\"/design/pin-porto-light.png\",\"image\"]\n:HL[\"/design/malha-porto-dark.svg\",\"image\"]\n:HL[\"/design/pin-porto-dark.png\",\"image\"]\n2:T414,(()=\u003e{try{const r=document.documentElement,l=localStorage.getItem('impressme.lang');if(l==='en'||l==='pt')r.lang=l;let p=localStorage.getItem('impress-me:theme')||localStorage.getItem('impress-me:mode');if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='auto')p='auto';const a=()=\u003e{try{const c=JSON.parse(localStorage.getItem('impress-me:auto-theme')||'null');if(c\u0026\u0026(c.mode==='light'||c.mode==='dark')\u0026\u0026typeof c.at==='number'\u0026\u0026Date.now()-c.at\u003e=0\u0026\u0026Date.now()-c.at\u003c18e5)return c.mode;const f=new Intl.DateTimeFormat('en-GB',{timeZone:'Europe/Lisbon',month:'numeric',hour:'2-digit',minute:'2-digit',hour12:false}).formatToParts(new Date()),v=t=\u003eNumber(f.find(x=\u003ex.type===t)?.value),n=v('month'),h=(v('hour')===24?0:v('hour'))+v('minute')/60,s=[8,8,7,7,6,6,6,7,7,8,8,8][n-1],e=[17.5,18,19,20.5,21,21,21,20.5,19.5,19,17.5,17][n-1];if(Number.isFinite(h)\u0026\u0026s!==undefined\u0026\u0026e!==undefined)return h\u003e=s\u0026\u0026h\u003ce?'light':'dark'}catch{}return matchMedia('(prefers-color-scheme: dark)').matches?'dark':'light'},m=p==='auto'?a():p;r.dataset.theme=m;r.style.colorScheme=m;}catch{}})()0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/2nlcdgg3coduj.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/0qyqnssvyr_f2.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/immutable/chunks/400dtedga88o9.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"data-city\":\"porto\",\"suppressHydrationWarning\":true,\"className\":\"geist_deef94d5-module__Sms4YG__variable geist_mono_1bf8cbf6-module__FlyLvG__variable h-full antialiased\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"$2\"}}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"as\":\"image\",\"href\":\"/design/malha-porto-light.svg\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"as\":\"image\",\"href\":\"/design/pin-porto-light.png\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"as\":\"image\",\"href\":\"/design/malha-porto-dark.svg\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"as\":\"image\",\"href\":\"/design/pin-porto-dark.png\"}]]}],[\"$\",\"body\",null,{\"className\":\"flex min-h-dvh flex-col\",\"children\":[[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$4\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/0tur6q72ht08p.js\",\"async\":true}]],\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"main\",null,{\"className\":\"screen-pad flex flex-1 flex-col items-center justify-center gap-5 text-center\",\"children\":[[\"$\",\"p\",null,{\"className\":\"label-micro\",\"children\":\"404\"}],[\"$\",\"h1\",null,{\"className\":\"display-sm\",\"children\":\"This street is not on the walk.\"}],[\"$\",\"p\",null,{\"className\":\"lede max-w-md\",\"children\":\"Go back and let Porto build a route that exists.\"}],[\"$\",\"$L6\",null,{\"href\":\"/\",\"className\":\"btn-primary min-h-14 px-7\",\"children\":\"Back to Impress Me\"}]]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$L7\",null,{}]]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L8\",null,{\"Component\":\"$9\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@a\",\"$@b\"]}}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/3c-j6kkrp3_a9.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/immutable/chunks/0uod14uvb_8tu.js\",\"async\":true,\"nonce\":\"$undefined\"}
1],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/immutable/chunks/1loptwtdl4mpt.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/immutable/chunks/3gnookaqsox-z.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$d\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@e\"}]}]]}],{},null,false,null]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lf\",null,{\"children\":\"$L10\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L11\",null,{\"children\":[\"$\",\"$d\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L12\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$13\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/2nlcdgg3coduj.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"3drc4wBYn0OClwbfribt6\"}\na:{}\nb:\"$0:f:0:1:1:children:0:props:children:0:props:serverProvidedParams:params\"\n10:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#ffffff\"}],[\"$\",\"meta\",\"3\",{\"name\":\"color-scheme\",\"content\":\"light dark\"}]]\n14:I[27201,[\"/_next/static/immutable/chunks/3zrywvj-2phha.js\"],\"IconMark\"]\ne:null\n12:[[\"$\",\"title\",\"0\",{\"children\":\"Impress Me Porto\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"One tap and Porto builds one walk around you, right now, and tells you what to notice.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"application-name\",\"content\":\"Impress Me\"}],[\"$\",\"link\",\"3\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"4\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"5\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"link\",\"6\",{\"rel\":\"canonical\",\"href\":\"https://impress-me-porto.vercel.app\"}],[\"$\",\"meta\",\"7\",{\"name\":\"format-detection\",\"content\":\"telephone=no, date=no, address=no\"}],[\"$\",\"meta\",\"8\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"9\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"Impress Me\"}],[\"$\",\"meta\",\"10\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:title\",\"content\":\"Impress Me Porto\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:description\",\"content\":\"One tap. One walk through Porto, built for right now.\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:url\",\"content\":\"https://impress-me-porto.vercel.app\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:site_name\",\"content\":\"Impress Me\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:locale\",\"content\":\"en_GB\"}],[\"$\",\"meta\",\"16\",{\"property\":\"og:image\",\"content\":\"https://impress-me-porto.vercel.app/opengraph-image.png?opengraph-image.2p306tyod03m-.png\"}],[\"$\",\"meta\",\"17\",{\"property\":\"og:image:type\",\"content\":\"image/png\"}],[\"$\",\"meta\",\"18\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"19\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"20\",{\"property\":\"og:image:alt\",\"content\":\"Impress Me — Porto. Let Porto surprise you: one tap, one place or event near you right now.\"}],[\"$\",\"meta\",\"21\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"22\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"23\",{\"name\":\"twitter:title\",\"content\":\"Impress Me Porto\"}],[\"$\",\"meta\",\"24\",{\"name\":\"twitter:description\",\"content\":\"One tap. One walk through Porto, built for right now.\"}],[\"$\",\"meta\",\"25\",{\"name\":\"twitter:image\",\"content\":\"https://impress-me-porto.vercel.app/opengraph-image.png?opengraph-image.2p306tyod03m-.png\"}],[\"$\",\"meta\",\"26\",{\"name\":\"twitter:image:alt\",\"content\":\"Impress Me — Porto. Let Porto surprise you: one tap, one place or event near you right now.\"}],[\"$\",\"meta\",\"27\",{\"name\":\"twitter:image:type\",\"content\":\"image/png\"}],[\"$\",\"meta\",\"28\",{\"name\":\"twitter:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"29\",{\"name\":\"twitter:image:height\",\"content\":\"630\"}],[\"$\",\"link\",\"30\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.2cm9tyq14v92k.ico\",\"sizes\":\"48x48\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"31\",{\"rel\":\"icon\",\"href\":\"/icon.svg?icon.1j80xcao581fj.svg\",\"sizes\":\"any\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"32\",{\"rel\":\"apple-touch-icon\",\"href\":\"/apple-icon.png?apple-icon.1xjkkvvngc6eu.png\",\"sizes\":\"180x180\",\"type\":\"image/png\"}],[\"$\",\"$L14\",\"33\",{}]]\n"])</script>
1</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.